Current Path : /storage/v11800/affypharma/public_html/wp-content/plugins/caxton/assets/layout-blocks/ |
Linux v11800 5.3.0-1023-aws #25~18.04.1-Ubuntu SMP Fri Jun 5 15:19:18 UTC 2020 aarch64
|
Current File : /storage/v11800/affypharma/public_html/wp-content/plugins/caxton/assets/layout-blocks/tpl.es6 |
export function tplRender ( props, block, childrenBlocks ) {
const el = wp.element.createElement;
var cls = 'relative ', bgHTML, padUnit, padT, padL, padB, padR,
colCls = 'relative ' + block.block.id.replace( '/', '-' ),
padMob = block.attrs['Inner Padding left/right tablet'],
padTab = block.attrs['Inner Padding left/right mobile'];
padUnit = block.attrs['Inner Padding unit'];
padT = block.attrs['Inner Padding top'];
padL = block.attrs['Inner Padding left'];
padB = block.attrs['Inner Padding bottom'];
padR = block.attrs['Inner Padding right'];
if ( 'px' === padUnit ) {
padT *= 5;
padL *= 5;
padB *= 5;
padR *= 5;
}
padT = padT ? padT + padUnit : 0;
padL = padL ? padL + padUnit : 0;
padB = padB ? padB + padUnit : 0;
padR = padR ? padR + padUnit : 0;
if ( block.attrs['Layout'] ) {
cls += ' ' + block.attrs['Layout'];
}
if ( block.attrs['Column gap'] ) {
colCls += ' ' + block.attrs['Column gap'];
}
if ( block.attrs['Full height'] ) {
colCls += ' ' + block.attrs['Full height'];
}
return el(
// Element
'div', {className: cls, key: 'caxton-grid-block'},
// Background div
el( 'div', {
key : 'bg',
className : 'absolute absolute--fill',
dangerouslySetInnerHTML: block.outputHTML( '{{Background}}' )
} ),
// Blocks inserter
el( 'div', {
className : colCls,
style : {
'paddingTop' : padT,
'paddingLeft' : padL,
'paddingBottom' : padB,
'paddingRight' : padR,
'gridTemplateColumns': 'repeat(12, 1fr)',
},
'data-tablet-css': 'padding-left:' + padTab + 'em;padding-right:' + padTab + 'em;',
'data-mobile-css': 'padding-left:' + padMob + 'em;padding-right:' + padMob + 'em;',
key : 'block',
},
childrenBlocks
)
);
}
export function tplContent( props, block, optionsRenderer ) {
const el = wp.element.createElement;
if ( props.attributes.tpl && props.attributes.tpl.indexOf( '[' ) === 0 && props.attributes.tpl.indexOf( ']' ) > 0 ) {
let
tpl = JSON.parse( props.attributes.tpl );
return el(
caxtonWPEditor.InnerBlocks,
{
template : tpl,
templateLock : false,
key : 'innerblocks',
renderAppender: () => el( caxtonWPEditor.InnerBlocks.ButtonBlockAppender ),
}
);
} else {
return optionsRenderer( props, block );
}
}