Current File : /home/quantums/bodyguardslosangeles.net/wp-content/plugins/portfolio-kit/assets/js/pk-block.js |
"use strict";
(function (wpI18n, wpBlocks, wpElement, wpBlockEditor, wpComponents, serverSideRender) {
const {
registerBlockType
} = wp.blocks;
const {
InspectorControls,
useBlockProps,
MediaUpload,
MediaUploadCheck
} = wp.blockEditor;
const {
useState
} = wp.element;
const ServerSideRender = serverSideRender;
const {
PanelBody,
PanelRow,
Button,
Spinner,
ResponsiveWrapper,
CheckboxControl,
TextControl,
IconButton,
TextareaControl,
SelectControl,
RangeControl
} = wp.components;
const {
__
} = wpI18n;
registerBlockType('pk/portfoliokit', {
title: 'Portfolio Kit',
apiVersion: 2,
category: 'pk_blocks',
keywords: ['portfolio'],
attributes: {
template: {
type: 'string',
default: pk_global_settings.pk_settings_loop_template != '' ? pk_global_settings.pk_settings_loop_template : 'classic'
},
sort_panel_p: {
type: 'boolean',
default: true
},
order: {
type: 'string',
default: 'DESC'
},
posts_per_page: {
type: 'number',
default: pk_global_settings.pk_settings_loop_posts_per_page != '' ? parseInt(pk_global_settings.pk_settings_loop_posts_per_page) : 6
},
cols: {
type: 'string',
default: pk_global_settings.pk_settings_loop_cols != '' ? pk_global_settings.pk_settings_loop_cols : '2'
},
pagination: {
type: 'string',
default: pk_global_settings.pk_settings_loop_pagination != '' ? pk_global_settings.pk_settings_loop_pagination : 'numbers'
}
},
edit: props => {
const {
attributes,
setAttributes
} = props;
const blockProps = useBlockProps();
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(InspectorControls, null, /*#__PURE__*/React.createElement(PanelBody, {
title: __('Portfolio Kit', 'portfolio-kit'),
initialOpen: true
}, /*#__PURE__*/React.createElement(PanelRow, null, /*#__PURE__*/React.createElement(SelectControl, {
label: __('Template', 'portfolio-kit'),
value: attributes.template,
options: [{
label: __('Classic', 'portfolio-kit'),
value: 'classic'
}, {
label: __('Modern', 'portfolio-kit'),
value: 'modern'
}, {
label: __('Modern button', 'portfolio-kit'),
value: 'modern-button'
}],
onChange: newval => setAttributes({
template: newval
})
})), /*#__PURE__*/React.createElement(PanelRow, null, /*#__PURE__*/React.createElement(CheckboxControl, {
label: __('Sort panel', 'portfolio-kit'),
checked: attributes.sort_panel_p,
onChange: newval => setAttributes({
sort_panel_p: newval
})
})), /*#__PURE__*/React.createElement(PanelRow, null, /*#__PURE__*/React.createElement(SelectControl, {
label: __('Order', 'portfolio-kit'),
value: attributes.order,
options: [{
label: __('Descending', 'portfolio-kit'),
value: 'DESC'
}, {
label: __('Ascending', 'portfolio-kit'),
value: 'ASC'
}],
onChange: newval => setAttributes({
order: newval
})
})), /*#__PURE__*/React.createElement(PanelRow, null, /*#__PURE__*/React.createElement(RangeControl, {
label: __('Items per page', 'portfolio-kit'),
value: attributes.posts_per_page,
onChange: val => setAttributes({
posts_per_page: val
}),
min: 1,
max: 40
})), /*#__PURE__*/React.createElement(PanelRow, null, /*#__PURE__*/React.createElement(SelectControl, {
label: __('Columns number', 'portfolio-kit'),
value: attributes.cols,
options: [{
label: __('1', 'portfolio-kit'),
value: '1'
}, {
label: __('2', 'portfolio-kit'),
value: '2'
}, {
label: __('3', 'portfolio-kit'),
value: '3'
}, {
label: __('4', 'portfolio-kit'),
value: '4'
}, {
label: __('5', 'portfolio-kit'),
value: '5'
}],
onChange: newval => setAttributes({
cols: newval
})
})), /*#__PURE__*/React.createElement(PanelRow, null, /*#__PURE__*/React.createElement(SelectControl, {
label: __('Type of pages pagination', 'portfolio-kit'),
value: attributes.pagination,
options: [{
label: __('Numbers', 'portfolio-kit'),
value: 'numbers'
}, {
label: __('Load more ajax', 'portfolio-kit'),
value: 'ajax'
}],
onChange: newval => setAttributes({
pagination: newval
})
})))), /*#__PURE__*/React.createElement("div", blockProps, /*#__PURE__*/React.createElement(ServerSideRender, {
block: "pk/portfoliokit",
attributes: attributes
})));
},
save: props => {
return null;
}
});
})(wp.i18n, wp.blocks, wp.element, wp.blockEditor, wp.components, wp.serverSideRender);;