Heray-Was-Here
Server : Apache
System : Linux vps37394.inmotionhosting.com 3.10.0-1160.119.1.vz7.224.4 #1 SMP Mon Sep 30 15:36:27 MSK 2024 x86_64
User : jasonp18 ( 1000)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/jasonp18/www/wp-content/plugins/shortcodes-ultimate/includes/js/generator/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/jasonp18/www/wp-content/plugins/shortcodes-ultimate/includes/js/generator/index.js.map
{"version":3,"sources":["includes/js/generator/node_modules/browser-pack/_prelude.js","includes/js/generator/includes/js/generator/src/index.js"],"names":["r","e","n","t","o","i","f","c","require","u","a","Error","code","p","exports","call","length","1","module","$","$generator","$search","$filter","$filters","$choices","$choice","$settings","$prefix","$result","$selected","self","window","SUG","App","jQuery","children","find","state","mceSelection","target","wpActiveEditor","context","insertArgs","preview","timer","request","el","body","init","gp_hover_timer","click","filter","this","data","css","opacity","removeClass","regex","RegExp","each","match","preventDefault","on","val","html","hide","show","focus","magnificPopup","close","blur","keyup","$first","best","keyCode","trigger","id","shortcode","matches","name","desc","group","join","addClass","ajax","type","url","ajaxurl","action","beforeSend","success","$content","attr","index","$val","min","max","step","simpleSlider","snap","range","farbtastic","update","ids","source","$sources","images","$images","categories","$cats","tax","$taxes","terms","$terms","frame","$picker","$source","$addMedia","indexOf","parent","fadeOut","remove","wp","media","frames","su_media_frame_1","title","SUGL10n","isp_media_title","library","button","text","isp_media_insert","multiple","files","get","toJSON","append","open","sortable","revert","containment","tolerance","stop","$cont","parents","ajaxTermSelect","dataType","class","size","_typeof","abort","file","$button","stopPropagation","su_media_frame_2","upload_title","upload_insert","attachment","first","$field","toggleClass","hasClass","$icons","$value","$switch","value","su_generator_get_terms","noselect","$fields","$hoff","$voff","$blur","$color","cnt","wheel","split","replace","$width","$style","$cnt","_default","setSettings","insertShortcode","$preview","updatePreview","clearTimeout","setTimeout","$list","Date","getTime","prompt","presets_prompt_msg","presets_prompt_value","addPreset","$insert","$preset","removePreset","settings","getSettings","parseSettings","settingsSelector","query","prefix","content","result","String","$this","is","toString","hasOwnProperty","forced","previous","cache","insert","args","preSelectedShortcode","mfpOptions","alignTop","closeOnBgClick","mainClass","items","src","callbacks","concat","tinyMCE","activeEditor","selection","getContent","format","last_used","editorID","editor","props","attributes","setAttributes","originalText","insertAtCaret","field","start","selectionStart","selectionEnd","substring","document","ready"],"mappings":"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","file":"index.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()","/* global jQuery, wp, ajaxurl, SUGL10n */\n\nwindow.SUG = {}\n\nwindow.SUG.App = (($) => {\n  var $generator = $('#su-generator')\n  var $search = $('#su-generator-search')\n  var $filter = $('#su-generator-filter')\n  var $filters = $filter.children('a')\n  var $choices = $('#su-generator-choices')\n  var $choice = $choices.find('span')\n  var $settings = $('#su-generator-settings')\n  var $prefix = $('#su-compatibility-mode-prefix')\n  var $result = $('#su-generator-result')\n  var $selected = $('#su-generator-selected')\n\n  var self = {}\n\n  self.state = {\n    mceSelection: '',\n    target: '',\n    wpActiveEditor: null,\n    context: '',\n    insertArgs: '',\n    preview: {\n      timer: null,\n      request: null\n    }\n  }\n\n  self.el = {\n    body: $('body')\n  }\n\n  self.init = () => {\n    $filters.click(\n      function (e) {\n        // Prepare data\n        var filter = $(this).data('filter')\n        // If filter All, show all choices\n        if (filter === 'all') {\n          $choice.css(\n            {\n              opacity: 1\n            }\n          ).removeClass('su-generator-choice-first')\n        } else { // Else run search\n          var regex = new RegExp(filter, 'gi')\n          // Hide all choices\n          $choice.css({ opacity: 0.2 })\n          // Find searched choices and show\n          $choice.each(\n            function () {\n              // Get shortcode name\n              var group = $(this).data('group')\n              // Show choice if matched\n              if (group.match(regex) !== null) {\n                $(this)\n                  .css({ opacity: 1 })\n                  .removeClass('su-generator-choice-first')\n              }\n            }\n          )\n        }\n        e.preventDefault()\n      }\n    )\n    // Go to home link\n    $('#su-generator').on(\n      'click',\n      '.su-generator-home',\n      function (e) {\n        // Clear search field\n        $search.val('')\n        // Hide settings\n        $settings.html('').hide()\n        // Remove narrow class\n        $generator.removeClass('su-generator-narrow')\n        // Show filters\n        $filter.show()\n        // Show choices panel\n        $choices.show()\n        $choice.show()\n        // Clear selection\n        self.state.mceSelection = ''\n        // Focus search field\n        $search.focus()\n        e.preventDefault()\n      }\n    )\n    // Generator close button\n    $('#su-generator').on(\n      'click',\n      '.su-generator-close',\n      function (e) {\n        // Close popup\n        $.magnificPopup.close()\n        // Prevent default action\n        e.preventDefault()\n      }\n    )\n    // Search field\n    $search.on(\n      {\n        focus: function () {\n          // Clear field\n          $(this).val('')\n          // Hide settings\n          $settings.html('').hide()\n          // Remove narrow class\n          $generator.removeClass('su-generator-narrow')\n          // Show choices panel\n          $choices.show()\n          $choice.css(\n            {\n              opacity: 1\n            }\n          ).removeClass('su-generator-choice-first')\n          // Show filters\n          $filter.show()\n        },\n        blur: function () {},\n        keyup: function (e) {\n          // Prepare vars\n          var $first = $('.su-generator-choice-first:first')\n          var val = $(this).val()\n          var regex = new RegExp(val, 'gi')\n          var best = 0\n          // Hotkey action\n          if (e.keyCode === 13 && $first.length > 0) {\n            e.preventDefault()\n            $(this).val('').blur()\n            $first.trigger('click')\n          }\n          // Hide all choices\n          $choice.css(\n            {\n              opacity: 0.2\n            }\n          ).removeClass('su-generator-choice-first')\n          // Loop and highlight choices\n          $choice.each(\n            function () {\n              // Get choice data\n              var data = $(this).data()\n              var id = data.shortcode\n              var name = data.name\n              var desc = data.desc\n              var group = data.group\n              var matches = ([id, name, desc, group].join(' ')).match(regex)\n              // Highlight choice if matched\n              if (matches !== null) {\n                // Highlight current choice\n                $(this).css(\n                  {\n                    opacity: 1\n                  }\n                )\n                // Check for exact match\n                if (val === id) {\n                  // Remove primary class from all choices\n                  $choice.removeClass('su-generator-choice-first')\n                  // Add primary class to the current choice\n                  $(this).addClass('su-generator-choice-first')\n                  // Prevent selecting by matches number\n                  best = 999\n                } else if (matches.length > best) { // Check matches length\n                  // Remove primary class from all choices\n                  $choice.removeClass('su-generator-choice-first')\n                  // Add primary class to the current choice\n                  $(this).addClass('su-generator-choice-first')\n                  // Save the score\n                  best = matches.length\n                }\n              }\n            }\n          )\n          // Remove primary class if search field is empty\n          if (val === '') {\n            $choice.removeClass('su-generator-choice-first')\n          }\n        }\n      }\n    )\n    // Click on shortcode choice\n    $choice.on(\n      'click',\n      function (e) {\n        // Prepare data\n        var shortcode = $(this).data('shortcode')\n        // Load shortcode options\n        $.ajax(\n          {\n            type: 'POST',\n            url: ajaxurl,\n            data: {\n              action: 'su_generator_settings',\n              shortcode: shortcode\n            },\n            beforeSend: function () {\n              // Hide preview box\n              $('#su-generator-preview').hide()\n              // Hide choices panel\n              $choices.hide()\n              // Show loading animation\n              $settings.addClass('su-generator-loading').show()\n              // Add narrow class\n              $generator.addClass('su-generator-narrow')\n              // Hide filters\n              $filter.hide()\n            },\n            success: function (data) {\n              // Hide loading animation\n              $settings.removeClass('su-generator-loading')\n              // Insert new HTML\n              $settings.html(data)\n              // Apply selected text to the content field\n              var $content = $('#su-generator-content')\n              if (typeof self.state.mceSelection !== 'undefined' && self.state.mceSelection !== '' && $content.attr('type') !== 'hidden') {\n                $content.val(self.state.mceSelection)\n              }\n              // Init range pickers\n              $('.su-generator-range-picker').each(\n                function (index) {\n                  var $picker = $(this)\n                  var $val = $picker.find('input')\n                  var min = $val.attr('min')\n                  var max = $val.attr('max')\n                  var step = $val.attr('step')\n                  // Apply noUIslider\n                  $val.simpleSlider(\n                    {\n                      snap: true,\n                      step: step,\n                      range: [min, max]\n                    }\n                  )\n                  $val.show()\n                  $val.on(\n                    'keyup blur',\n                    function (e) {\n                      $val.simpleSlider('setValue', $val.val())\n                    }\n                  )\n                }\n              )\n              // Init color pickers\n              $('.su-generator-select-color').each(\n                function (index) {\n                  $(this).find('.su-generator-select-color-wheel').filter(':first').farbtastic('.su-generator-select-color-value:eq(' + index + ')')\n                  $(this).find('.su-generator-select-color-value').focus(\n                    function () {\n                      $('.su-generator-select-color-wheel:eq(' + index + ')').show()\n                    }\n                  )\n                  $(this).find('.su-generator-select-color-value').blur(\n                    function () {\n                      $('.su-generator-select-color-wheel:eq(' + index + ')').hide()\n                    }\n                  )\n                }\n              )\n              // Init image sourse pickers\n              $('.su-generator-isp').each(\n                function () {\n                  var $picker = $(this)\n                  var $sources = $picker.find('.su-generator-isp-sources')\n                  var $source = $picker.find('.su-generator-isp-source')\n                  var $addMedia = $picker.find('.su-generator-isp-add-media')\n                  var $images = $picker.find('.su-generator-isp-images')\n                  var $cats = $picker.find('.su-generator-isp-categories')\n                  var $taxes = $picker.find('.su-generator-isp-taxonomies')\n                  var $terms = $('.su-generator-isp-terms')\n                  var $val = $picker.find('.su-generator-attr')\n                  var frame\n                  // Update hidden value\n                  var update = function () {\n                    var val = 'none'\n                    var ids = ''\n                    var source = $sources.val()\n                    // Media library\n                    if (source === 'media') {\n                      var images = []\n                      $images.find('span').each(\n                        function (i) {\n                          images[i] = $(this).data('id')\n                        }\n                      )\n                      if (images.length > 0) {\n                        ids = images.join(',')\n                      }\n                    }\n                    // Category\n                    else if (source === 'category') {\n                      var categories = $cats.val() || []\n                      if (categories.length > 0) {\n                        ids = categories.join(',')\n                      }\n                    }\n                    // Taxonomy\n                    else if (source === 'taxonomy') {\n                      var tax = $taxes.val() || ''\n                      var terms = $terms.val() || []\n                      if (tax !== '0' && terms.length > 0) {\n                        val = 'taxonomy: ' + tax + '/' + terms.join(',')\n                      }\n                    }\n                    // Deselect\n                    else if (source === '0') {\n                      val = 'none'\n                    }\n                    // Other options\n                    else {\n                      val = source\n                    }\n                    if (ids !== '') {\n                      val = source + ': ' + ids\n                    }\n                    $val.val(val).trigger('change')\n                  }\n                  // Switch source\n                  $sources.on(\n                    'change',\n                    function (e) {\n                      var source = $(this).val()\n                      e.preventDefault()\n                      $source.removeClass('su-generator-isp-source-open')\n                      if (source.indexOf(':') === -1) {\n                        $picker.find('.su-generator-isp-source-' + source).addClass('su-generator-isp-source-open')\n                      }\n                      update()\n                    }\n                  )\n                  // Remove image\n                  $images.on(\n                    'click',\n                    'span i',\n                    function () {\n                      $(this).parent('span').css('border-color', '#f03').fadeOut(\n                        300,\n                        function () {\n                          $(this).remove()\n                          update()\n                        }\n                      )\n                    }\n                  )\n                  // Add image\n                  $addMedia.click(\n                    function (e) {\n                      e.preventDefault()\n                      if (typeof (frame) !== 'undefined') {\n                        frame.close()\n                      }\n                      frame = wp.media.frames.su_media_frame_1 = wp.media(\n                        {\n                          title: SUGL10n.isp_media_title,\n                          library: {\n                            type: 'image'\n                          },\n                          button: {\n                            text: SUGL10n.isp_media_insert\n                          },\n                          multiple: true\n                        }\n                      )\n                      frame.on('open', function () {\n                        $('.mfp-wrap').addClass('hidden')\n                      })\n                      frame.on('close', function () {\n                        $('.mfp-wrap').removeClass('hidden')\n                      })\n                      frame.on(\n                        'select',\n                        function () {\n                          var files = frame.state().get('selection').toJSON()\n                          $images.find('em').remove()\n                          $.each(\n                            files,\n                            function (i) {\n                              $images.append('<span data-id=\"' + this.id + '\" title=\"' + this.title + '\"><img src=\"' + this.url + '\" alt=\"\" /><i class=\"sui sui-times\"></i></span>')\n                            }\n                          )\n                          update()\n                        }\n                      ).open()\n                    }\n                  )\n                  // Sort images\n                  $images.sortable(\n                    {\n                      revert: 200,\n                      containment: $picker,\n                      tolerance: 'pointer',\n                      stop: function () {\n                        update()\n                      }\n                    }\n                  )\n                  // Select categories and terms\n                  $cats.on('change', update)\n                  $terms.on('change', update)\n                  // Select taxonomy\n                  $taxes.on(\n                    'change',\n                    function () {\n                      var $cont = $(this).parents('.su-generator-isp-source')\n                      var tax = $(this).val()\n                      // Remove terms\n                      $terms.hide().find('option').remove()\n                      update()\n                      // Taxonomy is not selected\n                      if (tax === '0') {\n\n                      } else { // Taxonomy selected\n                        var ajaxTermSelect = $.ajax(\n                          {\n                            url: ajaxurl,\n                            type: 'post',\n                            dataType: 'html',\n                            data: {\n                              action: 'su_generator_get_terms',\n                              tax: tax,\n                              class: 'su-generator-isp-terms',\n                              multiple: true,\n                              size: 10\n                            },\n                            beforeSend: function () {\n                              if (typeof ajaxTermSelect === 'object') {\n                                ajaxTermSelect.abort()\n                              }\n                              $terms.html('').attr('disabled', true).hide()\n                              $cont.addClass('su-generator-loading')\n                            },\n                            success: function (data) {\n                              $terms.html(data).attr('disabled', false).show()\n                              $cont.removeClass('su-generator-loading')\n                            }\n                          }\n                        )\n                      }\n                    }\n                  )\n                }\n              )\n              // Init media buttons\n              $('.su-generator-upload-button').each(\n                function () {\n                  var $button = $(this)\n                  var $val = $(this).parents('.su-generator-attr-container').find('input:text')\n                  var file\n                  $button.on(\n                    'click',\n                    function (e) {\n                      e.preventDefault()\n                      e.stopPropagation()\n                      // If the frame already exists, reopen it\n                      if (typeof (file) !== 'undefined') {\n                        file.close()\n                      }\n                      // Create WP media frame.\n                      file = wp.media.frames.su_media_frame_2 = wp.media(\n                        {\n                          // Title of media manager frame\n                          title: SUGL10n.upload_title,\n                          button: {\n                            // Button text\n                            text: SUGL10n.upload_insert\n                          },\n                          // Do not allow multiple files, if you want multiple, set true\n                          multiple: false\n                        }\n                      )\n                      // callback for selected image\n                      file.on(\n                        'select',\n                        function () {\n                          var attachment = file.state().get('selection').first().toJSON()\n                          $val.val(attachment.url).trigger('change')\n                        }\n                      )\n                      file.on('open', function () {\n                        $('.mfp-wrap').addClass('hidden')\n                      })\n                      file.on('close', function () {\n                        $('.mfp-wrap').removeClass('hidden')\n                      })\n                      // Open modal\n                      file.open()\n                    }\n                  )\n                }\n              )\n              // Init icon pickers\n              $('.su-generator-icon-picker-button').each(\n                function () {\n                  var $button = $(this)\n                  var $field = $(this).parents('.su-generator-attr-container')\n                  var $val = $field.find('.su-generator-attr')\n                  var $picker = $field.find('.su-generator-icon-picker')\n                  var $filter = $picker.find('input:text')\n                  $button.click(\n                    function (e) {\n                      $picker.toggleClass('su-generator-icon-picker-visible')\n                      $filter.val('').trigger('keyup')\n                      if ($picker.hasClass('su-generator-icon-picker-loaded')) {\n                        return\n                      }\n                      // Load icons\n                      $.ajax(\n                        {\n                          type: 'post',\n                          url: ajaxurl,\n                          data: {\n                            action: 'su_generator_get_icons'\n                          },\n                          dataType: 'html',\n                          beforeSend: function () {\n                            // Show loading animation\n                            $picker.addClass('su-generator-loading')\n                            // Add loaded class\n                            $picker.addClass('su-generator-icon-picker-loaded')\n                          },\n                          success: function (data) {\n                            $picker.append(data)\n                            var $icons = $picker.children('i')\n                            $icons.click(\n                              function (e) {\n                                $val.val('icon: ' + $(this).attr('title'))\n                                $picker.removeClass('su-generator-icon-picker-visible')\n                                $val.trigger('change')\n                                e.preventDefault()\n                              }\n                            )\n                            $filter.on(\n                              {\n                                keyup: function () {\n                                  var val = $(this).val()\n                                  var regex = new RegExp(val, 'gi')\n                                  // Hide all choices\n                                  $icons.hide()\n                                  // Find searched choices and show\n                                  $icons.each(\n                                    function () {\n                                      // Get shortcode name\n                                      var name = $(this).attr('title')\n                                      // Show choice if matched\n                                      if (name.match(regex) !== null) {\n                                        $(this).show()\n                                      }\n                                    }\n                                  )\n                                },\n                                focus: function () {\n                                  $(this).val('')\n                                  $icons.show()\n                                }\n                              }\n                            )\n                            $picker.removeClass('su-generator-loading')\n                          }\n                        }\n                      )\n                      e.preventDefault()\n                    }\n                  )\n                }\n              )\n              // Init switches\n              $('.su-generator-switch').click(\n                function (e) {\n                  // Prepare data\n                  var $switch = $(this)\n                  var $value = $switch.parent().children('input')\n                  var isOn = $value.val() === 'yes'\n                  // Disable\n                  if (isOn) {\n                    // Change value\n                    $value.val('no').trigger('change')\n                  } else { // Enable\n                    // Change value\n                    $value.val('yes').trigger('change')\n                  }\n                  e.preventDefault()\n                }\n              )\n              $('.su-generator-switch-value').on(\n                'change',\n                function () {\n                  // Prepare data\n                  var $value = $(this)\n                  var $switch = $value.parent().children('.su-generator-switch')\n                  var value = $value.val()\n                  // Disable\n                  if (value === 'yes') {\n                    $switch.removeClass('su-generator-switch-no').addClass('su-generator-switch-yes')\n                  } else if (value === 'no') { // Enable\n                    $switch.removeClass('su-generator-switch-yes').addClass('su-generator-switch-no')\n                  }\n                }\n              )\n              // Init tax_term selects\n              $('select#su-generator-attr-taxonomy').on(\n                'change',\n                function () {\n                  var $taxonomy = $(this)\n                  var tax = $taxonomy.val()\n                  var $terms = $('select#su-generator-attr-tax_term')\n                  // Load new options\n                  window.su_generator_get_terms = $.ajax(\n                    {\n                      type: 'POST',\n                      url: ajaxurl,\n                      data: {\n                        action: 'su_generator_get_terms',\n                        tax: tax,\n                        noselect: true\n                      },\n                      dataType: 'html',\n                      beforeSend: function () {\n                        // Check previous requests\n                        if (typeof window.su_generator_get_terms === 'object') {\n                          window.su_generator_get_terms.abort()\n                        }\n                        // Show loading animation\n                        $terms.parent().addClass('su-generator-loading')\n                      },\n                      success: function (data) {\n                        // Remove previous options\n                        $terms.find('option').remove()\n                        // Append new options\n                        $terms.append(data)\n                        // Hide loading animation\n                        $terms.parent().removeClass('su-generator-loading')\n                      }\n                    }\n                  )\n                }\n              )\n              // Init shadow pickers\n              $('.su-generator-shadow-picker').each(\n                function (index) {\n                  var $picker = $(this)\n                  var $fields = $picker.find('.su-generator-shadow-picker-field input')\n                  var $hoff = $picker.find('.su-generator-sp-hoff')\n                  var $voff = $picker.find('.su-generator-sp-voff')\n                  var $blur = $picker.find('.su-generator-sp-blur')\n                  var $color = {\n                    cnt: $picker.find('.su-generator-shadow-picker-color'),\n                    value: $picker.find('.su-generator-shadow-picker-color-value'),\n                    wheel: $picker.find('.su-generator-shadow-picker-color-wheel')\n                  }\n                  var $val = $picker.find('.su-generator-attr')\n                  // Init color picker\n                  $color.wheel.farbtastic($color.value)\n                  $color.value.focus(\n                    function () {\n                      $color.wheel.show()\n                    }\n                  )\n                  $color.value.blur(\n                    function () {\n                      $color.wheel.hide()\n                    }\n                  )\n                  // Handle text fields\n                  $fields.on(\n                    'change blur keyup',\n                    function () {\n                      $val.val($hoff.val() + 'px ' + $voff.val() + 'px ' + $blur.val() + 'px ' + $color.value.val()).trigger('change')\n                    }\n                  )\n                  $val.on(\n                    'keyup',\n                    function () {\n                      var value = $(this).val().split(' ')\n                      // Value is correct\n                      if (value.length === 4) {\n                        $hoff.val(value[0].replace('px', ''))\n                        $voff.val(value[1].replace('px', ''))\n                        $blur.val(value[2].replace('px', ''))\n                        $color.value.val(value[3])\n                        $fields.trigger('keyup')\n                      }\n                    }\n                  )\n                }\n              )\n              // Init border pickers\n              $('.su-generator-border-picker').each(\n                function (index) {\n                  var $picker = $(this)\n                  var $fields = $picker.find('.su-generator-border-picker-field input, .su-generator-border-picker-field select')\n                  var $width = $picker.find('.su-generator-bp-width')\n                  var $style = $picker.find('.su-generator-bp-style')\n                  var $color = {\n                    cnt: $picker.find('.su-generator-border-picker-color'),\n                    value: $picker.find('.su-generator-border-picker-color-value'),\n                    wheel: $picker.find('.su-generator-border-picker-color-wheel')\n                  }\n                  var $val = $picker.find('.su-generator-attr')\n                  // Init color picker\n                  $color.wheel.farbtastic($color.value)\n                  $color.value.focus(\n                    function () {\n                      $color.wheel.show()\n                    }\n                  )\n                  $color.value.blur(\n                    function () {\n                      $color.wheel.hide()\n                    }\n                  )\n                  // Handle text fields\n                  $fields.on(\n                    'change blur keyup',\n                    function () {\n                      $val.val($width.val() + 'px ' + $style.val() + ' ' + $color.value.val()).trigger('change')\n                    }\n                  )\n                  $val.on(\n                    'keyup',\n                    function () {\n                      var value = $(this).val().split(' ')\n                      // Value is correct\n                      if (value.length === 3) {\n                        $width.val(value[0].replace('px', ''))\n                        $style.val(value[1])\n                        $color.value.val(value[2])\n                        $fields.trigger('keyup')\n                      }\n                    }\n                  )\n                }\n              )\n              // Remove skip class when setting is changed\n              $settings.find('.su-generator-attr').on(\n                'change keyup blur',\n                function () {\n                  var $cnt = $(this).parents('.su-generator-attr-container')\n                  var _default = $cnt.data('default')\n                  var val = $(this).val()\n                  // Value is changed\n                  if (val != _default) {\n                    $cnt.removeClass('su-generator-skip')\n                  } else {\n                    $cnt.addClass('su-generator-skip')\n                  }\n                }\n              )\n              // Init value setters\n              $('.su-generator-set-value').click(\n                function (e) {\n                  $(this).parents('.su-generator-attr-container').find('input').val($(this).text()).trigger('change')\n                }\n              )\n              // Save selected value\n              $selected.val(shortcode)\n              // Load last used preset\n              $.ajax(\n                {\n                  type: 'GET',\n                  url: ajaxurl,\n                  data: {\n                    action: 'su_generator_get_preset',\n                    id: 'last_used',\n                    shortcode: shortcode\n                  },\n                  beforeSend: function () {\n                    // Show loading animation\n                    // $settings.addClass('su-generator-loading');\n                  },\n                  success: function (data) {\n                    // Remove loading animation\n                    // $settings.removeClass('su-generator-loading');\n                    // Set new settings\n                    self.setSettings(data)\n                    // Apply selected text to the content field\n                    var $content = $('#su-generator-content')\n                    if (typeof self.state.mceSelection !== 'undefined' && self.state.mceSelection !== '' && $content.attr('type') !== 'hidden') {\n                      $content.val(self.state.mceSelection)\n                    }\n                  },\n                  dataType: 'json'\n                }\n              )\n            },\n            dataType: 'html'\n          }\n        )\n      }\n    )\n    // Insert shortcode\n    $('#su-generator').on('click', '.su-generator-insert', self.insertShortcode)\n    // Preview shortcode\n    $('#su-generator').on(\n      'click',\n      '.su-generator-toggle-preview',\n      function (e) {\n        // Prepare data\n        var $preview = $('#su-generator-preview')\n        var $button = $(this)\n        // Hide button\n        $button.hide()\n        // Show preview box\n        $preview.addClass('su-generator-loading').show()\n        // Bind updating on settings changes\n        $settings.find('input, textarea, select').on(\n          'change keyup blur',\n          function () {\n            self.updatePreview()\n          }\n        )\n        // Update preview box\n        self.updatePreview(true)\n        // Prevent default action\n        e.preventDefault()\n      }\n    )\n    var gp_hover_timer\n    // Presets manager - mouseenter\n    $('#su-generator').on(\n      'mouseenter click',\n      '.su-generator-presets',\n      function () {\n        clearTimeout(gp_hover_timer)\n        $('.su-gp-popup').show()\n      }\n    )\n    // Presets manager - mouseleave\n    $('#su-generator').on(\n      'mouseleave',\n      '.su-generator-presets',\n      function () {\n        gp_hover_timer = window.setTimeout(\n          function () {\n            $('.su-gp-popup').fadeOut(200)\n          },\n          600\n        )\n      }\n    )\n    // Presets manager - add new preset\n    $('#su-generator').on(\n      'click',\n      '.su-gp-new',\n      function (e) {\n        // Prepare data\n        var $container = $(this).parents('.su-generator-presets')\n        var $list = $('.su-gp-list')\n        var id = new Date().getTime()\n        // Ask for preset name\n        var name = prompt(SUGL10n.presets_prompt_msg, SUGL10n.presets_prompt_value)\n        // Name is entered\n        if (name !== '' && name !== null) {\n          // Hide default text\n          $list.find('b').hide()\n          // Add new option\n          $list.append('<span data-id=\"' + id + '\"><em>' + name + '</em><i class=\"sui sui-times\"></i></span>')\n          // Perform AJAX request\n          self.addPreset(id, name)\n        }\n      }\n    )\n    // Presets manager - load preset\n    $('#su-generator').on(\n      'click',\n      '.su-gp-list span',\n      function (e) {\n        // Prepare data\n        var shortcode = $('.su-generator-presets').data('shortcode')\n        var id = $(this).data('id')\n        var $insert = $('.su-generator-insert')\n        // Hide popup\n        $('.su-gp-popup').hide()\n        // Disable hover timer\n        clearTimeout(gp_hover_timer)\n        // Get the preset\n        $.ajax(\n          {\n            type: 'GET',\n            url: ajaxurl,\n            data: {\n              action: 'su_generator_get_preset',\n              id: id,\n              shortcode: shortcode\n            },\n            beforeSend: function () {\n              // Disable insert button\n              $insert.addClass('button-primary-disabled').attr('disabled', true)\n            },\n            success: function (data) {\n              // Enable insert button\n              $insert.removeClass('button-primary-disabled').attr('disabled', false)\n              // Set new settings\n              self.setSettings(data)\n            },\n            dataType: 'json'\n          }\n        )\n        // Prevent default action\n        e.preventDefault()\n        e.stopPropagation()\n      }\n    )\n    // Presets manager - remove preset\n    $('#su-generator').on(\n      'click',\n      '.su-gp-list i',\n      function (e) {\n        // Prepare data\n        var $list = $(this).parents('.su-gp-list')\n        var $preset = $(this).parent('span')\n        var id = $preset.data('id')\n        // Remove DOM element\n        $preset.remove()\n        // Show default text if last preset was removed\n        if ($list.find('span').length < 1) {\n          $list.find('b').show()\n        }\n        // Perform ajax request\n        self.removePreset(id)\n        // Prevent <span> action\n        e.stopPropagation()\n        // Prevent default action\n        e.preventDefault()\n      }\n    )\n  }\n\n  /**\n\t * Create new preset with specified name from current settings\n\t */\n  self.addPreset = function (id, name) {\n    // Prepare shortcode name and current settings\n    var shortcode = $('.su-generator-presets').data('shortcode')\n    var settings = self.getSettings()\n    // Perform AJAX request\n    $.ajax(\n      {\n        type: 'POST',\n        url: ajaxurl,\n        data: {\n          action: 'su_generator_add_preset',\n          id: id,\n          name: name,\n          shortcode: shortcode,\n          settings: settings\n        }\n      }\n    )\n  }\n  /**\n\t * Remove preset by ID\n\t */\n  self.removePreset = function (id) {\n    // Get current shortcode name\n    var shortcode = $('.su-generator-presets').data('shortcode')\n    // Perform AJAX request\n    $.ajax(\n      {\n        type: 'POST',\n        url: ajaxurl,\n        data: {\n          action: 'su_generator_remove_preset',\n          id: id,\n          shortcode: shortcode\n        }\n      }\n    )\n  }\n\n  self.parseSettings = function () {\n    var settingsSelector = $('#su-generator-option-skip').val() === 'on'\n      ? '#su-generator-settings .su-generator-attr-container:not(.su-generator-skip) .su-generator-attr'\n      : '#su-generator-settings .su-generator-attr-container .su-generator-attr'\n    // Prepare data\n    var query = $selected.val()\n    var prefix = $prefix.val()\n    var $settings = $(settingsSelector)\n    var $content = $('textarea#su-generator-content')\n    var content = $content.length ? $content.val() : 'false'\n    var result = new String('')\n    // Open shortcode\n    result += '[' + prefix + query\n    // Add shortcode attributes\n    $settings.each(\n      function () {\n        // Prepare field and value\n        var $this = $(this)\n        var value = ''\n        // Selects\n        if ($this.is('select')) {\n          value = $this.find('option:selected').val()\n        }\n        // Other fields\n        else {\n          value = $this.val()\n        }\n        // Check that value is not empty\n        if (value == null) {\n          value = ''\n        } else if (typeof value === 'array') {\n          value = value.join(',')\n        }\n        // Add attribute\n        if (value !== '') {\n          result += ' ' + $(this).attr('name') + '=\"' + $(this).val().toString().replace(/\"/gi, \"'\") + '\"'\n        }\n      }\n    )\n    // End of opening tag\n    result += ']'\n    // Wrap shortcode if content presented\n    if (content != 'false') {\n      result += content + '[/' + prefix + query + ']'\n    }\n    // Return result\n    return result\n  }\n\n  self.getSettings = function () {\n    // Prepare data\n    var query = $selected.val()\n    var $settings = $('#su-generator-settings .su-generator-attr')\n    var $content = $('textarea#su-generator-content')\n    var content = $content.length ? $content.val() : 'false'\n    var data = {}\n    // Add shortcode attributes\n    $settings.each(\n      function (i) {\n        // Prepare field and value\n        var $this = $(this)\n        var value = ''\n        var name = $this.attr('name')\n        // Selects\n        if ($this.is('select')) {\n          value = $this.find('option:selected').val()\n        }\n        // Other fields\n        else {\n          value = $this.val()\n        }\n        // Check that value is not empty\n        if (value == null) {\n          value = ''\n        }\n        // Save value\n        data[name] = value\n      }\n    )\n    // Add content\n    data.content = content.toString()\n    // Return data\n    return data\n  }\n\n  self.setSettings = function (data) {\n    // Prepare data\n    var $settings = $('#su-generator-settings .su-generator-attr')\n    var $content = $('#su-generator-content')\n    // Loop through settings\n    $settings.each(\n      function () {\n        var $this = $(this)\n        var name = $this.attr('name')\n        // Data contains value for this field\n        if (data.hasOwnProperty(name)) {\n          // Set new value\n          $this.val(data[name])\n          $this.trigger('keyup').trigger('change').trigger('blur')\n        }\n      }\n    )\n    // Set content\n    if (data.hasOwnProperty('content')) {\n      $content.val(data.content).trigger('keyup').trigger('change').trigger('blur')\n    }\n    // Update preview\n    self.updatePreview()\n  }\n\n  self.updatePreview = function (forced) {\n    // Prepare data\n    var $preview = $('#su-generator-preview')\n    var shortcode = self.parseSettings()\n    var previous = $result.text()\n    // Check forced mode\n    forced = forced || false\n    // Break if preview box is hidden (preview isn't enabled)\n    if (!$preview.is(':visible')) {\n      return\n    }\n    // Check shortcode is changed is this is not a forced mode\n    if (shortcode === previous && !forced) {\n      return\n    }\n    // Run timer to filter often calls\n    window.clearTimeout(self.state.preview.timer)\n    self.state.preview.timer = window.setTimeout(\n      function () {\n        self.state.preview.request = $.ajax(\n          {\n            type: 'POST',\n            url: ajaxurl,\n            cache: false,\n            data: {\n              action: 'su_generator_preview',\n              shortcode: shortcode\n            },\n            beforeSend: function () {\n              // Abort previous requests\n              if (self.state.preview.request) {\n                self.state.preview.request.abort()\n              }\n              // Show loading animation\n              $preview.addClass('su-generator-loading').html('')\n            },\n            success: function (data) {\n              // Hide loading animation and set new HTML\n              $preview.html(data).removeClass('su-generator-loading')\n            },\n            dataType: 'html'\n          }\n        )\n      },\n      300\n    )\n    // Save shortcode to div\n    $result.text(shortcode)\n  }\n\n  self.insert = function (context, args) {\n    if (typeof context !== 'string' || typeof args !== 'object') {\n      return\n    }\n\n    self.state.context = context\n    self.state.insertArgs = args\n\n    var preSelectedShortcode = args.shortcode || ''\n\n    var mfpOptions = {\n      type: 'inline',\n      alignTop: true,\n      closeOnBgClick: false,\n      mainClass: 'su-generator-mfp',\n      items: {\n        src: '#su-generator'\n      },\n      callbacks: {}\n    }\n\n    mfpOptions.callbacks.open = () => {\n      if (preSelectedShortcode) {\n        $choice.filter(`[data-shortcode=\"${preSelectedShortcode}\"]`).trigger('click')\n      } else {\n        window.setTimeout(() => $search.focus(), 200)\n      }\n\n      // self.el.body.addClass( 'su-mfp-shown' );\n\n      if (\n        typeof tinyMCE !== 'undefined' &&\n\t\t\t\ttinyMCE.activeEditor != null &&\n\t\t\t\ttinyMCE.activeEditor.hasOwnProperty('selection')\n      ) {\n        self.state.mceSelection = tinyMCE.activeEditor.selection.getContent({ format: 'text' })\n      }\n    }\n\n    mfpOptions.callbacks.close = () => {\n      $search.val('')\n      $settings.html('').hide()\n      $generator.removeClass('su-generator-narrow')\n      $filter.show()\n      $choices.show()\n      $choice.show()\n\n      self.state.mceSelection = ''\n\n      // self.el.body.removeClass( 'su-mfp-shown' );\n    }\n\n    $.magnificPopup.open(mfpOptions)\n  }\n\n  self.insertShortcode = function () {\n    var shortcode = self.parseSettings()\n\n    self.addPreset('last_used', SUGL10n.last_used)\n\n    $.magnificPopup.close()\n\n    $result.text(shortcode)\n\n    if (self.state.context === 'classic') {\n      self.state.wpActiveEditor = window.wpActiveEditor\n      window.wpActiveEditor = self.state.insertArgs.editorID\n      window.wp.media.editor.insert(shortcode)\n      window.wpActiveEditor = self.state.wpActiveEditor\n    } else if (self.state.context === 'block') {\n      var props = self.state.insertArgs.props\n\n      if (props.attributes.hasOwnProperty('content')) {\n        props.setAttributes({ content: props.attributes.content + shortcode })\n      } else if (props.name === 'core/shortcode') {\n        var originalText = props.attributes.hasOwnProperty('text')\n          ? props.attributes.text\n          : ''\n\n        props.setAttributes({ text: originalText + shortcode })\n\n        // var textarea = document.querySelector( `#block-${props.clientId} textarea` );\n        // self.insertAtCaret( textarea, shortcode );\n      }\n    }\n  }\n\n  self.insertAtCaret = (field, text) => {\n    var start = field.selectionStart\n    var end = field.selectionEnd\n\n    field.value = field.value.substring(0, start) + text + field.value.substring(start)\n\n    field.focus()\n\n    field.selectionStart = start + text.length\n  }\n\n  return {\n    init: self.init,\n    insert: self.insert\n  }\n})(jQuery)\n\njQuery(document).ready(window.SUG.App.init)\n"]}

Hry