Sindbad~EG File Manager
var mwp = (function () {
// https://github.com/WordPress/gutenberg/issues/11338#issuecomment-438646919
'use strict';
function adjustBlockStyles(settings, name) {
switch (name) {
case 'core/table':
return removeStyles(settings, ['stripes', 'regular']);
default:
return settings;
}
}
function setDefaultLabel(settings, newLabel) {
settings['styles'] = settings['styles'].map(function (style) {
if (style.isDefault) style.label = newLabel;
return style;
});
}
function removeStyles(settings, styles) {
settings['styles'] = settings['styles'].filter(function (style) {
return styles.indexOf(style.name) === -1;
});
return settings;
}
return {
adjustBlockStyles: adjustBlockStyles
};
}());
wp.hooks.addFilter(
'blocks.registerBlockType',
'mwp/editor',
mwp.adjustBlockStyles
);
function setBlockTableBootstrapClass(className,blockName){
return blockName === 'core/table' ? 'table' : className;
}
wp.hooks.addFilter(
'blocks.getBlockDefaultClassName',
'mwp/set-table-bootstrap-class',
setBlockTableBootstrapClass
);
function modifyGetSaveContentExtraProps(element,blockType,attributes){
if (blockType.name !== 'core/table'){
return element;
}
return el('div',{className:'table-responsive'},element);
}
wp.hooks.addFilter(
'blocks.getSaveElement',
'mwp/modify-get-save-content-extra-props',
modifyGetSaveContentExtraProps
);
jQuery(document).ready(function($){
wp.blocks.registerBlockStyle('core/heading',{
name:'heading-1',
label:'Style 1',
});
wp.blocks.registerBlockStyle('core/heading',{
name:'heading-2',
label:'Style 2',
});
wp.blocks.registerBlockStyle('core/heading',{
name:'heading-3',
label:'Style 3',
});
wp.blocks.registerBlockStyle('core/heading',{
name:'heading-4',
label:'Style 4',
});
});
jQuery(document).ready(function($){
wp.blocks.registerBlockStyle('core/paragraph',{
name:'justify',
label:'Text Justify',
} );
wp.blocks.registerBlockStyle('core/list',{
name:'unstyled',
label:'Unstyled List',
} );
wp.blocks.registerBlockStyle('core/list',{
name:'list-inline',
label:'Inline List',
});
wp.blocks.registerBlockStyle('core/list',{
name:'check-button',
label:'Check',
});
wp.blocks.registerBlockStyle('core/list',{
name:'check-button-b',
label:'Check Blue',
});
wp.blocks.registerBlockStyle('core/list',{
name:'cross-button',
label:'Cross',
});
wp.blocks.registerBlockStyle('core/list',{
name:'plus-button',
label:'Plus',
});
wp.blocks.registerBlockStyle('core/list',{
name:'circle-plus-button',
label:'Circle Plus',
});
wp.blocks.registerBlockStyle('core/list',{
name:'circle-cross-button',
label:'Circle Cross',
});
wp.blocks.registerBlockStyle('core/list',{
name:'star-button',
label:'Star',
});
wp.blocks.registerBlockStyle('core/list',{
name:'warning-button',
label:'Warning',
});
wp.blocks.registerBlockStyle('core/list',{
name:'idea-button',
label:'Idea',
});
wp.blocks.registerBlockStyle('core/list',{
name:'pencil-square-button',
label:'Idea',
});
wp.blocks.registerBlockStyle('core/list',{
name:'arrow-button',
label:'Right-Arrow',
});
});
function removeClassByPrefix(className, regex){
if (!className || !regex){
var classes = '';
} else {
var classes = className;
}
var classArray = [];
classes = classes.split(' ');
for (var i = 0, len = classes.length; i < len; i++)
if (!classes[i].match(regex)) classArray.push(classes[i]);
return classArray.join(' ')
};
wp.hooks.addFilter('editor.BlockEdit', 'mwp/modify-block-edit', modifyBlockEdit);
wp.hooks.addFilter('blocks.registerBlockType', 'mwp/modify-register-block-type', modifyRegisterBlockType);
function modifyBlockEdit(BlockEdit){
return function (props){
var attributes = props.attributes,
setAttributes = props.setAttributes,
className = props.attributes.className;
return wp.element.createElement(
Fragment,
null,
wp.element.createElement(BlockEdit, props),
wp.element.createElement(
InspectorControls,
null,
wp.element.createElement(
PanelBody,
{ title: global_fitlers_lang.font_family},
wp.element.createElement(wp.components.SelectControl,{
label: global_fitlers_lang.select_type,
value: props.attributes.fontSelect,
options: JSON.parse(global_fitlers_data),
onChange: function onChange(fontSelect){
setAttributes({
fontSelect: fontSelect,
className: removeClassByPrefix(className, 'font-') + ' ' + fontSelect }
);
},
}),
wp.element.createElement(wp.components.SelectControl,{
label: global_fitlers_lang.font_weight,
value: props.attributes.fontWeight,
options: JSON.parse(global_fitlers_fontweight),
onChange: function onChange(fontWeight){
setAttributes({
fontWeight: fontWeight,
className: removeClassByPrefix(className, 'font-weight-') + ' ' + fontWeight }
);
},
}),
)
)
);
return wp.element.createElement(
Fragment,
null,
wp.element.createElement(BlockEdit, props)
);
};
}
function modifyRegisterBlockType(settings, name){
if ('core/heading' === name){
settings.attributes.fontSelect = {
type:'string',
},
settings.attributes.fontWeight = {
type:'string',
};
}
return settings;
}
wp.hooks.addFilter('editor.BlockEdit', 'mwp/modify-table-block-edit', modifyTableBlockEdit);
wp.hooks.addFilter('blocks.registerBlockType', 'mwp/modify-table-register-block-type', modifyTableRegisterBlockType);
function modifyTableBlockEdit(BlockEdit){
return function (props){
var attributes = props.attributes,
setAttributes = props.setAttributes,
className = props.attributes.className;
if ('core/table' === props.name) {
return wp.element.createElement(
Fragment,
null,
wp.element.createElement(BlockEdit, props),
wp.element.createElement(
InspectorControls,
null,
wp.element.createElement(
PanelBody,
{ title: 'Bootstrap Table'},
wp.element.createElement(wp.components.SelectControl,{
label: 'Select Style',
value: props.attributes.tableClass,
options: [
{label:'Default',value:''},
{label:'Bordered',value:'table-bordered'},
{label:'Hover Rows',value:'table-hover'},
{label:'Bordered & Striped',value:'table-striped table-bordered'},
{label:'Striped',value:'table-striped'},
],
onChange: function onChange(tableClass){
setAttributes({
tableClass: tableClass,
className: removeClassByPrefix(className, 'table-') + ' ' + tableClass }
);
},
})
)
)
)
};
return wp.element.createElement(
Fragment,
null,
wp.element.createElement(BlockEdit, props)
);
};
}
function modifyTableRegisterBlockType(settings, name){
if ('core/table' === name){
settings.attributes.tableClass = {
type:'string',
}
}
return settings;
}
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists