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);;