PluginProbe ʕ •ᴥ•ʔ
GenerateBlocks / 1.8.3
GenerateBlocks v1.8.3
trunk 1.0 1.0.1 1.0.2 1.1.0 1.1.1 1.1.2 1.2.0 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.6.0 1.7.0 1.7.1 1.7.2 1.7.3 1.8.0 1.8.1 1.8.2 1.8.3 1.9.0 1.9.1 2.0.0 2.0.1 2.0.2 2.1.0 2.1.1 2.1.2 2.2.0 2.2.1 2.3.0
generateblocks / src / blocks / grid / css / main.js
generateblocks / src / blocks / grid / css Last commit date
desktop.js 5 years ago main.js 3 years ago mobile.js 3 years ago tablet-only.js 5 years ago tablet.js 3 years ago
main.js
55 lines
1 import buildCSS from '../../../utils/build-css';
2 import valueWithUnit from '../../../utils/value-with-unit';
3
4 import {
5 Component,
6 } from '@wordpress/element';
7
8 import {
9 applyFilters,
10 } from '@wordpress/hooks';
11
12 export default class MainCSS extends Component {
13 render() {
14 const attributes = applyFilters( 'generateblocks.editor.cssAttrs', this.props.attributes, this.props );
15
16 const {
17 uniqueId,
18 horizontalGap,
19 verticalGap,
20 verticalAlignment,
21 horizontalAlignment,
22 isQueryLoop,
23 useLegacyRowGap,
24 } = attributes;
25
26 let cssObj = [];
27
28 const gridSelector = isQueryLoop
29 ? '.gb-post-template-' + uniqueId + ' > .gb-post-template-wrapper'
30 : '.gb-grid-wrapper-' + uniqueId + ' > .block-editor-inner-blocks > .block-editor-block-list__layout';
31
32 const gridItemSelector = isQueryLoop
33 ? gridSelector + ' > .block-editor-inner-blocks'
34 : gridSelector + ' > .gb-grid-column';
35
36 cssObj[ gridSelector ] = [ {
37 'align-items': verticalAlignment,
38 'justify-content': horizontalAlignment,
39 'margin-left': horizontalGap || 0 === horizontalGap ? '-' + horizontalGap + 'px' : null,
40 'row-gap': ! useLegacyRowGap ? valueWithUnit( verticalGap, 'px' ) : '',
41 } ];
42
43 cssObj[ gridItemSelector ] = [ {
44 'padding-left': valueWithUnit( horizontalGap, 'px' ),
45 'margin-bottom': !! useLegacyRowGap ? valueWithUnit( verticalGap, 'px' ) : '',
46 } ];
47
48 cssObj = applyFilters( 'generateblocks.editor.mainCSS', cssObj, this.props, 'grid' );
49
50 return (
51 <style>{ buildCSS( cssObj ) }</style>
52 );
53 }
54 }
55