/******/ (() => { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ "./src/advanced-custom-fields-pro/assets/src/js/pro/_acf-ui-options-page.js": /*!**********************************************************************************!*\ !*** ./src/advanced-custom-fields-pro/assets/src/js/pro/_acf-ui-options-page.js ***! \**********************************************************************************/ /***/ (() => { (function ($, undefined) { const parentPageSelectTemplate = function (selection) { if ('undefined' === typeof selection.element) { return selection; } // Hides the optgroup for the "No Parent" option. if (selection.children && 'None' === selection.text) { return; } if ('acfOptionsPages' === selection.text) { selection.text = acf.__('Options Pages'); } return $('').data('element', selection.element).html(acf.escHtml(selection.text)); }; const defaultPillTemplate = function (selection) { if ('undefined' === typeof selection.element) { return selection; } const $selection = $(''); $selection.html(acf.escHtml(selection.element.innerHTML)); if (selection.id === 'options' || selection.id === 'edit_posts') { $selection.append('' + acf.__('Default') + ''); } $selection.data('element', selection.element); return $selection; }; const UIOptionsPageManager = new acf.Model({ id: 'UIOptionsPageManager', wait: 'ready', events: { 'change .acf-options-page-parent_slug': 'toggleMenuPositionDesc' }, initialize: function () { if ('ui_options_page' !== acf.get('screen')) { return; } acf.newSelect2($('select.acf-options-page-parent_slug'), { field: false, templateSelection: parentPageSelectTemplate, templateResult: parentPageSelectTemplate, dropdownCssClass: 'field-type-select-results' }); acf.newSelect2($('select.acf-options-page-capability'), { field: false, templateSelection: defaultPillTemplate, templateResult: defaultPillTemplate }); acf.newSelect2($('select.acf-options-page-data_storage'), { field: false, templateSelection: defaultPillTemplate, templateResult: defaultPillTemplate }); this.toggleMenuPositionDesc(); }, toggleMenuPositionDesc: function (e, $el) { const parentPage = $('select.acf-options-page-parent_slug').val(); if ('none' === parentPage) { $('.acf-menu-position-desc-child').hide(); $('.acf-menu-position-desc-parent').show(); } else { $('.acf-menu-position-desc-parent').hide(); $('.acf-menu-position-desc-child').show(); } } }); const optionsPageModalManager = new acf.Model({ id: 'optionsPageModalManager', events: { 'change .location-rule-value': 'createOptionsPage' }, createOptionsPage: function (e) { const $locationSelect = $(e.target); if ('add_new_options_page' !== $locationSelect.val()) { return; } let popup = false; const getForm = function () { const fieldGroupTitle = $('.acf-headerbar-title-field').val(); const ajaxData = { action: 'acf/create_options_page', acf_parent_page_choices: this.acf.data.optionPageParentOptions ? this.acf.data.optionPageParentOptions : [] }; if (fieldGroupTitle.length) { ajaxData.field_group_title = fieldGroupTitle; } $.ajax({ url: acf.get('ajaxurl'), data: acf.prepareForAjax(ajaxData), type: 'post', dataType: 'json', success: populateForm }); }; const populateForm = function (response) { popup = acf.newPopup({ title: response.data.title, content: response.data.content, width: '600px' }); popup.$el.addClass('acf-create-options-page-popup'); // Hack to focus with the cursor at the end of the input. const $pageTitle = popup.$el.find('#acf_ui_options_page-page_title'); const pageTitleVal = $pageTitle.val(); $pageTitle.focus().val('').val(pageTitleVal); acf.newSelect2($('#acf_ui_options_page-parent_slug'), { field: false, templateSelection: parentPageSelectTemplate, templateResult: parentPageSelectTemplate, dropdownCssClass: 'field-type-select-results' }); popup.on('submit', 'form', validateForm); }; const validateForm = function (e) { e.preventDefault(); acf.validateForm({ form: $('#acf-create-options-page-form'), success: submitForm, failure: onFail }); }; const submitForm = function () { const formValues = $('#acf-create-options-page-form').serializeArray(); const ajaxData = { action: 'acf/create_options_page' }; formValues.forEach(setting => { ajaxData[setting.name] = setting.value; }); $.ajax({ url: acf.get('ajaxurl'), data: acf.prepareForAjax(ajaxData), type: 'post', dataType: 'json', success: populateLocationSelect }); }; const onFail = function (e) { const $form = $('#acf-create-options-page-form'); const $fieldNotices = $form.find('.acf-field .acf-error-message'); // Hide the general validation failed notice. $form.find('.acf-notice').first().remove(); // Update class for inline notices and move into field label. $fieldNotices.each(function () { const $label = $(this).closest('.acf-field').find('.acf-label:first'); $(this).attr('class', 'acf-options-page-modal-error').appendTo($label); }); }; const populateLocationSelect = function (response) { if (response.success && response.data.menu_slug) { $locationSelect.prepend(''); $locationSelect.val(response.data.menu_slug); popup.close(); } else if (!response.success && response.data.error) { alert(response.data.error); } }; getForm(); } }); })(jQuery); /***/ }) /******/ }); /************************************************************************/ /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ var cachedModule = __webpack_module_cache__[moduleId]; /******/ if (cachedModule !== undefined) { /******/ return cachedModule.exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* webpack/runtime/compat get default export */ /******/ (() => { /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = (module) => { /******/ var getter = module && module.__esModule ? /******/ () => (module['default']) : /******/ () => (module); /******/ __webpack_require__.d(getter, { a: getter }); /******/ return getter; /******/ }; /******/ })(); /******/ /******/ /* webpack/runtime/define property getters */ /******/ (() => { /******/ // define getter functions for harmony exports /******/ __webpack_require__.d = (exports, definition) => { /******/ for(var key in definition) { /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); /******/ } /******/ } /******/ }; /******/ })(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ /******/ (() => { /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) /******/ })(); /******/ /******/ /* webpack/runtime/make namespace object */ /******/ (() => { /******/ // define __esModule on exports /******/ __webpack_require__.r = (exports) => { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ })(); /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry need to be wrapped in an IIFE because it need to be in strict mode. (() => { "use strict"; /*!*************************************************************************************!*\ !*** ./src/advanced-custom-fields-pro/assets/src/js/pro/acf-pro-ui-options-page.js ***! \*************************************************************************************/ __webpack_require__.r(__webpack_exports__); /* harmony import */ var _acf_ui_options_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./_acf-ui-options-page */ "./src/advanced-custom-fields-pro/assets/src/js/pro/_acf-ui-options-page.js"); /* harmony import */ var _acf_ui_options_page__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_acf_ui_options_page__WEBPACK_IMPORTED_MODULE_0__); })(); /******/ })() ; //# sourceMappingURL=acf-pro-ui-options-page.js.map