From c8353273f1cc9d4743d04fe274835c20b9441765 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 11 Mar 2025 11:19:23 +0300 Subject: [PATCH 001/230] Init --- .eslintignore | 2 +- classes/controllers/FrmAppController.php | 6 + classes/controllers/FrmStylesController.php | 1 - .../styles/components/FrmStyleComponent.php | 40 +- ...onents.css => frm-settings-components.css} | 2 +- js/formidable-settings-components.js | 4390 +++++++++++++++++ js/formidable-settings-components.js.map | 1 + js/formidable_styles.js | 1 - js/formidable_styles.js.map | 1 - .../dependent-updater-component.js | 6 +- .../components/radio-component.js} | 6 +- .../components/slider-component.js} | 24 +- .../components/tabs-component.js} | 8 +- .../settings-components.js} | 34 +- webpack.config.js | 2 +- 15 files changed, 4455 insertions(+), 69 deletions(-) rename css/admin/{style-components.css => frm-settings-components.css} (99%) create mode 100644 js/formidable-settings-components.js create mode 100644 js/formidable-settings-components.js.map delete mode 100644 js/formidable_styles.js delete mode 100644 js/formidable_styles.js.map rename js/src/{admin/styles => settings-components/components}/dependent-updater-component.js (93%) rename js/src/{admin/styles/radio-style-component.js => settings-components/components/radio-component.js} (96%) rename js/src/{admin/styles/slider-style-component.js => settings-components/components/slider-component.js} (96%) rename js/src/{admin/styles/tabs-style-component.js => settings-components/components/tabs-component.js} (85%) rename js/src/{admin/styles.js => settings-components/settings-components.js} (79%) diff --git a/.eslintignore b/.eslintignore index e919e75fd9..00edff8975 100644 --- a/.eslintignore +++ b/.eslintignore @@ -5,7 +5,7 @@ **/formidable_overlay.js **/formidable_dashboard.js **/formidable-templates.js -**/formidable_styles.js +**/settings-components.js **/node_modules/** **/vendor/** diff --git a/classes/controllers/FrmAppController.php b/classes/controllers/FrmAppController.php index 9621074227..cc45854d30 100644 --- a/classes/controllers/FrmAppController.php +++ b/classes/controllers/FrmAppController.php @@ -667,6 +667,7 @@ public static function admin_js() { wp_register_style( 'formidable-admin', $plugin_url . '/css/frm_admin.css', array(), $version ); wp_register_style( 'formidable-grids', $plugin_url . '/css/frm_grids.css', array(), $version ); + wp_register_style( 'formidable-settings-components', $plugin_url . '/css/admin/frm-settings-components.css', array( 'formidable-admin', 'formidable-grids' ), $version ); wp_register_script( 'formidable_dom', $plugin_url . '/js/admin/dom.js', array( 'jquery', 'jquery-ui-dialog', 'wp-i18n' ), $version, true ); wp_register_script( 'formidable_embed', $plugin_url . '/js/admin/embed.js', array( 'formidable_dom', 'jquery-ui-autocomplete' ), $version, true ); @@ -704,6 +705,7 @@ public static function admin_js() { } wp_register_script( 'formidable_admin', $plugin_url . '/js/formidable_admin.js', $dependencies, $version, true ); + wp_register_script( 'formidable-settings-components', $plugin_url . '/js/formidable-settings-components.js', array( 'formidable_admin' ), $version, true ); if ( FrmAppHelper::on_form_listing_page() ) { // For the existing page dropdown in the Form embed modal. @@ -734,12 +736,16 @@ public static function admin_js() { self::maybe_deregister_popper2(); wp_enqueue_script( 'formidable_admin' ); wp_set_script_translations( 'formidable_admin', 'formidable' ); + // TODO: Add condition. + wp_enqueue_script( 'formidable-settings-components' ); wp_enqueue_script( 'formidable_embed' ); wp_set_script_translations( 'formidable_embed', 'formidable' ); FrmAppHelper::localize_script( 'admin' ); wp_enqueue_style( 'formidable-animations' ); wp_enqueue_style( 'formidable-admin' ); + // TODO: Add condition. + wp_enqueue_style( 'formidable-settings-components' ); if ( 'formidable-styles' !== $page && 'formidable-styles2' !== $page ) { wp_enqueue_style( 'formidable-grids' ); self::maybe_enqueue_dropzone_css( $page ); diff --git a/classes/controllers/FrmStylesController.php b/classes/controllers/FrmStylesController.php index 5d59564816..394ae37a13 100644 --- a/classes/controllers/FrmStylesController.php +++ b/classes/controllers/FrmStylesController.php @@ -120,7 +120,6 @@ public static function admin_init() { return; } - FrmStyleComponent::register_assets(); self::load_pro_hooks(); $version = FrmAppHelper::plugin_version(); diff --git a/classes/views/styles/components/FrmStyleComponent.php b/classes/views/styles/components/FrmStyleComponent.php index 5cb0dd62b7..20f4ef60a5 100644 --- a/classes/views/styles/components/FrmStyleComponent.php +++ b/classes/views/styles/components/FrmStyleComponent.php @@ -4,15 +4,6 @@ } class FrmStyleComponent { - /** - * The CSS and JS scripts slug. - * - * @since 6.14 - * - * @var string - */ - const ASSETS_SLUG = 'formidable-style-components'; - /** * The folder name where views files are located. * @@ -72,21 +63,6 @@ private function __construct() { $this->load_js(); } - /** - * Register CSS & JS style components assets. - * - * @since 6.14 - * - * @return void - */ - public static function register_assets() { - $plugin_url = FrmAppHelper::plugin_url(); - $version = FrmAppHelper::plugin_version(); - - wp_register_style( self::ASSETS_SLUG, $plugin_url . '/css/admin/style-components.css', array(), $version ); - wp_register_script( self::ASSETS_SLUG, $plugin_url . '/js/formidable_styles.js', array( 'formidable_admin' ), $version, true ); - } - /** * Get the singleton instance. * @@ -233,7 +209,7 @@ protected function hide_component() { * @return void */ private function load_css() { - wp_enqueue_style( self::ASSETS_SLUG ); + wp_enqueue_style( 'formidable-settings-components' ); } /** @@ -244,6 +220,18 @@ private function load_css() { * @return void */ private function load_js() { - wp_enqueue_script( self::ASSETS_SLUG ); + wp_enqueue_script( 'formidable-settings-components' ); + } + + /** + * Register CSS & JS style components assets. + * + * @since 6.14 + * @deprecated x.x + * + * @return void + */ + public static function register_assets() { + _deprecated_function( __METHOD__, 'x.x' ); } } diff --git a/css/admin/style-components.css b/css/admin/frm-settings-components.css similarity index 99% rename from css/admin/style-components.css rename to css/admin/frm-settings-components.css index 26e3dd0394..2e44bb3757 100644 --- a/css/admin/style-components.css +++ b/css/admin/frm-settings-components.css @@ -532,4 +532,4 @@ font-weight: 500; font-size: var( --text-md ); color: var( --grey-900 ); -} \ No newline at end of file +} diff --git a/js/formidable-settings-components.js b/js/formidable-settings-components.js new file mode 100644 index 0000000000..cb90c305d4 --- /dev/null +++ b/js/formidable-settings-components.js @@ -0,0 +1,4390 @@ +/******/ (function() { // webpackBootstrap +/******/ var __webpack_modules__ = ({ + +/***/ "./node_modules/@tannin/compile/index.js": +/*!***********************************************!*\ + !*** ./node_modules/@tannin/compile/index.js ***! + \***********************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ compile; } +/* harmony export */ }); +/* harmony import */ var _tannin_postfix__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tannin/postfix */ "./node_modules/@tannin/postfix/index.js"); +/* harmony import */ var _tannin_evaluate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tannin/evaluate */ "./node_modules/@tannin/evaluate/index.js"); + + + +/** + * Given a C expression, returns a function which can be called to evaluate its + * result. + * + * @example + * + * ```js + * import compile from '@tannin/compile'; + * + * const evaluate = compile( 'n > 1' ); + * + * evaluate( { n: 2 } ); + * // ⇒ true + * ``` + * + * @param {string} expression C expression. + * + * @return {(variables?:{[variable:string]:*})=>*} Compiled evaluator. + */ +function compile( expression ) { + var terms = (0,_tannin_postfix__WEBPACK_IMPORTED_MODULE_0__["default"])( expression ); + + return function( variables ) { + return (0,_tannin_evaluate__WEBPACK_IMPORTED_MODULE_1__["default"])( terms, variables ); + }; +} + + +/***/ }), + +/***/ "./node_modules/@tannin/evaluate/index.js": +/*!************************************************!*\ + !*** ./node_modules/@tannin/evaluate/index.js ***! + \************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ evaluate; } +/* harmony export */ }); +/** + * Operator callback functions. + * + * @type {Object} + */ +var OPERATORS = { + '!': function( a ) { + return ! a; + }, + '*': function( a, b ) { + return a * b; + }, + '/': function( a, b ) { + return a / b; + }, + '%': function( a, b ) { + return a % b; + }, + '+': function( a, b ) { + return a + b; + }, + '-': function( a, b ) { + return a - b; + }, + '<': function( a, b ) { + return a < b; + }, + '<=': function( a, b ) { + return a <= b; + }, + '>': function( a, b ) { + return a > b; + }, + '>=': function( a, b ) { + return a >= b; + }, + '==': function( a, b ) { + return a === b; + }, + '!=': function( a, b ) { + return a !== b; + }, + '&&': function( a, b ) { + return a && b; + }, + '||': function( a, b ) { + return a || b; + }, + '?:': function( a, b, c ) { + if ( a ) { + throw b; + } + + return c; + }, +}; + +/** + * Given an array of postfix terms and operand variables, returns the result of + * the postfix evaluation. + * + * @example + * + * ```js + * import evaluate from '@tannin/evaluate'; + * + * // 3 + 4 * 5 / 6 ⇒ '3 4 5 * 6 / +' + * const terms = [ '3', '4', '5', '*', '6', '/', '+' ]; + * + * evaluate( terms, {} ); + * // ⇒ 6.333333333333334 + * ``` + * + * @param {string[]} postfix Postfix terms. + * @param {Object} variables Operand variables. + * + * @return {*} Result of evaluation. + */ +function evaluate( postfix, variables ) { + var stack = [], + i, j, args, getOperatorResult, term, value; + + for ( i = 0; i < postfix.length; i++ ) { + term = postfix[ i ]; + + getOperatorResult = OPERATORS[ term ]; + if ( getOperatorResult ) { + // Pop from stack by number of function arguments. + j = getOperatorResult.length; + args = Array( j ); + while ( j-- ) { + args[ j ] = stack.pop(); + } + + try { + value = getOperatorResult.apply( null, args ); + } catch ( earlyReturn ) { + return earlyReturn; + } + } else if ( variables.hasOwnProperty( term ) ) { + value = variables[ term ]; + } else { + value = +term; + } + + stack.push( value ); + } + + return stack[ 0 ]; +} + + +/***/ }), + +/***/ "./node_modules/@tannin/plural-forms/index.js": +/*!****************************************************!*\ + !*** ./node_modules/@tannin/plural-forms/index.js ***! + \****************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ pluralForms; } +/* harmony export */ }); +/* harmony import */ var _tannin_compile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tannin/compile */ "./node_modules/@tannin/compile/index.js"); + + +/** + * Given a C expression, returns a function which, when called with a value, + * evaluates the result with the value assumed to be the "n" variable of the + * expression. The result will be coerced to its numeric equivalent. + * + * @param {string} expression C expression. + * + * @return {Function} Evaluator function. + */ +function pluralForms( expression ) { + var evaluate = (0,_tannin_compile__WEBPACK_IMPORTED_MODULE_0__["default"])( expression ); + + return function( n ) { + return +evaluate( { n: n } ); + }; +} + + +/***/ }), + +/***/ "./node_modules/@tannin/postfix/index.js": +/*!***********************************************!*\ + !*** ./node_modules/@tannin/postfix/index.js ***! + \***********************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ postfix; } +/* harmony export */ }); +var PRECEDENCE, OPENERS, TERMINATORS, PATTERN; + +/** + * Operator precedence mapping. + * + * @type {Object} + */ +PRECEDENCE = { + '(': 9, + '!': 8, + '*': 7, + '/': 7, + '%': 7, + '+': 6, + '-': 6, + '<': 5, + '<=': 5, + '>': 5, + '>=': 5, + '==': 4, + '!=': 4, + '&&': 3, + '||': 2, + '?': 1, + '?:': 1, +}; + +/** + * Characters which signal pair opening, to be terminated by terminators. + * + * @type {string[]} + */ +OPENERS = [ '(', '?' ]; + +/** + * Characters which signal pair termination, the value an array with the + * opener as its first member. The second member is an optional operator + * replacement to push to the stack. + * + * @type {string[]} + */ +TERMINATORS = { + ')': [ '(' ], + ':': [ '?', '?:' ], +}; + +/** + * Pattern matching operators and openers. + * + * @type {RegExp} + */ +PATTERN = /<=|>=|==|!=|&&|\|\||\?:|\(|!|\*|\/|%|\+|-|<|>|\?|\)|:/; + +/** + * Given a C expression, returns the equivalent postfix (Reverse Polish) + * notation terms as an array. + * + * If a postfix string is desired, simply `.join( ' ' )` the result. + * + * @example + * + * ```js + * import postfix from '@tannin/postfix'; + * + * postfix( 'n > 1' ); + * // ⇒ [ 'n', '1', '>' ] + * ``` + * + * @param {string} expression C expression. + * + * @return {string[]} Postfix terms. + */ +function postfix( expression ) { + var terms = [], + stack = [], + match, operator, term, element; + + while ( ( match = expression.match( PATTERN ) ) ) { + operator = match[ 0 ]; + + // Term is the string preceding the operator match. It may contain + // whitespace, and may be empty (if operator is at beginning). + term = expression.substr( 0, match.index ).trim(); + if ( term ) { + terms.push( term ); + } + + while ( ( element = stack.pop() ) ) { + if ( TERMINATORS[ operator ] ) { + if ( TERMINATORS[ operator ][ 0 ] === element ) { + // Substitution works here under assumption that because + // the assigned operator will no longer be a terminator, it + // will be pushed to the stack during the condition below. + operator = TERMINATORS[ operator ][ 1 ] || operator; + break; + } + } else if ( OPENERS.indexOf( element ) >= 0 || PRECEDENCE[ element ] < PRECEDENCE[ operator ] ) { + // Push to stack if either an opener or when pop reveals an + // element of lower precedence. + stack.push( element ); + break; + } + + // For each popped from stack, push to terms. + terms.push( element ); + } + + if ( ! TERMINATORS[ operator ] ) { + stack.push( operator ); + } + + // Slice matched fragment from expression to continue match. + expression = expression.substr( match.index + operator.length ); + } + + // Push remainder of operand, if exists, to terms. + expression = expression.trim(); + if ( expression ) { + terms.push( expression ); + } + + // Pop remaining items from stack into terms. + return terms.concat( stack.reverse() ); +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/createAddHook.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/createAddHook.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateNamespace.js */ "./node_modules/@wordpress/hooks/build-module/validateNamespace.js"); +/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./validateHookName.js */ "./node_modules/@wordpress/hooks/build-module/validateHookName.js"); +/** + * Internal dependencies + */ + + +/** + * @callback AddHook + * + * Adds the hook to the appropriate hooks container. + * + * @param {string} hookName Name of hook to add + * @param {string} namespace The unique namespace identifying the callback in the form `vendor/plugin/function`. + * @param {import('.').Callback} callback Function to call when the hook is run + * @param {number} [priority=10] Priority of this hook + */ + +/** + * Returns a function which, when invoked, will add a hook. + * + * @param {import('.').Hooks} hooks Hooks instance. + * @param {import('.').StoreKey} storeKey + * + * @return {AddHook} Function that adds a new hook. + */ + +function createAddHook(hooks, storeKey) { + return function addHook(hookName, namespace, callback) { + var priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10; + var hooksStore = hooks[storeKey]; + + if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_1__["default"])(hookName)) { + return; + } + + if (!(0,_validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__["default"])(namespace)) { + return; + } + + if ('function' !== typeof callback) { + // eslint-disable-next-line no-console + console.error('The hook callback must be a function.'); + return; + } // Validate numeric priority + + + if ('number' !== typeof priority) { + // eslint-disable-next-line no-console + console.error('If specified, the hook priority must be a number.'); + return; + } + + var handler = { + callback: callback, + priority: priority, + namespace: namespace + }; + + if (hooksStore[hookName]) { + // Find the correct insert index of the new hook. + var handlers = hooksStore[hookName].handlers; + /** @type {number} */ + + var i; + + for (i = handlers.length; i > 0; i--) { + if (priority >= handlers[i - 1].priority) { + break; + } + } + + if (i === handlers.length) { + // If append, operate via direct assignment. + handlers[i] = handler; + } else { + // Otherwise, insert before index via splice. + handlers.splice(i, 0, handler); + } // We may also be currently executing this hook. If the callback + // we're adding would come after the current callback, there's no + // problem; otherwise we need to increase the execution index of + // any other runs by 1 to account for the added element. + + + hooksStore.__current.forEach(function (hookInfo) { + if (hookInfo.name === hookName && hookInfo.currentIndex >= i) { + hookInfo.currentIndex++; + } + }); + } else { + // This is the first hook of its type. + hooksStore[hookName] = { + handlers: [handler], + runs: 0 + }; + } + + if (hookName !== 'hookAdded') { + hooks.doAction('hookAdded', hookName, namespace, callback, priority); + } + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (createAddHook); +//# sourceMappingURL=createAddHook.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/createCurrentHook.js": +/*!*************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/createCurrentHook.js ***! + \*************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Returns a function which, when invoked, will return the name of the + * currently running hook, or `null` if no hook of the given type is currently + * running. + * + * @param {import('.').Hooks} hooks Hooks instance. + * @param {import('.').StoreKey} storeKey + * + * @return {() => string | null} Function that returns the current hook name or null. + */ +function createCurrentHook(hooks, storeKey) { + return function currentHook() { + var _hooksStore$__current, _hooksStore$__current2; + + var hooksStore = hooks[storeKey]; + return (_hooksStore$__current = (_hooksStore$__current2 = hooksStore.__current[hooksStore.__current.length - 1]) === null || _hooksStore$__current2 === void 0 ? void 0 : _hooksStore$__current2.name) !== null && _hooksStore$__current !== void 0 ? _hooksStore$__current : null; + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (createCurrentHook); +//# sourceMappingURL=createCurrentHook.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/createDidHook.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/createDidHook.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateHookName.js */ "./node_modules/@wordpress/hooks/build-module/validateHookName.js"); +/** + * Internal dependencies + */ + +/** + * @callback DidHook + * + * Returns the number of times an action has been fired. + * + * @param {string} hookName The hook name to check. + * + * @return {number | undefined} The number of times the hook has run. + */ + +/** + * Returns a function which, when invoked, will return the number of times a + * hook has been called. + * + * @param {import('.').Hooks} hooks Hooks instance. + * @param {import('.').StoreKey} storeKey + * + * @return {DidHook} Function that returns a hook's call count. + */ + +function createDidHook(hooks, storeKey) { + return function didHook(hookName) { + var hooksStore = hooks[storeKey]; + + if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_0__["default"])(hookName)) { + return; + } + + return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0; + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (createDidHook); +//# sourceMappingURL=createDidHook.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/createDoingHook.js": +/*!***********************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/createDoingHook.js ***! + \***********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * @callback DoingHook + * Returns whether a hook is currently being executed. + * + * @param {string} [hookName] The name of the hook to check for. If + * omitted, will check for any hook being executed. + * + * @return {boolean} Whether the hook is being executed. + */ + +/** + * Returns a function which, when invoked, will return whether a hook is + * currently being executed. + * + * @param {import('.').Hooks} hooks Hooks instance. + * @param {import('.').StoreKey} storeKey + * + * @return {DoingHook} Function that returns whether a hook is currently + * being executed. + */ +function createDoingHook(hooks, storeKey) { + return function doingHook(hookName) { + var hooksStore = hooks[storeKey]; // If the hookName was not passed, check for any current hook. + + if ('undefined' === typeof hookName) { + return 'undefined' !== typeof hooksStore.__current[0]; + } // Return the __current hook. + + + return hooksStore.__current[0] ? hookName === hooksStore.__current[0].name : false; + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (createDoingHook); +//# sourceMappingURL=createDoingHook.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/createHasHook.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/createHasHook.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * @callback HasHook + * + * Returns whether any handlers are attached for the given hookName and optional namespace. + * + * @param {string} hookName The name of the hook to check for. + * @param {string} [namespace] Optional. The unique namespace identifying the callback + * in the form `vendor/plugin/function`. + * + * @return {boolean} Whether there are handlers that are attached to the given hook. + */ + +/** + * Returns a function which, when invoked, will return whether any handlers are + * attached to a particular hook. + * + * @param {import('.').Hooks} hooks Hooks instance. + * @param {import('.').StoreKey} storeKey + * + * @return {HasHook} Function that returns whether any handlers are + * attached to a particular hook and optional namespace. + */ +function createHasHook(hooks, storeKey) { + return function hasHook(hookName, namespace) { + var hooksStore = hooks[storeKey]; // Use the namespace if provided. + + if ('undefined' !== typeof namespace) { + return hookName in hooksStore && hooksStore[hookName].handlers.some(function (hook) { + return hook.namespace === namespace; + }); + } + + return hookName in hooksStore; + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (createHasHook); +//# sourceMappingURL=createHasHook.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/createHooks.js": +/*!*******************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/createHooks.js ***! + \*******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ _Hooks: function() { return /* binding */ _Hooks; } +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); +/* harmony import */ var _createAddHook__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./createAddHook */ "./node_modules/@wordpress/hooks/build-module/createAddHook.js"); +/* harmony import */ var _createRemoveHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./createRemoveHook */ "./node_modules/@wordpress/hooks/build-module/createRemoveHook.js"); +/* harmony import */ var _createHasHook__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./createHasHook */ "./node_modules/@wordpress/hooks/build-module/createHasHook.js"); +/* harmony import */ var _createRunHook__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createRunHook */ "./node_modules/@wordpress/hooks/build-module/createRunHook.js"); +/* harmony import */ var _createCurrentHook__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./createCurrentHook */ "./node_modules/@wordpress/hooks/build-module/createCurrentHook.js"); +/* harmony import */ var _createDoingHook__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./createDoingHook */ "./node_modules/@wordpress/hooks/build-module/createDoingHook.js"); +/* harmony import */ var _createDidHook__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./createDidHook */ "./node_modules/@wordpress/hooks/build-module/createDidHook.js"); + + +/** + * Internal dependencies + */ + + + + + + + +/** + * Internal class for constructing hooks. Use `createHooks()` function + * + * Note, it is necessary to expose this class to make its type public. + * + * @private + */ + +var _Hooks = function _Hooks() { + (0,_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, _Hooks); + + /** @type {import('.').Store} actions */ + this.actions = Object.create(null); + this.actions.__current = []; + /** @type {import('.').Store} filters */ + + this.filters = Object.create(null); + this.filters.__current = []; + this.addAction = (0,_createAddHook__WEBPACK_IMPORTED_MODULE_1__["default"])(this, 'actions'); + this.addFilter = (0,_createAddHook__WEBPACK_IMPORTED_MODULE_1__["default"])(this, 'filters'); + this.removeAction = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_2__["default"])(this, 'actions'); + this.removeFilter = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_2__["default"])(this, 'filters'); + this.hasAction = (0,_createHasHook__WEBPACK_IMPORTED_MODULE_3__["default"])(this, 'actions'); + this.hasFilter = (0,_createHasHook__WEBPACK_IMPORTED_MODULE_3__["default"])(this, 'filters'); + this.removeAllActions = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_2__["default"])(this, 'actions', true); + this.removeAllFilters = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_2__["default"])(this, 'filters', true); + this.doAction = (0,_createRunHook__WEBPACK_IMPORTED_MODULE_4__["default"])(this, 'actions'); + this.applyFilters = (0,_createRunHook__WEBPACK_IMPORTED_MODULE_4__["default"])(this, 'filters', true); + this.currentAction = (0,_createCurrentHook__WEBPACK_IMPORTED_MODULE_5__["default"])(this, 'actions'); + this.currentFilter = (0,_createCurrentHook__WEBPACK_IMPORTED_MODULE_5__["default"])(this, 'filters'); + this.doingAction = (0,_createDoingHook__WEBPACK_IMPORTED_MODULE_6__["default"])(this, 'actions'); + this.doingFilter = (0,_createDoingHook__WEBPACK_IMPORTED_MODULE_6__["default"])(this, 'filters'); + this.didAction = (0,_createDidHook__WEBPACK_IMPORTED_MODULE_7__["default"])(this, 'actions'); + this.didFilter = (0,_createDidHook__WEBPACK_IMPORTED_MODULE_7__["default"])(this, 'filters'); +}; +/** @typedef {_Hooks} Hooks */ + +/** + * Returns an instance of the hooks object. + * + * @return {Hooks} A Hooks instance. + */ + +function createHooks() { + return new _Hooks(); +} + +/* harmony default export */ __webpack_exports__["default"] = (createHooks); +//# sourceMappingURL=createHooks.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/createRemoveHook.js": +/*!************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/createRemoveHook.js ***! + \************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateNamespace.js */ "./node_modules/@wordpress/hooks/build-module/validateNamespace.js"); +/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./validateHookName.js */ "./node_modules/@wordpress/hooks/build-module/validateHookName.js"); +/** + * Internal dependencies + */ + + +/** + * @callback RemoveHook + * Removes the specified callback (or all callbacks) from the hook with a given hookName + * and namespace. + * + * @param {string} hookName The name of the hook to modify. + * @param {string} namespace The unique namespace identifying the callback in the + * form `vendor/plugin/function`. + * + * @return {number | undefined} The number of callbacks removed. + */ + +/** + * Returns a function which, when invoked, will remove a specified hook or all + * hooks by the given name. + * + * @param {import('.').Hooks} hooks Hooks instance. + * @param {import('.').StoreKey} storeKey + * @param {boolean} [removeAll=false] Whether to remove all callbacks for a hookName, + * without regard to namespace. Used to create + * `removeAll*` functions. + * + * @return {RemoveHook} Function that removes hooks. + */ + +function createRemoveHook(hooks, storeKey) { + var removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + return function removeHook(hookName, namespace) { + var hooksStore = hooks[storeKey]; + + if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_1__["default"])(hookName)) { + return; + } + + if (!removeAll && !(0,_validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__["default"])(namespace)) { + return; + } // Bail if no hooks exist by this name + + + if (!hooksStore[hookName]) { + return 0; + } + + var handlersRemoved = 0; + + if (removeAll) { + handlersRemoved = hooksStore[hookName].handlers.length; + hooksStore[hookName] = { + runs: hooksStore[hookName].runs, + handlers: [] + }; + } else { + // Try to find the specified callback to remove. + var handlers = hooksStore[hookName].handlers; + + var _loop = function _loop(i) { + if (handlers[i].namespace === namespace) { + handlers.splice(i, 1); + handlersRemoved++; // This callback may also be part of a hook that is + // currently executing. If the callback we're removing + // comes after the current callback, there's no problem; + // otherwise we need to decrease the execution index of any + // other runs by 1 to account for the removed element. + + hooksStore.__current.forEach(function (hookInfo) { + if (hookInfo.name === hookName && hookInfo.currentIndex >= i) { + hookInfo.currentIndex--; + } + }); + } + }; + + for (var i = handlers.length - 1; i >= 0; i--) { + _loop(i); + } + } + + if (hookName !== 'hookRemoved') { + hooks.doAction('hookRemoved', hookName, namespace); + } + + return handlersRemoved; + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (createRemoveHook); +//# sourceMappingURL=createRemoveHook.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/createRunHook.js": +/*!*********************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/createRunHook.js ***! + \*********************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js"); + + +/** + * Returns a function which, when invoked, will execute all callbacks + * registered to a hook of the specified type, optionally returning the final + * value of the call chain. + * + * @param {import('.').Hooks} hooks Hooks instance. + * @param {import('.').StoreKey} storeKey + * @param {boolean} [returnFirstArg=false] Whether each hook callback is expected to + * return its first argument. + * + * @return {(hookName:string, ...args: unknown[]) => unknown} Function that runs hook callbacks. + */ +function createRunHook(hooks, storeKey) { + var returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + return function runHooks(hookName) { + var hooksStore = hooks[storeKey]; + + if (!hooksStore[hookName]) { + hooksStore[hookName] = { + handlers: [], + runs: 0 + }; + } + + hooksStore[hookName].runs++; + var handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds. + + if (true) { + // Handle any 'all' hooks registered. + if ('hookAdded' !== hookName && hooksStore.all) { + handlers.push.apply(handlers, (0,_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__["default"])(hooksStore.all.handlers)); + } + } + + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + if (!handlers || !handlers.length) { + return returnFirstArg ? args[0] : undefined; + } + + var hookInfo = { + name: hookName, + currentIndex: 0 + }; + + hooksStore.__current.push(hookInfo); + + while (hookInfo.currentIndex < handlers.length) { + var handler = handlers[hookInfo.currentIndex]; + var result = handler.callback.apply(null, args); + + if (returnFirstArg) { + args[0] = result; + } + + hookInfo.currentIndex++; + } + + hooksStore.__current.pop(); + + if (returnFirstArg) { + return args[0]; + } + }; +} + +/* harmony default export */ __webpack_exports__["default"] = (createRunHook); +//# sourceMappingURL=createRunHook.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/index.js": +/*!*************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/index.js ***! + \*************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ actions: function() { return /* binding */ actions; }, +/* harmony export */ addAction: function() { return /* binding */ addAction; }, +/* harmony export */ addFilter: function() { return /* binding */ addFilter; }, +/* harmony export */ applyFilters: function() { return /* binding */ applyFilters; }, +/* harmony export */ createHooks: function() { return /* reexport safe */ _createHooks__WEBPACK_IMPORTED_MODULE_0__["default"]; }, +/* harmony export */ currentAction: function() { return /* binding */ currentAction; }, +/* harmony export */ currentFilter: function() { return /* binding */ currentFilter; }, +/* harmony export */ defaultHooks: function() { return /* binding */ defaultHooks; }, +/* harmony export */ didAction: function() { return /* binding */ didAction; }, +/* harmony export */ didFilter: function() { return /* binding */ didFilter; }, +/* harmony export */ doAction: function() { return /* binding */ doAction; }, +/* harmony export */ doingAction: function() { return /* binding */ doingAction; }, +/* harmony export */ doingFilter: function() { return /* binding */ doingFilter; }, +/* harmony export */ filters: function() { return /* binding */ filters; }, +/* harmony export */ hasAction: function() { return /* binding */ hasAction; }, +/* harmony export */ hasFilter: function() { return /* binding */ hasFilter; }, +/* harmony export */ removeAction: function() { return /* binding */ removeAction; }, +/* harmony export */ removeAllActions: function() { return /* binding */ removeAllActions; }, +/* harmony export */ removeAllFilters: function() { return /* binding */ removeAllFilters; }, +/* harmony export */ removeFilter: function() { return /* binding */ removeFilter; } +/* harmony export */ }); +/* harmony import */ var _createHooks__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./createHooks */ "./node_modules/@wordpress/hooks/build-module/createHooks.js"); +/** + * Internal dependencies + */ + +/** @typedef {(...args: any[])=>any} Callback */ + +/** + * @typedef Handler + * @property {Callback} callback The callback + * @property {string} namespace The namespace + * @property {number} priority The namespace + */ + +/** + * @typedef Hook + * @property {Handler[]} handlers Array of handlers + * @property {number} runs Run counter + */ + +/** + * @typedef Current + * @property {string} name Hook name + * @property {number} currentIndex The index + */ + +/** + * @typedef {Record & {__current: Current[]}} Store + */ + +/** + * @typedef {'actions' | 'filters'} StoreKey + */ + +/** + * @typedef {import('./createHooks').Hooks} Hooks + */ + +var defaultHooks = (0,_createHooks__WEBPACK_IMPORTED_MODULE_0__["default"])(); +var addAction = defaultHooks.addAction, + addFilter = defaultHooks.addFilter, + removeAction = defaultHooks.removeAction, + removeFilter = defaultHooks.removeFilter, + hasAction = defaultHooks.hasAction, + hasFilter = defaultHooks.hasFilter, + removeAllActions = defaultHooks.removeAllActions, + removeAllFilters = defaultHooks.removeAllFilters, + doAction = defaultHooks.doAction, + applyFilters = defaultHooks.applyFilters, + currentAction = defaultHooks.currentAction, + currentFilter = defaultHooks.currentFilter, + doingAction = defaultHooks.doingAction, + doingFilter = defaultHooks.doingFilter, + didAction = defaultHooks.didAction, + didFilter = defaultHooks.didFilter, + actions = defaultHooks.actions, + filters = defaultHooks.filters; + +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/validateHookName.js": +/*!************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/validateHookName.js ***! + \************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Validate a hookName string. + * + * @param {string} hookName The hook name to validate. Should be a non empty string containing + * only numbers, letters, dashes, periods and underscores. Also, + * the hook name cannot begin with `__`. + * + * @return {boolean} Whether the hook name is valid. + */ +function validateHookName(hookName) { + if ('string' !== typeof hookName || '' === hookName) { + // eslint-disable-next-line no-console + console.error('The hook name must be a non-empty string.'); + return false; + } + + if (/^__/.test(hookName)) { + // eslint-disable-next-line no-console + console.error('The hook name cannot begin with `__`.'); + return false; + } + + if (!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(hookName)) { + // eslint-disable-next-line no-console + console.error('The hook name can only contain numbers, letters, dashes, periods and underscores.'); + return false; + } + + return true; +} + +/* harmony default export */ __webpack_exports__["default"] = (validateHookName); +//# sourceMappingURL=validateHookName.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/build-module/validateNamespace.js": +/*!*************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/build-module/validateNamespace.js ***! + \*************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/** + * Validate a namespace string. + * + * @param {string} namespace The namespace to validate - should take the form + * `vendor/plugin/function`. + * + * @return {boolean} Whether the namespace is valid. + */ +function validateNamespace(namespace) { + if ('string' !== typeof namespace || '' === namespace) { + // eslint-disable-next-line no-console + console.error('The namespace must be a non-empty string.'); + return false; + } + + if (!/^[a-zA-Z][a-zA-Z0-9_.\-\/]*$/.test(namespace)) { + // eslint-disable-next-line no-console + console.error('The namespace can only contain numbers, letters, dashes, periods, underscores and slashes.'); + return false; + } + + return true; +} + +/* harmony default export */ __webpack_exports__["default"] = (validateNamespace); +//# sourceMappingURL=validateNamespace.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/i18n/build-module/create-i18n.js": +/*!******************************************************************!*\ + !*** ./node_modules/@wordpress/i18n/build-module/create-i18n.js ***! + \******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ createI18n: function() { return /* binding */ createI18n; } +/* harmony export */ }); +/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); +/* harmony import */ var tannin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tannin */ "./node_modules/tannin/index.js"); + + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } + +function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0,_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } + +/** + * External dependencies + */ + +/** + * @typedef {Record} LocaleData + */ + +/** + * Default locale data to use for Tannin domain when not otherwise provided. + * Assumes an English plural forms expression. + * + * @type {LocaleData} + */ + +var DEFAULT_LOCALE_DATA = { + '': { + /** @param {number} n */ + plural_forms: function plural_forms(n) { + return n === 1 ? 0 : 1; + } + } +}; +/* + * Regular expression that matches i18n hooks like `i18n.gettext`, `i18n.ngettext`, + * `i18n.gettext_domain` or `i18n.ngettext_with_context` or `i18n.has_translation`. + */ + +var I18N_HOOK_REGEXP = /^i18n\.(n?gettext|has_translation)(_|$)/; +/** + * @typedef {(domain?: string) => LocaleData} GetLocaleData + * + * Returns locale data by domain in a + * Jed-formatted JSON object shape. + * + * @see http://messageformat.github.io/Jed/ + */ + +/** + * @typedef {(data?: LocaleData, domain?: string) => void} SetLocaleData + * + * Merges locale data into the Tannin instance by domain. Accepts data in a + * Jed-formatted JSON object shape. + * + * @see http://messageformat.github.io/Jed/ + */ + +/** + * @typedef {(data?: LocaleData, domain?: string) => void} ResetLocaleData + * + * Resets all current Tannin instance locale data and sets the specified + * locale data for the domain. Accepts data in a Jed-formatted JSON object shape. + * + * @see http://messageformat.github.io/Jed/ + */ + +/** @typedef {() => void} SubscribeCallback */ + +/** @typedef {() => void} UnsubscribeCallback */ + +/** + * @typedef {(callback: SubscribeCallback) => UnsubscribeCallback} Subscribe + * + * Subscribes to changes of locale data + */ + +/** + * @typedef {(domain?: string) => string} GetFilterDomain + * Retrieve the domain to use when calling domain-specific filters. + */ + +/** + * @typedef {(text: string, domain?: string) => string} __ + * + * Retrieve the translation of text. + * + * @see https://developer.wordpress.org/reference/functions/__/ + */ + +/** + * @typedef {(text: string, context: string, domain?: string) => string} _x + * + * Retrieve translated string with gettext context. + * + * @see https://developer.wordpress.org/reference/functions/_x/ + */ + +/** + * @typedef {(single: string, plural: string, number: number, domain?: string) => string} _n + * + * Translates and retrieves the singular or plural form based on the supplied + * number. + * + * @see https://developer.wordpress.org/reference/functions/_n/ + */ + +/** + * @typedef {(single: string, plural: string, number: number, context: string, domain?: string) => string} _nx + * + * Translates and retrieves the singular or plural form based on the supplied + * number, with gettext context. + * + * @see https://developer.wordpress.org/reference/functions/_nx/ + */ + +/** + * @typedef {() => boolean} IsRtl + * + * Check if current locale is RTL. + * + * **RTL (Right To Left)** is a locale property indicating that text is written from right to left. + * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common + * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages, + * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`). + */ + +/** + * @typedef {(single: string, context?: string, domain?: string) => boolean} HasTranslation + * + * Check if there is a translation for a given string in singular form. + */ + +/** @typedef {import('@wordpress/hooks').Hooks} Hooks */ + +/** + * An i18n instance + * + * @typedef I18n + * @property {GetLocaleData} getLocaleData Returns locale data by domain in a Jed-formatted JSON object shape. + * @property {SetLocaleData} setLocaleData Merges locale data into the Tannin instance by domain. Accepts data in a + * Jed-formatted JSON object shape. + * @property {ResetLocaleData} resetLocaleData Resets all current Tannin instance locale data and sets the specified + * locale data for the domain. Accepts data in a Jed-formatted JSON object shape. + * @property {Subscribe} subscribe Subscribes to changes of Tannin locale data. + * @property {__} __ Retrieve the translation of text. + * @property {_x} _x Retrieve translated string with gettext context. + * @property {_n} _n Translates and retrieves the singular or plural form based on the supplied + * number. + * @property {_nx} _nx Translates and retrieves the singular or plural form based on the supplied + * number, with gettext context. + * @property {IsRtl} isRTL Check if current locale is RTL. + * @property {HasTranslation} hasTranslation Check if there is a translation for a given string. + */ + +/** + * Create an i18n instance + * + * @param {LocaleData} [initialData] Locale data configuration. + * @param {string} [initialDomain] Domain for which configuration applies. + * @param {Hooks} [hooks] Hooks implementation. + * @return {I18n} I18n instance + */ + +var createI18n = function createI18n(initialData, initialDomain, hooks) { + /** + * The underlying instance of Tannin to which exported functions interface. + * + * @type {Tannin} + */ + var tannin = new tannin__WEBPACK_IMPORTED_MODULE_1__["default"]({}); + var listeners = new Set(); + + var notifyListeners = function notifyListeners() { + listeners.forEach(function (listener) { + return listener(); + }); + }; + /** + * Subscribe to changes of locale data. + * + * @param {SubscribeCallback} callback Subscription callback. + * @return {UnsubscribeCallback} Unsubscribe callback. + */ + + + var subscribe = function subscribe(callback) { + listeners.add(callback); + return function () { + return listeners.delete(callback); + }; + }; + /** @type {GetLocaleData} */ + + + var getLocaleData = function getLocaleData() { + var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default'; + return tannin.data[domain]; + }; + /** + * @param {LocaleData} [data] + * @param {string} [domain] + */ + + + var doSetLocaleData = function doSetLocaleData(data) { + var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default'; + tannin.data[domain] = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA), tannin.data[domain]), data); // Populate default domain configuration (supported locale date which omits + // a plural forms expression). + + tannin.data[domain][''] = _objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA['']), tannin.data[domain]['']); + }; + /** @type {SetLocaleData} */ + + + var setLocaleData = function setLocaleData(data, domain) { + doSetLocaleData(data, domain); + notifyListeners(); + }; + /** @type {ResetLocaleData} */ + + + var resetLocaleData = function resetLocaleData(data, domain) { + // Reset all current Tannin locale data. + tannin.data = {}; // Reset cached plural forms functions cache. + + tannin.pluralForms = {}; + setLocaleData(data, domain); + }; + /** + * Wrapper for Tannin's `dcnpgettext`. Populates default locale data if not + * otherwise previously assigned. + * + * @param {string|undefined} domain Domain to retrieve the translated text. + * @param {string|undefined} context Context information for the translators. + * @param {string} single Text to translate if non-plural. Used as + * fallback return value on a caught error. + * @param {string} [plural] The text to be used if the number is + * plural. + * @param {number} [number] The number to compare against to use + * either the singular or plural form. + * + * @return {string} The translated string. + */ + + + var dcnpgettext = function dcnpgettext() { + var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default'; + var context = arguments.length > 1 ? arguments[1] : undefined; + var single = arguments.length > 2 ? arguments[2] : undefined; + var plural = arguments.length > 3 ? arguments[3] : undefined; + var number = arguments.length > 4 ? arguments[4] : undefined; + + if (!tannin.data[domain]) { + // use `doSetLocaleData` to set silently, without notifying listeners + doSetLocaleData(undefined, domain); + } + + return tannin.dcnpgettext(domain, context, single, plural, number); + }; + /** @type {GetFilterDomain} */ + + + var getFilterDomain = function getFilterDomain() { + var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default'; + return domain; + }; + /** @type {__} */ + + + var __ = function __(text, domain) { + var translation = dcnpgettext(domain, undefined, text); + + if (!hooks) { + return translation; + } + /** + * Filters text with its translation. + * + * @param {string} translation Translated text. + * @param {string} text Text to translate. + * @param {string} domain Text domain. Unique identifier for retrieving translated strings. + */ + + + translation = + /** @type {string} */ + + /** @type {*} */ + hooks.applyFilters('i18n.gettext', translation, text, domain); + return ( + /** @type {string} */ + + /** @type {*} */ + hooks.applyFilters('i18n.gettext_' + getFilterDomain(domain), translation, text, domain) + ); + }; + /** @type {_x} */ + + + var _x = function _x(text, context, domain) { + var translation = dcnpgettext(domain, context, text); + + if (!hooks) { + return translation; + } + /** + * Filters text with its translation based on context information. + * + * @param {string} translation Translated text. + * @param {string} text Text to translate. + * @param {string} context Context information for the translators. + * @param {string} domain Text domain. Unique identifier for retrieving translated strings. + */ + + + translation = + /** @type {string} */ + + /** @type {*} */ + hooks.applyFilters('i18n.gettext_with_context', translation, text, context, domain); + return ( + /** @type {string} */ + + /** @type {*} */ + hooks.applyFilters('i18n.gettext_with_context_' + getFilterDomain(domain), translation, text, context, domain) + ); + }; + /** @type {_n} */ + + + var _n = function _n(single, plural, number, domain) { + var translation = dcnpgettext(domain, undefined, single, plural, number); + + if (!hooks) { + return translation; + } + /** + * Filters the singular or plural form of a string. + * + * @param {string} translation Translated text. + * @param {string} single The text to be used if the number is singular. + * @param {string} plural The text to be used if the number is plural. + * @param {string} number The number to compare against to use either the singular or plural form. + * @param {string} domain Text domain. Unique identifier for retrieving translated strings. + */ + + + translation = + /** @type {string} */ + + /** @type {*} */ + hooks.applyFilters('i18n.ngettext', translation, single, plural, number, domain); + return ( + /** @type {string} */ + + /** @type {*} */ + hooks.applyFilters('i18n.ngettext_' + getFilterDomain(domain), translation, single, plural, number, domain) + ); + }; + /** @type {_nx} */ + + + var _nx = function _nx(single, plural, number, context, domain) { + var translation = dcnpgettext(domain, context, single, plural, number); + + if (!hooks) { + return translation; + } + /** + * Filters the singular or plural form of a string with gettext context. + * + * @param {string} translation Translated text. + * @param {string} single The text to be used if the number is singular. + * @param {string} plural The text to be used if the number is plural. + * @param {string} number The number to compare against to use either the singular or plural form. + * @param {string} context Context information for the translators. + * @param {string} domain Text domain. Unique identifier for retrieving translated strings. + */ + + + translation = + /** @type {string} */ + + /** @type {*} */ + hooks.applyFilters('i18n.ngettext_with_context', translation, single, plural, number, context, domain); + return ( + /** @type {string} */ + + /** @type {*} */ + hooks.applyFilters('i18n.ngettext_with_context_' + getFilterDomain(domain), translation, single, plural, number, context, domain) + ); + }; + /** @type {IsRtl} */ + + + var isRTL = function isRTL() { + return 'rtl' === _x('ltr', 'text direction'); + }; + /** @type {HasTranslation} */ + + + var hasTranslation = function hasTranslation(single, context, domain) { + var _tannin$data, _tannin$data2; + + var key = context ? context + "\x04" + single : single; + var result = !!((_tannin$data = tannin.data) !== null && _tannin$data !== void 0 && (_tannin$data2 = _tannin$data[domain !== null && domain !== void 0 ? domain : 'default']) !== null && _tannin$data2 !== void 0 && _tannin$data2[key]); + + if (hooks) { + /** + * Filters the presence of a translation in the locale data. + * + * @param {boolean} hasTranslation Whether the translation is present or not.. + * @param {string} single The singular form of the translated text (used as key in locale data) + * @param {string} context Context information for the translators. + * @param {string} domain Text domain. Unique identifier for retrieving translated strings. + */ + result = + /** @type { boolean } */ + + /** @type {*} */ + hooks.applyFilters('i18n.has_translation', result, single, context, domain); + result = + /** @type { boolean } */ + + /** @type {*} */ + hooks.applyFilters('i18n.has_translation_' + getFilterDomain(domain), result, single, context, domain); + } + + return result; + }; + + if (initialData) { + setLocaleData(initialData, initialDomain); + } + + if (hooks) { + /** + * @param {string} hookName + */ + var onHookAddedOrRemoved = function onHookAddedOrRemoved(hookName) { + if (I18N_HOOK_REGEXP.test(hookName)) { + notifyListeners(); + } + }; + + hooks.addAction('hookAdded', 'core/i18n', onHookAddedOrRemoved); + hooks.addAction('hookRemoved', 'core/i18n', onHookAddedOrRemoved); + } + + return { + getLocaleData: getLocaleData, + setLocaleData: setLocaleData, + resetLocaleData: resetLocaleData, + subscribe: subscribe, + __: __, + _x: _x, + _n: _n, + _nx: _nx, + isRTL: isRTL, + hasTranslation: hasTranslation + }; +}; +//# sourceMappingURL=create-i18n.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/i18n/build-module/default-i18n.js": +/*!*******************************************************************!*\ + !*** ./node_modules/@wordpress/i18n/build-module/default-i18n.js ***! + \*******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ __: function() { return /* binding */ __; }, +/* harmony export */ _n: function() { return /* binding */ _n; }, +/* harmony export */ _nx: function() { return /* binding */ _nx; }, +/* harmony export */ _x: function() { return /* binding */ _x; }, +/* harmony export */ getLocaleData: function() { return /* binding */ getLocaleData; }, +/* harmony export */ hasTranslation: function() { return /* binding */ hasTranslation; }, +/* harmony export */ isRTL: function() { return /* binding */ isRTL; }, +/* harmony export */ resetLocaleData: function() { return /* binding */ resetLocaleData; }, +/* harmony export */ setLocaleData: function() { return /* binding */ setLocaleData; }, +/* harmony export */ subscribe: function() { return /* binding */ subscribe; } +/* harmony export */ }); +/* harmony import */ var _create_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./create-i18n */ "./node_modules/@wordpress/i18n/build-module/create-i18n.js"); +/* harmony import */ var _wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/hooks */ "./node_modules/@wordpress/hooks/build-module/index.js"); +/** + * Internal dependencies + */ + +/** + * WordPress dependencies + */ + + +var i18n = (0,_create_i18n__WEBPACK_IMPORTED_MODULE_0__.createI18n)(undefined, undefined, _wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__.defaultHooks); +/** + * Default, singleton instance of `I18n`. + */ + +/* harmony default export */ __webpack_exports__["default"] = (i18n); +/* + * Comments in this file are duplicated from ./i18n due to + * https://github.com/WordPress/gutenberg/pull/20318#issuecomment-590837722 + */ + +/** + * @typedef {import('./create-i18n').LocaleData} LocaleData + * @typedef {import('./create-i18n').SubscribeCallback} SubscribeCallback + * @typedef {import('./create-i18n').UnsubscribeCallback} UnsubscribeCallback + */ + +/** + * Returns locale data by domain in a Jed-formatted JSON object shape. + * + * @see http://messageformat.github.io/Jed/ + * + * @param {string} [domain] Domain for which to get the data. + * @return {LocaleData} Locale data. + */ + +var getLocaleData = i18n.getLocaleData.bind(i18n); +/** + * Merges locale data into the Tannin instance by domain. Accepts data in a + * Jed-formatted JSON object shape. + * + * @see http://messageformat.github.io/Jed/ + * + * @param {LocaleData} [data] Locale data configuration. + * @param {string} [domain] Domain for which configuration applies. + */ + +var setLocaleData = i18n.setLocaleData.bind(i18n); +/** + * Resets all current Tannin instance locale data and sets the specified + * locale data for the domain. Accepts data in a Jed-formatted JSON object shape. + * + * @see http://messageformat.github.io/Jed/ + * + * @param {LocaleData} [data] Locale data configuration. + * @param {string} [domain] Domain for which configuration applies. + */ + +var resetLocaleData = i18n.resetLocaleData.bind(i18n); +/** + * Subscribes to changes of locale data + * + * @param {SubscribeCallback} callback Subscription callback + * @return {UnsubscribeCallback} Unsubscribe callback + */ + +var subscribe = i18n.subscribe.bind(i18n); +/** + * Retrieve the translation of text. + * + * @see https://developer.wordpress.org/reference/functions/__/ + * + * @param {string} text Text to translate. + * @param {string} [domain] Domain to retrieve the translated text. + * + * @return {string} Translated text. + */ + +var __ = i18n.__.bind(i18n); +/** + * Retrieve translated string with gettext context. + * + * @see https://developer.wordpress.org/reference/functions/_x/ + * + * @param {string} text Text to translate. + * @param {string} context Context information for the translators. + * @param {string} [domain] Domain to retrieve the translated text. + * + * @return {string} Translated context string without pipe. + */ + +var _x = i18n._x.bind(i18n); +/** + * Translates and retrieves the singular or plural form based on the supplied + * number. + * + * @see https://developer.wordpress.org/reference/functions/_n/ + * + * @param {string} single The text to be used if the number is singular. + * @param {string} plural The text to be used if the number is plural. + * @param {number} number The number to compare against to use either the + * singular or plural form. + * @param {string} [domain] Domain to retrieve the translated text. + * + * @return {string} The translated singular or plural form. + */ + +var _n = i18n._n.bind(i18n); +/** + * Translates and retrieves the singular or plural form based on the supplied + * number, with gettext context. + * + * @see https://developer.wordpress.org/reference/functions/_nx/ + * + * @param {string} single The text to be used if the number is singular. + * @param {string} plural The text to be used if the number is plural. + * @param {number} number The number to compare against to use either the + * singular or plural form. + * @param {string} context Context information for the translators. + * @param {string} [domain] Domain to retrieve the translated text. + * + * @return {string} The translated singular or plural form. + */ + +var _nx = i18n._nx.bind(i18n); +/** + * Check if current locale is RTL. + * + * **RTL (Right To Left)** is a locale property indicating that text is written from right to left. + * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common + * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages, + * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`). + * + * @return {boolean} Whether locale is RTL. + */ + +var isRTL = i18n.isRTL.bind(i18n); +/** + * Check if there is a translation for a given string (in singular form). + * + * @param {string} single Singular form of the string to look up. + * @param {string} [context] Context information for the translators. + * @param {string} [domain] Domain to retrieve the translated text. + * @return {boolean} Whether the translation exists or not. + */ + +var hasTranslation = i18n.hasTranslation.bind(i18n); +//# sourceMappingURL=default-i18n.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/i18n/build-module/index.js": +/*!************************************************************!*\ + !*** ./node_modules/@wordpress/i18n/build-module/index.js ***! + \************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ __: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.__; }, +/* harmony export */ _n: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._n; }, +/* harmony export */ _nx: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._nx; }, +/* harmony export */ _x: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._x; }, +/* harmony export */ createI18n: function() { return /* reexport safe */ _create_i18n__WEBPACK_IMPORTED_MODULE_1__.createI18n; }, +/* harmony export */ defaultI18n: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__["default"]; }, +/* harmony export */ getLocaleData: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.getLocaleData; }, +/* harmony export */ hasTranslation: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.hasTranslation; }, +/* harmony export */ isRTL: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.isRTL; }, +/* harmony export */ resetLocaleData: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.resetLocaleData; }, +/* harmony export */ setLocaleData: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.setLocaleData; }, +/* harmony export */ sprintf: function() { return /* reexport safe */ _sprintf__WEBPACK_IMPORTED_MODULE_0__.sprintf; }, +/* harmony export */ subscribe: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.subscribe; } +/* harmony export */ }); +/* harmony import */ var _sprintf__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sprintf */ "./node_modules/@wordpress/i18n/build-module/sprintf.js"); +/* harmony import */ var _create_i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./create-i18n */ "./node_modules/@wordpress/i18n/build-module/create-i18n.js"); +/* harmony import */ var _default_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./default-i18n */ "./node_modules/@wordpress/i18n/build-module/default-i18n.js"); + + + +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@wordpress/i18n/build-module/sprintf.js": +/*!**************************************************************!*\ + !*** ./node_modules/@wordpress/i18n/build-module/sprintf.js ***! + \**************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ sprintf: function() { return /* binding */ sprintf; } +/* harmony export */ }); +/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js"); +/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var sprintf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! sprintf-js */ "./node_modules/sprintf-js/src/sprintf.js"); +/* harmony import */ var sprintf_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(sprintf_js__WEBPACK_IMPORTED_MODULE_1__); +/** + * External dependencies + */ + + +/** + * Log to console, once per message; or more precisely, per referentially equal + * argument set. Because Jed throws errors, we log these to the console instead + * to avoid crashing the application. + * + * @param {...*} args Arguments to pass to `console.error` + */ + +var logErrorOnce = memize__WEBPACK_IMPORTED_MODULE_0___default()(console.error); // eslint-disable-line no-console + +/** + * Returns a formatted string. If an error occurs in applying the format, the + * original format string is returned. + * + * @param {string} format The format of the string to generate. + * @param {...*} args Arguments to apply to the format. + * + * @see https://www.npmjs.com/package/sprintf-js + * + * @return {string} The formatted string. + */ + +function sprintf(format) { + try { + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + return sprintf_js__WEBPACK_IMPORTED_MODULE_1___default().sprintf.apply((sprintf_js__WEBPACK_IMPORTED_MODULE_1___default()), [format].concat(args)); + } catch (error) { + logErrorOnce('sprintf error: \n\n' + error.toString()); + return format; + } +} +//# sourceMappingURL=sprintf.js.map + +/***/ }), + +/***/ "./js/src/components/class-tabs-navigator.js": +/*!***************************************************!*\ + !*** ./js/src/components/class-tabs-navigator.js ***! + \***************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ frmTabsNavigator: function() { return /* binding */ frmTabsNavigator; } +/* harmony export */ }); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +var frmTabsNavigator = /*#__PURE__*/function () { + function frmTabsNavigator(wrapper) { + _classCallCheck(this, frmTabsNavigator); + if ('undefined' === typeof wrapper) { + return; + } + this.wrapper = wrapper instanceof Element ? wrapper : document.querySelector(wrapper); + if (null === this.wrapper) { + return; + } + this.flexboxSlidesGap = '16px'; + this.navs = this.wrapper.querySelectorAll('.frm-tabs-navs ul > li'); + this.slideTrackLine = this.wrapper.querySelector('.frm-tabs-active-underline'); + this.slideTrack = this.wrapper.querySelector('.frm-tabs-slide-track'); + this.slides = this.wrapper.querySelectorAll('.frm-tabs-slide-track > div'); + this.init(); + } + return _createClass(frmTabsNavigator, [{ + key: "init", + value: function init() { + var _this = this; + if (null === this.wrapper || !this.navs.length || null === this.trackLine || null === this.slideTrack || !this.slides.length) { + return; + } + this.initDefaultSlideTrackerWidth(); + this.navs.forEach(function (nav, index) { + nav.addEventListener('click', function (event) { + return _this.onNavClick(event, index); + }); + }); + } + }, { + key: "onNavClick", + value: function onNavClick(event, index) { + this.removeActiveClassnameFromNavs(); + event.target.classList.add('frm-active'); + this.initSlideTrackUnderline(event.target, index); + this.changeSlide(index); + } + }, { + key: "initDefaultSlideTrackerWidth", + value: function initDefaultSlideTrackerWidth() { + if (!this.slideTrackLine.dataset.initialWidth) { + return; + } + this.slideTrackLine.style.width = "".concat(this.slideTrackLine.dataset.initialWidth, "px"); + } + }, { + key: "initSlideTrackUnderline", + value: function initSlideTrackUnderline(nav, index) { + this.slideTrackLine.classList.remove('frm-first', 'frm-last'); + var activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter(function (nav) { + return nav.classList.contains('frm-active'); + }); + this.slideTrackLine.style.transform = "translateX(".concat(activeNav.offsetLeft, "px)"); + this.slideTrackLine.style.width = activeNav.clientWidth + 'px'; + if (this.navs.length === index + 1) { + this.slideTrackLine.classList.add('frm-last'); + return; + } + if (0 === index) { + this.slideTrackLine.classList.add('frm-first'); + } + } + }, { + key: "changeSlide", + value: function changeSlide(index) { + this.removeActiveClassnameFromSlides(); + var translate = index == 0 ? '0px' : "calc( ( ".concat(index * 100, "% + ").concat(parseInt(this.flexboxSlidesGap, 10) * index, "px ) * -1 )"); + this.slideTrack.style.transform = "translateX(".concat(translate, ")"); + if (index in this.slides) { + this.slides[index].classList.add('frm-active'); + } + } + }, { + key: "removeActiveClassnameFromSlides", + value: function removeActiveClassnameFromSlides() { + this.slides.forEach(function (slide) { + return slide.classList.remove('frm-active'); + }); + } + }, { + key: "removeActiveClassnameFromNavs", + value: function removeActiveClassnameFromNavs() { + this.navs.forEach(function (nav) { + return nav.classList.remove('frm-active'); + }); + } + }]); +}(); + +/***/ }), + +/***/ "./js/src/core/constants.js": +/*!**********************************!*\ + !*** ./js/src/core/constants.js ***! + \**********************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ CHECKED_CLASS: function() { return /* binding */ CHECKED_CLASS; }, +/* harmony export */ CURRENT_CLASS: function() { return /* binding */ CURRENT_CLASS; }, +/* harmony export */ HIDDEN_CLASS: function() { return /* binding */ HIDDEN_CLASS; }, +/* harmony export */ HIDE_JS_CLASS: function() { return /* binding */ HIDE_JS_CLASS; }, +/* harmony export */ PLUGIN_URL: function() { return /* binding */ PLUGIN_URL; }, +/* harmony export */ nonce: function() { return /* binding */ nonce; } +/* harmony export */ }); +var _window$frmGlobal = window.frmGlobal, + PLUGIN_URL = _window$frmGlobal.url, + nonce = _window$frmGlobal.nonce; + +var HIDDEN_CLASS = 'frm_hidden'; +var HIDE_JS_CLASS = 'frm-hide-js'; +var CURRENT_CLASS = 'frm-current'; +var CHECKED_CLASS = 'frm-checked'; + +/***/ }), + +/***/ "./js/src/core/utils/animation.js": +/*!****************************************!*\ + !*** ./js/src/core/utils/animation.js ***! + \****************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ frmAnimate: function() { return /* binding */ frmAnimate; } +/* harmony export */ }); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +var frmAnimate = /*#__PURE__*/function () { + /** + * Construct frmAnimate + * + * @param {Element|Element[]} elements + * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d + * + */ + function frmAnimate(elements) { + var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default'; + _classCallCheck(this, frmAnimate); + this.elements = elements; + this.type = type; + this.prepareElements(); + } + + /** + * Init animation - fadeIn. + * Requires this.type = 'default'; + * ex: new frmAnimate( elements ).fadeIn(); + */ + return _createClass(frmAnimate, [{ + key: "fadeIn", + value: function fadeIn() { + var _this = this; + this.applyStyleToElements(function (element) { + element.classList.add('frm-fadein-up'); + element.addEventListener('animationend', function () { + _this.resetOpacity(); + element.classList.remove('frm-fadein-up'); + }, { + once: true + }); + }); + } + + /** + * Init animation - cascadeFadeIn. + * Requires this.type = 'cascade'|'cascade-3d'; + * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn(); + * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn(); + * + * @param {float} delay - The transition delay value. + * + */ + }, { + key: "cascadeFadeIn", + value: function cascadeFadeIn() { + var _this2 = this; + var delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.03; + setTimeout(function () { + _this2.applyStyleToElements(function (element, index) { + element.classList.remove('frm-animate'); + element.style.transitionDelay = (index + 1) * delay + 's'; + }); + }, 200); + } + }, { + key: "prepareElements", + value: function prepareElements() { + var _this3 = this; + this.applyStyleToElements(function (element) { + if ('default' === _this3.type) { + element.style.opacity = '0.0'; + } + if ('cascade' === _this3.type) { + element.classList.add('frm-init-cascade-animation'); + } + if ('cascade-3d' === _this3.type) { + element.classList.add('frm-init-fadein-3d'); + } + element.classList.add('frm-animate'); + }); + } + }, { + key: "resetOpacity", + value: function resetOpacity() { + this.applyStyleToElements(function (element) { + return element.style.opacity = '1.0'; + }); + } + }, { + key: "applyStyleToElements", + value: function applyStyleToElements(callback) { + if (this.elements instanceof Element) { + callback(this.elements, 0); + return; + } + if (0 < this.elements.length) { + this.elements.forEach(function (element, index) { + return callback(element, index); + }); + } + } + }]); +}(); + +/***/ }), + +/***/ "./js/src/core/utils/async.js": +/*!************************************!*\ + !*** ./js/src/core/utils/async.js ***! + \************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ addToRequestQueue: function() { return /* binding */ addToRequestQueue; } +/* harmony export */ }); +// Initialize lastPromise with a resolved promise as the starting point for the queue +var lastPromise = Promise.resolve(); + +/** + * Adds a task to the request queue. + * + * @param {function(): Promise} task A function that returns a promise. + * @return {Promise} The new last promise in the queue. + */ +var addToRequestQueue = function addToRequestQueue(task) { + return lastPromise = lastPromise.then(task).catch(task); +}; + +/***/ }), + +/***/ "./js/src/core/utils/error.js": +/*!************************************!*\ + !*** ./js/src/core/utils/error.js ***! + \************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ showFormError: function() { return /* binding */ showFormError; } +/* harmony export */ }); +/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! . */ "./js/src/core/utils/index.js"); +/** + * Internal dependencies + */ + + +/** + * Displays form validation error messages. + * + * @param {string} inputId The ID selector for the input field with the error. + * @param {string} errorId The ID selector for the error message display element. + * @param {string} type The categorization of the error (e.g., "invalid", "empty"). + * @param {string} [message] Optional. The specific error message to display. + * @return {void} + */ +var showFormError = function showFormError(inputId, errorId, type, message) { + var inputElement = document.querySelector(inputId); + var errorElement = document.querySelector(errorId); + if (!inputElement || !errorElement) { + console.warn('showFormError: Unable to find input or error element.'); + return; + } + + // If a message is provided, update the span element's text that matches the error type + if (message) { + var span = errorElement.querySelector("span[frm-error=\"".concat(type, "\"]")); + if (span) { + span.textContent = message; + } + } + + // Assign the error type and make the error message visible + errorElement.setAttribute('frm-error', type); + (0,___WEBPACK_IMPORTED_MODULE_0__.show)(errorElement); + + // Hide the error message when the user starts typing in the faulty input field + inputElement.addEventListener('keyup', function () { + (0,___WEBPACK_IMPORTED_MODULE_0__.hide)(errorElement); + }, { + once: true + }); +}; + +/***/ }), + +/***/ "./js/src/core/utils/event.js": +/*!************************************!*\ + !*** ./js/src/core/utils/event.js ***! + \************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ onClickPreventDefault: function() { return /* binding */ onClickPreventDefault; } +/* harmony export */ }); +var onClickPreventDefault = window.frmDom.util.onClickPreventDefault; + + +/***/ }), + +/***/ "./js/src/core/utils/index.js": +/*!************************************!*\ + !*** ./js/src/core/utils/index.js ***! + \************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ addToRequestQueue: function() { return /* reexport safe */ _async__WEBPACK_IMPORTED_MODULE_1__.addToRequestQueue; }, +/* harmony export */ frmAnimate: function() { return /* reexport safe */ _animation__WEBPACK_IMPORTED_MODULE_0__.frmAnimate; }, +/* harmony export */ getQueryParam: function() { return /* reexport safe */ _url__WEBPACK_IMPORTED_MODULE_4__.getQueryParam; }, +/* harmony export */ hasQueryParam: function() { return /* reexport safe */ _url__WEBPACK_IMPORTED_MODULE_4__.hasQueryParam; }, +/* harmony export */ hide: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.hide; }, +/* harmony export */ hideElements: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.hideElements; }, +/* harmony export */ isEmptyObject: function() { return /* reexport safe */ _validation__WEBPACK_IMPORTED_MODULE_5__.isEmptyObject; }, +/* harmony export */ isHTMLElement: function() { return /* reexport safe */ _validation__WEBPACK_IMPORTED_MODULE_5__.isHTMLElement; }, +/* harmony export */ isValidEmail: function() { return /* reexport safe */ _validation__WEBPACK_IMPORTED_MODULE_5__.isValidEmail; }, +/* harmony export */ isVisible: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.isVisible; }, +/* harmony export */ onClickPreventDefault: function() { return /* reexport safe */ _event__WEBPACK_IMPORTED_MODULE_3__.onClickPreventDefault; }, +/* harmony export */ removeQueryParam: function() { return /* reexport safe */ _url__WEBPACK_IMPORTED_MODULE_4__.removeQueryParam; }, +/* harmony export */ setQueryParam: function() { return /* reexport safe */ _url__WEBPACK_IMPORTED_MODULE_4__.setQueryParam; }, +/* harmony export */ show: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.show; }, +/* harmony export */ showElements: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.showElements; }, +/* harmony export */ showFormError: function() { return /* reexport safe */ _error__WEBPACK_IMPORTED_MODULE_2__.showFormError; } +/* harmony export */ }); +/* harmony import */ var _animation__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./animation */ "./js/src/core/utils/animation.js"); +/* harmony import */ var _async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./async */ "./js/src/core/utils/async.js"); +/* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./error */ "./js/src/core/utils/error.js"); +/* harmony import */ var _event__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./event */ "./js/src/core/utils/event.js"); +/* harmony import */ var _url__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./url */ "./js/src/core/utils/url.js"); +/* harmony import */ var _validation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./validation */ "./js/src/core/utils/validation.js"); +/* harmony import */ var _visibility__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./visibility */ "./js/src/core/utils/visibility.js"); + + + + + + + + +/***/ }), + +/***/ "./js/src/core/utils/url.js": +/*!**********************************!*\ + !*** ./js/src/core/utils/url.js ***! + \**********************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ getQueryParam: function() { return /* binding */ getQueryParam; }, +/* harmony export */ hasQueryParam: function() { return /* binding */ hasQueryParam; }, +/* harmony export */ removeQueryParam: function() { return /* binding */ removeQueryParam; }, +/* harmony export */ setQueryParam: function() { return /* binding */ setQueryParam; } +/* harmony export */ }); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/** + * Initializes URL and URLSearchParams objects from the current window's location + */ +var url = new URL(window.location.href); +var urlParams = url.searchParams; + +/** + * Gets the value of a specified query parameter from the current URL. + * + * @param {string} paramName The name of the query parameter to retrieve. + * @return {string|null} The value associated with the specified query parameter name, or null if not found. + */ +var getQueryParam = function getQueryParam(paramName) { + return urlParams.get(paramName); +}; + +/** + * Removes a query parameter from the current URL and returns the updated URL string. + * + * @param {string} paramName The name of the query parameter to remove. + * @return {string} The updated URL string. + */ +var removeQueryParam = function removeQueryParam(paramName) { + urlParams.delete(paramName); + url.search = urlParams.toString(); + return url.toString(); +}; + +/** + * Sets the value of a query parameter in the current URL and optionally updates the browser's history state. + * + * @param {string} paramName The name of the query parameter to set. + * @param {string} paramValue The value to set for the query parameter. + * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'. + * @return {string} The updated URL string. + */ +var setQueryParam = function setQueryParam(paramName, paramValue) { + var updateMethod = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'pushState'; + urlParams.set(paramName, paramValue); + url.search = urlParams.toString(); + if (['pushState', 'replaceState'].includes(updateMethod)) { + var state = _defineProperty({}, paramName, paramValue); + window.history[updateMethod](state, '', url); + } + return url.toString(); +}; + +/** + * Checks if a query parameter exists in the current URL. + * + * @param {string} paramName The name of the query parameter to check. + * @return {boolean} True if the query parameter exists, otherwise false. + */ +var hasQueryParam = function hasQueryParam(paramName) { + return urlParams.has(paramName); +}; + +/***/ }), + +/***/ "./js/src/core/utils/validation.js": +/*!*****************************************!*\ + !*** ./js/src/core/utils/validation.js ***! + \*****************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ isEmptyObject: function() { return /* binding */ isEmptyObject; }, +/* harmony export */ isHTMLElement: function() { return /* binding */ isHTMLElement; }, +/* harmony export */ isValidEmail: function() { return /* binding */ isValidEmail; } +/* harmony export */ }); +/** + * Validates an email address using a regular expression. + * + * @param {string} email The email address to validate. + * @return {boolean} True if the email address is valid, otherwise false. + */ +var isValidEmail = function isValidEmail(email) { + return typeof email === 'string' ? /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(email) : false; +}; + +/** + * Validates if the given element is an instance of HTMLElement. + * + * @param {any} element Element to be checked. + * @return {boolean} True if it's an HTMLElement, otherwise false. + */ +var isHTMLElement = function isHTMLElement(element) { + return element instanceof HTMLElement || console.warn('Invalid argument: Element must be an instance of HTMLElement') || false; +}; + +/** + * Checks if the given object is empty. + * + * @param {Object} obj The object to check. + * @return {boolean} True if the object is empty, otherwise false. + */ +var isEmptyObject = function isEmptyObject(obj) { + return Object.keys(obj).length === 0 && obj.constructor === Object; +}; + +/***/ }), + +/***/ "./js/src/core/utils/visibility.js": +/*!*****************************************!*\ + !*** ./js/src/core/utils/visibility.js ***! + \*****************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ hide: function() { return /* binding */ hide; }, +/* harmony export */ hideElements: function() { return /* binding */ hideElements; }, +/* harmony export */ isVisible: function() { return /* binding */ isVisible; }, +/* harmony export */ show: function() { return /* binding */ show; }, +/* harmony export */ showElements: function() { return /* binding */ showElements; } +/* harmony export */ }); +/* harmony import */ var core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core/constants */ "./js/src/core/constants.js"); +/** + * Internal dependencies + */ + + +/** + * Shows specified elements by removing the hidden class. + * + * @param {Array} elements An array of elements to show. + * @return {void} + */ +var showElements = function showElements(elements) { + var _Array$from; + return (_Array$from = Array.from(elements)) === null || _Array$from === void 0 ? void 0 : _Array$from.forEach(function (element) { + return show(element); + }); +}; + +/** + * Hides specified elements by adding the hidden class. + * + * @param {Array} elements An array of elements to hide. + * @return {void} + */ +var hideElements = function hideElements(elements) { + var _Array$from2; + return (_Array$from2 = Array.from(elements)) === null || _Array$from2 === void 0 ? void 0 : _Array$from2.forEach(function (element) { + return hide(element); + }); +}; + +/** + * Removes the hidden class to show the element. + * + * @param {Element} element The element to show. + * @return {void} + */ +var show = function show(element) { + return element === null || element === void 0 ? void 0 : element.classList.remove(core_constants__WEBPACK_IMPORTED_MODULE_0__.HIDDEN_CLASS); +}; + +/** + * Adds the hidden class to hide the element. + * + * @param {Element} element The element to hide. + * @return {void} + */ +var hide = function hide(element) { + return element === null || element === void 0 ? void 0 : element.classList.add(core_constants__WEBPACK_IMPORTED_MODULE_0__.HIDDEN_CLASS); +}; + +/** + * Checks if an element is visible. + * + * @param {HTMLElement} element The HTML element to check for visibility. + * @return {boolean} Returns true if the element is visible, otherwise false. + */ +var isVisible = function isVisible(element) { + var styles = window.getComputedStyle(element); + return styles.getPropertyValue('display') !== 'none'; +}; + +/***/ }), + +/***/ "./js/src/settings-components/components/dependent-updater-component.js": +/*!******************************************************************************!*\ + !*** ./js/src/settings-components/components/dependent-updater-component.js ***! + \******************************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ frmDependentUpdaterComponent; } +/* harmony export */ }); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } +/** + * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview. + * The names of the elements that will be updated are specified using the "will-change" attribute. + * It is primarily used in components from Style/Quick Settings. + * For instance, when the "FrmPrimaryColorStyleComponent" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds. + */ +var frmDependentUpdaterComponent = /*#__PURE__*/function () { + /** + * Creates an instance of frmDependentUpdaterComponent. + * @param {HTMLElement} component - The component element. + */ + function frmDependentUpdaterComponent(component) { + _classCallCheck(this, frmDependentUpdaterComponent); + this.component = component; + try { + var willChangeData = JSON.parse(this.component.dataset.willChange); + this.data = { + propagateInputs: this.initPropagationList(willChangeData), + changeEvent: new Event('change', { + bubbles: true + }) + }; + } catch (error) { + console.error('Error parsing JSON data from "will-change" attribute.', error); + } + } + + /** + * Initializes the list of inputs to propagate changes to. + * The selection is made by provided input's names list in "will-change" attribute. + * @param {string[]} inputNames - The names of the inputs to propagate changes to. + * @return {HTMLElement[]} - The list of inputs to propagate changes to. + */ + return _createClass(frmDependentUpdaterComponent, [{ + key: "initPropagationList", + value: function initPropagationList(inputNames) { + var list = []; + inputNames.forEach(function (name) { + var input = document.querySelector("input[name=\"".concat(name, "\"]")); + if (null !== input) { + list.push(input); + } + }); + return list; + } + + /** + * Updates all dependent elements with the given value. + * @param {string} value - The value to update the dependent elements with. + */ + }, { + key: "updateAllDependentElements", + value: function updateAllDependentElements(value) { + this.data.propagateInputs.forEach(function (input) { + input.value = value; + }); + this.data.propagateInputs[0].dispatchEvent(this.data.changeEvent); + } + }]); +}(); + + +/***/ }), + +/***/ "./js/src/settings-components/components/radio-component.js": +/*!******************************************************************!*\ + !*** ./js/src/settings-components/components/radio-component.js ***! + \******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ frmRadioComponent; } +/* harmony export */ }); +/* harmony import */ var core_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core/utils */ "./js/src/core/utils/index.js"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } + + +/** + * Represents a radio component. + * @class + */ +var frmRadioComponent = /*#__PURE__*/function () { + function frmRadioComponent() { + _classCallCheck(this, frmRadioComponent); + this.radioElements = document.querySelectorAll('.frm-style-component.frm-radio-component'); + if (0 < this.radioElements.length) { + this.init(); + } + } + + /** + * Initializes the radio component. + */ + return _createClass(frmRadioComponent, [{ + key: "init", + value: function init() { + var _this = this; + this.radioElements.forEach(function (element) { + _this.initOnRadioChange(element); + }); + this.initTrackerOnAccordionClick(); + } + }, { + key: "initTrackerOnAccordionClick", + value: function initTrackerOnAccordionClick() { + var _this2 = this; + var accordionitems = document.querySelectorAll('#frm_style_sidebar .accordion-section h3'); + accordionitems.forEach(function (accordionitem) { + accordionitem.addEventListener('click', function (event) { + var wrapper = event.target.closest('.accordion-section'); + var radioButtons = wrapper.querySelectorAll('.frm-style-component.frm-radio-component input[type="radio"]:checked'); + radioButtons.forEach(function (radio) { + setTimeout(function () { + return _this2.onRadioChange(radio); + }, 200); + }); + }); + }); + } + + /** + * Initializes the onRadioChange event for the given wrapper. + * @param {HTMLElement} radioElement - The radio element. + */ + }, { + key: "initOnRadioChange", + value: function initOnRadioChange(radioElement) { + var _this3 = this; + radioElement.querySelectorAll('input[type="radio"]').forEach(function (radio) { + if (radio.checked) { + _this3.onRadioChange(radio); + } + radio.addEventListener('change', function (event) { + _this3.onRadioChange(event.target); + }); + }); + } + + /** + * Handles the onRadioChange event for the given wrapper. + * @param {HTMLElement} target - The active radio button. + */ + }, { + key: "onRadioChange", + value: function onRadioChange(target) { + var wrapper = target.closest('.frm-style-component.frm-radio-component'); + var activeItem = wrapper.querySelector('input[type="radio"]:checked + label'); + if (null === activeItem) { + return; + } + this.moveTracker(activeItem, wrapper); + this.hideExtraElements(target); + this.maybeShowExtraElements(target); + } + + /** + * Display additional elements related to the selected radio option. + * @param {HTMLElement} radio - The radio button element. + */ + }, { + key: "maybeShowExtraElements", + value: function maybeShowExtraElements(radio) { + var elementAttr = radio.getAttribute('data-frm-show-element'); + if (null === elementAttr) { + return; + } + var elements = document.querySelectorAll("div[data-frm-element=\"".concat(elementAttr, "\"]")); + if (0 === elements.length) { + return; + } + elements.forEach(function (element) { + (0,core_utils__WEBPACK_IMPORTED_MODULE_0__.show)(element); + element.classList.add('frm-element-is-visible'); + }); + } + + /** + * Hide the possible opepend extra elements. + */ + }, { + key: "hideExtraElements", + value: function hideExtraElements() { + var elements = document.querySelectorAll('.frm-element-is-visible'); + if (0 === elements.length) { + return; + } + elements.forEach(function (element) { + element.classList.remove('frm-element-is-visible'); + element.classList.add('frm_hidden'); + (0,core_utils__WEBPACK_IMPORTED_MODULE_0__.hide)(element); + }); + } + + /** + * Moves the tracker to the active item. + * @param {HTMLElement} activeItem - The active item element. + * @param {HTMLElement} wrapper - The wrapper element. + */ + }, { + key: "moveTracker", + value: function moveTracker(activeItem, wrapper) { + var offset = activeItem.offsetLeft; + var width = activeItem.offsetWidth; + var tracker = wrapper.querySelector('.frm-radio-active-tracker'); + tracker.style.left = 0; + tracker.style.width = "".concat(width, "px"); + tracker.style.transform = "translateX(".concat(offset, "px)"); + } + }]); +}(); + + +/***/ }), + +/***/ "./js/src/settings-components/components/slider-component.js": +/*!*******************************************************************!*\ + !*** ./js/src/settings-components/components/slider-component.js ***! + \*******************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ frmSliderComponent; } +/* harmony export */ }); +/* harmony import */ var _dependent_updater_component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./dependent-updater-component */ "./js/src/settings-components/components/dependent-updater-component.js"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } + +/** + * Represents a slider component. + * @class frmSliderComponent + */ +var frmSliderComponent = /*#__PURE__*/function () { + function frmSliderComponent() { + var _this = this; + _classCallCheck(this, frmSliderComponent); + this.sliderElements = document.querySelectorAll('.frm-slider-component'); + if (0 === this.sliderElements.length) { + return; + } + + // The slider bullet point width in pixels. Used in value calculation on drag event. + this.sliderBulletWidth = 16; + this.sliderMarginRight = 5; + this.eventsChange = []; + var debounce = frmDom.util.debounce; + this.valueChangeDebouncer = debounce(function (index) { + return _this.triggerValueChange(index); + }, 25); + this.initOptions(); + this.init(); + } + + /** + * Initializes the options for the slider component. + */ + return _createClass(frmSliderComponent, [{ + key: "initOptions", + value: function initOptions() { + var _this2 = this; + this.options = []; + this.sliderElements.forEach(function (element, index) { + var parentWrapper = element.classList.contains('frm-has-multiple-values') ? element.closest('.frm-style-component') : element; + _this2.options.push({ + dragging: false, + startX: 0, + translateX: 0, + maxValue: parseInt(element.dataset.maxValue, 10), + element: element, + index: index, + value: 0, + dependentUpdater: parentWrapper.classList.contains('frm-style-dependent-updater-component') ? new _dependent_updater_component__WEBPACK_IMPORTED_MODULE_0__["default"](parentWrapper) : null + }); + }); + } + + /** + * Initializes the slider component. + */ + }, { + key: "init", + value: function init() { + this.initSlidersPosition(); + this.initDraggable(); + } + + /** + * Initializes the draggable functionality for the slider component. + */ + }, { + key: "initDraggable", + value: function initDraggable() { + var _this3 = this; + this.sliderElements.forEach(function (element, index) { + _this3.eventsChange[index] = new Event('change', { + bubbles: true, + cancelable: true + }); + var draggableBullet = element.querySelector('.frm-slider-bullet'); + var valueInput = element.querySelector('.frm-slider-value input[type="text"]'); + valueInput.addEventListener('change', function (event) { + var unit = element.querySelector('select').value; + if (_this3.getMaxValue(unit, index) < parseInt(event.target.value, 10)) { + return; + } + _this3.initSliderWidth(element); + _this3.options[index].fullValue = _this3.updateValue(element, valueInput.value + unit); + _this3.triggerValueChange(index); + }); + _this3.expandSliderGroup(element); + _this3.updateOnUnitChange(element, valueInput, index); + _this3.changeSliderPositionOnClick(element, valueInput, index); + draggableBullet.addEventListener('mousedown', function (event) { + event.preventDefault(); + event.stopPropagation(); + if (element.classList.contains('frm-disabled')) { + return; + } + _this3.enableDragging(event, index); + }); + draggableBullet.addEventListener('mousemove', function (event) { + if (element.classList.contains('frm-disabled')) { + return; + } + _this3.moveTracker(event, index); + }); + draggableBullet.addEventListener('mouseup', function (event) { + if (element.classList.contains('frm-disabled')) { + return; + } + _this3.disableDragging(index, event); + }); + draggableBullet.addEventListener('mouseleave', function (event) { + if (element.classList.contains('frm-disabled')) { + return; + } + _this3.disableDragging(index, event); + }); + }); + } + }, { + key: "expandSliderGroup", + value: function expandSliderGroup(element) { + var svgIcon = element.querySelector('.frmsvg'); + if ('undefined' === typeof element.dataset.displaySliders || null === svgIcon) { + return; + } + var sliderGroupItems = this.getSliderGroupItems(element); + svgIcon.addEventListener('click', function () { + sliderGroupItems.forEach(function (item) { + item.classList.toggle('frm_hidden'); + }); + }); + } + }, { + key: "updateOnUnitChange", + value: function updateOnUnitChange(element, valueInput, index) { + var _this4 = this; + element.querySelector('select').addEventListener('change', function (event) { + var unit = event.target.value.toLowerCase(); + if ('' === unit) { + element.classList.add('frm-disabled', 'frm-empty'); + return; + } + if ('auto' === unit) { + element.classList.add('frm-disabled'); + _this4.updateValue(element, 'auto'); + _this4.triggerValueChange(index); + return; + } + element.classList.remove('frm-disabled', 'frm-empty'); + _this4.options[index].fullValue = valueInput.value + unit; + _this4.updateValue(element, _this4.options[index].fullValue); + _this4.triggerValueChange(index); + }); + } + }, { + key: "changeSliderPositionOnClick", + value: function changeSliderPositionOnClick(element, valueInput, index) { + var _this5 = this; + var frmSlider = element.querySelector('.frm-slider'); + var customEvent = new Event('change', { + 'bubbles': true, + 'cancelable': true + }); + frmSlider.addEventListener('click', function (event) { + if (element.classList.contains('frm-disabled')) { + return; + } + event.preventDefault(); + event.stopPropagation(); + if (!event.target.classList.contains('frm-slider') && !event.target.classList.contains('frm-slider-active-track')) { + return; + } + var sliderWidth = frmSlider.offsetWidth - _this5.sliderBulletWidth; + var sliderRect = frmSlider.getBoundingClientRect(); + var deltaX = event.clientX - sliderRect.left - _this5.sliderBulletWidth; + var unit = element.querySelector('select').value; + var value = _this5.calculateValue(sliderWidth, deltaX, _this5.getMaxValue(unit, index)); + if (value < 0) { + return; + } + _this5.options[index].fullValue = _this5.updateValue(element, value + unit); + _this5.initChildSlidersWidth(element, deltaX, index, value + unit); + valueInput.value = value; + valueInput.dispatchEvent(customEvent); + }); + } + + /** + * Retrieves an array of slider group items based on the provided element. + * + * @param {HTMLElement} element - The element to retrieve slider group items from. + * @return {NodeList} - An array-like object containing the slider group items. + */ + }, { + key: "getSliderGroupItems", + value: function getSliderGroupItems(element) { + if ('undefined' === typeof element.dataset.displaySliders) { + return []; + } + var slidersGroup = element.dataset.displaySliders.split(','); + var query = slidersGroup.map(function (item) { + return ".frm-slider-component[data-type=\"".concat(item, "\"]"); + }).join(', '); + return element.closest('.frm-style-component').querySelectorAll(query); + } + + /** + * Initializes the position of sliders when a accordion section is opened. + */ + }, { + key: "initSlidersPosition", + value: function initSlidersPosition() { + var _this6 = this; + var accordionitems = document.querySelectorAll('#frm_style_sidebar .accordion-section h3'); + var quickSettings = document.querySelector('.frm-quick-settings'); + var openedAccordion = document.querySelector('.accordion-section.open'); + + // Detect if upload background image upload has triggered and initialize the "Image Opacity" slider width. + wp.hooks.addAction('frm_pro_on_bg_image_upload', 'formidable', function (event) { + var imageBackgroundOpacitySlider = event.closest('.accordion-section-content').querySelector('#frm-bg-image-opacity-slider'); + _this6.initSlidersWidth(imageBackgroundOpacitySlider); + }); + + // init the sliders width from "Quick Settings" page. + if (null !== quickSettings) { + this.initSlidersWidth(quickSettings); + } + + // Init the sliders width in opened accordion section from "Advanced Settings" page. + if (null !== openedAccordion) { + this.initSlidersWidth(openedAccordion); + } + + // init the sliders width everytime when an accordion section is opened from "Advanced Settings" page. + accordionitems.forEach(function (item) { + item.addEventListener('click', function (event) { + _this6.initSlidersWidth(event.target.closest('.accordion-section')); + }); + }); + this.initSliderPositionOnFieldShapeChange(); + } + + /** + * Initializes the width of "Corner Radius" slider that is dynamically is displayed on "Field Shape" option change from "Quick Settings". + * + * @return {void} + */ + }, { + key: "initSliderPositionOnFieldShapeChange", + value: function initSliderPositionOnFieldShapeChange() { + var _this7 = this; + var fieldShapeType = document.querySelector('.frm-style-component.frm-field-shape'); + if (null === fieldShapeType) { + return; + } + var radioButtons = fieldShapeType.querySelectorAll('input[type="radio"]'); + radioButtons.forEach(function (radio) { + radio.addEventListener('change', function (event) { + if (event.target.checked && 'rounded-corner' === event.target.value) { + var slider = document.querySelector('div[data-frm-element="field-shape-corner-radius"] .frm-slider-component'); + _this7.initSliderWidth(slider); + } + }); + }); + } + + /** + * Initializes the width of sliders within a given section. + * + * @param {HTMLElement} section - The section containing the sliders. + * @return {void} + */ + }, { + key: "initSlidersWidth", + value: function initSlidersWidth(section) { + var _this8 = this; + var sliders = section.querySelectorAll('.frm-slider-component'); + sliders.forEach(function (slider) { + setTimeout(function () { + _this8.initSliderWidth(slider); + }, 100); + }); + } + + /** + * Initializes the width of a slider. + * + * @param {HTMLElement} slider - The slider element. + * @return {void} + */ + }, { + key: "initSliderWidth", + value: function initSliderWidth(slider) { + if (slider.classList.contains('frm-disabled')) { + return; + } + var index = this.getSliderIndex(slider); + var sliderWidth = slider.querySelector('.frm-slider').offsetWidth - this.sliderBulletWidth; + var value = parseInt(slider.querySelector('.frm-slider-value input[type="text"]').value, 10); + var unit = slider.querySelector('select').value; + var deltaX = '%' === unit ? Math.round(sliderWidth * value / 100) : Math.ceil(value / this.options[index].maxValue * sliderWidth); + slider.querySelector('.frm-slider-active-track').style.width = "".concat(deltaX, "px"); + this.options[index].translateX = deltaX; + this.options[index].value = value + unit; + } + + /** + * Initializes the width of child sliders. + * + * @param {HTMLElement} slider - The parent slider element. + * @param {number} width - The width to set for the child sliders. + * @param {number} index - The starting index for the child sliders. + * @param {number} value - The value to set for the child sliders. + */ + }, { + key: "initChildSlidersWidth", + value: function initChildSlidersWidth(slider, width, index, value) { + var _this9 = this; + if (!slider.classList.contains('frm-has-independent-fields') && !slider.classList.contains('frm-has-multiple-values')) { + return; + } + var childSliders = slider.classList.contains('frm-has-independent-fields') ? slider.querySelectorAll('.frm-independent-slider-field') : this.getSliderGroupItems(slider); + childSliders.forEach(function (item, childIndex) { + item.querySelector('.frm-slider-active-track').style.width = "".concat(width, "px"); + _this9.options[index + childIndex + 1].translateX = width; + _this9.options[index + childIndex + 1].value = value; + }); + } + + /** + * Returns the index of the specified slider element. + * + * @param {HTMLElement} slider - The slider element. + * @return {number} The index of the slider element. + */ + }, { + key: "getSliderIndex", + value: function getSliderIndex(slider) { + return this.options.filter(function (option) { + return option.element === slider; + })[0].index; + } + }, { + key: "moveTracker", + value: + /** + * Handles the movement of the slider tracker. + * + * @param {Event} event - The event object representing the mouse movement. + * @param {number} index - The index of the slider element. + * @return {void} + */ + function moveTracker(event, index) { + if (!this.options[index].dragging) { + return; + } + var deltaX = event.clientX - this.options[index].startX; + var element = this.sliderElements[index]; + var sliderWidth = element.querySelector('.frm-slider').offsetWidth; + + // Ensure deltaX does not go below 0 + deltaX = Math.max(deltaX, 0); + if (deltaX + this.sliderBulletWidth / 2 + this.sliderMarginRight >= sliderWidth) { + return; + } + var unit = element.querySelector('select').value; + var value = this.calculateValue(sliderWidth, deltaX, this.getMaxValue(unit, index)); + element.querySelector('.frm-slider-value input[type="text"]').value = value; + element.querySelector('.frm-slider-bullet .frm-slider-value-label').innerText = value; + element.querySelector('.frm-slider-active-track').style.width = "".concat(deltaX, "px"); + this.initChildSlidersWidth(element, deltaX, index, value + unit); + this.options[index].translateX = deltaX; + this.options[index].value = value + unit; + this.options[index].fullValue = this.updateValue(element, this.options[index].value); + this.valueChangeDebouncer(index); + } + + /** + * Get the maximum value based on the unit and index. + * + * @param {string} unit - The unit of measurement. + * @param {number} index - The index of the option. + * @return {number} The maximum value. + */ + }, { + key: "getMaxValue", + value: function getMaxValue(unit, index) { + return '%' === unit ? 100 : this.options[index].maxValue; + } + + /** + * Enables dragging for the slider component. + * + * @param {Event} event - The event object. + * @param {number} index - The index of the option being dragged. + */ + }, { + key: "enableDragging", + value: function enableDragging(event, index) { + event.target.classList.add('frm-dragging'); + this.options[index].dragging = true; + this.options[index].startX = event.clientX - this.options[index].translateX; + } + + /** + * Disables dragging for a specific index. + * + * @param {number} index - The index of the option to disable dragging for. + * @param {Event} event - The event object triggered by the dragging action. + */ + }, { + key: "disableDragging", + value: function disableDragging(index, event) { + if (false === this.options[index].dragging) { + return; + } + event.target.classList.remove('frm-dragging'); + this.options[index].dragging = false; + this.triggerValueChange(index); + } + + /** + * Triggers a value change for the specified index. + * + * @param {number} index - The index of the value to be changed. + */ + }, { + key: "triggerValueChange", + value: function triggerValueChange(index) { + var _this10 = this; + if (null !== this.options[index].dependentUpdater) { + this.options[index].dependentUpdater.updateAllDependentElements(this.options[index].fullValue); + return; + } + var input = this.sliderElements[index].classList.contains('frm-has-multiple-values') ? this.sliderElements[index].closest('.frm-style-component').querySelector('input[type="hidden"]') : this.sliderElements[index].querySelectorAll('.frm-slider-value input[type="hidden"]'); + if (input instanceof NodeList) { + input.forEach(function (item) { + item.dispatchEvent(_this10.eventsChange[index]); + }); + return; + } + input.dispatchEvent(this.eventsChange[index]); + } + + /** + * Calculates the value based on the width, deltaX, and maxValue. + * + * @param {number} width - The width of the slider. + * @param {number} deltaX - The change in x-coordinate. + * @param {number} maxValue - The maximum value. + * @return {number} - The calculated value. + */ + }, { + key: "calculateValue", + value: function calculateValue(width, deltaX, maxValue) { + // Indicates the additional value generated by the slider's drag progress (up to 100%) and the width of the slider bullet. + // Generates a more accurate value for the slider's start (0) and end (maximum value) positions, taking into account the slider's position and bullet width. + var delta = Math.ceil(this.sliderBulletWidth * (deltaX / width)); + var value = Math.ceil((deltaX + delta) / width * maxValue); + return Math.min(value, maxValue); + } + + /** + * Updates the value of a slider component. + * + * @param {HTMLElement} element - The slider component element. + * @param {string} value - The new value to be set. + * @return {string} - The updated value. + */ + }, { + key: "updateValue", + value: function updateValue(element, value) { + var _this11 = this; + // When the slider component is used for "Base Font Size", we need to update a hidden input field when change happens to indicate that the "Base Font Size" has been adjusted. + // Used to avoid conflicts with other possible font sizes adjustemnts in "Advanced Settings" when moving from "Quick Settings" when "Base Font Size" is not changed. + if (element.classList.contains('frm-base-font-size')) { + var userBaseFontSizeInput = document.querySelector('input[name="frm_style_setting[post_content][use_base_font_size]"]'); + if (null !== userBaseFontSizeInput) { + userBaseFontSizeInput.value = 'true'; + } + } + if (element.classList.contains('frm-has-multiple-values')) { + var input = element.closest('.frm-style-component').querySelector('input[type="hidden"]'); + var inputValue = input.value.split(' '); + var type = element.dataset.type; + if (!inputValue[2]) { + inputValue[2] = '0px'; + } + if (!inputValue[3]) { + inputValue[3] = '0px'; + } + switch (type) { + case 'vertical': + inputValue[0] = value; + inputValue[2] = value; + break; + case 'horizontal': + inputValue[1] = value; + inputValue[3] = value; + break; + case 'top': + inputValue[0] = value; + break; + case 'bottom': + inputValue[2] = value; + break; + case 'left': + inputValue[3] = value; + break; + case 'right': + inputValue[1] = value; + break; + } + var newValue = inputValue.join(' '); + input.value = newValue; + var childSlidersGroup = this.getSliderGroupItems(element); + childSlidersGroup.forEach(function (slider) { + var unitMeasure = _this11.getUnitMeasureFromValue(value); + slider.querySelector('.frm-slider-value input[type="text"]').value = parseInt(value, 10); + slider.querySelector('select').value = unitMeasure; + }); + return newValue; + } + if (element.classList.contains('frm-has-independent-fields')) { + var inputValues = element.querySelectorAll('.frm-slider-value input[type="hidden"]'); + var visibleValues = element.querySelectorAll('.frm-slider-value input[type="text"]'); + inputValues.forEach(function (input, index) { + input.value = value; + visibleValues[index + 1].value = parseInt(value, 10); + }); + return value; + } + element.querySelector('.frm-slider-value input[type="hidden"]').value = value; + return value; + } + + /** + * Returns the unit of measurement used in the given value. + * + * @param {string} value - The value to check for the unit of measurement. + * @return {string} The unit of measurement ('%', 'px', 'em') found in the value, or an empty string if none is found. + */ + }, { + key: "getUnitMeasureFromValue", + value: function getUnitMeasureFromValue(value) { + return ['%', 'px', 'em'].find(function (unit) { + return value.includes(unit); + }) || ''; + } + }]); +}(); + + +/***/ }), + +/***/ "./js/src/settings-components/components/tabs-component.js": +/*!*****************************************************************!*\ + !*** ./js/src/settings-components/components/tabs-component.js ***! + \*****************************************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ frmTabsComponent; } +/* harmony export */ }); +/* harmony import */ var _components_class_tabs_navigator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../components/class-tabs-navigator */ "./js/src/components/class-tabs-navigator.js"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } + +/** + * Represents a Tabs Component. + * @class + */ +var frmTabsComponent = /*#__PURE__*/function () { + function frmTabsComponent() { + _classCallCheck(this, frmTabsComponent); + this.elements = document.querySelectorAll('.frm-style-tabs-wrapper'); + if (0 < this.elements.length) { + this.init(); + } + } + + /** + * Initializes the Tabs Component. + */ + return _createClass(frmTabsComponent, [{ + key: "init", + value: function init() { + this.elements.forEach(function (element) { + new _components_class_tabs_navigator__WEBPACK_IMPORTED_MODULE_0__.frmTabsNavigator(element); + }); + } + + /** + * Initializes the component on tab click. + * @param {Element} wrapper - The wrapper element. + */ + }, { + key: "initOnTabClick", + value: function initOnTabClick(wrapper) { + var _this = this; + this.initActiveBackgroundWidth(wrapper); + wrapper.querySelectorAll('.frm-tab-item').forEach(function (tab) { + tab.addEventListener('click', function (event) { + _this.onTabClick(event.target.closest('.frm-tabs-wrapper')); + }); + }); + } + }]); +}(); + + +/***/ }), + +/***/ "./node_modules/memize/index.js": +/*!**************************************!*\ + !*** ./node_modules/memize/index.js ***! + \**************************************/ +/***/ (function(module) { + +/** + * Memize options object. + * + * @typedef MemizeOptions + * + * @property {number} [maxSize] Maximum size of the cache. + */ + +/** + * Internal cache entry. + * + * @typedef MemizeCacheNode + * + * @property {?MemizeCacheNode|undefined} [prev] Previous node. + * @property {?MemizeCacheNode|undefined} [next] Next node. + * @property {Array<*>} args Function arguments for cache + * entry. + * @property {*} val Function result. + */ + +/** + * Properties of the enhanced function for controlling cache. + * + * @typedef MemizeMemoizedFunction + * + * @property {()=>void} clear Clear the cache. + */ + +/** + * Accepts a function to be memoized, and returns a new memoized function, with + * optional options. + * + * @template {Function} F + * + * @param {F} fn Function to memoize. + * @param {MemizeOptions} [options] Options object. + * + * @return {F & MemizeMemoizedFunction} Memoized function. + */ +function memize( fn, options ) { + var size = 0; + + /** @type {?MemizeCacheNode|undefined} */ + var head; + + /** @type {?MemizeCacheNode|undefined} */ + var tail; + + options = options || {}; + + function memoized( /* ...args */ ) { + var node = head, + len = arguments.length, + args, i; + + searchCache: while ( node ) { + // Perform a shallow equality test to confirm that whether the node + // under test is a candidate for the arguments passed. Two arrays + // are shallowly equal if their length matches and each entry is + // strictly equal between the two sets. Avoid abstracting to a + // function which could incur an arguments leaking deoptimization. + + // Check whether node arguments match arguments length + if ( node.args.length !== arguments.length ) { + node = node.next; + continue; + } + + // Check whether node arguments match arguments values + for ( i = 0; i < len; i++ ) { + if ( node.args[ i ] !== arguments[ i ] ) { + node = node.next; + continue searchCache; + } + } + + // At this point we can assume we've found a match + + // Surface matched node to head if not already + if ( node !== head ) { + // As tail, shift to previous. Must only shift if not also + // head, since if both head and tail, there is no previous. + if ( node === tail ) { + tail = node.prev; + } + + // Adjust siblings to point to each other. If node was tail, + // this also handles new tail's empty `next` assignment. + /** @type {MemizeCacheNode} */ ( node.prev ).next = node.next; + if ( node.next ) { + node.next.prev = node.prev; + } + + node.next = head; + node.prev = null; + /** @type {MemizeCacheNode} */ ( head ).prev = node; + head = node; + } + + // Return immediately + return node.val; + } + + // No cached value found. Continue to insertion phase: + + // Create a copy of arguments (avoid leaking deoptimization) + args = new Array( len ); + for ( i = 0; i < len; i++ ) { + args[ i ] = arguments[ i ]; + } + + node = { + args: args, + + // Generate the result from original function + val: fn.apply( null, args ), + }; + + // Don't need to check whether node is already head, since it would + // have been returned above already if it was + + // Shift existing head down list + if ( head ) { + head.prev = node; + node.next = head; + } else { + // If no head, follows that there's no tail (at initial or reset) + tail = node; + } + + // Trim tail if we're reached max size and are pending cache insertion + if ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) { + tail = /** @type {MemizeCacheNode} */ ( tail ).prev; + /** @type {MemizeCacheNode} */ ( tail ).next = null; + } else { + size++; + } + + head = node; + + return node.val; + } + + memoized.clear = function() { + head = null; + tail = null; + size = 0; + }; + + if ( false ) {} + + // Ignore reason: There's not a clear solution to create an intersection of + // the function with additional properties, where the goal is to retain the + // function signature of the incoming argument and add control properties + // on the return value. + + // @ts-ignore + return memoized; +} + +module.exports = memize; + + +/***/ }), + +/***/ "./node_modules/sprintf-js/src/sprintf.js": +/*!************************************************!*\ + !*** ./node_modules/sprintf-js/src/sprintf.js ***! + \************************************************/ +/***/ (function(module, exports, __webpack_require__) { + +var __WEBPACK_AMD_DEFINE_RESULT__;/* global window, exports, define */ + +!function() { + 'use strict' + + var re = { + not_string: /[^s]/, + not_bool: /[^t]/, + not_type: /[^T]/, + not_primitive: /[^v]/, + number: /[diefg]/, + numeric_arg: /[bcdiefguxX]/, + json: /[j]/, + not_json: /[^j]/, + text: /^[^\x25]+/, + modulo: /^\x25{2}/, + placeholder: /^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/, + key: /^([a-z_][a-z_\d]*)/i, + key_access: /^\.([a-z_][a-z_\d]*)/i, + index_access: /^\[(\d+)\]/, + sign: /^[+-]/ + } + + function sprintf(key) { + // `arguments` is not an array, but should be fine for this call + return sprintf_format(sprintf_parse(key), arguments) + } + + function vsprintf(fmt, argv) { + return sprintf.apply(null, [fmt].concat(argv || [])) + } + + function sprintf_format(parse_tree, argv) { + var cursor = 1, tree_length = parse_tree.length, arg, output = '', i, k, ph, pad, pad_character, pad_length, is_positive, sign + for (i = 0; i < tree_length; i++) { + if (typeof parse_tree[i] === 'string') { + output += parse_tree[i] + } + else if (typeof parse_tree[i] === 'object') { + ph = parse_tree[i] // convenience purposes only + if (ph.keys) { // keyword argument + arg = argv[cursor] + for (k = 0; k < ph.keys.length; k++) { + if (arg == undefined) { + throw new Error(sprintf('[sprintf] Cannot access property "%s" of undefined value "%s"', ph.keys[k], ph.keys[k-1])) + } + arg = arg[ph.keys[k]] + } + } + else if (ph.param_no) { // positional argument (explicit) + arg = argv[ph.param_no] + } + else { // positional argument (implicit) + arg = argv[cursor++] + } + + if (re.not_type.test(ph.type) && re.not_primitive.test(ph.type) && arg instanceof Function) { + arg = arg() + } + + if (re.numeric_arg.test(ph.type) && (typeof arg !== 'number' && isNaN(arg))) { + throw new TypeError(sprintf('[sprintf] expecting number but found %T', arg)) + } + + if (re.number.test(ph.type)) { + is_positive = arg >= 0 + } + + switch (ph.type) { + case 'b': + arg = parseInt(arg, 10).toString(2) + break + case 'c': + arg = String.fromCharCode(parseInt(arg, 10)) + break + case 'd': + case 'i': + arg = parseInt(arg, 10) + break + case 'j': + arg = JSON.stringify(arg, null, ph.width ? parseInt(ph.width) : 0) + break + case 'e': + arg = ph.precision ? parseFloat(arg).toExponential(ph.precision) : parseFloat(arg).toExponential() + break + case 'f': + arg = ph.precision ? parseFloat(arg).toFixed(ph.precision) : parseFloat(arg) + break + case 'g': + arg = ph.precision ? String(Number(arg.toPrecision(ph.precision))) : parseFloat(arg) + break + case 'o': + arg = (parseInt(arg, 10) >>> 0).toString(8) + break + case 's': + arg = String(arg) + arg = (ph.precision ? arg.substring(0, ph.precision) : arg) + break + case 't': + arg = String(!!arg) + arg = (ph.precision ? arg.substring(0, ph.precision) : arg) + break + case 'T': + arg = Object.prototype.toString.call(arg).slice(8, -1).toLowerCase() + arg = (ph.precision ? arg.substring(0, ph.precision) : arg) + break + case 'u': + arg = parseInt(arg, 10) >>> 0 + break + case 'v': + arg = arg.valueOf() + arg = (ph.precision ? arg.substring(0, ph.precision) : arg) + break + case 'x': + arg = (parseInt(arg, 10) >>> 0).toString(16) + break + case 'X': + arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase() + break + } + if (re.json.test(ph.type)) { + output += arg + } + else { + if (re.number.test(ph.type) && (!is_positive || ph.sign)) { + sign = is_positive ? '+' : '-' + arg = arg.toString().replace(re.sign, '') + } + else { + sign = '' + } + pad_character = ph.pad_char ? ph.pad_char === '0' ? '0' : ph.pad_char.charAt(1) : ' ' + pad_length = ph.width - (sign + arg).length + pad = ph.width ? (pad_length > 0 ? pad_character.repeat(pad_length) : '') : '' + output += ph.align ? sign + arg + pad : (pad_character === '0' ? sign + pad + arg : pad + sign + arg) + } + } + } + return output + } + + var sprintf_cache = Object.create(null) + + function sprintf_parse(fmt) { + if (sprintf_cache[fmt]) { + return sprintf_cache[fmt] + } + + var _fmt = fmt, match, parse_tree = [], arg_names = 0 + while (_fmt) { + if ((match = re.text.exec(_fmt)) !== null) { + parse_tree.push(match[0]) + } + else if ((match = re.modulo.exec(_fmt)) !== null) { + parse_tree.push('%') + } + else if ((match = re.placeholder.exec(_fmt)) !== null) { + if (match[2]) { + arg_names |= 1 + var field_list = [], replacement_field = match[2], field_match = [] + if ((field_match = re.key.exec(replacement_field)) !== null) { + field_list.push(field_match[1]) + while ((replacement_field = replacement_field.substring(field_match[0].length)) !== '') { + if ((field_match = re.key_access.exec(replacement_field)) !== null) { + field_list.push(field_match[1]) + } + else if ((field_match = re.index_access.exec(replacement_field)) !== null) { + field_list.push(field_match[1]) + } + else { + throw new SyntaxError('[sprintf] failed to parse named argument key') + } + } + } + else { + throw new SyntaxError('[sprintf] failed to parse named argument key') + } + match[2] = field_list + } + else { + arg_names |= 2 + } + if (arg_names === 3) { + throw new Error('[sprintf] mixing positional and named placeholders is not (yet) supported') + } + + parse_tree.push( + { + placeholder: match[0], + param_no: match[1], + keys: match[2], + sign: match[3], + pad_char: match[4], + align: match[5], + width: match[6], + precision: match[7], + type: match[8] + } + ) + } + else { + throw new SyntaxError('[sprintf] unexpected placeholder') + } + _fmt = _fmt.substring(match[0].length) + } + return sprintf_cache[fmt] = parse_tree + } + + /** + * export to either browser or node.js + */ + /* eslint-disable quote-props */ + if (true) { + exports.sprintf = sprintf + exports.vsprintf = vsprintf + } + if (typeof window !== 'undefined') { + window['sprintf'] = sprintf + window['vsprintf'] = vsprintf + + if (true) { + !(__WEBPACK_AMD_DEFINE_RESULT__ = (function() { + return { + 'sprintf': sprintf, + 'vsprintf': vsprintf + } + }).call(exports, __webpack_require__, exports, module), + __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) + } + } + /* eslint-enable quote-props */ +}(); // eslint-disable-line + + +/***/ }), + +/***/ "./node_modules/tannin/index.js": +/*!**************************************!*\ + !*** ./node_modules/tannin/index.js ***! + \**************************************/ +/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ Tannin; } +/* harmony export */ }); +/* harmony import */ var _tannin_plural_forms__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tannin/plural-forms */ "./node_modules/@tannin/plural-forms/index.js"); + + +/** + * Tannin constructor options. + * + * @typedef {Object} TanninOptions + * + * @property {string} [contextDelimiter] Joiner in string lookup with context. + * @property {Function} [onMissingKey] Callback to invoke when key missing. + */ + +/** + * Domain metadata. + * + * @typedef {Object} TanninDomainMetadata + * + * @property {string} [domain] Domain name. + * @property {string} [lang] Language code. + * @property {(string|Function)} [plural_forms] Plural forms expression or + * function evaluator. + */ + +/** + * Domain translation pair respectively representing the singular and plural + * translation. + * + * @typedef {[string,string]} TanninTranslation + */ + +/** + * Locale data domain. The key is used as reference for lookup, the value an + * array of two string entries respectively representing the singular and plural + * translation. + * + * @typedef {{[key:string]:TanninDomainMetadata|TanninTranslation,'':TanninDomainMetadata|TanninTranslation}} TanninLocaleDomain + */ + +/** + * Jed-formatted locale data. + * + * @see http://messageformat.github.io/Jed/ + * + * @typedef {{[domain:string]:TanninLocaleDomain}} TanninLocaleData + */ + +/** + * Default Tannin constructor options. + * + * @type {TanninOptions} + */ +var DEFAULT_OPTIONS = { + contextDelimiter: '\u0004', + onMissingKey: null, +}; + +/** + * Given a specific locale data's config `plural_forms` value, returns the + * expression. + * + * @example + * + * ``` + * getPluralExpression( 'nplurals=2; plural=(n != 1);' ) === '(n != 1)' + * ``` + * + * @param {string} pf Locale data plural forms. + * + * @return {string} Plural forms expression. + */ +function getPluralExpression( pf ) { + var parts, i, part; + + parts = pf.split( ';' ); + + for ( i = 0; i < parts.length; i++ ) { + part = parts[ i ].trim(); + if ( part.indexOf( 'plural=' ) === 0 ) { + return part.substr( 7 ); + } + } +} + +/** + * Tannin constructor. + * + * @class + * + * @param {TanninLocaleData} data Jed-formatted locale data. + * @param {TanninOptions} [options] Tannin options. + */ +function Tannin( data, options ) { + var key; + + /** + * Jed-formatted locale data. + * + * @name Tannin#data + * @type {TanninLocaleData} + */ + this.data = data; + + /** + * Plural forms function cache, keyed by plural forms string. + * + * @name Tannin#pluralForms + * @type {Object} + */ + this.pluralForms = {}; + + /** + * Effective options for instance, including defaults. + * + * @name Tannin#options + * @type {TanninOptions} + */ + this.options = {}; + + for ( key in DEFAULT_OPTIONS ) { + this.options[ key ] = options !== undefined && key in options + ? options[ key ] + : DEFAULT_OPTIONS[ key ]; + } +} + +/** + * Returns the plural form index for the given domain and value. + * + * @param {string} domain Domain on which to calculate plural form. + * @param {number} n Value for which plural form is to be calculated. + * + * @return {number} Plural form index. + */ +Tannin.prototype.getPluralForm = function( domain, n ) { + var getPluralForm = this.pluralForms[ domain ], + config, plural, pf; + + if ( ! getPluralForm ) { + config = this.data[ domain ][ '' ]; + + pf = ( + config[ 'Plural-Forms' ] || + config[ 'plural-forms' ] || + // Ignore reason: As known, there's no way to document the empty + // string property on a key to guarantee this as metadata. + // @ts-ignore + config.plural_forms + ); + + if ( typeof pf !== 'function' ) { + plural = getPluralExpression( + config[ 'Plural-Forms' ] || + config[ 'plural-forms' ] || + // Ignore reason: As known, there's no way to document the empty + // string property on a key to guarantee this as metadata. + // @ts-ignore + config.plural_forms + ); + + pf = (0,_tannin_plural_forms__WEBPACK_IMPORTED_MODULE_0__["default"])( plural ); + } + + getPluralForm = this.pluralForms[ domain ] = pf; + } + + return getPluralForm( n ); +}; + +/** + * Translate a string. + * + * @param {string} domain Translation domain. + * @param {string|void} context Context distinguishing terms of the same name. + * @param {string} singular Primary key for translation lookup. + * @param {string=} plural Fallback value used for non-zero plural + * form index. + * @param {number=} n Value to use in calculating plural form. + * + * @return {string} Translated string. + */ +Tannin.prototype.dcnpgettext = function( domain, context, singular, plural, n ) { + var index, key, entry; + + if ( n === undefined ) { + // Default to singular. + index = 0; + } else { + // Find index by evaluating plural form for value. + index = this.getPluralForm( domain, n ); + } + + key = singular; + + // If provided, context is prepended to key with delimiter. + if ( context ) { + key = context + this.options.contextDelimiter + singular; + } + + entry = this.data[ domain ][ key ]; + + // Verify not only that entry exists, but that the intended index is within + // range and non-empty. + if ( entry && entry[ index ] ) { + return entry[ index ]; + } + + if ( this.options.onMissingKey ) { + this.options.onMissingKey( singular, domain ); + } + + // If entry not found, fall back to singular vs. plural with zero index + // representing the singular value. + return index === 0 ? singular : plural; +}; + + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js": +/*!***************************************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js ***! + \***************************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _arrayLikeToArray; } +/* harmony export */ }); +function _arrayLikeToArray(r, a) { + (null == a || a > r.length) && (a = r.length); + for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; + return n; +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js": +/*!****************************************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js ***! + \****************************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _arrayWithoutHoles; } +/* harmony export */ }); +/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js"); + +function _arrayWithoutHoles(r) { + if (Array.isArray(r)) return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r); +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js": +/*!*************************************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***! + \*************************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _classCallCheck; } +/* harmony export */ }); +function _classCallCheck(a, n) { + if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js": +/*!**************************************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js ***! + \**************************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _iterableToArray; } +/* harmony export */ }); +function _iterableToArray(r) { + if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js": +/*!****************************************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js ***! + \****************************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _nonIterableSpread; } +/* harmony export */ }); +function _nonIterableSpread() { + throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js": +/*!****************************************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js ***! + \****************************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _toConsumableArray; } +/* harmony export */ }); +/* harmony import */ var _arrayWithoutHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithoutHoles.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js"); +/* harmony import */ var _iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArray.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js"); +/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js"); +/* harmony import */ var _nonIterableSpread_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableSpread.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js"); + + + + +function _toConsumableArray(r) { + return (0,_arrayWithoutHoles_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r) || (0,_iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__["default"])(r) || (0,_unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(r) || (0,_nonIterableSpread_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js": +/*!*************************************************************************************************************!*\ + !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js ***! + \*************************************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _unsupportedIterableToArray; } +/* harmony export */ }); +/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js"); + +function _unsupportedIterableToArray(r, a) { + if (r) { + if ("string" == typeof r) return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r, a); + var t = {}.toString.call(r).slice(8, -1); + return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r, a) : void 0; + } +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js": +/*!************************************************************************************************!*\ + !*** ./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js ***! + \************************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _defineProperty; } +/* harmony export */ }); +/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js"); + +function _defineProperty(e, r, t) { + return (r = (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r)) in e ? Object.defineProperty(e, r, { + value: t, + enumerable: !0, + configurable: !0, + writable: !0 + }) : e[r] = t, e; +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js": +/*!*********************************************************************************************!*\ + !*** ./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js ***! + \*********************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ toPrimitive; } +/* harmony export */ }); +/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js"); + +function toPrimitive(t, r) { + if ("object" != (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(t) || !t) return t; + var e = t[Symbol.toPrimitive]; + if (void 0 !== e) { + var i = e.call(t, r || "default"); + if ("object" != (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i)) return i; + throw new TypeError("@@toPrimitive must return a primitive value."); + } + return ("string" === r ? String : Number)(t); +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js": +/*!***********************************************************************************************!*\ + !*** ./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js ***! + \***********************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ toPropertyKey; } +/* harmony export */ }); +/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js"); +/* harmony import */ var _toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrimitive.js */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js"); + + +function toPropertyKey(t) { + var i = (0,_toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__["default"])(t, "string"); + return "symbol" == (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i) ? i : i + ""; +} + + +/***/ }), + +/***/ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js": +/*!****************************************************************************************!*\ + !*** ./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js ***! + \****************************************************************************************/ +/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": function() { return /* binding */ _typeof; } +/* harmony export */ }); +function _typeof(o) { + "@babel/helpers - typeof"; + + return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { + return typeof o; + } : function (o) { + return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; + }, _typeof(o); +} + + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // 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 */ +/******/ !function() { +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function() { return module['default']; } : +/******/ function() { return module; }; +/******/ __webpack_require__.d(getter, { a: getter }); +/******/ return getter; +/******/ }; +/******/ }(); +/******/ +/******/ /* webpack/runtime/define property getters */ +/******/ !function() { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = function(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 */ +/******/ !function() { +/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } +/******/ }(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ !function() { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(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. +!function() { +"use strict"; +/*!***********************************************************!*\ + !*** ./js/src/settings-components/settings-components.js ***! + \***********************************************************/ +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/i18n */ "./node_modules/@wordpress/i18n/build-module/index.js"); +/* harmony import */ var _components_radio_component_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/radio-component.js */ "./js/src/settings-components/components/radio-component.js"); +/* harmony import */ var _components_slider_component_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/slider-component.js */ "./js/src/settings-components/components/slider-component.js"); +/* harmony import */ var _components_tabs_component_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/tabs-component.js */ "./js/src/settings-components/components/tabs-component.js"); +/* harmony import */ var _components_dependent_updater_component_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/dependent-updater-component.js */ "./js/src/settings-components/components/dependent-updater-component.js"); +function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } +function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } +function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } +function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } +function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } +function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } + + + + + + +/** + * Represents the frmSettingsComponents class. + * @class + */ +var frmSettingsComponents = /*#__PURE__*/function () { + function frmSettingsComponents() { + _classCallCheck(this, frmSettingsComponents); + this.success = frmDom.success; + this.init(); + this.initHover(); + } + + /** + * Initializes the components: frmRadioComponent, frmSliderComponent, and frmTabsComponent. + * Init the dependent + */ + return _createClass(frmSettingsComponents, [{ + key: "init", + value: function init() { + new _components_radio_component_js__WEBPACK_IMPORTED_MODULE_1__["default"](); + new _components_slider_component_js__WEBPACK_IMPORTED_MODULE_2__["default"](); + new _components_tabs_component_js__WEBPACK_IMPORTED_MODULE_3__["default"](); + this.initColorPickerDependentUpdaterComponents(); + this.initStyleClassCopyToClipboard((0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('The class name has been copied.', 'formidable')); + } + + /** + * Initializes the color picker dependent updater components. + * Retrieves the components and elements, and adds them to the elements array. + * Adds an action hook for the frm_style_options_color_change event. + */ + }, { + key: "initColorPickerDependentUpdaterComponents", + value: function initColorPickerDependentUpdaterComponents() { + var components = document.querySelectorAll('.frm-style-dependent-updater-component.frm-colorpicker'); + var elements = []; + components.forEach(function (component) { + var element = component.querySelector('input.hex'); + var id = 'undefined' !== typeof element ? element.getAttribute('id') : null; + if (null !== id) { + elements.push({ + id: id, + dependentUpdaterClass: new _components_dependent_updater_component_js__WEBPACK_IMPORTED_MODULE_4__["default"](component, 'colorpicker') + }); + } + }); + wp.hooks.addAction('frm_style_options_color_change', 'formidable', function (_ref) { + var event = _ref.event, + value = _ref.value; + var container = event.target.closest('.wp-picker-container'); + var id = event.target.getAttribute('id'); + container.querySelector('.wp-color-result-text').innerText = value; + elements.forEach(function (element) { + if (element.id === id) { + element.dependentUpdaterClass.updateAllDependentElements(value); + } + }); + }); + } + + /** + * Initializes the hover functionality for the options. + * Creates a hover element and appends it to the settingsWrapper. + * Adds event listeners for mouseover and click events. + */ + }, { + key: "initHover", + value: function initHover() { + var settingsWrapper = document.querySelector('.frm-right-panel .styling_settings .accordion-container'); + if (null === settingsWrapper) { + return; + } + var hoverElement = document.createElement('div'); + hoverElement.classList.add('frm_hidden'); + hoverElement.classList.add('frm-style-settings-hover'); + settingsWrapper.appendChild(hoverElement); + var styleOptionsMenu = settingsWrapper.querySelector(':scope > ul'); + styleOptionsMenu.querySelectorAll(':scope > li').forEach(function (item) { + item.querySelector('h3').addEventListener('mouseover', function (event) { + hoverElement.style.transform = "translateY(".concat(event.target.closest('li').offsetTop, "px)"); + hoverElement.classList.add('frm-animating'); + hoverElement.classList.remove('frm_hidden'); + setTimeout(function () { + hoverElement.classList.remove('frm-animating'); + }, 250); + }); + }); + var accordionitems = document.querySelectorAll('#frm_style_sidebar .accordion-section h3'); + accordionitems.forEach(function (item) { + item.addEventListener('click', function () { + hoverElement.classList.add('frm_hidden'); + }); + }); + } + + /** + * Initializes the copy to clipboard functionality for classes. + * Adds a click event listener to the copyLabel element. + * Copies the class name to the clipboard and displays a success message. + * @param {string} successMessage - The success message to display. + */ + }, { + key: "initStyleClassCopyToClipboard", + value: function initStyleClassCopyToClipboard(successMessage) { + var _this = this; + var copyLabel = document.querySelector('.frm-copy-text'); + if (!copyLabel) { + return; + } + copyLabel.addEventListener('click', function (event) { + var className = event.currentTarget.innerText; + navigator.clipboard.writeText(className).then(function () { + _this.success(successMessage); + }); + }); + } + }]); +}(); +new frmSettingsComponents(); +}(); +/******/ })() +; +//# sourceMappingURL=formidable-settings-components.js.map \ No newline at end of file diff --git a/js/formidable-settings-components.js.map b/js/formidable-settings-components.js.map new file mode 100644 index 0000000000..3fdb191148 --- /dev/null +++ b/js/formidable-settings-components.js.map @@ -0,0 +1 @@ +{"version":3,"file":"formidable-settings-components.js","mappings":";;;;;;;;;;;;;;;;AAAsC;AACE;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,aAAa,oBAAoB,MAAM;AACnD;AACe;AACf,aAAa,2DAAO;;AAEpB;AACA,SAAS,4DAAQ;AACjB;AACA;;;;;;;;;;;;;;;;AC5BA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA,EAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB;AACA,YAAY,GAAG;AACf;AACe;AACf;AACA;;AAEA,cAAc,oBAAoB;AAClC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;;AC7GsC;;AAEtC;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf,gBAAgB,2DAAO;;AAEvB;AACA,sBAAsB,OAAO;AAC7B;AACA;;;;;;;;;;;;;;;;ACjBA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;AC3HA;AACA;AACA;AACuD;AACF;AACrD;AACA;AACA;AACA;AACA;AACA,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC;;AAEA;AACA;AACA;AACA,YAAY,sBAAsB;AAClC,YAAY,sBAAsB;AAClC;AACA,YAAY,SAAS;AACrB;;AAEA;AACA;AACA;AACA;;AAEA,SAAS,gEAAgB;AACzB;AACA;;AAEA,SAAS,iEAAiB;AAC1B;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,QAAQ;;AAEzB;;AAEA,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA,kBAAkB;AAClB;;;AAGA;AACA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,+DAAe,aAAa,EAAC;AAC7B;;;;;;;;;;;;ACtGA;AACA;AACA;AACA;AACA;AACA,YAAY,sBA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CA;AACA;AAC4B;AAC5B;AACA,aAAa,oBAAoB;AACjC;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;;AAEA;AACA;AACA,gBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,iCAAiC;AAC9C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,YAAY;;AAE1B,cAAc,YAAY;;AAE1B;AACA,aAAa,sDAAsD;AACnE;AACA;AACA;;AAEA;AACA,aAAa,6BAA6B;AAC1C;AACA;;AAEA;AACA,aAAa,2CAA2C;AACxD;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,4DAA4D;AACzE;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,6EAA6E;AAC1F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8FAA8F;AAC3G;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,eAAe;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,gEAAgE;AAC7E;AACA;AACA;;AAEA,cAAc,kCAAkC;;AAEhD;AACA;AACA;AACA;AACA,cAAc,eAAe;AAC7B,cAAc,eAAe;AAC7B;AACA,cAAc,iBAAiB;AAC/B;AACA,cAAc,WAAW;AACzB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB;AACA,cAAc,KAAK;AACnB;AACA,cAAc,OAAO;AACrB,cAAc,gBAAgB;AAC9B;;AAEA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB,YAAY,4BAA4B;AACxC;;AAEO;AACP;AACA;AACA;AACA,YAAY;AACZ;AACA,mBAAmB,8CAAM,GAAG;AAC5B;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,aAAa,mBAAmB;AAChC,cAAc,qBAAqB;AACnC;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,eAAe;;;AAG5B;AACA;AACA;AACA;AACA;AACA,aAAa,YAAY;AACzB,aAAa,QAAQ;AACrB;;;AAGA;AACA;AACA,sEAAsE,qDAAqD;AAC3H;;AAEA,4DAA4D;AAC5D;AACA,aAAa,eAAe;;;AAG5B;AACA;AACA;AACA;AACA,aAAa,iBAAiB;;;AAG9B;AACA;AACA,sBAAsB;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,kBAAkB;AAC/B,aAAa,kBAAkB;AAC/B,aAAa,kBAAkB;AAC/B;AACA,aAAa,kBAAkB;AAC/B;AACA,aAAa,kBAAkB;AAC/B;AACA;AACA,cAAc,QAAQ;AACtB;;;AAGA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,iBAAiB;;;AAG9B;AACA;AACA;AACA;AACA,aAAa,IAAI;;;AAGjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB;;;AAGA;AACA,eAAe,QAAQ;;AAEvB,eAAe,GAAG;AAClB;AACA;AACA,iBAAiB,QAAQ;;AAEzB,iBAAiB,GAAG;AACpB;AACA;AACA;AACA,aAAa,IAAI;;;AAGjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB;;;AAGA;AACA,eAAe,QAAQ;;AAEvB,eAAe,GAAG;AAClB;AACA;AACA,iBAAiB,QAAQ;;AAEzB,iBAAiB,GAAG;AACpB;AACA;AACA;AACA,aAAa,IAAI;;;AAGjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB;;;AAGA;AACA,eAAe,QAAQ;;AAEvB,eAAe,GAAG;AAClB;AACA;AACA,iBAAiB,QAAQ;;AAEzB,iBAAiB,GAAG;AACpB;AACA;AACA;AACA,aAAa,KAAK;;;AAGlB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB,eAAe,QAAQ;AACvB;;;AAGA;AACA,eAAe,QAAQ;;AAEvB,eAAe,GAAG;AAClB;AACA;AACA,iBAAiB,QAAQ;;AAEzB,iBAAiB,GAAG;AACpB;AACA;AACA;AACA,aAAa,OAAO;;;AAGpB;AACA;AACA;AACA,aAAa,gBAAgB;;;AAG7B;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B,iBAAiB,QAAQ;AACzB,iBAAiB,QAAQ;AACzB,iBAAiB,QAAQ;AACzB;AACA;AACA,kBAAkB,UAAU;;AAE5B,iBAAiB,GAAG;AACpB;AACA;AACA,kBAAkB,UAAU;;AAE5B,iBAAiB,GAAG;AACpB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;AC1cA;AACA;AACA;AAC2C;AAC3C;AACA;AACA;;AAEgD;AAChD,WAAW,wDAAU,uBAAuB,0DAAY;AACxD;AACA;AACA;;AAEA,+DAAe,IAAI,EAAC;AACpB;AACA;AACA;AACA;;AAEA;AACA,aAAa,oCAAoC;AACjD,aAAa,2CAA2C;AACxD,aAAa,6CAA6C;AAC1D;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,YAAY,YAAY;AACxB;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB;;AAEO;AACP;AACA;AACA;AACA,WAAW,mBAAmB;AAC9B,YAAY,qBAAqB;AACjC;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;;AAEO;AACP;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,YAAY,SAAS;AACrB;;AAEO;AACP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClJoC;AACN;AAC4H;AAC1J;;;;;;;;;;;;;;;;;;;ACHA;AACA;AACA;AAC6B;AACM;AACnC;AACA,qCAAqC;AACrC;AACA;AACA;AACA,WAAW,MAAM;AACjB;;AAEA,mBAAmB,6CAAO,iBAAiB;;AAE3C;AACA;AACA;AACA;AACA,WAAW,WAAW;AACtB,WAAW,MAAM;AACjB;AACA;AACA;AACA,YAAY,QAAQ;AACpB;;AAEO;AACP;AACA,2FAA2F,aAAa;AACxG;AACA;;AAEA,WAAW,yDAAiB,OAAO,mDAAS;AAC5C,IAAI;AACJ;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;ACvCO,IAAMA,gBAAgB;EAE5B,SAAAA,iBAAaC,OAAO,EAAG;IAAAC,eAAA,OAAAF,gBAAA;IACtB,IAAK,WAAW,KAAK,OAAOC,OAAO,EAAG;MACrC;IACD;IAEA,IAAI,CAACA,OAAO,GAAGA,OAAO,YAAYE,OAAO,GAAGF,OAAO,GAAGG,QAAQ,CAACC,aAAa,CAAEJ,OAAQ,CAAC;IAEvF,IAAK,IAAI,KAAK,IAAI,CAACA,OAAO,EAAG;MAC5B;IACD;IAEA,IAAI,CAACK,gBAAgB,GAAG,MAAM;IAC9B,IAAI,CAACC,IAAI,GAAe,IAAI,CAACN,OAAO,CAACO,gBAAgB,CAAE,wBAAyB,CAAC;IACjF,IAAI,CAACC,cAAc,GAAK,IAAI,CAACR,OAAO,CAACI,aAAa,CAAE,4BAA6B,CAAC;IAClF,IAAI,CAACK,UAAU,GAAS,IAAI,CAACT,OAAO,CAACI,aAAa,CAAE,uBAAwB,CAAC;IAC7E,IAAI,CAACM,MAAM,GAAa,IAAI,CAACV,OAAO,CAACO,gBAAgB,CAAE,6BAA8B,CAAC;IAEtF,IAAI,CAACI,IAAI,CAAC,CAAC;EACZ;EAAC,OAAAC,YAAA,CAAAb,gBAAA;IAAAc,GAAA;IAAAC,KAAA,EAED,SAAAH,IAAIA,CAAA,EAAG;MAAA,IAAAI,KAAA;MACN,IAAK,IAAI,KAAK,IAAI,CAACf,OAAO,IAAI,CAAE,IAAI,CAACM,IAAI,CAACU,MAAM,IAAI,IAAI,KAAK,IAAI,CAACC,SAAS,IAAI,IAAI,KAAK,IAAI,CAACR,UAAU,IAAI,CAAE,IAAI,CAACC,MAAM,CAACM,MAAM,EAAG;QACjI;MACD;MAEA,IAAI,CAACE,4BAA4B,CAAC,CAAC;MACnC,IAAI,CAACZ,IAAI,CAACa,OAAO,CAAE,UAAEC,GAAG,EAAEC,KAAK,EAAM;QACpCD,GAAG,CAACE,gBAAgB,CAAE,OAAO,EAAE,UAAAC,KAAK;UAAA,OAAIR,KAAI,CAACS,UAAU,CAAED,KAAK,EAAEF,KAAM,CAAC;QAAA,CAAC,CAAC;MAC1E,CAAC,CAAC;IACH;EAAC;IAAAR,GAAA;IAAAC,KAAA,EAED,SAAAU,UAAUA,CAAED,KAAK,EAAEF,KAAK,EAAG;MAC1B,IAAI,CAACI,6BAA6B,CAAC,CAAC;MACpCF,KAAK,CAACG,MAAM,CAACC,SAAS,CAACC,GAAG,CAAE,YAAa,CAAC;MAC1C,IAAI,CAACC,uBAAuB,CAAEN,KAAK,CAACG,MAAM,EAAEL,KAAM,CAAC;MACnD,IAAI,CAACS,WAAW,CAAET,KAAM,CAAC;IAC1B;EAAC;IAAAR,GAAA;IAAAC,KAAA,EAED,SAAAI,4BAA4BA,CAAA,EAAG;MAC9B,IAAK,CAAE,IAAI,CAACV,cAAc,CAACuB,OAAO,CAACC,YAAY,EAAG;QACjD;MACD;MACA,IAAI,CAACxB,cAAc,CAACyB,KAAK,CAACC,KAAK,MAAAC,MAAA,CAAM,IAAI,CAAC3B,cAAc,CAACuB,OAAO,CAACC,YAAY,OAAI;IAClF;EAAC;IAAAnB,GAAA;IAAAC,KAAA,EACD,SAAAe,uBAAuBA,CAAET,GAAG,EAAEC,KAAK,EAAG;MACrC,IAAI,CAACb,cAAc,CAACmB,SAAS,CAACS,MAAM,CAAE,WAAW,EAAE,UAAW,CAAC;MAC/D,IAAMC,SAAS,GAAG,WAAW,KAAK,OAAOjB,GAAG,GAAGA,GAAG,GAAG,IAAI,CAACd,IAAI,CAACgC,MAAM,CAAE,UAAAlB,GAAG;QAAA,OAAIA,GAAG,CAACO,SAAS,CAACY,QAAQ,CAAE,YAAa,CAAC;MAAA,CAAC,CAAC;MACtH,IAAI,CAAC/B,cAAc,CAACyB,KAAK,CAACO,SAAS,iBAAAL,MAAA,CAAiBE,SAAS,CAACI,UAAU,QAAK;MAC7E,IAAI,CAACjC,cAAc,CAACyB,KAAK,CAACC,KAAK,GAAGG,SAAS,CAACK,WAAW,GAAG,IAAI;MAE9D,IAAK,IAAI,CAACpC,IAAI,CAACU,MAAM,KAAKK,KAAK,GAAG,CAAC,EAAG;QACrC,IAAI,CAACb,cAAc,CAACmB,SAAS,CAACC,GAAG,CAAE,UAAW,CAAC;QAC/C;MACD;MACA,IAAK,CAAC,KAAKP,KAAK,EAAG;QAClB,IAAI,CAACb,cAAc,CAACmB,SAAS,CAACC,GAAG,CAAE,WAAY,CAAC;MACjD;IACD;EAAC;IAAAf,GAAA;IAAAC,KAAA,EAED,SAAAgB,WAAWA,CAAET,KAAK,EAAG;MACpB,IAAI,CAACsB,+BAA+B,CAAC,CAAC;MACtC,IAAMC,SAAS,GAAGvB,KAAK,IAAI,CAAC,GAAG,KAAK,cAAAc,MAAA,CAAgBd,KAAK,GAAG,GAAG,UAAAc,MAAA,CAASU,QAAQ,CAAE,IAAI,CAACxC,gBAAgB,EAAE,EAAG,CAAC,GAAGgB,KAAK,gBAAc;MACnI,IAAI,CAACZ,UAAU,CAACwB,KAAK,CAACO,SAAS,iBAAAL,MAAA,CAAiBS,SAAS,MAAG;MAC5D,IAAKvB,KAAK,IAAI,IAAI,CAACX,MAAM,EAAG;QAC3B,IAAI,CAACA,MAAM,CAAEW,KAAK,CAAE,CAACM,SAAS,CAACC,GAAG,CAAE,YAAa,CAAC;MACnD;IACD;EAAC;IAAAf,GAAA;IAAAC,KAAA,EAED,SAAA6B,+BAA+BA,CAAA,EAAG;MACjC,IAAI,CAACjC,MAAM,CAACS,OAAO,CAAE,UAAA2B,KAAK;QAAA,OAAIA,KAAK,CAACnB,SAAS,CAACS,MAAM,CAAE,YAAa,CAAC;MAAA,CAAC,CAAC;IACvE;EAAC;IAAAvB,GAAA;IAAAC,KAAA,EAED,SAAAW,6BAA6BA,CAAA,EAAG;MAC/B,IAAI,CAACnB,IAAI,CAACa,OAAO,CAAE,UAAAC,GAAG;QAAA,OAAIA,GAAG,CAACO,SAAS,CAACS,MAAM,CAAE,YAAa,CAAC;MAAA,CAAC,CAAC;IACjE;EAAC;AAAA;;;;;;;;;;;;;;;;;;;;AC5EK,IAAAW,iBAAA,GAAmCC,MAAM,CAACC,SAAS;EAAtCC,UAAU,GAAAH,iBAAA,CAAfI,GAAG;EAAcC,KAAK,GAAAL,iBAAA,CAALK,KAAK;AAAsB;AACpD,IAAMC,YAAY,GAAG,YAAY;AACjC,IAAMC,aAAa,GAAG,aAAa;AACnC,IAAMC,aAAa,GAAG,aAAa;AACnC,IAAMC,aAAa,GAAG,aAAa;;;;;;;;;;;;;;;;;;;;;ACJnC,IAAMC,UAAU;EAEtB;AACD;AACA;AACA;AACA;AACA;AACA;EACC,SAAAA,WAAaC,QAAQ,EAAqB;IAAA,IAAnBC,IAAI,GAAAC,SAAA,CAAA5C,MAAA,QAAA4C,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,SAAS;IAAA3D,eAAA,OAAAwD,UAAA;IACtC,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,IAAI,GAAOA,IAAI;IAEpB,IAAI,CAACG,eAAe,CAAC,CAAC;EACvB;;EAEA;AACD;AACA;AACA;AACA;EAJC,OAAAlD,YAAA,CAAA6C,UAAA;IAAA5C,GAAA;IAAAC,KAAA,EAKA,SAAAiD,MAAMA,CAAA,EAAG;MAAA,IAAAhD,KAAA;MACR,IAAI,CAACiD,oBAAoB,CAAE,UAAAC,OAAO,EAAI;QACrCA,OAAO,CAACtC,SAAS,CAACC,GAAG,CAAE,eAAgB,CAAC;QAExCqC,OAAO,CAAC3C,gBAAgB,CAAE,cAAc,EAAE,YAAM;UAC/CP,KAAI,CAACmD,YAAY,CAAC,CAAC;UACnBD,OAAO,CAACtC,SAAS,CAACS,MAAM,CAAE,eAAgB,CAAC;QAC5C,CAAC,EAAE;UAAE+B,IAAI,EAAE;QAAK,CAAC,CAAC;MACnB,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EARC;IAAAtD,GAAA;IAAAC,KAAA,EASA,SAAAsD,aAAaA,CAAA,EAAiB;MAAA,IAAAC,MAAA;MAAA,IAAfC,KAAK,GAAAV,SAAA,CAAA5C,MAAA,QAAA4C,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,IAAI;MAC1BW,UAAU,CAAE,YAAM;QACjBF,MAAI,CAACL,oBAAoB,CAAE,UAAEC,OAAO,EAAE5C,KAAK,EAAM;UAChD4C,OAAO,CAACtC,SAAS,CAACS,MAAM,CAAE,aAAc,CAAC;UACzC6B,OAAO,CAAChC,KAAK,CAACuC,eAAe,GAAG,CAAEnD,KAAK,GAAG,CAAC,IAAKiD,KAAK,GAAG,GAAG;QAC5D,CAAC,CAAC;MACH,CAAC,EAAE,GAAI,CAAC;IACT;EAAC;IAAAzD,GAAA;IAAAC,KAAA,EAED,SAAAgD,eAAeA,CAAA,EAAG;MAAA,IAAAW,MAAA;MACjB,IAAI,CAACT,oBAAoB,CAAE,UAAAC,OAAO,EAAI;QACrC,IAAK,SAAS,KAAKQ,MAAI,CAACd,IAAI,EAAG;UAC9BM,OAAO,CAAChC,KAAK,CAACyC,OAAO,GAAG,KAAK;QAC9B;QACA,IAAK,SAAS,KAAKD,MAAI,CAACd,IAAI,EAAG;UAC9BM,OAAO,CAACtC,SAAS,CAACC,GAAG,CAAE,4BAA6B,CAAC;QACtD;QACA,IAAK,YAAY,KAAK6C,MAAI,CAACd,IAAI,EAAG;UACjCM,OAAO,CAACtC,SAAS,CAACC,GAAG,CAAE,oBAAqB,CAAC;QAC9C;QACAqC,OAAO,CAACtC,SAAS,CAACC,GAAG,CAAE,aAAc,CAAC;MACvC,CAAC,CAAC;IACH;EAAC;IAAAf,GAAA;IAAAC,KAAA,EAED,SAAAoD,YAAYA,CAAA,EAAG;MACd,IAAI,CAACF,oBAAoB,CAAE,UAAAC,OAAO;QAAA,OAAIA,OAAO,CAAChC,KAAK,CAACyC,OAAO,GAAG,KAAK;MAAA,CAAC,CAAC;IACtE;EAAC;IAAA7D,GAAA;IAAAC,KAAA,EAED,SAAAkD,oBAAoBA,CAAEW,QAAQ,EAAG;MAChC,IAAK,IAAI,CAACjB,QAAQ,YAAYxD,OAAO,EAAG;QACvCyE,QAAQ,CAAE,IAAI,CAACjB,QAAQ,EAAE,CAAE,CAAC;QAC5B;MACD;MACA,IAAK,CAAC,GAAG,IAAI,CAACA,QAAQ,CAAC1C,MAAM,EAAG;QAC/B,IAAI,CAAC0C,QAAQ,CAACvC,OAAO,CAAE,UAAE8C,OAAO,EAAE5C,KAAK;UAAA,OAAMsD,QAAQ,CAAEV,OAAO,EAAE5C,KAAM,CAAC;QAAA,CAAC,CAAC;MAC1E;IACD;EAAC;AAAA;;;;;;;;;;;;;;;AC7EF;AACA,IAAIuD,WAAW,GAAGC,OAAO,CAACC,OAAO,CAAC,CAAC;;AAEnC;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,IAAI;EAAA,OAAIJ,WAAW,GAAGA,WAAW,CAACK,IAAI,CAAED,IAAK,CAAC,CAACE,KAAK,CAAEF,IAAK,CAAC;AAAA;;;;;;;;;;;;;;;;ACT7F;AACA;AACA;AAC+B;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMK,aAAa,GAAG,SAAhBA,aAAaA,CAAKC,OAAO,EAAEC,OAAO,EAAE5B,IAAI,EAAE6B,OAAO,EAAM;EACnE,IAAMC,YAAY,GAAGtF,QAAQ,CAACC,aAAa,CAAEkF,OAAQ,CAAC;EACtD,IAAMI,YAAY,GAAGvF,QAAQ,CAACC,aAAa,CAAEmF,OAAQ,CAAC;EAEtD,IAAK,CAAEE,YAAY,IAAI,CAAEC,YAAY,EAAG;IACvCC,OAAO,CAACC,IAAI,CAAE,uDAAwD,CAAC;IACvE;EACD;;EAEA;EACA,IAAKJ,OAAO,EAAG;IACd,IAAMK,IAAI,GAAGH,YAAY,CAACtF,aAAa,qBAAA+B,MAAA,CAAqBwB,IAAI,QAAK,CAAC;IACtE,IAAKkC,IAAI,EAAG;MACXA,IAAI,CAACC,WAAW,GAAGN,OAAO;IAC3B;EACD;;EAEA;EACAE,YAAY,CAACK,YAAY,CAAE,WAAW,EAAEpC,IAAK,CAAC;EAC9CyB,uCAAI,CAAEM,YAAa,CAAC;;EAEpB;EACAD,YAAY,CAACnE,gBAAgB,CAAE,OAAO,EAAE,YAAM;IAC7C6D,uCAAI,CAAEO,YAAa,CAAC;EACrB,CAAC,EAAE;IAAEvB,IAAI,EAAE;EAAK,CAAC,CAAC;AACnB,CAAC;;;;;;;;;;;;;;;ACvCM,IAAQ6B,qBAAqB,GAAKhD,MAAM,CAACiD,MAAM,CAACC,IAAI,CAA5CF,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAR;AACJ;AACA;AACA;AACF;AACO;;;;;;;;;;;;;;;;;;;;;;;ACL7B;AACA;AACA;AACA,IAAM7C,GAAG,GAAG,IAAIgD,GAAG,CAAEnD,MAAM,CAACoD,QAAQ,CAACC,IAAK,CAAC;AAC3C,IAAMC,SAAS,GAAGnD,GAAG,CAACoD,YAAY;;AAElC;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,SAAS;EAAA,OAAIH,SAAS,CAACI,GAAG,CAAED,SAAU,CAAC;AAAA;;AAEpE;AACA;AACA;AACA;AACA;AACA;AACO,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAKF,SAAS,EAAM;EAChDH,SAAS,CAACM,MAAM,CAAEH,SAAU,CAAC;EAC7BtD,GAAG,CAAC0D,MAAM,GAAGP,SAAS,CAACQ,QAAQ,CAAC,CAAC;EACjC,OAAO3D,GAAG,CAAC2D,QAAQ,CAAC,CAAC;AACtB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAKN,SAAS,EAAEO,UAAU,EAAkC;EAAA,IAAhCC,YAAY,GAAArD,SAAA,CAAA5C,MAAA,QAAA4C,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,WAAW;EAC/E0C,SAAS,CAACY,GAAG,CAAET,SAAS,EAAEO,UAAW,CAAC;EACtC7D,GAAG,CAAC0D,MAAM,GAAGP,SAAS,CAACQ,QAAQ,CAAC,CAAC;EAEjC,IAAI,CAAE,WAAW,EAAE,cAAc,CAAE,CAACK,QAAQ,CAAEF,YAAa,CAAC,EAAG;IAC9D,IAAMG,KAAK,GAAAC,eAAA,KAAKZ,SAAS,EAAGO,UAAU,CAAC;IACvChE,MAAM,CAACsE,OAAO,CAACL,YAAY,CAAC,CAAEG,KAAK,EAAE,EAAE,EAAEjE,GAAI,CAAC;EAC/C;EAEA,OAAOA,GAAG,CAAC2D,QAAQ,CAAC,CAAC;AACtB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACO,IAAMS,aAAa,GAAG,SAAhBA,aAAaA,CAAGd,SAAS;EAAA,OAAIH,SAAS,CAACkB,GAAG,CAAEf,SAAU,CAAC;AAAA;;;;;;;;;;;;;;;;;ACpDpE;AACA;AACA;AACA;AACA;AACA;AACO,IAAMgB,YAAY,GAAG,SAAfA,YAAYA,CAAGC,KAAK;EAAA,OAChC,OAAOA,KAAK,KAAK,QAAQ,GAAG,yJAAyJ,CAACC,IAAI,CAAED,KAAM,CAAC,GAAG,KAAK;AAAA;;AAE5M;AACA;AACA;AACA;AACA;AACA;AACO,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAG3D,OAAO;EAAA,OAAIA,OAAO,YAAY4D,WAAW,IAAIlC,OAAO,CAACC,IAAI,CAAE,8DAA+D,CAAC,IAAI,KAAK;AAAA;;AAEjK;AACA;AACA;AACA;AACA;AACA;AACO,IAAMkC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,GAAG;EAAA,OAAIC,MAAM,CAACC,IAAI,CAAEF,GAAI,CAAC,CAAC/G,MAAM,KAAK,CAAC,IAAI+G,GAAG,CAACG,WAAW,KAAKF,MAAM;AAAA;;;;;;;;;;;;;;;;;;;;ACvBjG;AACA;AACA;AAC8C;;AAE9C;AACA;AACA;AACA;AACA;AACA;AACO,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAGzE,QAAQ;EAAA,IAAA0E,WAAA;EAAA,QAAAA,WAAA,GACnCC,KAAK,CAACC,IAAI,CAAE5E,QAAS,CAAC,cAAA0E,WAAA,uBAAtBA,WAAA,CAAwBjH,OAAO,CAAE,UAAA8C,OAAO;IAAA,OAAImB,IAAI,CAAEnB,OAAQ,CAAC;EAAA,CAAC,CAAC;AAAA;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACO,IAAMsE,YAAY,GAAG,SAAfA,YAAYA,CAAG7E,QAAQ;EAAA,IAAA8E,YAAA;EAAA,QAAAA,YAAA,GACnCH,KAAK,CAACC,IAAI,CAAE5E,QAAS,CAAC,cAAA8E,YAAA,uBAAtBA,YAAA,CAAwBrH,OAAO,CAAE,UAAA8C,OAAO;IAAA,OAAIkB,IAAI,CAAElB,OAAQ,CAAC;EAAA,CAAC,CAAC;AAAA;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACO,IAAMmB,IAAI,GAAG,SAAPA,IAAIA,CAAGnB,OAAO;EAAA,OAAIA,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEtC,SAAS,CAACS,MAAM,CAAEiB,wDAAa,CAAC;AAAA;;AAExE;AACA;AACA;AACA;AACA;AACA;AACO,IAAM8B,IAAI,GAAG,SAAPA,IAAIA,CAAGlB,OAAO;EAAA,OAAIA,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEtC,SAAS,CAACC,GAAG,CAAEyB,wDAAa,CAAC;AAAA;;AAErE;AACA;AACA;AACA;AACA;AACA;AACO,IAAMoF,SAAS,GAAG,SAAZA,SAASA,CAAGxE,OAAO,EAAI;EACnC,IAAMyE,MAAM,GAAG1F,MAAM,CAAC2F,gBAAgB,CAAE1E,OAAQ,CAAC;EACjD,OAAOyE,MAAM,CAACE,gBAAgB,CAAE,SAAU,CAAC,KAAK,MAAM;AACvD,CAAC;;;;;;;;;;;;;;;;;;;;;AChDD;AACA;AACA;AACA;AACA;AACA;AALA,IAMqBC,4BAA4B;EAEhD;AACD;AACA;AACA;EACC,SAAAA,6BAAaC,SAAS,EAAG;IAAA7I,eAAA,OAAA4I,4BAAA;IACxB,IAAI,CAACC,SAAS,GAAGA,SAAS;IAC1B,IAAI;MACH,IAAMC,cAAc,GAAGC,IAAI,CAACC,KAAK,CAAE,IAAI,CAACH,SAAS,CAAC/G,OAAO,CAACmH,UAAW,CAAC;MACtE,IAAI,CAACC,IAAI,GAAG;QACXC,eAAe,EAAE,IAAI,CAACC,mBAAmB,CAAEN,cAAe,CAAC;QAC3DO,WAAW,EAAE,IAAIC,KAAK,CAAE,QAAQ,EAAE;UAAEC,OAAO,EAAE;QAAK,CAAE;MACrD,CAAC;IACF,CAAC,CAAC,OAAQC,KAAK,EAAG;MACjB9D,OAAO,CAAC8D,KAAK,CAAE,uDAAuD,EAAEA,KAAM,CAAC;IAChF;EACD;;EAEA;AACD;AACA;AACA;AACA;AACA;EALC,OAAA7I,YAAA,CAAAiI,4BAAA;IAAAhI,GAAA;IAAAC,KAAA,EAMA,SAAAuI,mBAAmBA,CAAEK,UAAU,EAAG;MACjC,IAAMC,IAAI,GAAG,EAAE;MACfD,UAAU,CAACvI,OAAO,CAAE,UAAEyI,IAAI,EAAM;QAC/B,IAAMC,KAAK,GAAG1J,QAAQ,CAACC,aAAa,iBAAA+B,MAAA,CAAiByH,IAAI,QAAK,CAAC;QAC/D,IAAK,IAAI,KAAKC,KAAK,EAAG;UACrBF,IAAI,CAACG,IAAI,CAAED,KAAM,CAAC;QACnB;MACD,CAAC,CAAC;MACF,OAAOF,IAAI;IACZ;;IAEA;AACD;AACA;AACA;EAHC;IAAA9I,GAAA;IAAAC,KAAA,EAIA,SAAAiJ,0BAA0BA,CAAEjJ,KAAK,EAAG;MACnC,IAAI,CAACqI,IAAI,CAACC,eAAe,CAACjI,OAAO,CAAE,UAAE0I,KAAK,EAAM;QAC/CA,KAAK,CAAC/I,KAAK,GAAGA,KAAK;MACpB,CAAC,CAAC;MACF,IAAI,CAACqI,IAAI,CAACC,eAAe,CAAC,CAAC,CAAC,CAACY,aAAa,CAAE,IAAI,CAACb,IAAI,CAACG,WAAY,CAAC;IACpE;EAAC;AAAA;;;;;;;;;;;;;;;;;;;;;;;ACnDsC;;AAExC;AACA;AACA;AACA;AAHA,IAIqBY,iBAAiB;EAErC,SAAAA,kBAAA,EAAc;IAAAjK,eAAA,OAAAiK,iBAAA;IACb,IAAI,CAACC,aAAa,GAAGhK,QAAQ,CAACI,gBAAgB,CAAE,0CAA2C,CAAC;IAC5F,IAAK,CAAC,GAAG,IAAI,CAAC4J,aAAa,CAACnJ,MAAM,EAAG;MACpC,IAAI,CAACL,IAAI,CAAC,CAAC;IACZ;EACD;;EAEA;AACD;AACA;EAFC,OAAAC,YAAA,CAAAsJ,iBAAA;IAAArJ,GAAA;IAAAC,KAAA,EAGA,SAAAH,IAAIA,CAAA,EAAG;MAAA,IAAAI,KAAA;MACN,IAAI,CAACoJ,aAAa,CAAChJ,OAAO,CAAE,UAAE8C,OAAO,EAAM;QAC1ClD,KAAI,CAACqJ,iBAAiB,CAAEnG,OAAQ,CAAC;MAClC,CAAC,CAAC;MACF,IAAI,CAACoG,2BAA2B,CAAC,CAAC;IACnC;EAAC;IAAAxJ,GAAA;IAAAC,KAAA,EAED,SAAAuJ,2BAA2BA,CAAA,EAAG;MAAA,IAAAhG,MAAA;MAC7B,IAAMiG,cAAc,GAAGnK,QAAQ,CAACI,gBAAgB,CAAE,0CAA2C,CAAC;MAE9F+J,cAAc,CAACnJ,OAAO,CAAE,UAAEoJ,aAAa,EAAM;QAC5CA,aAAa,CAACjJ,gBAAgB,CAAE,OAAO,EAAE,UAAEC,KAAK,EAAM;UACrD,IAAMvB,OAAO,GAAQuB,KAAK,CAACG,MAAM,CAAC8I,OAAO,CAAE,oBAAqB,CAAC;UACjE,IAAMC,YAAY,GAAGzK,OAAO,CAACO,gBAAgB,CAAE,sEAAuE,CAAC;UAEvHkK,YAAY,CAACtJ,OAAO,CAAE,UAAEuJ,KAAK,EAAM;YAClCnG,UAAU,CAAE;cAAA,OAAMF,MAAI,CAACsG,aAAa,CAAED,KAAM,CAAC;YAAA,GAAE,GAAI,CAAC;UACrD,CAAC,CAAC;QACH,CAAC,CAAC;MACH,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;EAHC;IAAA7J,GAAA;IAAAC,KAAA,EAIA,SAAAsJ,iBAAiBA,CAAEQ,YAAY,EAAG;MAAA,IAAAnG,MAAA;MACjCmG,YAAY,CAACrK,gBAAgB,CAAE,qBAAsB,CAAC,CAACY,OAAO,CAAE,UAAEuJ,KAAK,EAAM;QAC5E,IAAKA,KAAK,CAACG,OAAO,EAAG;UACpBpG,MAAI,CAACkG,aAAa,CAAED,KAAM,CAAC;QAC5B;QACAA,KAAK,CAACpJ,gBAAgB,CAAE,QAAQ,EAAE,UAAEC,KAAK,EAAM;UAC9CkD,MAAI,CAACkG,aAAa,CAAEpJ,KAAK,CAACG,MAAO,CAAC;QACnC,CAAC,CAAC;MACH,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;EAHC;IAAAb,GAAA;IAAAC,KAAA,EAIA,SAAA6J,aAAaA,CAAEjJ,MAAM,EAAG;MACvB,IAAM1B,OAAO,GAAM0B,MAAM,CAAC8I,OAAO,CAAE,0CAA2C,CAAC;MAC/E,IAAMM,UAAU,GAAG9K,OAAO,CAACI,aAAa,CAAE,qCAAsC,CAAC;MAEjF,IAAK,IAAI,KAAK0K,UAAU,EAAG;QAC1B;MACD;MAEA,IAAI,CAACC,WAAW,CAAED,UAAU,EAAE9K,OAAQ,CAAC;MACvC,IAAI,CAACgL,iBAAiB,CAAEtJ,MAAO,CAAC;MAChC,IAAI,CAACuJ,sBAAsB,CAAEvJ,MAAO,CAAC;IACtC;;IAEA;AACD;AACA;AACA;EAHC;IAAAb,GAAA;IAAAC,KAAA,EAIA,SAAAmK,sBAAsBA,CAAEP,KAAK,EAAG;MAC/B,IAAMQ,WAAW,GAAGR,KAAK,CAACS,YAAY,CAAE,uBAAwB,CAAC;MACjE,IAAK,IAAI,KAAKD,WAAW,EAAG;QAC3B;MACD;MAEA,IAAMxH,QAAQ,GAAGvD,QAAQ,CAACI,gBAAgB,2BAAA4B,MAAA,CAA2B+I,WAAW,QAAK,CAAC;MAEtF,IAAK,CAAC,KAAKxH,QAAQ,CAAC1C,MAAM,EAAG;QAC5B;MACD;MAEA0C,QAAQ,CAACvC,OAAO,CAAE,UAAE8C,OAAO,EAAM;QAChCmB,gDAAI,CAAEnB,OAAQ,CAAC;QACfA,OAAO,CAACtC,SAAS,CAACC,GAAG,CAAE,wBAAyB,CAAC;MAClD,CAAC,CAAC;IACH;;IAEA;AACD;AACA;EAFC;IAAAf,GAAA;IAAAC,KAAA,EAGA,SAAAkK,iBAAiBA,CAAA,EAAG;MACnB,IAAMtH,QAAQ,GAAGvD,QAAQ,CAACI,gBAAgB,CAAE,yBAA0B,CAAC;MACvE,IAAK,CAAC,KAAKmD,QAAQ,CAAC1C,MAAM,EAAG;QAC5B;MACD;MACA0C,QAAQ,CAACvC,OAAO,CAAE,UAAE8C,OAAO,EAAM;QAChCA,OAAO,CAACtC,SAAS,CAACS,MAAM,CAAE,wBAAyB,CAAC;QACpD6B,OAAO,CAACtC,SAAS,CAACC,GAAG,CAAE,YAAa,CAAC;QACrCuD,gDAAI,CAAElB,OAAQ,CAAC;MAChB,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;AACA;EAJC;IAAApD,GAAA;IAAAC,KAAA,EAKA,SAAAiK,WAAWA,CAAED,UAAU,EAAE9K,OAAO,EAAG;MAClC,IAAMoL,MAAM,GAAIN,UAAU,CAACrI,UAAU;MACrC,IAAMP,KAAK,GAAK4I,UAAU,CAACO,WAAW;MACtC,IAAMC,OAAO,GAAGtL,OAAO,CAACI,aAAa,CAAE,2BAA4B,CAAC;MAEpEkL,OAAO,CAACrJ,KAAK,CAACsJ,IAAI,GAAG,CAAC;MACtBD,OAAO,CAACrJ,KAAK,CAACC,KAAK,MAAAC,MAAA,CAAMD,KAAK,OAAI;MAClCoJ,OAAO,CAACrJ,KAAK,CAACO,SAAS,iBAAAL,MAAA,CAAkBiJ,MAAM,QAAM;IACtD;EAAC;AAAA;;;;;;;;;;;;;;;;;;;;;;;AC1HuE;AACzE;AACA;AACA;AACA;AAHA,IAIqBI,kBAAkB;EAEtC,SAAAA,mBAAA,EAAc;IAAA,IAAAzK,KAAA;IAAAd,eAAA,OAAAuL,kBAAA;IACb,IAAI,CAACC,cAAc,GAAGtL,QAAQ,CAACI,gBAAgB,CAAE,uBAAwB,CAAC;IAC1E,IAAK,CAAC,KAAK,IAAI,CAACkL,cAAc,CAACzK,MAAM,EAAG;MACvC;IACD;;IAEA;IACA,IAAI,CAAC0K,iBAAiB,GAAG,EAAE;IAC3B,IAAI,CAACC,iBAAiB,GAAG,CAAC;IAC1B,IAAI,CAACC,YAAY,GAAG,EAAE;IAEtB,IAAQC,QAAQ,GAAY5F,MAAM,CAACC,IAAI,CAA/B2F,QAAQ;IAChB,IAAI,CAACC,oBAAoB,GAAGD,QAAQ,CAAE,UAAExK,KAAK;MAAA,OAAMN,KAAI,CAACgL,kBAAkB,CAAE1K,KAAM,CAAC;IAAA,GAAE,EAAG,CAAC;IAEzF,IAAI,CAAC2K,WAAW,CAAC,CAAC;IAClB,IAAI,CAACrL,IAAI,CAAC,CAAC;EACZ;;EAEA;AACD;AACA;EAFC,OAAAC,YAAA,CAAA4K,kBAAA;IAAA3K,GAAA;IAAAC,KAAA,EAGA,SAAAkL,WAAWA,CAAA,EAAG;MAAA,IAAA3H,MAAA;MACb,IAAI,CAAC4H,OAAO,GAAG,EAAE;MACjB,IAAI,CAACR,cAAc,CAACtK,OAAO,CAAE,UAAE8C,OAAO,EAAE5C,KAAK,EAAM;QAClD,IAAM6K,aAAa,GAAGjI,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,yBAA0B,CAAC,GAAG0B,OAAO,CAACuG,OAAO,CAAE,sBAAuB,CAAC,GAAGvG,OAAO;QACnII,MAAI,CAAC4H,OAAO,CAACnC,IAAI,CAAC;UACjBqC,QAAQ,EAAE,KAAK;UACfC,MAAM,EAAE,CAAC;UACTC,UAAU,EAAE,CAAC;UACbC,QAAQ,EAAEzJ,QAAQ,CAAEoB,OAAO,CAAClC,OAAO,CAACuK,QAAQ,EAAE,EAAG,CAAC;UAClDrI,OAAO,EAAEA,OAAO;UAChB5C,KAAK,EAAEA,KAAK;UACZP,KAAK,EAAE,CAAC;UACRyL,gBAAgB,EAAEL,aAAa,CAACvK,SAAS,CAACY,QAAQ,CAAE,uCAAwC,CAAC,GAAG,IAAIsG,oEAA4B,CAAEqD,aAAc,CAAC,GAAG;QACrJ,CAAC,CAAC;MACH,CAAC,CAAC;IACH;;IAEA;AACD;AACA;EAFC;IAAArL,GAAA;IAAAC,KAAA,EAGA,SAAAH,IAAIA,CAAA,EAAG;MACN,IAAI,CAAC6L,mBAAmB,CAAC,CAAC;MAC1B,IAAI,CAACC,aAAa,CAAC,CAAC;IACrB;;IAEA;AACD;AACA;EAFC;IAAA5L,GAAA;IAAAC,KAAA,EAGA,SAAA2L,aAAaA,CAAA,EAAG;MAAA,IAAAhI,MAAA;MACf,IAAI,CAACgH,cAAc,CAACtK,OAAO,CAAE,UAAE8C,OAAO,EAAE5C,KAAK,EAAM;QAClDoD,MAAI,CAACmH,YAAY,CAAEvK,KAAK,CAAE,GAAG,IAAIkI,KAAK,CAAE,QAAQ,EAAE;UACjDC,OAAO,EAAE,IAAI;UACbkD,UAAU,EAAE;QACb,CAAC,CAAC;QACF,IAAMC,eAAe,GAAG1I,OAAO,CAAC7D,aAAa,CAAE,oBAAqB,CAAC;QACrE,IAAMwM,UAAU,GAAQ3I,OAAO,CAAC7D,aAAa,CAAE,sCAAuC,CAAC;QAEvFwM,UAAU,CAACtL,gBAAgB,CAAE,QAAQ,EAAE,UAAEC,KAAK,EAAM;UACnD,IAAMsL,IAAI,GAAG5I,OAAO,CAAC7D,aAAa,CAAE,QAAS,CAAC,CAACU,KAAK;UAEpD,IAAK2D,MAAI,CAACqI,WAAW,CAAED,IAAI,EAAExL,KAAM,CAAC,GAAGwB,QAAQ,CAAEtB,KAAK,CAACG,MAAM,CAACZ,KAAK,EAAE,EAAG,CAAC,EAAG;YAC3E;UACD;UAEA2D,MAAI,CAACsI,eAAe,CAAE9I,OAAQ,CAAC;UAC/BQ,MAAI,CAACwH,OAAO,CAAE5K,KAAK,CAAE,CAAC2L,SAAS,GAAGvI,MAAI,CAACwI,WAAW,CAAEhJ,OAAO,EAAE2I,UAAU,CAAC9L,KAAK,GAAG+L,IAAK,CAAC;UACtFpI,MAAI,CAACsH,kBAAkB,CAAE1K,KAAM,CAAC;QACjC,CAAC,CAAC;QAEFoD,MAAI,CAACyI,iBAAiB,CAAEjJ,OAAQ,CAAC;QACjCQ,MAAI,CAAC0I,kBAAkB,CAAElJ,OAAO,EAAE2I,UAAU,EAAEvL,KAAM,CAAC;QACrDoD,MAAI,CAAC2I,2BAA2B,CAAEnJ,OAAO,EAAE2I,UAAU,EAAEvL,KAAM,CAAC;QAE9DsL,eAAe,CAACrL,gBAAgB,CAAE,WAAW,EAAE,UAAEC,KAAK,EAAM;UAC3DA,KAAK,CAAC8L,cAAc,CAAC,CAAC;UACtB9L,KAAK,CAAC+L,eAAe,CAAC,CAAC;UACvB,IAAKrJ,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,cAAe,CAAC,EAAG;YACnD;UACD;UACAkC,MAAI,CAAC8I,cAAc,CAAEhM,KAAK,EAAEF,KAAM,CAAC;QACpC,CAAC,CAAC;QAEFsL,eAAe,CAACrL,gBAAgB,CAAE,WAAW,EAAE,UAAEC,KAAK,EAAM;UAC3D,IAAK0C,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,cAAe,CAAC,EAAG;YACnD;UACD;UACAkC,MAAI,CAACsG,WAAW,CAAExJ,KAAK,EAAEF,KAAM,CAAC;QACjC,CAAC,CAAC;QAEFsL,eAAe,CAACrL,gBAAgB,CAAE,SAAS,EAAE,UAAEC,KAAK,EAAK;UACxD,IAAK0C,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,cAAe,CAAC,EAAG;YACnD;UACD;UACAkC,MAAI,CAAC+I,eAAe,CAAEnM,KAAK,EAAEE,KAAM,CAAC;QACrC,CAAC,CAAC;QAEFoL,eAAe,CAACrL,gBAAgB,CAAE,YAAY,EAAE,UAAEC,KAAK,EAAM;UAC5D,IAAK0C,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,cAAe,CAAC,EAAG;YACnD;UACD;UACAkC,MAAI,CAAC+I,eAAe,CAAEnM,KAAK,EAAEE,KAAM,CAAC;QACrC,CAAC,CAAC;MACH,CAAC,CAAC;IACH;EAAC;IAAAV,GAAA;IAAAC,KAAA,EAED,SAAAoM,iBAAiBA,CAAEjJ,OAAO,EAAG;MAC5B,IAAMwJ,OAAO,GAAGxJ,OAAO,CAAC7D,aAAa,CAAE,SAAU,CAAC;MAElD,IAAK,WAAW,KAAK,OAAO6D,OAAO,CAAClC,OAAO,CAAC2L,cAAc,IAAI,IAAI,KAAKD,OAAO,EAAG;QAChF;MACD;MAEA,IAAME,gBAAgB,GAAG,IAAI,CAACC,mBAAmB,CAAE3J,OAAQ,CAAC;MAC5DwJ,OAAO,CAACnM,gBAAgB,CAAE,OAAO,EAAE,YAAO;QACzCqM,gBAAgB,CAACxM,OAAO,CAAE,UAAE0M,IAAI,EAAM;UACrCA,IAAI,CAAClM,SAAS,CAACmM,MAAM,CAAE,YAAa,CAAC;QACtC,CAAC,CAAC;MACH,CAAC,CAAC;IACH;EAAC;IAAAjN,GAAA;IAAAC,KAAA,EAED,SAAAqM,kBAAkBA,CAAElJ,OAAO,EAAE2I,UAAU,EAAEvL,KAAK,EAAG;MAAA,IAAA0M,MAAA;MAChD9J,OAAO,CAAC7D,aAAa,CAAE,QAAS,CAAC,CAACkB,gBAAgB,CAAE,QAAQ,EAAE,UAAEC,KAAK,EAAM;QAC1E,IAAMsL,IAAI,GAAGtL,KAAK,CAACG,MAAM,CAACZ,KAAK,CAACkN,WAAW,CAAC,CAAC;QAE7C,IAAK,EAAE,KAAKnB,IAAI,EAAG;UAClB5I,OAAO,CAACtC,SAAS,CAACC,GAAG,CAAE,cAAc,EAAE,WAAY,CAAC;UACpD;QACD;QAEA,IAAK,MAAM,KAAKiL,IAAI,EAAG;UACtB5I,OAAO,CAACtC,SAAS,CAACC,GAAG,CAAE,cAAe,CAAC;UACvCmM,MAAI,CAACd,WAAW,CAAEhJ,OAAO,EAAE,MAAO,CAAC;UACnC8J,MAAI,CAAChC,kBAAkB,CAAE1K,KAAM,CAAC;UAEhC;QACD;QAEA4C,OAAO,CAACtC,SAAS,CAACS,MAAM,CAAE,cAAc,EAAE,WAAY,CAAC;QACvD2L,MAAI,CAAC9B,OAAO,CAAE5K,KAAK,CAAE,CAAC2L,SAAS,GAAGJ,UAAU,CAAC9L,KAAK,GAAG+L,IAAI;QACzDkB,MAAI,CAACd,WAAW,CAAEhJ,OAAO,EAAE8J,MAAI,CAAC9B,OAAO,CAAE5K,KAAK,CAAE,CAAC2L,SAAU,CAAC;QAC5De,MAAI,CAAChC,kBAAkB,CAAE1K,KAAM,CAAC;MACjC,CAAC,CAAC;IACH;EAAC;IAAAR,GAAA;IAAAC,KAAA,EAED,SAAAsM,2BAA2BA,CAAEnJ,OAAO,EAAE2I,UAAU,EAAEvL,KAAK,EAAG;MAAA,IAAA4M,MAAA;MACzD,IAAMC,SAAS,GAAKjK,OAAO,CAAC7D,aAAa,CAAE,aAAc,CAAC;MAC1D,IAAM+N,WAAW,GAAG,IAAI5E,KAAK,CAAE,QAAQ,EAAE;QACxC,SAAS,EAAE,IAAI;QACf,YAAY,EAAE;MACf,CAAC,CAAC;MAEF2E,SAAS,CAAC5M,gBAAgB,CAAE,OAAO,EAAE,UAAEC,KAAK,EAAM;QACjD,IAAK0C,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,cAAe,CAAC,EAAG;UACnD;QACD;QAEAhB,KAAK,CAAC8L,cAAc,CAAC,CAAC;QACtB9L,KAAK,CAAC+L,eAAe,CAAC,CAAC;QAEvB,IAAK,CAAE/L,KAAK,CAACG,MAAM,CAACC,SAAS,CAACY,QAAQ,CAAE,YAAa,CAAC,IAAI,CAAEhB,KAAK,CAACG,MAAM,CAACC,SAAS,CAACY,QAAQ,CAAE,yBAA0B,CAAC,EAAG;UAC1H;QACD;QAEA,IAAM6L,WAAW,GAAGF,SAAS,CAAC7C,WAAW,GAAG4C,MAAI,CAACvC,iBAAiB;QAClE,IAAM2C,UAAU,GAAIH,SAAS,CAACI,qBAAqB,CAAC,CAAC;QACrD,IAAMC,MAAM,GAAQhN,KAAK,CAACiN,OAAO,GAAGH,UAAU,CAAC9C,IAAI,GAAG0C,MAAI,CAACvC,iBAAiB;QAC5E,IAAMmB,IAAI,GAAU5I,OAAO,CAAC7D,aAAa,CAAE,QAAS,CAAC,CAACU,KAAK;QAC3D,IAAMA,KAAK,GAASmN,MAAI,CAACQ,cAAc,CAAEL,WAAW,EAAEG,MAAM,EAAEN,MAAI,CAACnB,WAAW,CAAED,IAAI,EAAExL,KAAM,CAAE,CAAC;QAE/F,IAAKP,KAAK,GAAG,CAAC,EAAG;UAChB;QACD;QAEAmN,MAAI,CAAChC,OAAO,CAAE5K,KAAK,CAAE,CAAC2L,SAAS,GAAGiB,MAAI,CAAChB,WAAW,CAAEhJ,OAAO,EAAEnD,KAAK,GAAG+L,IAAK,CAAC;QAC3EoB,MAAI,CAACS,qBAAqB,CAAEzK,OAAO,EAAEsK,MAAM,EAAElN,KAAK,EAAEP,KAAK,GAAG+L,IAAK,CAAC;QAElED,UAAU,CAAC9L,KAAK,GAAGA,KAAK;QACxB8L,UAAU,CAAC5C,aAAa,CAAEmE,WAAY,CAAC;MAExC,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;AACA;AACA;EALC;IAAAtN,GAAA;IAAAC,KAAA,EAMA,SAAA8M,mBAAmBA,CAAE3J,OAAO,EAAG;MAC9B,IAAK,WAAW,KAAK,OAAOA,OAAO,CAAClC,OAAO,CAAC2L,cAAc,EAAG;QAC5D,OAAO,EAAE;MACV;MACA,IAAMiB,YAAY,GAAG1K,OAAO,CAAClC,OAAO,CAAC2L,cAAc,CAACkB,KAAK,CAAE,GAAI,CAAC;MAChE,IAAMC,KAAK,GAAUF,YAAY,CAACG,GAAG,CAAE,UAAEjB,IAAI,EAAM;QAClD,4CAAA1L,MAAA,CAA2C0L,IAAI;MAChD,CAAC,CAAC,CAACkB,IAAI,CAAE,IAAK,CAAC;MAEf,OAAO9K,OAAO,CAACuG,OAAO,CAAE,sBAAuB,CAAC,CAACjK,gBAAgB,CAAEsO,KAAM,CAAC;IAC3E;;IAEA;AACD;AACA;EAFC;IAAAhO,GAAA;IAAAC,KAAA,EAGA,SAAA0L,mBAAmBA,CAAA,EAAG;MAAA,IAAAwC,MAAA;MACrB,IAAM1E,cAAc,GAAInK,QAAQ,CAACI,gBAAgB,CAAE,0CAA2C,CAAC;MAC/F,IAAM0O,aAAa,GAAK9O,QAAQ,CAACC,aAAa,CAAE,qBAAsB,CAAC;MACvE,IAAM8O,eAAe,GAAG/O,QAAQ,CAACC,aAAa,CAAE,yBAA0B,CAAC;;MAE3E;MACA+O,EAAE,CAACC,KAAK,CAACC,SAAS,CAAE,4BAA4B,EAAE,YAAY,EAAE,UAAE9N,KAAK,EAAM;QAC5E,IAAM+N,4BAA4B,GAAG/N,KAAK,CAACiJ,OAAO,CAAE,4BAA6B,CAAC,CAACpK,aAAa,CAAE,8BAA+B,CAAC;QAClI4O,MAAI,CAACO,gBAAgB,CAAED,4BAA6B,CAAC;MACtD,CAAC,CAAC;;MAEF;MACA,IAAK,IAAI,KAAKL,aAAa,EAAG;QAC7B,IAAI,CAACM,gBAAgB,CAAEN,aAAc,CAAC;MACvC;;MAEA;MACA,IAAK,IAAI,KAAKC,eAAe,EAAG;QAC/B,IAAI,CAACK,gBAAgB,CAAEL,eAAgB,CAAC;MACzC;;MAEA;MACA5E,cAAc,CAACnJ,OAAO,CAAE,UAAE0M,IAAI,EAAM;QACnCA,IAAI,CAACvM,gBAAgB,CAAE,OAAO,EAAE,UAAEC,KAAK,EAAM;UAC5CyN,MAAI,CAACO,gBAAgB,CAAEhO,KAAK,CAACG,MAAM,CAAC8I,OAAO,CAAE,oBAAqB,CAAE,CAAC;QACtE,CAAC,CAAC;MACH,CAAC,CAAC;MAEF,IAAI,CAACgF,oCAAoC,CAAC,CAAC;IAC5C;;IAEA;AACD;AACA;AACA;AACA;EAJC;IAAA3O,GAAA;IAAAC,KAAA,EAKA,SAAA0O,oCAAoCA,CAAA,EAAG;MAAA,IAAAC,MAAA;MACtC,IAAMC,cAAc,GAAGvP,QAAQ,CAACC,aAAa,CAAE,sCAAuC,CAAC;MAEvF,IAAK,IAAI,KAAKsP,cAAc,EAAG;QAC9B;MACD;MAEA,IAAMjF,YAAY,GAAGiF,cAAc,CAACnP,gBAAgB,CAAE,qBAAsB,CAAC;MAC7EkK,YAAY,CAACtJ,OAAO,CAAE,UAAEuJ,KAAK,EAAM;QAClCA,KAAK,CAACpJ,gBAAgB,CAAE,QAAQ,EAAE,UAAEC,KAAK,EAAM;UAC9C,IAAKA,KAAK,CAACG,MAAM,CAACmJ,OAAO,IAAI,gBAAgB,KAAKtJ,KAAK,CAACG,MAAM,CAACZ,KAAK,EAAG;YACtE,IAAM6O,MAAM,GAAGxP,QAAQ,CAACC,aAAa,CAAE,yEAA0E,CAAC;YAClHqP,MAAI,CAAC1C,eAAe,CAAE4C,MAAO,CAAC;UAC/B;QACD,CAAC,CAAC;MACH,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;AACA;AACA;EALC;IAAA9O,GAAA;IAAAC,KAAA,EAMA,SAAAyO,gBAAgBA,CAAEK,OAAO,EAAG;MAAA,IAAAC,MAAA;MAC3B,IAAMC,OAAO,GAAGF,OAAO,CAACrP,gBAAgB,CAAE,uBAAwB,CAAC;MACnEuP,OAAO,CAAC3O,OAAO,CAAE,UAAEwO,MAAM,EAAM;QAC9BpL,UAAU,CAAE,YAAM;UACjBsL,MAAI,CAAC9C,eAAe,CAAE4C,MAAO,CAAC;QAC/B,CAAC,EAAE,GAAI,CAAC;MACT,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;AACA;AACA;EALC;IAAA9O,GAAA;IAAAC,KAAA,EAMA,SAAAiM,eAAeA,CAAE4C,MAAM,EAAG;MACzB,IAAKA,MAAM,CAAChO,SAAS,CAACY,QAAQ,CAAE,cAAe,CAAC,EAAG;QAClD;MACD;MACA,IAAMlB,KAAK,GAAS,IAAI,CAAC0O,cAAc,CAAEJ,MAAO,CAAC;MACjD,IAAMvB,WAAW,GAAGuB,MAAM,CAACvP,aAAa,CAAE,aAAc,CAAC,CAACiL,WAAW,GAAG,IAAI,CAACK,iBAAiB;MAC9F,IAAM5K,KAAK,GAAS+B,QAAQ,CAAE8M,MAAM,CAACvP,aAAa,CAAE,sCAAuC,CAAC,CAACU,KAAK,EAAE,EAAG,CAAC;MACxG,IAAM+L,IAAI,GAAU8C,MAAM,CAACvP,aAAa,CAAE,QAAS,CAAC,CAACU,KAAK;MAC1D,IAAMyN,MAAM,GAAQ,GAAG,KAAK1B,IAAI,GAAGmD,IAAI,CAACC,KAAK,CAAE7B,WAAW,GAAGtN,KAAK,GAAG,GAAI,CAAC,GAAGkP,IAAI,CAACE,IAAI,CAAIpP,KAAK,GAAG,IAAI,CAACmL,OAAO,CAAE5K,KAAK,CAAE,CAACiL,QAAQ,GAAK8B,WAAY,CAAC;MAElJuB,MAAM,CAACvP,aAAa,CAAE,0BAA2B,CAAC,CAAC6B,KAAK,CAACC,KAAK,MAAAC,MAAA,CAAMoM,MAAM,OAAI;MAC9E,IAAI,CAACtC,OAAO,CAAE5K,KAAK,CAAE,CAACgL,UAAU,GAAGkC,MAAM;MACzC,IAAI,CAACtC,OAAO,CAAE5K,KAAK,CAAE,CAACP,KAAK,GAAGA,KAAK,GAAG+L,IAAI;IAC3C;;IAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;EAPC;IAAAhM,GAAA;IAAAC,KAAA,EAQA,SAAA4N,qBAAqBA,CAAEiB,MAAM,EAAEzN,KAAK,EAAEb,KAAK,EAAEP,KAAK,EAAG;MAAA,IAAAqP,MAAA;MACpD,IAAK,CAAER,MAAM,CAAChO,SAAS,CAACY,QAAQ,CAAE,4BAA6B,CAAC,IAAI,CAAEoN,MAAM,CAAChO,SAAS,CAACY,QAAQ,CAAE,yBAA0B,CAAC,EAAG;QAC9H;MACD;MACA,IAAM6N,YAAY,GAAGT,MAAM,CAAChO,SAAS,CAACY,QAAQ,CAAE,4BAA6B,CAAC,GAAGoN,MAAM,CAACpP,gBAAgB,CAAE,+BAAgC,CAAC,GAAG,IAAI,CAACqN,mBAAmB,CAAE+B,MAAO,CAAC;MAEhLS,YAAY,CAACjP,OAAO,CAAE,UAAE0M,IAAI,EAAEwC,UAAU,EAAM;QAC7CxC,IAAI,CAACzN,aAAa,CAAE,0BAA2B,CAAC,CAAC6B,KAAK,CAACC,KAAK,MAAAC,MAAA,CAAMD,KAAK,OAAI;QAC3EiO,MAAI,CAAClE,OAAO,CAAE5K,KAAK,GAAGgP,UAAU,GAAG,CAAC,CAAE,CAAChE,UAAU,GAAGnK,KAAK;QACzDiO,MAAI,CAAClE,OAAO,CAAE5K,KAAK,GAAGgP,UAAU,GAAG,CAAC,CAAE,CAACvP,KAAK,GAAGA,KAAK;MACrD,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;AACA;AACA;EALC;IAAAD,GAAA;IAAAC,KAAA,EAMA,SAAAiP,cAAcA,CAAEJ,MAAM,EAAG;MACxB,OAAO,IAAI,CAAC1D,OAAO,CAAC3J,MAAM,CAAE,UAAEgO,MAAM,EAAM;QACzC,OAAOA,MAAM,CAACrM,OAAO,KAAK0L,MAAM;MACjC,CAAC,CAAC,CAAC,CAAC,CAAC,CAACtO,KAAK;IACZ;EAAC;IAAAR,GAAA;IAAAC,KAAA;IAED;AACD;AACA;AACA;AACA;AACA;AACA;IACC,SAAAiK,WAAWA,CAAExJ,KAAK,EAAEF,KAAK,EAAG;MAC3B,IAAK,CAAE,IAAI,CAAC4K,OAAO,CAAE5K,KAAK,CAAE,CAAC8K,QAAQ,EAAG;QACvC;MACD;MACA,IAAIoC,MAAM,GAAUhN,KAAK,CAACiN,OAAO,GAAG,IAAI,CAACvC,OAAO,CAAE5K,KAAK,CAAE,CAAC+K,MAAM;MAChE,IAAMnI,OAAO,GAAO,IAAI,CAACwH,cAAc,CAAEpK,KAAK,CAAE;MAChD,IAAM+M,WAAW,GAAGnK,OAAO,CAAC7D,aAAa,CAAE,aAAc,CAAC,CAACiL,WAAW;;MAEtE;MACAkD,MAAM,GAAGyB,IAAI,CAACO,GAAG,CAAEhC,MAAM,EAAE,CAAE,CAAC;MAE9B,IAAKA,MAAM,GAAG,IAAI,CAAC7C,iBAAiB,GAAG,CAAC,GAAG,IAAI,CAACC,iBAAiB,IAAKyC,WAAW,EAAG;QACnF;MACD;MACA,IAAMvB,IAAI,GAAI5I,OAAO,CAAC7D,aAAa,CAAE,QAAS,CAAC,CAACU,KAAK;MACrD,IAAMA,KAAK,GAAG,IAAI,CAAC2N,cAAc,CAAEL,WAAW,EAAEG,MAAM,EAAE,IAAI,CAACzB,WAAW,CAAED,IAAI,EAAExL,KAAM,CAAE,CAAC;MAEzF4C,OAAO,CAAC7D,aAAa,CAAE,sCAAuC,CAAC,CAACU,KAAK,GAAGA,KAAK;MAC7EmD,OAAO,CAAC7D,aAAa,CAAE,4CAA6C,CAAC,CAACoQ,SAAS,GAAG1P,KAAK;MACvFmD,OAAO,CAAC7D,aAAa,CAAE,0BAA2B,CAAC,CAAC6B,KAAK,CAACC,KAAK,MAAAC,MAAA,CAAMoM,MAAM,OAAI;MAC/E,IAAI,CAACG,qBAAqB,CAAEzK,OAAO,EAAEsK,MAAM,EAAElN,KAAK,EAAEP,KAAK,GAAG+L,IAAK,CAAC;MAElE,IAAI,CAACZ,OAAO,CAAE5K,KAAK,CAAE,CAACgL,UAAU,GAAGkC,MAAM;MACzC,IAAI,CAACtC,OAAO,CAAE5K,KAAK,CAAE,CAACP,KAAK,GAAGA,KAAK,GAAG+L,IAAI;MAC1C,IAAI,CAACZ,OAAO,CAAE5K,KAAK,CAAE,CAAC2L,SAAS,GAAG,IAAI,CAACC,WAAW,CAAEhJ,OAAO,EAAE,IAAI,CAACgI,OAAO,CAAE5K,KAAK,CAAE,CAACP,KAAM,CAAC;MAC1F,IAAI,CAACgL,oBAAoB,CAAEzK,KAAM,CAAC;IACnC;;IAEA;AACD;AACA;AACA;AACA;AACA;AACA;EANC;IAAAR,GAAA;IAAAC,KAAA,EAOA,SAAAgM,WAAWA,CAAED,IAAI,EAAExL,KAAK,EAAG;MAC1B,OAAO,GAAG,KAAKwL,IAAI,GAAG,GAAG,GAAG,IAAI,CAACZ,OAAO,CAAE5K,KAAK,CAAE,CAACiL,QAAQ;IAC3D;;IAEA;AACD;AACA;AACA;AACA;AACA;EALC;IAAAzL,GAAA;IAAAC,KAAA,EAMA,SAAAyM,cAAcA,CAAEhM,KAAK,EAAEF,KAAK,EAAG;MAC9BE,KAAK,CAACG,MAAM,CAACC,SAAS,CAACC,GAAG,CAAE,cAAe,CAAC;MAC5C,IAAI,CAACqK,OAAO,CAAE5K,KAAK,CAAE,CAAC8K,QAAQ,GAAG,IAAI;MACrC,IAAI,CAACF,OAAO,CAAE5K,KAAK,CAAE,CAAC+K,MAAM,GAAG7K,KAAK,CAACiN,OAAO,GAAG,IAAI,CAACvC,OAAO,CAAE5K,KAAK,CAAE,CAACgL,UAAU;IAChF;;IAEA;AACD;AACA;AACA;AACA;AACA;EALC;IAAAxL,GAAA;IAAAC,KAAA,EAMA,SAAA0M,eAAeA,CAAEnM,KAAK,EAAEE,KAAK,EAAG;MAC/B,IAAK,KAAK,KAAK,IAAI,CAAC0K,OAAO,CAAE5K,KAAK,CAAE,CAAC8K,QAAQ,EAAG;QAC/C;MACD;MACA5K,KAAK,CAACG,MAAM,CAACC,SAAS,CAACS,MAAM,CAAE,cAAe,CAAC;MAC/C,IAAI,CAAC6J,OAAO,CAAE5K,KAAK,CAAE,CAAC8K,QAAQ,GAAG,KAAK;MACtC,IAAI,CAACJ,kBAAkB,CAAE1K,KAAM,CAAC;IACjC;;IAEA;AACD;AACA;AACA;AACA;EAJC;IAAAR,GAAA;IAAAC,KAAA,EAKA,SAAAiL,kBAAkBA,CAAE1K,KAAK,EAAG;MAAA,IAAAoP,OAAA;MAC3B,IAAK,IAAI,KAAK,IAAI,CAACxE,OAAO,CAAE5K,KAAK,CAAE,CAACkL,gBAAgB,EAAG;QACtD,IAAI,CAACN,OAAO,CAAE5K,KAAK,CAAE,CAACkL,gBAAgB,CAACxC,0BAA0B,CAAE,IAAI,CAACkC,OAAO,CAAE5K,KAAK,CAAE,CAAC2L,SAAU,CAAC;QACpG;MACD;MAEA,IAAMnD,KAAK,GAAG,IAAI,CAAC4B,cAAc,CAAEpK,KAAK,CAAE,CAACM,SAAS,CAACY,QAAQ,CAAE,yBAA0B,CAAC,GAAG,IAAI,CAACkJ,cAAc,CAAEpK,KAAK,CAAE,CAACmJ,OAAO,CAAC,sBAAsB,CAAC,CAACpK,aAAa,CAAE,sBAAuB,CAAC,GAAG,IAAI,CAACqL,cAAc,CAAEpK,KAAK,CAAE,CAACd,gBAAgB,CAAE,wCAAyC,CAAC;MAC7R,IAAKsJ,KAAK,YAAY6G,QAAQ,EAAG;QAChC7G,KAAK,CAAC1I,OAAO,CAAE,UAAE0M,IAAI,EAAM;UAC1BA,IAAI,CAAC7D,aAAa,CAAEyG,OAAI,CAAC7E,YAAY,CAAEvK,KAAK,CAAG,CAAC;QACjD,CAAC,CAAC;QACF;MACD;MACAwI,KAAK,CAACG,aAAa,CAAE,IAAI,CAAC4B,YAAY,CAAEvK,KAAK,CAAG,CAAC;IAClD;;IAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;EAPC;IAAAR,GAAA;IAAAC,KAAA,EAQA,SAAA2N,cAAcA,CAAEvM,KAAK,EAAEqM,MAAM,EAAEjC,QAAQ,EAAG;MAEzC;MACA;MACA,IAAMqE,KAAK,GAAGX,IAAI,CAACE,IAAI,CAAE,IAAI,CAACxE,iBAAiB,IAAK6C,MAAM,GAAGrM,KAAK,CAAG,CAAC;MAEtE,IAAMpB,KAAK,GAAGkP,IAAI,CAACE,IAAI,CAAI,CAAE3B,MAAM,GAAGoC,KAAK,IAAKzO,KAAK,GAAKoK,QAAS,CAAC;MAEpE,OAAO0D,IAAI,CAACY,GAAG,CAAE9P,KAAK,EAAEwL,QAAS,CAAC;IACnC;;IAEA;AACD;AACA;AACA;AACA;AACA;AACA;EANC;IAAAzL,GAAA;IAAAC,KAAA,EAOA,SAAAmM,WAAWA,CAAEhJ,OAAO,EAAEnD,KAAK,EAAG;MAAA,IAAA+P,OAAA;MAC7B;MACA;MACA,IAAK5M,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,oBAAqB,CAAC,EAAG;QACzD,IAAMuO,qBAAqB,GAAG3Q,QAAQ,CAACC,aAAa,CAAE,mEAAoE,CAAC;QAC3H,IAAK,IAAI,KAAK0Q,qBAAqB,EAAG;UACrCA,qBAAqB,CAAChQ,KAAK,GAAG,MAAM;QACrC;MACD;MACA,IAAKmD,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,yBAA0B,CAAC,EAAG;QAC9D,IAAMsH,KAAK,GAAQ5F,OAAO,CAACuG,OAAO,CAAE,sBAAuB,CAAC,CAACpK,aAAa,CAAE,sBAAuB,CAAC;QACpG,IAAM2Q,UAAU,GAAGlH,KAAK,CAAC/I,KAAK,CAAC8N,KAAK,CAAE,GAAI,CAAC;QAC3C,IAAMjL,IAAI,GAASM,OAAO,CAAClC,OAAO,CAAC4B,IAAI;QAEvC,IAAK,CAAEoN,UAAU,CAAC,CAAC,CAAC,EAAG;UACtBA,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK;QACtB;QAEA,IAAK,CAAEA,UAAU,CAAC,CAAC,CAAC,EAAG;UACtBA,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK;QACtB;QAEA,QAASpN,IAAI;UACZ,KAAK,UAAU;YACdoN,UAAU,CAAC,CAAC,CAAC,GAAGjQ,KAAK;YACrBiQ,UAAU,CAAC,CAAC,CAAC,GAAGjQ,KAAK;YACrB;UAED,KAAK,YAAY;YAChBiQ,UAAU,CAAC,CAAC,CAAC,GAAGjQ,KAAK;YACrBiQ,UAAU,CAAC,CAAC,CAAC,GAAGjQ,KAAK;YACrB;UAED,KAAK,KAAK;YACTiQ,UAAU,CAAC,CAAC,CAAC,GAAGjQ,KAAK;YACrB;UAED,KAAK,QAAQ;YACZiQ,UAAU,CAAC,CAAC,CAAC,GAAGjQ,KAAK;YACrB;UAED,KAAK,MAAM;YACViQ,UAAU,CAAC,CAAC,CAAC,GAAGjQ,KAAK;YACrB;UAED,KAAK,OAAO;YACXiQ,UAAU,CAAC,CAAC,CAAC,GAAGjQ,KAAK;YACrB;QACF;QAEA,IAAMkQ,QAAQ,GAAGD,UAAU,CAAChC,IAAI,CAAE,GAAI,CAAC;QACvClF,KAAK,CAAC/I,KAAK,GAAGkQ,QAAQ;QAEtB,IAAMC,iBAAiB,GAAG,IAAI,CAACrD,mBAAmB,CAAE3J,OAAQ,CAAC;QAC7DgN,iBAAiB,CAAC9P,OAAO,CAAE,UAAEwO,MAAM,EAAM;UACxC,IAAMuB,WAAW,GAAGL,OAAI,CAACM,uBAAuB,CAAErQ,KAAM,CAAC;UACzD6O,MAAM,CAACvP,aAAa,CAAE,sCAAuC,CAAC,CAACU,KAAK,GAAG+B,QAAQ,CAAE/B,KAAK,EAAE,EAAG,CAAC;UAC5F6O,MAAM,CAACvP,aAAa,CAAE,QAAS,CAAC,CAACU,KAAK,GAAGoQ,WAAW;QACrD,CAAC,CAAC;QAEF,OAAOF,QAAQ;MAChB;MAEA,IAAK/M,OAAO,CAACtC,SAAS,CAACY,QAAQ,CAAE,4BAA6B,CAAC,EAAG;QACjE,IAAM6O,WAAW,GAAKnN,OAAO,CAAC1D,gBAAgB,CAAE,wCAAyC,CAAC;QAC1F,IAAM8Q,aAAa,GAAGpN,OAAO,CAAC1D,gBAAgB,CAAE,sCAAuC,CAAC;QACxF6Q,WAAW,CAACjQ,OAAO,CAAE,UAAE0I,KAAK,EAAExI,KAAK,EAAM;UACxCwI,KAAK,CAAC/I,KAAK,GAAGA,KAAK;UACnBuQ,aAAa,CAAEhQ,KAAK,GAAG,CAAC,CAAE,CAACP,KAAK,GAAG+B,QAAQ,CAAE/B,KAAK,EAAE,EAAG,CAAC;QACzD,CAAC,CAAC;QAEF,OAAOA,KAAK;MACb;MAEAmD,OAAO,CAAC7D,aAAa,CAAE,wCAAyC,CAAC,CAACU,KAAK,GAAGA,KAAK;MAC/E,OAAOA,KAAK;IACb;;IAEA;AACD;AACA;AACA;AACA;AACA;EALC;IAAAD,GAAA;IAAAC,KAAA,EAMA,SAAAqQ,uBAAuBA,CAAErQ,KAAK,EAAG;MAChC,OAAO,CAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAE,CAACwQ,IAAI,CAAE,UAAAzE,IAAI;QAAA,OAAI/L,KAAK,CAACqG,QAAQ,CAAE0F,IAAK,CAAC;MAAA,CAAC,CAAC,IAAI,EAAE;IACxE;EAAC;AAAA;;;;;;;;;;;;;;;;;;;;;;;AC5hBuE;AACzE;AACA;AACA;AACA;AAHA,IAIqB0E,gBAAgB;EAEpC,SAAAA,iBAAA,EAAc;IAAAtR,eAAA,OAAAsR,gBAAA;IACb,IAAI,CAAC7N,QAAQ,GAAGvD,QAAQ,CAACI,gBAAgB,CAAE,yBAA0B,CAAC;IACtE,IAAK,CAAC,GAAG,IAAI,CAACmD,QAAQ,CAAC1C,MAAM,EAAG;MAC/B,IAAI,CAACL,IAAI,CAAC,CAAC;IACZ;EACD;;EAEA;AACD;AACA;EAFC,OAAAC,YAAA,CAAA2Q,gBAAA;IAAA1Q,GAAA;IAAAC,KAAA,EAGA,SAAAH,IAAIA,CAAA,EAAG;MACN,IAAI,CAAC+C,QAAQ,CAACvC,OAAO,CAAE,UAAE8C,OAAO,EAAM;QACrC,IAAIlE,8EAAgB,CAAEkE,OAAQ,CAAC;MAChC,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;EAHC;IAAApD,GAAA;IAAAC,KAAA,EAIA,SAAA0Q,cAAcA,CAAExR,OAAO,EAAG;MAAA,IAAAe,KAAA;MACzB,IAAI,CAAC0Q,yBAAyB,CAAEzR,OAAQ,CAAC;MACzCA,OAAO,CAACO,gBAAgB,CAAE,eAAgB,CAAC,CAACY,OAAO,CAAE,UAAEuQ,GAAG,EAAM;QAC/DA,GAAG,CAACpQ,gBAAgB,CAAE,OAAO,EAAE,UAAEC,KAAK,EAAM;UAC3CR,KAAI,CAAC4Q,UAAU,CAAEpQ,KAAK,CAACG,MAAM,CAAC8I,OAAO,CAAE,mBAAoB,CAAE,CAAC;QAC/D,CAAC,CAAC;MACH,CAAC,CAAC;IACH;EAAC;AAAA;;;;;;;;;;;AClCF;AACA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,4BAA4B;AAC1C,cAAc,4BAA4B;AAC1C,cAAc,4BAA4B;AAC1C;AACA,cAAc,4BAA4B;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;AACA,WAAW,eAAe;AAC1B,WAAW,eAAe;AAC1B;AACA,YAAY,4BAA4B;AACxC;AACA;AACA;;AAEA,YAAY,4BAA4B;AACxC;;AAEA,YAAY,4BAA4B;AACxC;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,eAAe,SAAS;AACxB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA,2BAA2B,eAAe;AAC1C,qBAAqB,iBAAiB;AACtC,cAAc,iBAAiB;AAC/B,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,KAA+B,GAAG,EAMtC;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;ACtKA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA,uBAAuB;AACvB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ,IAA8B;AACtC,QAAQ,eAAkB;AAC1B,QAAQ,gBAAmB;AAC3B;AACA;AACA;AACA;;AAEA,YAAY,IAA6C;AACzD,YAAY,mCAAO;AACnB;AACA;AACA;AACA;AACA,aAAa;AAAA,kGAAC;AACd;AACA;AACA;AACA,CAAC,IAAI;;;;;;;;;;;;;;;;;ACtO0C;;AAE/C;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,gGAAgG;AAC9G;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,qCAAqC;AACnD;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,gBAAgB;AACrD;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA,qBAAqB;;AAErB,cAAc,kBAAkB;AAChC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B,WAAW,kBAAkB;AAC7B;AACe;AACf;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,QAAQ,gEAAW;AACnB;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB;AACA,WAAW,aAAa;AACxB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACpNA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;;;;;;;;;;;;;;;;;ACJqD;AACrD;AACA,+BAA+B,gEAAgB;AAC/C;;;;;;;;;;;;;;;;ACHA;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","sources":["webpack://formidable/./node_modules/@tannin/compile/index.js","webpack://formidable/./node_modules/@tannin/evaluate/index.js","webpack://formidable/./node_modules/@tannin/plural-forms/index.js","webpack://formidable/./node_modules/@tannin/postfix/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createAddHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createCurrentHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDidHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDoingHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHasHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHooks.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRemoveHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRunHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateHookName.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateNamespace.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/create-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/default-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/index.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/sprintf.js","webpack://formidable/./js/src/components/class-tabs-navigator.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/./js/src/settings-components/components/dependent-updater-component.js","webpack://formidable/./js/src/settings-components/components/radio-component.js","webpack://formidable/./js/src/settings-components/components/slider-component.js","webpack://formidable/./js/src/settings-components/components/tabs-component.js","webpack://formidable/./node_modules/memize/index.js","webpack://formidable/./node_modules/sprintf-js/src/sprintf.js","webpack://formidable/./node_modules/tannin/index.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/compat get default export","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/settings-components/settings-components.js"],"sourcesContent":["import postfix from '@tannin/postfix';\nimport evaluate from '@tannin/evaluate';\n\n/**\n * Given a C expression, returns a function which can be called to evaluate its\n * result.\n *\n * @example\n *\n * ```js\n * import compile from '@tannin/compile';\n *\n * const evaluate = compile( 'n > 1' );\n *\n * evaluate( { n: 2 } );\n * // ⇒ true\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {(variables?:{[variable:string]:*})=>*} Compiled evaluator.\n */\nexport default function compile( expression ) {\n\tvar terms = postfix( expression );\n\n\treturn function( variables ) {\n\t\treturn evaluate( terms, variables );\n\t};\n}\n","/**\n * Operator callback functions.\n *\n * @type {Object}\n */\nvar OPERATORS = {\n\t'!': function( a ) {\n\t\treturn ! a;\n\t},\n\t'*': function( a, b ) {\n\t\treturn a * b;\n\t},\n\t'/': function( a, b ) {\n\t\treturn a / b;\n\t},\n\t'%': function( a, b ) {\n\t\treturn a % b;\n\t},\n\t'+': function( a, b ) {\n\t\treturn a + b;\n\t},\n\t'-': function( a, b ) {\n\t\treturn a - b;\n\t},\n\t'<': function( a, b ) {\n\t\treturn a < b;\n\t},\n\t'<=': function( a, b ) {\n\t\treturn a <= b;\n\t},\n\t'>': function( a, b ) {\n\t\treturn a > b;\n\t},\n\t'>=': function( a, b ) {\n\t\treturn a >= b;\n\t},\n\t'==': function( a, b ) {\n\t\treturn a === b;\n\t},\n\t'!=': function( a, b ) {\n\t\treturn a !== b;\n\t},\n\t'&&': function( a, b ) {\n\t\treturn a && b;\n\t},\n\t'||': function( a, b ) {\n\t\treturn a || b;\n\t},\n\t'?:': function( a, b, c ) {\n\t\tif ( a ) {\n\t\t\tthrow b;\n\t\t}\n\n\t\treturn c;\n\t},\n};\n\n/**\n * Given an array of postfix terms and operand variables, returns the result of\n * the postfix evaluation.\n *\n * @example\n *\n * ```js\n * import evaluate from '@tannin/evaluate';\n *\n * // 3 + 4 * 5 / 6 ⇒ '3 4 5 * 6 / +'\n * const terms = [ '3', '4', '5', '*', '6', '/', '+' ];\n *\n * evaluate( terms, {} );\n * // ⇒ 6.333333333333334\n * ```\n *\n * @param {string[]} postfix Postfix terms.\n * @param {Object} variables Operand variables.\n *\n * @return {*} Result of evaluation.\n */\nexport default function evaluate( postfix, variables ) {\n\tvar stack = [],\n\t\ti, j, args, getOperatorResult, term, value;\n\n\tfor ( i = 0; i < postfix.length; i++ ) {\n\t\tterm = postfix[ i ];\n\n\t\tgetOperatorResult = OPERATORS[ term ];\n\t\tif ( getOperatorResult ) {\n\t\t\t// Pop from stack by number of function arguments.\n\t\t\tj = getOperatorResult.length;\n\t\t\targs = Array( j );\n\t\t\twhile ( j-- ) {\n\t\t\t\targs[ j ] = stack.pop();\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tvalue = getOperatorResult.apply( null, args );\n\t\t\t} catch ( earlyReturn ) {\n\t\t\t\treturn earlyReturn;\n\t\t\t}\n\t\t} else if ( variables.hasOwnProperty( term ) ) {\n\t\t\tvalue = variables[ term ];\n\t\t} else {\n\t\t\tvalue = +term;\n\t\t}\n\n\t\tstack.push( value );\n\t}\n\n\treturn stack[ 0 ];\n}\n","import compile from '@tannin/compile';\n\n/**\n * Given a C expression, returns a function which, when called with a value,\n * evaluates the result with the value assumed to be the \"n\" variable of the\n * expression. The result will be coerced to its numeric equivalent.\n *\n * @param {string} expression C expression.\n *\n * @return {Function} Evaluator function.\n */\nexport default function pluralForms( expression ) {\n\tvar evaluate = compile( expression );\n\n\treturn function( n ) {\n\t\treturn +evaluate( { n: n } );\n\t};\n}\n","var PRECEDENCE, OPENERS, TERMINATORS, PATTERN;\n\n/**\n * Operator precedence mapping.\n *\n * @type {Object}\n */\nPRECEDENCE = {\n\t'(': 9,\n\t'!': 8,\n\t'*': 7,\n\t'/': 7,\n\t'%': 7,\n\t'+': 6,\n\t'-': 6,\n\t'<': 5,\n\t'<=': 5,\n\t'>': 5,\n\t'>=': 5,\n\t'==': 4,\n\t'!=': 4,\n\t'&&': 3,\n\t'||': 2,\n\t'?': 1,\n\t'?:': 1,\n};\n\n/**\n * Characters which signal pair opening, to be terminated by terminators.\n *\n * @type {string[]}\n */\nOPENERS = [ '(', '?' ];\n\n/**\n * Characters which signal pair termination, the value an array with the\n * opener as its first member. The second member is an optional operator\n * replacement to push to the stack.\n *\n * @type {string[]}\n */\nTERMINATORS = {\n\t')': [ '(' ],\n\t':': [ '?', '?:' ],\n};\n\n/**\n * Pattern matching operators and openers.\n *\n * @type {RegExp}\n */\nPATTERN = /<=|>=|==|!=|&&|\\|\\||\\?:|\\(|!|\\*|\\/|%|\\+|-|<|>|\\?|\\)|:/;\n\n/**\n * Given a C expression, returns the equivalent postfix (Reverse Polish)\n * notation terms as an array.\n *\n * If a postfix string is desired, simply `.join( ' ' )` the result.\n *\n * @example\n *\n * ```js\n * import postfix from '@tannin/postfix';\n *\n * postfix( 'n > 1' );\n * // ⇒ [ 'n', '1', '>' ]\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {string[]} Postfix terms.\n */\nexport default function postfix( expression ) {\n\tvar terms = [],\n\t\tstack = [],\n\t\tmatch, operator, term, element;\n\n\twhile ( ( match = expression.match( PATTERN ) ) ) {\n\t\toperator = match[ 0 ];\n\n\t\t// Term is the string preceding the operator match. It may contain\n\t\t// whitespace, and may be empty (if operator is at beginning).\n\t\tterm = expression.substr( 0, match.index ).trim();\n\t\tif ( term ) {\n\t\t\tterms.push( term );\n\t\t}\n\n\t\twhile ( ( element = stack.pop() ) ) {\n\t\t\tif ( TERMINATORS[ operator ] ) {\n\t\t\t\tif ( TERMINATORS[ operator ][ 0 ] === element ) {\n\t\t\t\t\t// Substitution works here under assumption that because\n\t\t\t\t\t// the assigned operator will no longer be a terminator, it\n\t\t\t\t\t// will be pushed to the stack during the condition below.\n\t\t\t\t\toperator = TERMINATORS[ operator ][ 1 ] || operator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if ( OPENERS.indexOf( element ) >= 0 || PRECEDENCE[ element ] < PRECEDENCE[ operator ] ) {\n\t\t\t\t// Push to stack if either an opener or when pop reveals an\n\t\t\t\t// element of lower precedence.\n\t\t\t\tstack.push( element );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// For each popped from stack, push to terms.\n\t\t\tterms.push( element );\n\t\t}\n\n\t\tif ( ! TERMINATORS[ operator ] ) {\n\t\t\tstack.push( operator );\n\t\t}\n\n\t\t// Slice matched fragment from expression to continue match.\n\t\texpression = expression.substr( match.index + operator.length );\n\t}\n\n\t// Push remainder of operand, if exists, to terms.\n\texpression = expression.trim();\n\tif ( expression ) {\n\t\tterms.push( expression );\n\t}\n\n\t// Pop remaining items from stack into terms.\n\treturn terms.concat( stack.reverse() );\n}\n","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback AddHook\n *\n * Adds the hook to the appropriate hooks container.\n *\n * @param {string} hookName Name of hook to add\n * @param {string} namespace The unique namespace identifying the callback in the form `vendor/plugin/function`.\n * @param {import('.').Callback} callback Function to call when the hook is run\n * @param {number} [priority=10] Priority of this hook\n */\n\n/**\n * Returns a function which, when invoked, will add a hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {AddHook} Function that adds a new hook.\n */\n\nfunction createAddHook(hooks, storeKey) {\n return function addHook(hookName, namespace, callback) {\n var priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10;\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!validateNamespace(namespace)) {\n return;\n }\n\n if ('function' !== typeof callback) {\n // eslint-disable-next-line no-console\n console.error('The hook callback must be a function.');\n return;\n } // Validate numeric priority\n\n\n if ('number' !== typeof priority) {\n // eslint-disable-next-line no-console\n console.error('If specified, the hook priority must be a number.');\n return;\n }\n\n var handler = {\n callback: callback,\n priority: priority,\n namespace: namespace\n };\n\n if (hooksStore[hookName]) {\n // Find the correct insert index of the new hook.\n var handlers = hooksStore[hookName].handlers;\n /** @type {number} */\n\n var i;\n\n for (i = handlers.length; i > 0; i--) {\n if (priority >= handlers[i - 1].priority) {\n break;\n }\n }\n\n if (i === handlers.length) {\n // If append, operate via direct assignment.\n handlers[i] = handler;\n } else {\n // Otherwise, insert before index via splice.\n handlers.splice(i, 0, handler);\n } // We may also be currently executing this hook. If the callback\n // we're adding would come after the current callback, there's no\n // problem; otherwise we need to increase the execution index of\n // any other runs by 1 to account for the added element.\n\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex++;\n }\n });\n } else {\n // This is the first hook of its type.\n hooksStore[hookName] = {\n handlers: [handler],\n runs: 0\n };\n }\n\n if (hookName !== 'hookAdded') {\n hooks.doAction('hookAdded', hookName, namespace, callback, priority);\n }\n };\n}\n\nexport default createAddHook;\n//# sourceMappingURL=createAddHook.js.map","/**\n * Returns a function which, when invoked, will return the name of the\n * currently running hook, or `null` if no hook of the given type is currently\n * running.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {() => string | null} Function that returns the current hook name or null.\n */\nfunction createCurrentHook(hooks, storeKey) {\n return function currentHook() {\n var _hooksStore$__current, _hooksStore$__current2;\n\n var hooksStore = hooks[storeKey];\n return (_hooksStore$__current = (_hooksStore$__current2 = hooksStore.__current[hooksStore.__current.length - 1]) === null || _hooksStore$__current2 === void 0 ? void 0 : _hooksStore$__current2.name) !== null && _hooksStore$__current !== void 0 ? _hooksStore$__current : null;\n };\n}\n\nexport default createCurrentHook;\n//# sourceMappingURL=createCurrentHook.js.map","/**\n * Internal dependencies\n */\nimport validateHookName from './validateHookName.js';\n/**\n * @callback DidHook\n *\n * Returns the number of times an action has been fired.\n *\n * @param {string} hookName The hook name to check.\n *\n * @return {number | undefined} The number of times the hook has run.\n */\n\n/**\n * Returns a function which, when invoked, will return the number of times a\n * hook has been called.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DidHook} Function that returns a hook's call count.\n */\n\nfunction createDidHook(hooks, storeKey) {\n return function didHook(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0;\n };\n}\n\nexport default createDidHook;\n//# sourceMappingURL=createDidHook.js.map","/**\n * @callback DoingHook\n * Returns whether a hook is currently being executed.\n *\n * @param {string} [hookName] The name of the hook to check for. If\n * omitted, will check for any hook being executed.\n *\n * @return {boolean} Whether the hook is being executed.\n */\n\n/**\n * Returns a function which, when invoked, will return whether a hook is\n * currently being executed.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DoingHook} Function that returns whether a hook is currently\n * being executed.\n */\nfunction createDoingHook(hooks, storeKey) {\n return function doingHook(hookName) {\n var hooksStore = hooks[storeKey]; // If the hookName was not passed, check for any current hook.\n\n if ('undefined' === typeof hookName) {\n return 'undefined' !== typeof hooksStore.__current[0];\n } // Return the __current hook.\n\n\n return hooksStore.__current[0] ? hookName === hooksStore.__current[0].name : false;\n };\n}\n\nexport default createDoingHook;\n//# sourceMappingURL=createDoingHook.js.map","/**\n * @callback HasHook\n *\n * Returns whether any handlers are attached for the given hookName and optional namespace.\n *\n * @param {string} hookName The name of the hook to check for.\n * @param {string} [namespace] Optional. The unique namespace identifying the callback\n * in the form `vendor/plugin/function`.\n *\n * @return {boolean} Whether there are handlers that are attached to the given hook.\n */\n\n/**\n * Returns a function which, when invoked, will return whether any handlers are\n * attached to a particular hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {HasHook} Function that returns whether any handlers are\n * attached to a particular hook and optional namespace.\n */\nfunction createHasHook(hooks, storeKey) {\n return function hasHook(hookName, namespace) {\n var hooksStore = hooks[storeKey]; // Use the namespace if provided.\n\n if ('undefined' !== typeof namespace) {\n return hookName in hooksStore && hooksStore[hookName].handlers.some(function (hook) {\n return hook.namespace === namespace;\n });\n }\n\n return hookName in hooksStore;\n };\n}\n\nexport default createHasHook;\n//# sourceMappingURL=createHasHook.js.map","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\n\n/**\n * Internal dependencies\n */\nimport createAddHook from './createAddHook';\nimport createRemoveHook from './createRemoveHook';\nimport createHasHook from './createHasHook';\nimport createRunHook from './createRunHook';\nimport createCurrentHook from './createCurrentHook';\nimport createDoingHook from './createDoingHook';\nimport createDidHook from './createDidHook';\n/**\n * Internal class for constructing hooks. Use `createHooks()` function\n *\n * Note, it is necessary to expose this class to make its type public.\n *\n * @private\n */\n\nexport var _Hooks = function _Hooks() {\n _classCallCheck(this, _Hooks);\n\n /** @type {import('.').Store} actions */\n this.actions = Object.create(null);\n this.actions.__current = [];\n /** @type {import('.').Store} filters */\n\n this.filters = Object.create(null);\n this.filters.__current = [];\n this.addAction = createAddHook(this, 'actions');\n this.addFilter = createAddHook(this, 'filters');\n this.removeAction = createRemoveHook(this, 'actions');\n this.removeFilter = createRemoveHook(this, 'filters');\n this.hasAction = createHasHook(this, 'actions');\n this.hasFilter = createHasHook(this, 'filters');\n this.removeAllActions = createRemoveHook(this, 'actions', true);\n this.removeAllFilters = createRemoveHook(this, 'filters', true);\n this.doAction = createRunHook(this, 'actions');\n this.applyFilters = createRunHook(this, 'filters', true);\n this.currentAction = createCurrentHook(this, 'actions');\n this.currentFilter = createCurrentHook(this, 'filters');\n this.doingAction = createDoingHook(this, 'actions');\n this.doingFilter = createDoingHook(this, 'filters');\n this.didAction = createDidHook(this, 'actions');\n this.didFilter = createDidHook(this, 'filters');\n};\n/** @typedef {_Hooks} Hooks */\n\n/**\n * Returns an instance of the hooks object.\n *\n * @return {Hooks} A Hooks instance.\n */\n\nfunction createHooks() {\n return new _Hooks();\n}\n\nexport default createHooks;\n//# sourceMappingURL=createHooks.js.map","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback RemoveHook\n * Removes the specified callback (or all callbacks) from the hook with a given hookName\n * and namespace.\n *\n * @param {string} hookName The name of the hook to modify.\n * @param {string} namespace The unique namespace identifying the callback in the\n * form `vendor/plugin/function`.\n *\n * @return {number | undefined} The number of callbacks removed.\n */\n\n/**\n * Returns a function which, when invoked, will remove a specified hook or all\n * hooks by the given name.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [removeAll=false] Whether to remove all callbacks for a hookName,\n * without regard to namespace. Used to create\n * `removeAll*` functions.\n *\n * @return {RemoveHook} Function that removes hooks.\n */\n\nfunction createRemoveHook(hooks, storeKey) {\n var removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function removeHook(hookName, namespace) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!removeAll && !validateNamespace(namespace)) {\n return;\n } // Bail if no hooks exist by this name\n\n\n if (!hooksStore[hookName]) {\n return 0;\n }\n\n var handlersRemoved = 0;\n\n if (removeAll) {\n handlersRemoved = hooksStore[hookName].handlers.length;\n hooksStore[hookName] = {\n runs: hooksStore[hookName].runs,\n handlers: []\n };\n } else {\n // Try to find the specified callback to remove.\n var handlers = hooksStore[hookName].handlers;\n\n var _loop = function _loop(i) {\n if (handlers[i].namespace === namespace) {\n handlers.splice(i, 1);\n handlersRemoved++; // This callback may also be part of a hook that is\n // currently executing. If the callback we're removing\n // comes after the current callback, there's no problem;\n // otherwise we need to decrease the execution index of any\n // other runs by 1 to account for the removed element.\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex--;\n }\n });\n }\n };\n\n for (var i = handlers.length - 1; i >= 0; i--) {\n _loop(i);\n }\n }\n\n if (hookName !== 'hookRemoved') {\n hooks.doAction('hookRemoved', hookName, namespace);\n }\n\n return handlersRemoved;\n };\n}\n\nexport default createRemoveHook;\n//# sourceMappingURL=createRemoveHook.js.map","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\n\n/**\n * Returns a function which, when invoked, will execute all callbacks\n * registered to a hook of the specified type, optionally returning the final\n * value of the call chain.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [returnFirstArg=false] Whether each hook callback is expected to\n * return its first argument.\n *\n * @return {(hookName:string, ...args: unknown[]) => unknown} Function that runs hook callbacks.\n */\nfunction createRunHook(hooks, storeKey) {\n var returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function runHooks(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!hooksStore[hookName]) {\n hooksStore[hookName] = {\n handlers: [],\n runs: 0\n };\n }\n\n hooksStore[hookName].runs++;\n var handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds.\n\n if ('production' !== process.env.NODE_ENV) {\n // Handle any 'all' hooks registered.\n if ('hookAdded' !== hookName && hooksStore.all) {\n handlers.push.apply(handlers, _toConsumableArray(hooksStore.all.handlers));\n }\n }\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (!handlers || !handlers.length) {\n return returnFirstArg ? args[0] : undefined;\n }\n\n var hookInfo = {\n name: hookName,\n currentIndex: 0\n };\n\n hooksStore.__current.push(hookInfo);\n\n while (hookInfo.currentIndex < handlers.length) {\n var handler = handlers[hookInfo.currentIndex];\n var result = handler.callback.apply(null, args);\n\n if (returnFirstArg) {\n args[0] = result;\n }\n\n hookInfo.currentIndex++;\n }\n\n hooksStore.__current.pop();\n\n if (returnFirstArg) {\n return args[0];\n }\n };\n}\n\nexport default createRunHook;\n//# sourceMappingURL=createRunHook.js.map","/**\n * Internal dependencies\n */\nimport createHooks from './createHooks';\n/** @typedef {(...args: any[])=>any} Callback */\n\n/**\n * @typedef Handler\n * @property {Callback} callback The callback\n * @property {string} namespace The namespace\n * @property {number} priority The namespace\n */\n\n/**\n * @typedef Hook\n * @property {Handler[]} handlers Array of handlers\n * @property {number} runs Run counter\n */\n\n/**\n * @typedef Current\n * @property {string} name Hook name\n * @property {number} currentIndex The index\n */\n\n/**\n * @typedef {Record & {__current: Current[]}} Store\n */\n\n/**\n * @typedef {'actions' | 'filters'} StoreKey\n */\n\n/**\n * @typedef {import('./createHooks').Hooks} Hooks\n */\n\nexport var defaultHooks = createHooks();\nvar addAction = defaultHooks.addAction,\n addFilter = defaultHooks.addFilter,\n removeAction = defaultHooks.removeAction,\n removeFilter = defaultHooks.removeFilter,\n hasAction = defaultHooks.hasAction,\n hasFilter = defaultHooks.hasFilter,\n removeAllActions = defaultHooks.removeAllActions,\n removeAllFilters = defaultHooks.removeAllFilters,\n doAction = defaultHooks.doAction,\n applyFilters = defaultHooks.applyFilters,\n currentAction = defaultHooks.currentAction,\n currentFilter = defaultHooks.currentFilter,\n doingAction = defaultHooks.doingAction,\n doingFilter = defaultHooks.doingFilter,\n didAction = defaultHooks.didAction,\n didFilter = defaultHooks.didFilter,\n actions = defaultHooks.actions,\n filters = defaultHooks.filters;\nexport { createHooks, addAction, addFilter, removeAction, removeFilter, hasAction, hasFilter, removeAllActions, removeAllFilters, doAction, applyFilters, currentAction, currentFilter, doingAction, doingFilter, didAction, didFilter, actions, filters };\n//# sourceMappingURL=index.js.map","/**\n * Validate a hookName string.\n *\n * @param {string} hookName The hook name to validate. Should be a non empty string containing\n * only numbers, letters, dashes, periods and underscores. Also,\n * the hook name cannot begin with `__`.\n *\n * @return {boolean} Whether the hook name is valid.\n */\nfunction validateHookName(hookName) {\n if ('string' !== typeof hookName || '' === hookName) {\n // eslint-disable-next-line no-console\n console.error('The hook name must be a non-empty string.');\n return false;\n }\n\n if (/^__/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name cannot begin with `__`.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name can only contain numbers, letters, dashes, periods and underscores.');\n return false;\n }\n\n return true;\n}\n\nexport default validateHookName;\n//# sourceMappingURL=validateHookName.js.map","/**\n * Validate a namespace string.\n *\n * @param {string} namespace The namespace to validate - should take the form\n * `vendor/plugin/function`.\n *\n * @return {boolean} Whether the namespace is valid.\n */\nfunction validateNamespace(namespace) {\n if ('string' !== typeof namespace || '' === namespace) {\n // eslint-disable-next-line no-console\n console.error('The namespace must be a non-empty string.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.\\-\\/]*$/.test(namespace)) {\n // eslint-disable-next-line no-console\n console.error('The namespace can only contain numbers, letters, dashes, periods, underscores and slashes.');\n return false;\n }\n\n return true;\n}\n\nexport default validateNamespace;\n//# sourceMappingURL=validateNamespace.js.map","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n/**\n * External dependencies\n */\nimport Tannin from 'tannin';\n/**\n * @typedef {Record} LocaleData\n */\n\n/**\n * Default locale data to use for Tannin domain when not otherwise provided.\n * Assumes an English plural forms expression.\n *\n * @type {LocaleData}\n */\n\nvar DEFAULT_LOCALE_DATA = {\n '': {\n /** @param {number} n */\n plural_forms: function plural_forms(n) {\n return n === 1 ? 0 : 1;\n }\n }\n};\n/*\n * Regular expression that matches i18n hooks like `i18n.gettext`, `i18n.ngettext`,\n * `i18n.gettext_domain` or `i18n.ngettext_with_context` or `i18n.has_translation`.\n */\n\nvar I18N_HOOK_REGEXP = /^i18n\\.(n?gettext|has_translation)(_|$)/;\n/**\n * @typedef {(domain?: string) => LocaleData} GetLocaleData\n *\n * Returns locale data by domain in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} SetLocaleData\n *\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} ResetLocaleData\n *\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/** @typedef {() => void} SubscribeCallback */\n\n/** @typedef {() => void} UnsubscribeCallback */\n\n/**\n * @typedef {(callback: SubscribeCallback) => UnsubscribeCallback} Subscribe\n *\n * Subscribes to changes of locale data\n */\n\n/**\n * @typedef {(domain?: string) => string} GetFilterDomain\n * Retrieve the domain to use when calling domain-specific filters.\n */\n\n/**\n * @typedef {(text: string, domain?: string) => string} __\n *\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n */\n\n/**\n * @typedef {(text: string, context: string, domain?: string) => string} _x\n *\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, domain?: string) => string} _n\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, context: string, domain?: string) => string} _nx\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n */\n\n/**\n * @typedef {() => boolean} IsRtl\n *\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n */\n\n/**\n * @typedef {(single: string, context?: string, domain?: string) => boolean} HasTranslation\n *\n * Check if there is a translation for a given string in singular form.\n */\n\n/** @typedef {import('@wordpress/hooks').Hooks} Hooks */\n\n/**\n * An i18n instance\n *\n * @typedef I18n\n * @property {GetLocaleData} getLocaleData Returns locale data by domain in a Jed-formatted JSON object shape.\n * @property {SetLocaleData} setLocaleData Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n * @property {ResetLocaleData} resetLocaleData Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n * @property {Subscribe} subscribe Subscribes to changes of Tannin locale data.\n * @property {__} __ Retrieve the translation of text.\n * @property {_x} _x Retrieve translated string with gettext context.\n * @property {_n} _n Translates and retrieves the singular or plural form based on the supplied\n * number.\n * @property {_nx} _nx Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n * @property {IsRtl} isRTL Check if current locale is RTL.\n * @property {HasTranslation} hasTranslation Check if there is a translation for a given string.\n */\n\n/**\n * Create an i18n instance\n *\n * @param {LocaleData} [initialData] Locale data configuration.\n * @param {string} [initialDomain] Domain for which configuration applies.\n * @param {Hooks} [hooks] Hooks implementation.\n * @return {I18n} I18n instance\n */\n\nexport var createI18n = function createI18n(initialData, initialDomain, hooks) {\n /**\n * The underlying instance of Tannin to which exported functions interface.\n *\n * @type {Tannin}\n */\n var tannin = new Tannin({});\n var listeners = new Set();\n\n var notifyListeners = function notifyListeners() {\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n /**\n * Subscribe to changes of locale data.\n *\n * @param {SubscribeCallback} callback Subscription callback.\n * @return {UnsubscribeCallback} Unsubscribe callback.\n */\n\n\n var subscribe = function subscribe(callback) {\n listeners.add(callback);\n return function () {\n return listeners.delete(callback);\n };\n };\n /** @type {GetLocaleData} */\n\n\n var getLocaleData = function getLocaleData() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return tannin.data[domain];\n };\n /**\n * @param {LocaleData} [data]\n * @param {string} [domain]\n */\n\n\n var doSetLocaleData = function doSetLocaleData(data) {\n var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';\n tannin.data[domain] = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA), tannin.data[domain]), data); // Populate default domain configuration (supported locale date which omits\n // a plural forms expression).\n\n tannin.data[domain][''] = _objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA['']), tannin.data[domain]['']);\n };\n /** @type {SetLocaleData} */\n\n\n var setLocaleData = function setLocaleData(data, domain) {\n doSetLocaleData(data, domain);\n notifyListeners();\n };\n /** @type {ResetLocaleData} */\n\n\n var resetLocaleData = function resetLocaleData(data, domain) {\n // Reset all current Tannin locale data.\n tannin.data = {}; // Reset cached plural forms functions cache.\n\n tannin.pluralForms = {};\n setLocaleData(data, domain);\n };\n /**\n * Wrapper for Tannin's `dcnpgettext`. Populates default locale data if not\n * otherwise previously assigned.\n *\n * @param {string|undefined} domain Domain to retrieve the translated text.\n * @param {string|undefined} context Context information for the translators.\n * @param {string} single Text to translate if non-plural. Used as\n * fallback return value on a caught error.\n * @param {string} [plural] The text to be used if the number is\n * plural.\n * @param {number} [number] The number to compare against to use\n * either the singular or plural form.\n *\n * @return {string} The translated string.\n */\n\n\n var dcnpgettext = function dcnpgettext() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n var context = arguments.length > 1 ? arguments[1] : undefined;\n var single = arguments.length > 2 ? arguments[2] : undefined;\n var plural = arguments.length > 3 ? arguments[3] : undefined;\n var number = arguments.length > 4 ? arguments[4] : undefined;\n\n if (!tannin.data[domain]) {\n // use `doSetLocaleData` to set silently, without notifying listeners\n doSetLocaleData(undefined, domain);\n }\n\n return tannin.dcnpgettext(domain, context, single, plural, number);\n };\n /** @type {GetFilterDomain} */\n\n\n var getFilterDomain = function getFilterDomain() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return domain;\n };\n /** @type {__} */\n\n\n var __ = function __(text, domain) {\n var translation = dcnpgettext(domain, undefined, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext', translation, text, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_' + getFilterDomain(domain), translation, text, domain)\n );\n };\n /** @type {_x} */\n\n\n var _x = function _x(text, context, domain) {\n var translation = dcnpgettext(domain, context, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation based on context information.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context', translation, text, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context_' + getFilterDomain(domain), translation, text, context, domain)\n );\n };\n /** @type {_n} */\n\n\n var _n = function _n(single, plural, number, domain) {\n var translation = dcnpgettext(domain, undefined, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext', translation, single, plural, number, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_' + getFilterDomain(domain), translation, single, plural, number, domain)\n );\n };\n /** @type {_nx} */\n\n\n var _nx = function _nx(single, plural, number, context, domain) {\n var translation = dcnpgettext(domain, context, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string with gettext context.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context', translation, single, plural, number, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context_' + getFilterDomain(domain), translation, single, plural, number, context, domain)\n );\n };\n /** @type {IsRtl} */\n\n\n var isRTL = function isRTL() {\n return 'rtl' === _x('ltr', 'text direction');\n };\n /** @type {HasTranslation} */\n\n\n var hasTranslation = function hasTranslation(single, context, domain) {\n var _tannin$data, _tannin$data2;\n\n var key = context ? context + \"\\x04\" + single : single;\n var result = !!((_tannin$data = tannin.data) !== null && _tannin$data !== void 0 && (_tannin$data2 = _tannin$data[domain !== null && domain !== void 0 ? domain : 'default']) !== null && _tannin$data2 !== void 0 && _tannin$data2[key]);\n\n if (hooks) {\n /**\n * Filters the presence of a translation in the locale data.\n *\n * @param {boolean} hasTranslation Whether the translation is present or not..\n * @param {string} single The singular form of the translated text (used as key in locale data)\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation', result, single, context, domain);\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation_' + getFilterDomain(domain), result, single, context, domain);\n }\n\n return result;\n };\n\n if (initialData) {\n setLocaleData(initialData, initialDomain);\n }\n\n if (hooks) {\n /**\n * @param {string} hookName\n */\n var onHookAddedOrRemoved = function onHookAddedOrRemoved(hookName) {\n if (I18N_HOOK_REGEXP.test(hookName)) {\n notifyListeners();\n }\n };\n\n hooks.addAction('hookAdded', 'core/i18n', onHookAddedOrRemoved);\n hooks.addAction('hookRemoved', 'core/i18n', onHookAddedOrRemoved);\n }\n\n return {\n getLocaleData: getLocaleData,\n setLocaleData: setLocaleData,\n resetLocaleData: resetLocaleData,\n subscribe: subscribe,\n __: __,\n _x: _x,\n _n: _n,\n _nx: _nx,\n isRTL: isRTL,\n hasTranslation: hasTranslation\n };\n};\n//# sourceMappingURL=create-i18n.js.map","/**\n * Internal dependencies\n */\nimport { createI18n } from './create-i18n';\n/**\n * WordPress dependencies\n */\n\nimport { defaultHooks } from '@wordpress/hooks';\nvar i18n = createI18n(undefined, undefined, defaultHooks);\n/**\n * Default, singleton instance of `I18n`.\n */\n\nexport default i18n;\n/*\n * Comments in this file are duplicated from ./i18n due to\n * https://github.com/WordPress/gutenberg/pull/20318#issuecomment-590837722\n */\n\n/**\n * @typedef {import('./create-i18n').LocaleData} LocaleData\n * @typedef {import('./create-i18n').SubscribeCallback} SubscribeCallback\n * @typedef {import('./create-i18n').UnsubscribeCallback} UnsubscribeCallback\n */\n\n/**\n * Returns locale data by domain in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {string} [domain] Domain for which to get the data.\n * @return {LocaleData} Locale data.\n */\n\nexport var getLocaleData = i18n.getLocaleData.bind(i18n);\n/**\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var setLocaleData = i18n.setLocaleData.bind(i18n);\n/**\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var resetLocaleData = i18n.resetLocaleData.bind(i18n);\n/**\n * Subscribes to changes of locale data\n *\n * @param {SubscribeCallback} callback Subscription callback\n * @return {UnsubscribeCallback} Unsubscribe callback\n */\n\nexport var subscribe = i18n.subscribe.bind(i18n);\n/**\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n *\n * @param {string} text Text to translate.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated text.\n */\n\nexport var __ = i18n.__.bind(i18n);\n/**\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n *\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated context string without pipe.\n */\n\nexport var _x = i18n._x.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _n = i18n._n.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _nx = i18n._nx.bind(i18n);\n/**\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n *\n * @return {boolean} Whether locale is RTL.\n */\n\nexport var isRTL = i18n.isRTL.bind(i18n);\n/**\n * Check if there is a translation for a given string (in singular form).\n *\n * @param {string} single Singular form of the string to look up.\n * @param {string} [context] Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n * @return {boolean} Whether the translation exists or not.\n */\n\nexport var hasTranslation = i18n.hasTranslation.bind(i18n);\n//# sourceMappingURL=default-i18n.js.map","export { sprintf } from './sprintf';\nexport * from './create-i18n';\nexport { default as defaultI18n, setLocaleData, resetLocaleData, getLocaleData, subscribe, __, _x, _n, _nx, isRTL, hasTranslation } from './default-i18n';\n//# sourceMappingURL=index.js.map","/**\n * External dependencies\n */\nimport memoize from 'memize';\nimport sprintfjs from 'sprintf-js';\n/**\n * Log to console, once per message; or more precisely, per referentially equal\n * argument set. Because Jed throws errors, we log these to the console instead\n * to avoid crashing the application.\n *\n * @param {...*} args Arguments to pass to `console.error`\n */\n\nvar logErrorOnce = memoize(console.error); // eslint-disable-line no-console\n\n/**\n * Returns a formatted string. If an error occurs in applying the format, the\n * original format string is returned.\n *\n * @param {string} format The format of the string to generate.\n * @param {...*} args Arguments to apply to the format.\n *\n * @see https://www.npmjs.com/package/sprintf-js\n *\n * @return {string} The formatted string.\n */\n\nexport function sprintf(format) {\n try {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return sprintfjs.sprintf.apply(sprintfjs, [format].concat(args));\n } catch (error) {\n logErrorOnce('sprintf error: \\n\\n' + error.toString());\n return format;\n }\n}\n//# sourceMappingURL=sprintf.js.map","export class frmTabsNavigator {\n\n\tconstructor( wrapper ) {\n\t\tif ( 'undefined' === typeof wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrapper = wrapper instanceof Element ? wrapper : document.querySelector( wrapper );\n\n\t\tif ( null === this.wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.flexboxSlidesGap = '16px';\n\t\tthis.navs = this.wrapper.querySelectorAll( '.frm-tabs-navs ul > li' );\n\t\tthis.slideTrackLine = this.wrapper.querySelector( '.frm-tabs-active-underline' );\n\t\tthis.slideTrack = this.wrapper.querySelector( '.frm-tabs-slide-track' );\n\t\tthis.slides = this.wrapper.querySelectorAll( '.frm-tabs-slide-track > div' );\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\tif ( null === this.wrapper || ! this.navs.length || null === this.trackLine || null === this.slideTrack || ! this.slides.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initDefaultSlideTrackerWidth();\n\t\tthis.navs.forEach( ( nav, index ) => {\n\t\t\tnav.addEventListener( 'click', event => this.onNavClick( event, index ) );\n\t\t});\n\t}\n\n\tonNavClick( event, index ) {\n\t\tthis.removeActiveClassnameFromNavs();\n\t\tevent.target.classList.add( 'frm-active' );\n\t\tthis.initSlideTrackUnderline( event.target, index );\n\t\tthis.changeSlide( index );\n\t}\n\n\tinitDefaultSlideTrackerWidth() {\n\t\tif ( ! this.slideTrackLine.dataset.initialWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.slideTrackLine.style.width = `${this.slideTrackLine.dataset.initialWidth}px`;\n\t}\n\tinitSlideTrackUnderline( nav, index ) {\n\t\tthis.slideTrackLine.classList.remove( 'frm-first', 'frm-last' );\n\t\tconst activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) ) ;\n\t\tthis.slideTrackLine.style.transform = `translateX(${activeNav.offsetLeft}px)`;\n\t\tthis.slideTrackLine.style.width = activeNav.clientWidth + 'px';\n\n\t\tif ( this.navs.length === index + 1 ) { \n\t\t\tthis.slideTrackLine.classList.add( 'frm-last' );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 === index ) {\n\t\t\tthis.slideTrackLine.classList.add( 'frm-first' );\n\t\t}\n\t}\n\n\tchangeSlide( index ) {\n\t\tthis.removeActiveClassnameFromSlides();\n\t\tconst translate = index == 0 ? '0px' : `calc( ( ${( index * 100 )}% + ${parseInt( this.flexboxSlidesGap, 10 ) * index }px ) * -1 )`;\n\t\tthis.slideTrack.style.transform = `translateX(${translate})`;\n\t\tif ( index in this.slides ) {\n\t\t\tthis.slides[ index ].classList.add( 'frm-active' );\n\t\t}\n\t}\n\n\tremoveActiveClassnameFromSlides() {\n\t\tthis.slides.forEach( slide => slide.classList.remove( 'frm-active' ) );\n\t}\n\n\tremoveActiveClassnameFromNavs() {\n\t\tthis.navs.forEach( nav => nav.classList.remove( 'frm-active' ) );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\n","export class frmAnimate {\n\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements\n\t * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d\n\t *\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true });\n\t\t});\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay - The transition delay value.\n\t *\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( index + 1 ) * delay + 's';\n\t\t\t});\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t});\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${type}\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true });\n};\n","export const { onClickPreventDefault } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = ( paramName ) => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ([ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = {[paramName]: paramValue};\n\t\twindow.history[updateMethod]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","/**\n * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview.\n * The names of the elements that will be updated are specified using the \"will-change\" attribute.\n * It is primarily used in components from Style/Quick Settings.\n * For instance, when the \"FrmPrimaryColorStyleComponent\" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds.\n */\nexport default class frmDependentUpdaterComponent {\n\n\t/**\n\t * Creates an instance of frmDependentUpdaterComponent.\n\t * @param {HTMLElement} component - The component element.\n\t */\n\tconstructor( component ) {\n\t\tthis.component = component;\n\t\ttry {\n\t\t\tconst willChangeData = JSON.parse( this.component.dataset.willChange );\n\t\t\tthis.data = {\n\t\t\t\tpropagateInputs: this.initPropagationList( willChangeData ),\n\t\t\t\tchangeEvent: new Event( 'change', { bubbles: true } )\n\t\t\t};\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'Error parsing JSON data from \"will-change\" attribute.', error );\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the list of inputs to propagate changes to.\n\t * The selection is made by provided input's names list in \"will-change\" attribute.\n\t * @param {string[]} inputNames - The names of the inputs to propagate changes to.\n\t * @return {HTMLElement[]} - The list of inputs to propagate changes to.\n\t */\n\tinitPropagationList( inputNames ) {\n\t\tconst list = [];\n\t\tinputNames.forEach( ( name ) => {\n\t\t\tconst input = document.querySelector( `input[name=\"${name}\"]` );\n\t\t\tif ( null !== input ) {\n\t\t\t\tlist.push( input );\n\t\t\t}\n\t\t});\n\t\treturn list;\n\t}\n\n\t/**\n\t * Updates all dependent elements with the given value.\n\t * @param {string} value - The value to update the dependent elements with.\n\t */\n\tupdateAllDependentElements( value ) {\n\t\tthis.data.propagateInputs.forEach( ( input ) => {\n\t\t\tinput.value = value;\n\t\t});\n\t\tthis.data.propagateInputs[0].dispatchEvent( this.data.changeEvent );\n\t}\n}\n","import { show, hide } from 'core/utils';\n\n/**\n * Represents a radio component.\n * @class\n */\nexport default class frmRadioComponent {\n\n\tconstructor() {\n\t\tthis.radioElements = document.querySelectorAll( '.frm-style-component.frm-radio-component' );\n\t\tif ( 0 < this.radioElements.length ) {\n\t\t\tthis.init();\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the radio component.\n\t */\n\tinit() {\n\t\tthis.radioElements.forEach( ( element ) => {\n\t\t\tthis.initOnRadioChange( element );\n\t\t});\n\t\tthis.initTrackerOnAccordionClick();\n\t}\n\n\tinitTrackerOnAccordionClick() {\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\n\t\taccordionitems.forEach( ( accordionitem ) => {\n\t\t\taccordionitem.addEventListener( 'click', ( event ) => {\n\t\t\t\tconst wrapper = event.target.closest( '.accordion-section' );\n\t\t\t\tconst radioButtons = wrapper.querySelectorAll( '.frm-style-component.frm-radio-component input[type=\"radio\"]:checked' );\n\n\t\t\t\tradioButtons.forEach( ( radio ) => {\n\t\t\t\t\tsetTimeout( () => this.onRadioChange( radio ), 200 );\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the onRadioChange event for the given wrapper.\n\t * @param {HTMLElement} radioElement - The radio element.\n\t */\n\tinitOnRadioChange( radioElement ) {\n\t\tradioElement.querySelectorAll( 'input[type=\"radio\"]' ).forEach( ( radio ) => {\n\t\t\tif ( radio.checked ) {\n\t\t\t\tthis.onRadioChange( radio );\n\t\t\t}\n\t\t\tradio.addEventListener( 'change', ( event ) => {\n\t\t\t\tthis.onRadioChange( event.target );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Handles the onRadioChange event for the given wrapper.\n\t * @param {HTMLElement} target - The active radio button.\n\t */\n\tonRadioChange( target ) {\n\t\tconst wrapper = target.closest( '.frm-style-component.frm-radio-component' );\n\t\tconst activeItem = wrapper.querySelector( 'input[type=\"radio\"]:checked + label' );\n\n\t\tif ( null === activeItem ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.moveTracker( activeItem, wrapper );\n\t\tthis.hideExtraElements( target );\n\t\tthis.maybeShowExtraElements( target );\n\t}\n\n\t/**\n\t * Display additional elements related to the selected radio option.\n\t * @param {HTMLElement} radio - The radio button element.\n\t */\n\tmaybeShowExtraElements( radio ) {\n\t\tconst elementAttr = radio.getAttribute( 'data-frm-show-element' );\n\t\tif ( null === elementAttr ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elements = document.querySelectorAll( `div[data-frm-element=\"${elementAttr}\"]` );\n\n\t\tif ( 0 === elements.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\telements.forEach( ( element ) => {\n\t\t\tshow( element );\n\t\t\telement.classList.add( 'frm-element-is-visible' );\n\t\t});\n\t}\n\n\t/**\n\t * Hide the possible opepend extra elements.\n\t */\n\thideExtraElements() {\n\t\tconst elements = document.querySelectorAll( '.frm-element-is-visible' );\n\t\tif ( 0 === elements.length ) {\n\t\t\treturn;\n\t\t}\n\t\telements.forEach( ( element ) => {\n\t\t\telement.classList.remove( 'frm-element-is-visible' );\n\t\t\telement.classList.add( 'frm_hidden' );\n\t\t\thide( element );\n\t\t});\n\t}\n\n\t/**\n\t * Moves the tracker to the active item.\n\t * @param {HTMLElement} activeItem - The active item element.\n\t * @param {HTMLElement} wrapper - The wrapper element.\n\t */\n\tmoveTracker( activeItem, wrapper ) {\n\t\tconst offset = activeItem.offsetLeft;\n\t\tconst width = activeItem.offsetWidth;\n\t\tconst tracker = wrapper.querySelector( '.frm-radio-active-tracker' );\n\n\t\ttracker.style.left = 0;\n\t\ttracker.style.width = `${width}px`;\n\t\ttracker.style.transform = `translateX(${ offset }px)`;\n\t}\n}\n","import frmDependentUpdaterComponent from './dependent-updater-component';\n/**\n * Represents a slider component.\n * @class frmSliderComponent\n */\nexport default class frmSliderComponent {\n\n\tconstructor() {\n\t\tthis.sliderElements = document.querySelectorAll( '.frm-slider-component' );\n\t\tif ( 0 === this.sliderElements.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// The slider bullet point width in pixels. Used in value calculation on drag event.\n\t\tthis.sliderBulletWidth = 16;\n\t\tthis.sliderMarginRight = 5;\n\t\tthis.eventsChange = [];\n\n\t\tconst { debounce } = frmDom.util;\n\t\tthis.valueChangeDebouncer = debounce( ( index ) => this.triggerValueChange( index ), 25 );\n\n\t\tthis.initOptions();\n\t\tthis.init();\n\t}\n\n\t/**\n\t * Initializes the options for the slider component.\n\t */\n\tinitOptions() {\n\t\tthis.options = [];\n\t\tthis.sliderElements.forEach( ( element, index ) => {\n\t\t\tconst parentWrapper = element.classList.contains( 'frm-has-multiple-values' ) ? element.closest( '.frm-style-component' ) : element;\n\t\t\tthis.options.push({\n\t\t\t\tdragging: false,\n\t\t\t\tstartX: 0,\n\t\t\t\ttranslateX: 0,\n\t\t\t\tmaxValue: parseInt( element.dataset.maxValue, 10 ),\n\t\t\t\telement: element,\n\t\t\t\tindex: index,\n\t\t\t\tvalue: 0,\n\t\t\t\tdependentUpdater: parentWrapper.classList.contains( 'frm-style-dependent-updater-component' ) ? new frmDependentUpdaterComponent( parentWrapper ) : null\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the slider component.\n\t */\n\tinit() {\n\t\tthis.initSlidersPosition();\n\t\tthis.initDraggable();\n\t}\n\n\t/**\n\t * Initializes the draggable functionality for the slider component.\n\t */\n\tinitDraggable() {\n\t\tthis.sliderElements.forEach( ( element, index ) => {\n\t\t\tthis.eventsChange[ index ] = new Event( 'change', {\n\t\t\t\tbubbles: true,\n\t\t\t\tcancelable: true\n\t\t\t});\n\t\t\tconst draggableBullet = element.querySelector( '.frm-slider-bullet' );\n\t\t\tconst valueInput = element.querySelector( '.frm-slider-value input[type=\"text\"]' );\n\n\t\t\tvalueInput.addEventListener( 'change', ( event ) => {\n\t\t\t\tconst unit = element.querySelector( 'select' ).value;\n\n\t\t\t\tif ( this.getMaxValue( unit, index ) < parseInt( event.target.value, 10 ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.initSliderWidth( element );\n\t\t\t\tthis.options[ index ].fullValue = this.updateValue( element, valueInput.value + unit );\n\t\t\t\tthis.triggerValueChange( index );\n\t\t\t});\n\n\t\t\tthis.expandSliderGroup( element );\n\t\t\tthis.updateOnUnitChange( element, valueInput, index );\n\t\t\tthis.changeSliderPositionOnClick( element, valueInput, index );\n\n\t\t\tdraggableBullet.addEventListener( 'mousedown', ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.enableDragging( event, index );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mousemove', ( event ) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.moveTracker( event, index );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mouseup', ( event) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.disableDragging( index, event );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mouseleave', ( event ) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.disableDragging( index, event );\n\t\t\t});\n\t\t});\n\t}\n\n\texpandSliderGroup( element ) {\n\t\tconst svgIcon = element.querySelector( '.frmsvg' );\n\n\t\tif ( 'undefined' === typeof element.dataset.displaySliders || null === svgIcon ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst sliderGroupItems = this.getSliderGroupItems( element );\n\t\tsvgIcon.addEventListener( 'click', ( ) => {\n\t\t\tsliderGroupItems.forEach( ( item ) => {\n\t\t\t\titem.classList.toggle( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\tupdateOnUnitChange( element, valueInput, index ) {\n\t\telement.querySelector( 'select' ).addEventListener( 'change', ( event ) => {\n\t\t\tconst unit = event.target.value.toLowerCase();\n\n\t\t\tif ( '' === unit ) {\n\t\t\t\telement.classList.add( 'frm-disabled', 'frm-empty' );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( 'auto' === unit ) {\n\t\t\t\telement.classList.add( 'frm-disabled' );\n\t\t\t\tthis.updateValue( element, 'auto' );\n\t\t\t\tthis.triggerValueChange( index );\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\telement.classList.remove( 'frm-disabled', 'frm-empty' );\n\t\t\tthis.options[ index ].fullValue = valueInput.value + unit;\n\t\t\tthis.updateValue( element, this.options[ index ].fullValue );\n\t\t\tthis.triggerValueChange( index );\n\t\t});\n\t}\n\n\tchangeSliderPositionOnClick( element, valueInput, index ) {\n\t\tconst frmSlider = element.querySelector( '.frm-slider' );\n\t\tconst customEvent = new Event( 'change', {\n\t\t\t'bubbles': true,\n\t\t\t'cancelable': true\n\t\t});\n\n\t\tfrmSlider.addEventListener( 'click', ( event ) => {\n\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\n\t\t\tif ( ! event.target.classList.contains( 'frm-slider' ) && ! event.target.classList.contains( 'frm-slider-active-track' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst sliderWidth = frmSlider.offsetWidth - this.sliderBulletWidth;\n\t\t\tconst sliderRect = frmSlider.getBoundingClientRect();\n\t\t\tconst deltaX = event.clientX - sliderRect.left - this.sliderBulletWidth;\n\t\t\tconst unit = element.querySelector( 'select' ).value;\n\t\t\tconst value = this.calculateValue( sliderWidth, deltaX, this.getMaxValue( unit, index ) );\n\n\t\t\tif ( value < 0 ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.options[ index ].fullValue = this.updateValue( element, value + unit );\n\t\t\tthis.initChildSlidersWidth( element, deltaX, index, value + unit );\n\n\t\t\tvalueInput.value = value;\n\t\t\tvalueInput.dispatchEvent( customEvent );\n\n\t\t});\n\t}\n\n\t/**\n\t * Retrieves an array of slider group items based on the provided element.\n\t *\n\t * @param {HTMLElement} element - The element to retrieve slider group items from.\n\t * @return {NodeList} - An array-like object containing the slider group items.\n\t */\n\tgetSliderGroupItems( element ) {\n\t\tif ( 'undefined' === typeof element.dataset.displaySliders ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst slidersGroup = element.dataset.displaySliders.split( ',' );\n\t\tconst query = slidersGroup.map( ( item ) => {\n\t\t\treturn `.frm-slider-component[data-type=\"${item}\"]`;\n\t\t}).join( ', ' );\n\n\t\treturn element.closest( '.frm-style-component' ).querySelectorAll( query )\n\t}\n\n\t/**\n\t * Initializes the position of sliders when a accordion section is opened.\n\t */\n\tinitSlidersPosition() {\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\tconst quickSettings = document.querySelector( '.frm-quick-settings' );\n\t\tconst openedAccordion = document.querySelector( '.accordion-section.open' );\n\n\t\t// Detect if upload background image upload has triggered and initialize the \"Image Opacity\" slider width.\n\t\twp.hooks.addAction( 'frm_pro_on_bg_image_upload', 'formidable', ( event ) => {\n\t\t\tconst imageBackgroundOpacitySlider = event.closest( '.accordion-section-content' ).querySelector( '#frm-bg-image-opacity-slider' );\n\t\t\tthis.initSlidersWidth( imageBackgroundOpacitySlider );\n\t\t});\n\n\t\t// init the sliders width from \"Quick Settings\" page.\n\t\tif ( null !== quickSettings ) {\n\t\t\tthis.initSlidersWidth( quickSettings );\n\t\t}\n\n\t\t// Init the sliders width in opened accordion section from \"Advanced Settings\" page.\n\t\tif ( null !== openedAccordion ) {\n\t\t\tthis.initSlidersWidth( openedAccordion );\n\t\t}\n\n\t\t// init the sliders width everytime when an accordion section is opened from \"Advanced Settings\" page.\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', ( event ) => {\n\t\t\t\tthis.initSlidersWidth( event.target.closest( '.accordion-section' ) );\n\t\t\t});\n\t\t});\n\n\t\tthis.initSliderPositionOnFieldShapeChange();\n\t}\n\n\t/**\n\t * Initializes the width of \"Corner Radius\" slider that is dynamically is displayed on \"Field Shape\" option change from \"Quick Settings\".\n\t *\n\t * @return {void}\n\t */\n\tinitSliderPositionOnFieldShapeChange() {\n\t\tconst fieldShapeType = document.querySelector( '.frm-style-component.frm-field-shape' );\n\n\t\tif ( null === fieldShapeType ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst radioButtons = fieldShapeType.querySelectorAll( 'input[type=\"radio\"]' );\n\t\tradioButtons.forEach( ( radio ) => {\n\t\t\tradio.addEventListener( 'change', ( event ) => {\n\t\t\t\tif ( event.target.checked && 'rounded-corner' === event.target.value ) {\n\t\t\t\t\tconst slider = document.querySelector( 'div[data-frm-element=\"field-shape-corner-radius\"] .frm-slider-component' );\n\t\t\t\t\tthis.initSliderWidth( slider );\n\t\t\t\t}\n\t\t\t})\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the width of sliders within a given section.\n\t *\n\t * @param {HTMLElement} section - The section containing the sliders.\n\t * @return {void}\n\t */\n\tinitSlidersWidth( section ) {\n\t\tconst sliders = section.querySelectorAll( '.frm-slider-component' );\n\t\tsliders.forEach( ( slider ) => {\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.initSliderWidth( slider );\n\t\t\t}, 100 );\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the width of a slider.\n\t *\n\t * @param {HTMLElement} slider - The slider element.\n\t * @return {void}\n\t */\n\tinitSliderWidth( slider ) {\n\t\tif ( slider.classList.contains( 'frm-disabled' ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst index = this.getSliderIndex( slider );\n\t\tconst sliderWidth = slider.querySelector( '.frm-slider' ).offsetWidth - this.sliderBulletWidth;\n\t\tconst value = parseInt( slider.querySelector( '.frm-slider-value input[type=\"text\"]' ).value, 10 );\n\t\tconst unit = slider.querySelector( 'select' ).value;\n\t\tconst deltaX = '%' === unit ? Math.round( sliderWidth * value / 100 ) : Math.ceil( ( value / this.options[ index ].maxValue ) * sliderWidth );\n\n\t\tslider.querySelector( '.frm-slider-active-track' ).style.width = `${deltaX}px`;\n\t\tthis.options[ index ].translateX = deltaX;\n\t\tthis.options[ index ].value = value + unit;\n\t}\n\n\t/**\n\t * Initializes the width of child sliders.\n\t *\n\t * @param {HTMLElement} slider - The parent slider element.\n\t * @param {number} width - The width to set for the child sliders.\n\t * @param {number} index - The starting index for the child sliders.\n\t * @param {number} value - The value to set for the child sliders.\n\t */\n\tinitChildSlidersWidth( slider, width, index, value ) {\n\t\tif ( ! slider.classList.contains( 'frm-has-independent-fields' ) && ! slider.classList.contains( 'frm-has-multiple-values' ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst childSliders = slider.classList.contains( 'frm-has-independent-fields' ) ? slider.querySelectorAll( '.frm-independent-slider-field' ) : this.getSliderGroupItems( slider );\n\n\t\tchildSliders.forEach( ( item, childIndex ) => {\n\t\t\titem.querySelector( '.frm-slider-active-track' ).style.width = `${width}px`;\n\t\t\tthis.options[ index + childIndex + 1 ].translateX = width;\n\t\t\tthis.options[ index + childIndex + 1 ].value = value;\n\t\t});\n\t}\n\n\t/**\n\t * Returns the index of the specified slider element.\n\t *\n\t * @param {HTMLElement} slider - The slider element.\n\t * @return {number} The index of the slider element.\n\t */\n\tgetSliderIndex( slider ) {\n\t\treturn this.options.filter( ( option ) => {\n\t\t\treturn option.element === slider;\n\t\t})[0].index;\n\t};\n\n\t/**\n\t * Handles the movement of the slider tracker.\n\t *\n\t * @param {Event} event - The event object representing the mouse movement.\n\t * @param {number} index - The index of the slider element.\n\t * @return {void}\n\t */\n\tmoveTracker( event, index ) {\n\t\tif ( ! this.options[ index ].dragging ) {\n\t\t\treturn;\n\t\t}\n\t\tlet deltaX = event.clientX - this.options[ index ].startX;\n\t\tconst element = this.sliderElements[ index ];\n\t\tconst sliderWidth = element.querySelector( '.frm-slider' ).offsetWidth;\n\n\t\t// Ensure deltaX does not go below 0\n\t\tdeltaX = Math.max( deltaX, 0 );\n\n\t\tif ( deltaX + this.sliderBulletWidth / 2 + this.sliderMarginRight >= sliderWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tconst unit = element.querySelector( 'select' ).value;\n\t\tconst value = this.calculateValue( sliderWidth, deltaX, this.getMaxValue( unit, index ) );\n\n\t\telement.querySelector( '.frm-slider-value input[type=\"text\"]' ).value = value;\n\t\telement.querySelector( '.frm-slider-bullet .frm-slider-value-label' ).innerText = value;\n\t\telement.querySelector( '.frm-slider-active-track' ).style.width = `${deltaX}px`;\n\t\tthis.initChildSlidersWidth( element, deltaX, index, value + unit );\n\n\t\tthis.options[ index ].translateX = deltaX;\n\t\tthis.options[ index ].value = value + unit;\n\t\tthis.options[ index ].fullValue = this.updateValue( element, this.options[ index ].value );\n\t\tthis.valueChangeDebouncer( index );\n\t}\n\n\t/**\n\t * Get the maximum value based on the unit and index.\n\t *\n\t * @param {string} unit - The unit of measurement.\n\t * @param {number} index - The index of the option.\n\t * @return {number} The maximum value.\n\t */\n\tgetMaxValue( unit, index ) {\n\t\treturn '%' === unit ? 100 : this.options[ index ].maxValue;\n\t}\n\n\t/**\n\t * Enables dragging for the slider component.\n\t *\n\t * @param {Event} event - The event object.\n\t * @param {number} index - The index of the option being dragged.\n\t */\n\tenableDragging( event, index ) {\n\t\tevent.target.classList.add( 'frm-dragging' );\n\t\tthis.options[ index ].dragging = true;\n\t\tthis.options[ index ].startX = event.clientX - this.options[ index ].translateX;\n\t}\n\n\t/**\n\t * Disables dragging for a specific index.\n\t *\n\t * @param {number} index - The index of the option to disable dragging for.\n\t * @param {Event} event - The event object triggered by the dragging action.\n\t */\n\tdisableDragging( index, event ) {\n\t\tif ( false === this.options[ index ].dragging ) {\n\t\t\treturn;\n\t\t}\n\t\tevent.target.classList.remove( 'frm-dragging' );\n\t\tthis.options[ index ].dragging = false;\n\t\tthis.triggerValueChange( index );\n\t}\n\n\t/**\n\t * Triggers a value change for the specified index.\n\t *\n\t * @param {number} index - The index of the value to be changed.\n\t */\n\ttriggerValueChange( index ) {\n\t\tif ( null !== this.options[ index ].dependentUpdater ) {\n\t\t\tthis.options[ index ].dependentUpdater.updateAllDependentElements( this.options[ index ].fullValue );\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = this.sliderElements[ index ].classList.contains( 'frm-has-multiple-values' ) ? this.sliderElements[ index ].closest('.frm-style-component').querySelector( 'input[type=\"hidden\"]' ) : this.sliderElements[ index ].querySelectorAll( '.frm-slider-value input[type=\"hidden\"]' );\n\t\tif ( input instanceof NodeList ) {\n\t\t\tinput.forEach( ( item ) => {\n\t\t\t\titem.dispatchEvent( this.eventsChange[ index ] );\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tinput.dispatchEvent( this.eventsChange[ index ] );\n\t}\n\n\t/**\n\t * Calculates the value based on the width, deltaX, and maxValue.\n\t *\n\t * @param {number} width - The width of the slider.\n\t * @param {number} deltaX - The change in x-coordinate.\n\t * @param {number} maxValue - The maximum value.\n\t * @return {number} - The calculated value.\n\t */\n\tcalculateValue( width, deltaX, maxValue ) {\n\n\t\t// Indicates the additional value generated by the slider's drag progress (up to 100%) and the width of the slider bullet.\n\t\t// Generates a more accurate value for the slider's start (0) and end (maximum value) positions, taking into account the slider's position and bullet width.\n\t\tconst delta = Math.ceil( this.sliderBulletWidth * ( deltaX / width ) );\n\n\t\tconst value = Math.ceil( ( ( deltaX + delta ) / width ) * maxValue );\n\n\t\treturn Math.min( value, maxValue )\n\t}\n\n\t/**\n\t * Updates the value of a slider component.\n\t *\n\t * @param {HTMLElement} element - The slider component element.\n\t * @param {string} value - The new value to be set.\n\t * @return {string} - The updated value.\n\t */\n\tupdateValue( element, value ) {\n\t\t// When the slider component is used for \"Base Font Size\", we need to update a hidden input field when change happens to indicate that the \"Base Font Size\" has been adjusted.\n\t\t// Used to avoid conflicts with other possible font sizes adjustemnts in \"Advanced Settings\" when moving from \"Quick Settings\" when \"Base Font Size\" is not changed.\n\t\tif ( element.classList.contains( 'frm-base-font-size' ) ) {\n\t\t\tconst userBaseFontSizeInput = document.querySelector( 'input[name=\"frm_style_setting[post_content][use_base_font_size]\"]' );\n\t\t\tif ( null !== userBaseFontSizeInput ) {\n\t\t\t\tuserBaseFontSizeInput.value = 'true';\n\t\t\t}\n\t\t}\n\t\tif ( element.classList.contains( 'frm-has-multiple-values' ) ) {\n\t\t\tconst input = element.closest( '.frm-style-component' ).querySelector( 'input[type=\"hidden\"]' );\n\t\t\tconst inputValue = input.value.split( ' ' );\n\t\t\tconst type = element.dataset.type;\n\n\t\t\tif ( ! inputValue[2] ) {\n\t\t\t\tinputValue[2] = '0px';\n\t\t\t}\n\n\t\t\tif ( ! inputValue[3] ) {\n\t\t\t\tinputValue[3] = '0px';\n\t\t\t}\n\n\t\t\tswitch ( type ) {\n\t\t\t\tcase 'vertical':\n\t\t\t\t\tinputValue[0] = value;\n\t\t\t\t\tinputValue[2] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'horizontal':\n\t\t\t\t\tinputValue[1] = value;\n\t\t\t\t\tinputValue[3] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'top':\n\t\t\t\t\tinputValue[0] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'bottom':\n\t\t\t\t\tinputValue[2] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'left':\n\t\t\t\t\tinputValue[3] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'right':\n\t\t\t\t\tinputValue[1] = value;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst newValue = inputValue.join( ' ' );\n\t\t\tinput.value = newValue;\n\n\t\t\tconst childSlidersGroup = this.getSliderGroupItems( element );\n\t\t\tchildSlidersGroup.forEach( ( slider ) => {\n\t\t\t\tconst unitMeasure = this.getUnitMeasureFromValue( value );\n\t\t\t\tslider.querySelector( '.frm-slider-value input[type=\"text\"]' ).value = parseInt( value, 10 );\n\t\t\t\tslider.querySelector( 'select' ).value = unitMeasure;\n\t\t\t});\n\n\t\t\treturn newValue;\n\t\t}\n\n\t\tif ( element.classList.contains( 'frm-has-independent-fields' ) ) {\n\t\t\tconst inputValues = element.querySelectorAll( '.frm-slider-value input[type=\"hidden\"]' );\n\t\t\tconst visibleValues = element.querySelectorAll( '.frm-slider-value input[type=\"text\"]' );\n\t\t\tinputValues.forEach( ( input, index ) => {\n\t\t\t\tinput.value = value;\n\t\t\t\tvisibleValues[ index + 1 ].value = parseInt( value, 10 );\n\t\t\t});\n\n\t\t\treturn value;\n\t\t}\n\n\t\telement.querySelector( '.frm-slider-value input[type=\"hidden\"]' ).value = value;\n\t\treturn value;\n\t}\n\n\t/**\n\t * Returns the unit of measurement used in the given value.\n\t *\n\t * @param {string} value - The value to check for the unit of measurement.\n\t * @return {string} The unit of measurement ('%', 'px', 'em') found in the value, or an empty string if none is found.\n\t */\n\tgetUnitMeasureFromValue( value ) {\n\t\treturn [ '%', 'px', 'em' ].find( unit => value.includes( unit ) ) || '';\n\t}\n}\n","import { frmTabsNavigator } from '../../components/class-tabs-navigator';\n/**\n * Represents a Tabs Component.\n * @class\n */\nexport default class frmTabsComponent {\n\n\tconstructor() {\n\t\tthis.elements = document.querySelectorAll( '.frm-style-tabs-wrapper' );\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.init();\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the Tabs Component.\n\t */\n\tinit() {\n\t\tthis.elements.forEach( ( element ) => {\n\t\t\tnew frmTabsNavigator( element );\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the component on tab click.\n\t * @param {Element} wrapper - The wrapper element.\n\t */\n\tinitOnTabClick( wrapper ) {\n\t\tthis.initActiveBackgroundWidth( wrapper );\n\t\twrapper.querySelectorAll( '.frm-tab-item' ).forEach( ( tab ) => {\n\t\t\ttab.addEventListener( 'click', ( event ) => {\n\t\t\t\tthis.onTabClick( event.target.closest( '.frm-tabs-wrapper' ) );\n\t\t\t});\n\t\t});\n\t}\n}\n","/**\n * Memize options object.\n *\n * @typedef MemizeOptions\n *\n * @property {number} [maxSize] Maximum size of the cache.\n */\n\n/**\n * Internal cache entry.\n *\n * @typedef MemizeCacheNode\n *\n * @property {?MemizeCacheNode|undefined} [prev] Previous node.\n * @property {?MemizeCacheNode|undefined} [next] Next node.\n * @property {Array<*>} args Function arguments for cache\n * entry.\n * @property {*} val Function result.\n */\n\n/**\n * Properties of the enhanced function for controlling cache.\n *\n * @typedef MemizeMemoizedFunction\n *\n * @property {()=>void} clear Clear the cache.\n */\n\n/**\n * Accepts a function to be memoized, and returns a new memoized function, with\n * optional options.\n *\n * @template {Function} F\n *\n * @param {F} fn Function to memoize.\n * @param {MemizeOptions} [options] Options object.\n *\n * @return {F & MemizeMemoizedFunction} Memoized function.\n */\nfunction memize( fn, options ) {\n\tvar size = 0;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar head;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar tail;\n\n\toptions = options || {};\n\n\tfunction memoized( /* ...args */ ) {\n\t\tvar node = head,\n\t\t\tlen = arguments.length,\n\t\t\targs, i;\n\n\t\tsearchCache: while ( node ) {\n\t\t\t// Perform a shallow equality test to confirm that whether the node\n\t\t\t// under test is a candidate for the arguments passed. Two arrays\n\t\t\t// are shallowly equal if their length matches and each entry is\n\t\t\t// strictly equal between the two sets. Avoid abstracting to a\n\t\t\t// function which could incur an arguments leaking deoptimization.\n\n\t\t\t// Check whether node arguments match arguments length\n\t\t\tif ( node.args.length !== arguments.length ) {\n\t\t\t\tnode = node.next;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Check whether node arguments match arguments values\n\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\tif ( node.args[ i ] !== arguments[ i ] ) {\n\t\t\t\t\tnode = node.next;\n\t\t\t\t\tcontinue searchCache;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// At this point we can assume we've found a match\n\n\t\t\t// Surface matched node to head if not already\n\t\t\tif ( node !== head ) {\n\t\t\t\t// As tail, shift to previous. Must only shift if not also\n\t\t\t\t// head, since if both head and tail, there is no previous.\n\t\t\t\tif ( node === tail ) {\n\t\t\t\t\ttail = node.prev;\n\t\t\t\t}\n\n\t\t\t\t// Adjust siblings to point to each other. If node was tail,\n\t\t\t\t// this also handles new tail's empty `next` assignment.\n\t\t\t\t/** @type {MemizeCacheNode} */ ( node.prev ).next = node.next;\n\t\t\t\tif ( node.next ) {\n\t\t\t\t\tnode.next.prev = node.prev;\n\t\t\t\t}\n\n\t\t\t\tnode.next = head;\n\t\t\t\tnode.prev = null;\n\t\t\t\t/** @type {MemizeCacheNode} */ ( head ).prev = node;\n\t\t\t\thead = node;\n\t\t\t}\n\n\t\t\t// Return immediately\n\t\t\treturn node.val;\n\t\t}\n\n\t\t// No cached value found. Continue to insertion phase:\n\n\t\t// Create a copy of arguments (avoid leaking deoptimization)\n\t\targs = new Array( len );\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\targs[ i ] = arguments[ i ];\n\t\t}\n\n\t\tnode = {\n\t\t\targs: args,\n\n\t\t\t// Generate the result from original function\n\t\t\tval: fn.apply( null, args ),\n\t\t};\n\n\t\t// Don't need to check whether node is already head, since it would\n\t\t// have been returned above already if it was\n\n\t\t// Shift existing head down list\n\t\tif ( head ) {\n\t\t\thead.prev = node;\n\t\t\tnode.next = head;\n\t\t} else {\n\t\t\t// If no head, follows that there's no tail (at initial or reset)\n\t\t\ttail = node;\n\t\t}\n\n\t\t// Trim tail if we're reached max size and are pending cache insertion\n\t\tif ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) {\n\t\t\ttail = /** @type {MemizeCacheNode} */ ( tail ).prev;\n\t\t\t/** @type {MemizeCacheNode} */ ( tail ).next = null;\n\t\t} else {\n\t\t\tsize++;\n\t\t}\n\n\t\thead = node;\n\n\t\treturn node.val;\n\t}\n\n\tmemoized.clear = function() {\n\t\thead = null;\n\t\ttail = null;\n\t\tsize = 0;\n\t};\n\n\tif ( process.env.NODE_ENV === 'test' ) {\n\t\t// Cache is not exposed in the public API, but used in tests to ensure\n\t\t// expected list progression\n\t\tmemoized.getCache = function() {\n\t\t\treturn [ head, tail, size ];\n\t\t};\n\t}\n\n\t// Ignore reason: There's not a clear solution to create an intersection of\n\t// the function with additional properties, where the goal is to retain the\n\t// function signature of the incoming argument and add control properties\n\t// on the return value.\n\n\t// @ts-ignore\n\treturn memoized;\n}\n\nmodule.exports = memize;\n","/* global window, exports, define */\n\n!function() {\n 'use strict'\n\n var re = {\n not_string: /[^s]/,\n not_bool: /[^t]/,\n not_type: /[^T]/,\n not_primitive: /[^v]/,\n number: /[diefg]/,\n numeric_arg: /[bcdiefguxX]/,\n json: /[j]/,\n not_json: /[^j]/,\n text: /^[^\\x25]+/,\n modulo: /^\\x25{2}/,\n placeholder: /^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,\n key: /^([a-z_][a-z_\\d]*)/i,\n key_access: /^\\.([a-z_][a-z_\\d]*)/i,\n index_access: /^\\[(\\d+)\\]/,\n sign: /^[+-]/\n }\n\n function sprintf(key) {\n // `arguments` is not an array, but should be fine for this call\n return sprintf_format(sprintf_parse(key), arguments)\n }\n\n function vsprintf(fmt, argv) {\n return sprintf.apply(null, [fmt].concat(argv || []))\n }\n\n function sprintf_format(parse_tree, argv) {\n var cursor = 1, tree_length = parse_tree.length, arg, output = '', i, k, ph, pad, pad_character, pad_length, is_positive, sign\n for (i = 0; i < tree_length; i++) {\n if (typeof parse_tree[i] === 'string') {\n output += parse_tree[i]\n }\n else if (typeof parse_tree[i] === 'object') {\n ph = parse_tree[i] // convenience purposes only\n if (ph.keys) { // keyword argument\n arg = argv[cursor]\n for (k = 0; k < ph.keys.length; k++) {\n if (arg == undefined) {\n throw new Error(sprintf('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"', ph.keys[k], ph.keys[k-1]))\n }\n arg = arg[ph.keys[k]]\n }\n }\n else if (ph.param_no) { // positional argument (explicit)\n arg = argv[ph.param_no]\n }\n else { // positional argument (implicit)\n arg = argv[cursor++]\n }\n\n if (re.not_type.test(ph.type) && re.not_primitive.test(ph.type) && arg instanceof Function) {\n arg = arg()\n }\n\n if (re.numeric_arg.test(ph.type) && (typeof arg !== 'number' && isNaN(arg))) {\n throw new TypeError(sprintf('[sprintf] expecting number but found %T', arg))\n }\n\n if (re.number.test(ph.type)) {\n is_positive = arg >= 0\n }\n\n switch (ph.type) {\n case 'b':\n arg = parseInt(arg, 10).toString(2)\n break\n case 'c':\n arg = String.fromCharCode(parseInt(arg, 10))\n break\n case 'd':\n case 'i':\n arg = parseInt(arg, 10)\n break\n case 'j':\n arg = JSON.stringify(arg, null, ph.width ? parseInt(ph.width) : 0)\n break\n case 'e':\n arg = ph.precision ? parseFloat(arg).toExponential(ph.precision) : parseFloat(arg).toExponential()\n break\n case 'f':\n arg = ph.precision ? parseFloat(arg).toFixed(ph.precision) : parseFloat(arg)\n break\n case 'g':\n arg = ph.precision ? String(Number(arg.toPrecision(ph.precision))) : parseFloat(arg)\n break\n case 'o':\n arg = (parseInt(arg, 10) >>> 0).toString(8)\n break\n case 's':\n arg = String(arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 't':\n arg = String(!!arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'T':\n arg = Object.prototype.toString.call(arg).slice(8, -1).toLowerCase()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'u':\n arg = parseInt(arg, 10) >>> 0\n break\n case 'v':\n arg = arg.valueOf()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'x':\n arg = (parseInt(arg, 10) >>> 0).toString(16)\n break\n case 'X':\n arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase()\n break\n }\n if (re.json.test(ph.type)) {\n output += arg\n }\n else {\n if (re.number.test(ph.type) && (!is_positive || ph.sign)) {\n sign = is_positive ? '+' : '-'\n arg = arg.toString().replace(re.sign, '')\n }\n else {\n sign = ''\n }\n pad_character = ph.pad_char ? ph.pad_char === '0' ? '0' : ph.pad_char.charAt(1) : ' '\n pad_length = ph.width - (sign + arg).length\n pad = ph.width ? (pad_length > 0 ? pad_character.repeat(pad_length) : '') : ''\n output += ph.align ? sign + arg + pad : (pad_character === '0' ? sign + pad + arg : pad + sign + arg)\n }\n }\n }\n return output\n }\n\n var sprintf_cache = Object.create(null)\n\n function sprintf_parse(fmt) {\n if (sprintf_cache[fmt]) {\n return sprintf_cache[fmt]\n }\n\n var _fmt = fmt, match, parse_tree = [], arg_names = 0\n while (_fmt) {\n if ((match = re.text.exec(_fmt)) !== null) {\n parse_tree.push(match[0])\n }\n else if ((match = re.modulo.exec(_fmt)) !== null) {\n parse_tree.push('%')\n }\n else if ((match = re.placeholder.exec(_fmt)) !== null) {\n if (match[2]) {\n arg_names |= 1\n var field_list = [], replacement_field = match[2], field_match = []\n if ((field_match = re.key.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n while ((replacement_field = replacement_field.substring(field_match[0].length)) !== '') {\n if ((field_match = re.key_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else if ((field_match = re.index_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n }\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n match[2] = field_list\n }\n else {\n arg_names |= 2\n }\n if (arg_names === 3) {\n throw new Error('[sprintf] mixing positional and named placeholders is not (yet) supported')\n }\n\n parse_tree.push(\n {\n placeholder: match[0],\n param_no: match[1],\n keys: match[2],\n sign: match[3],\n pad_char: match[4],\n align: match[5],\n width: match[6],\n precision: match[7],\n type: match[8]\n }\n )\n }\n else {\n throw new SyntaxError('[sprintf] unexpected placeholder')\n }\n _fmt = _fmt.substring(match[0].length)\n }\n return sprintf_cache[fmt] = parse_tree\n }\n\n /**\n * export to either browser or node.js\n */\n /* eslint-disable quote-props */\n if (typeof exports !== 'undefined') {\n exports['sprintf'] = sprintf\n exports['vsprintf'] = vsprintf\n }\n if (typeof window !== 'undefined') {\n window['sprintf'] = sprintf\n window['vsprintf'] = vsprintf\n\n if (typeof define === 'function' && define['amd']) {\n define(function() {\n return {\n 'sprintf': sprintf,\n 'vsprintf': vsprintf\n }\n })\n }\n }\n /* eslint-enable quote-props */\n}(); // eslint-disable-line\n","import pluralForms from '@tannin/plural-forms';\n\n/**\n * Tannin constructor options.\n *\n * @typedef {Object} TanninOptions\n *\n * @property {string} [contextDelimiter] Joiner in string lookup with context.\n * @property {Function} [onMissingKey] Callback to invoke when key missing.\n */\n\n/**\n * Domain metadata.\n *\n * @typedef {Object} TanninDomainMetadata\n *\n * @property {string} [domain] Domain name.\n * @property {string} [lang] Language code.\n * @property {(string|Function)} [plural_forms] Plural forms expression or\n * function evaluator.\n */\n\n/**\n * Domain translation pair respectively representing the singular and plural\n * translation.\n *\n * @typedef {[string,string]} TanninTranslation\n */\n\n/**\n * Locale data domain. The key is used as reference for lookup, the value an\n * array of two string entries respectively representing the singular and plural\n * translation.\n *\n * @typedef {{[key:string]:TanninDomainMetadata|TanninTranslation,'':TanninDomainMetadata|TanninTranslation}} TanninLocaleDomain\n */\n\n/**\n * Jed-formatted locale data.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @typedef {{[domain:string]:TanninLocaleDomain}} TanninLocaleData\n */\n\n/**\n * Default Tannin constructor options.\n *\n * @type {TanninOptions}\n */\nvar DEFAULT_OPTIONS = {\n\tcontextDelimiter: '\\u0004',\n\tonMissingKey: null,\n};\n\n/**\n * Given a specific locale data's config `plural_forms` value, returns the\n * expression.\n *\n * @example\n *\n * ```\n * getPluralExpression( 'nplurals=2; plural=(n != 1);' ) === '(n != 1)'\n * ```\n *\n * @param {string} pf Locale data plural forms.\n *\n * @return {string} Plural forms expression.\n */\nfunction getPluralExpression( pf ) {\n\tvar parts, i, part;\n\n\tparts = pf.split( ';' );\n\n\tfor ( i = 0; i < parts.length; i++ ) {\n\t\tpart = parts[ i ].trim();\n\t\tif ( part.indexOf( 'plural=' ) === 0 ) {\n\t\t\treturn part.substr( 7 );\n\t\t}\n\t}\n}\n\n/**\n * Tannin constructor.\n *\n * @class\n *\n * @param {TanninLocaleData} data Jed-formatted locale data.\n * @param {TanninOptions} [options] Tannin options.\n */\nexport default function Tannin( data, options ) {\n\tvar key;\n\n\t/**\n\t * Jed-formatted locale data.\n\t *\n\t * @name Tannin#data\n\t * @type {TanninLocaleData}\n\t */\n\tthis.data = data;\n\n\t/**\n\t * Plural forms function cache, keyed by plural forms string.\n\t *\n\t * @name Tannin#pluralForms\n\t * @type {Object}\n\t */\n\tthis.pluralForms = {};\n\n\t/**\n\t * Effective options for instance, including defaults.\n\t *\n\t * @name Tannin#options\n\t * @type {TanninOptions}\n\t */\n\tthis.options = {};\n\n\tfor ( key in DEFAULT_OPTIONS ) {\n\t\tthis.options[ key ] = options !== undefined && key in options\n\t\t\t? options[ key ]\n\t\t\t: DEFAULT_OPTIONS[ key ];\n\t}\n}\n\n/**\n * Returns the plural form index for the given domain and value.\n *\n * @param {string} domain Domain on which to calculate plural form.\n * @param {number} n Value for which plural form is to be calculated.\n *\n * @return {number} Plural form index.\n */\nTannin.prototype.getPluralForm = function( domain, n ) {\n\tvar getPluralForm = this.pluralForms[ domain ],\n\t\tconfig, plural, pf;\n\n\tif ( ! getPluralForm ) {\n\t\tconfig = this.data[ domain ][ '' ];\n\n\t\tpf = (\n\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t// @ts-ignore\n\t\t\tconfig.plural_forms\n\t\t);\n\n\t\tif ( typeof pf !== 'function' ) {\n\t\t\tplural = getPluralExpression(\n\t\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t\t// @ts-ignore\n\t\t\t\tconfig.plural_forms\n\t\t\t);\n\n\t\t\tpf = pluralForms( plural );\n\t\t}\n\n\t\tgetPluralForm = this.pluralForms[ domain ] = pf;\n\t}\n\n\treturn getPluralForm( n );\n};\n\n/**\n * Translate a string.\n *\n * @param {string} domain Translation domain.\n * @param {string|void} context Context distinguishing terms of the same name.\n * @param {string} singular Primary key for translation lookup.\n * @param {string=} plural Fallback value used for non-zero plural\n * form index.\n * @param {number=} n Value to use in calculating plural form.\n *\n * @return {string} Translated string.\n */\nTannin.prototype.dcnpgettext = function( domain, context, singular, plural, n ) {\n\tvar index, key, entry;\n\n\tif ( n === undefined ) {\n\t\t// Default to singular.\n\t\tindex = 0;\n\t} else {\n\t\t// Find index by evaluating plural form for value.\n\t\tindex = this.getPluralForm( domain, n );\n\t}\n\n\tkey = singular;\n\n\t// If provided, context is prepended to key with delimiter.\n\tif ( context ) {\n\t\tkey = context + this.options.contextDelimiter + singular;\n\t}\n\n\tentry = this.data[ domain ][ key ];\n\n\t// Verify not only that entry exists, but that the intended index is within\n\t// range and non-empty.\n\tif ( entry && entry[ index ] ) {\n\t\treturn entry[ index ];\n\t}\n\n\tif ( this.options.onMissingKey ) {\n\t\tthis.options.onMissingKey( singular, domain );\n\t}\n\n\t// If entry not found, fall back to singular vs. plural with zero index\n\t// representing the singular value.\n\treturn index === 0 ? singular : plural;\n};\n","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { __ } from '@wordpress/i18n';\nimport frmRadioComponent from './components/radio-component.js';\nimport frmSliderComponent from './components/slider-component.js';\nimport frmTabsComponent from './components/tabs-component.js';\nimport frmDependentUpdaterComponent from './components/dependent-updater-component.js';\n\n/**\n * Represents the frmSettingsComponents class.\n * @class\n */\nclass frmSettingsComponents {\n\n\tconstructor() {\n\t\tthis.success = frmDom.success;\n\t\tthis.init();\n\t\tthis.initHover();\n\t}\n\n\t/**\n\t * Initializes the components: frmRadioComponent, frmSliderComponent, and frmTabsComponent.\n\t * Init the dependent\n\t */\n\tinit() {\n\t\tnew frmRadioComponent();\n\t\tnew frmSliderComponent();\n\t\tnew frmTabsComponent();\n\n\t\tthis.initColorPickerDependentUpdaterComponents();\n\t\tthis.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) );\n\t}\n\n\t/**\n\t * Initializes the color picker dependent updater components.\n\t * Retrieves the components and elements, and adds them to the elements array.\n\t * Adds an action hook for the frm_style_options_color_change event.\n\t */\n\tinitColorPickerDependentUpdaterComponents() {\n\t\tconst components = document.querySelectorAll( '.frm-style-dependent-updater-component.frm-colorpicker' );\n\t\tconst elements = [];\n\n\t\tcomponents.forEach( ( component ) => {\n\t\t\tconst element = component.querySelector( 'input.hex' );\n\t\t\tconst id = 'undefined' !== typeof element ? element.getAttribute( 'id' ) : null;\n\n\t\t\tif ( null !== id ) {\n\t\t\t\telements.push({\n\t\t\t\t\tid: id,\n\t\t\t\t\tdependentUpdaterClass: new frmDependentUpdaterComponent( component, 'colorpicker' )\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\twp.hooks.addAction( 'frm_style_options_color_change', 'formidable', ( { event, value } ) => {\n\t\t\tconst container = event.target.closest( '.wp-picker-container' );\n\t\t\tconst id = event.target.getAttribute( 'id' );\n\n\t\t\tcontainer.querySelector( '.wp-color-result-text' ).innerText = value;\n\n\t\t\telements.forEach( ( element ) => {\n\t\t\t\tif ( element.id === id ) {\n\t\t\t\t\telement.dependentUpdaterClass.updateAllDependentElements( value );\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the hover functionality for the options.\n\t * Creates a hover element and appends it to the settingsWrapper.\n\t * Adds event listeners for mouseover and click events.\n\t */\n\tinitHover() {\n\t\tconst settingsWrapper = document.querySelector( '.frm-right-panel .styling_settings .accordion-container' );\n\t\tif ( null === settingsWrapper ) {\n\t\t\treturn;\n\t\t}\n\t\tconst hoverElement = document.createElement( 'div' );\n\t\thoverElement.classList.add( 'frm_hidden' );\n\t\thoverElement.classList.add( 'frm-style-settings-hover' );\n\t\tsettingsWrapper.appendChild( hoverElement );\n\n\t\tconst styleOptionsMenu = settingsWrapper.querySelector( ':scope > ul' );\n\n\t\tstyleOptionsMenu.querySelectorAll( ':scope > li' ).forEach( ( item ) => {\n\t\t\titem.querySelector('h3').addEventListener( 'mouseover', ( event ) => {\n\t\t\t\thoverElement.style.transform = `translateY(${event.target.closest('li').offsetTop}px)`;\n\t\t\t\thoverElement.classList.add( 'frm-animating' );\n\t\t\t\thoverElement.classList.remove( 'frm_hidden' );\n\t\t\t\tsetTimeout( () => { hoverElement.classList.remove( 'frm-animating' ); }, 250 );\n\t\t\t});\n\t\t});\n\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', () => {\n\t\t\t\thoverElement.classList.add( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the copy to clipboard functionality for classes.\n\t * Adds a click event listener to the copyLabel element.\n\t * Copies the class name to the clipboard and displays a success message.\n\t * @param {string} successMessage - The success message to display.\n\t */\n\tinitStyleClassCopyToClipboard( successMessage ) {\n\t\tconst copyLabel = document.querySelector( '.frm-copy-text' );\n\t\tif ( ! copyLabel ) {\n\t\t\treturn;\n\t\t}\n\n\t\tcopyLabel.addEventListener( 'click', ( event ) => {\n\t\t\tconst className = event.currentTarget.innerText;\n\t\t\tnavigator.clipboard.writeText( className ).then( () => {\n\t\t\t\tthis.success( successMessage );\n\t\t\t});\n\t\t})\n\t}\n}\n\nnew frmSettingsComponents();\n"],"names":["frmTabsNavigator","wrapper","_classCallCheck","Element","document","querySelector","flexboxSlidesGap","navs","querySelectorAll","slideTrackLine","slideTrack","slides","init","_createClass","key","value","_this","length","trackLine","initDefaultSlideTrackerWidth","forEach","nav","index","addEventListener","event","onNavClick","removeActiveClassnameFromNavs","target","classList","add","initSlideTrackUnderline","changeSlide","dataset","initialWidth","style","width","concat","remove","activeNav","filter","contains","transform","offsetLeft","clientWidth","removeActiveClassnameFromSlides","translate","parseInt","slide","_window$frmGlobal","window","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","frmAnimate","elements","type","arguments","undefined","prepareElements","fadeIn","applyStyleToElements","element","resetOpacity","once","cascadeFadeIn","_this2","delay","setTimeout","transitionDelay","_this3","opacity","callback","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","textContent","setAttribute","onClickPreventDefault","frmDom","util","URL","location","href","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","frmDependentUpdaterComponent","component","willChangeData","JSON","parse","willChange","data","propagateInputs","initPropagationList","changeEvent","Event","bubbles","error","inputNames","list","name","input","push","updateAllDependentElements","dispatchEvent","default","frmRadioComponent","radioElements","initOnRadioChange","initTrackerOnAccordionClick","accordionitems","accordionitem","closest","radioButtons","radio","onRadioChange","radioElement","checked","activeItem","moveTracker","hideExtraElements","maybeShowExtraElements","elementAttr","getAttribute","offset","offsetWidth","tracker","left","frmSliderComponent","sliderElements","sliderBulletWidth","sliderMarginRight","eventsChange","debounce","valueChangeDebouncer","triggerValueChange","initOptions","options","parentWrapper","dragging","startX","translateX","maxValue","dependentUpdater","initSlidersPosition","initDraggable","cancelable","draggableBullet","valueInput","unit","getMaxValue","initSliderWidth","fullValue","updateValue","expandSliderGroup","updateOnUnitChange","changeSliderPositionOnClick","preventDefault","stopPropagation","enableDragging","disableDragging","svgIcon","displaySliders","sliderGroupItems","getSliderGroupItems","item","toggle","_this4","toLowerCase","_this5","frmSlider","customEvent","sliderWidth","sliderRect","getBoundingClientRect","deltaX","clientX","calculateValue","initChildSlidersWidth","slidersGroup","split","query","map","join","_this6","quickSettings","openedAccordion","wp","hooks","addAction","imageBackgroundOpacitySlider","initSlidersWidth","initSliderPositionOnFieldShapeChange","_this7","fieldShapeType","slider","section","_this8","sliders","getSliderIndex","Math","round","ceil","_this9","childSliders","childIndex","option","max","innerText","_this10","NodeList","delta","min","_this11","userBaseFontSizeInput","inputValue","newValue","childSlidersGroup","unitMeasure","getUnitMeasureFromValue","inputValues","visibleValues","find","frmTabsComponent","initOnTabClick","initActiveBackgroundWidth","tab","onTabClick","__","frmSettingsComponents","success","initHover","initColorPickerDependentUpdaterComponents","initStyleClassCopyToClipboard","components","id","dependentUpdaterClass","_ref","container","settingsWrapper","hoverElement","createElement","appendChild","styleOptionsMenu","offsetTop","successMessage","copyLabel","className","currentTarget","navigator","clipboard","writeText"],"sourceRoot":""} \ No newline at end of file diff --git a/js/formidable_styles.js b/js/formidable_styles.js deleted file mode 100644 index 290ff3a10a..0000000000 --- a/js/formidable_styles.js +++ /dev/null @@ -1 +0,0 @@ -!function(){var e={616:function(e){e.exports=function(e,t){var n,r,i=0;function o(){var o,a,s=n,l=arguments.length;e:for(;s;){if(s.args.length===arguments.length){for(a=0;a=0),s.type){case"b":n=parseInt(n,10).toString(2);break;case"c":n=String.fromCharCode(parseInt(n,10));break;case"d":case"i":n=parseInt(n,10);break;case"j":n=JSON.stringify(n,null,s.width?parseInt(s.width):0);break;case"e":n=s.precision?parseFloat(n).toExponential(s.precision):parseFloat(n).toExponential();break;case"f":n=s.precision?parseFloat(n).toFixed(s.precision):parseFloat(n);break;case"g":n=s.precision?String(Number(n.toPrecision(s.precision))):parseFloat(n);break;case"o":n=(parseInt(n,10)>>>0).toString(8);break;case"s":n=String(n),n=s.precision?n.substring(0,s.precision):n;break;case"t":n=String(!!n),n=s.precision?n.substring(0,s.precision):n;break;case"T":n=Object.prototype.toString.call(n).slice(8,-1).toLowerCase(),n=s.precision?n.substring(0,s.precision):n;break;case"u":n=parseInt(n,10)>>>0;break;case"v":n=n.valueOf(),n=s.precision?n.substring(0,s.precision):n;break;case"x":n=(parseInt(n,10)>>>0).toString(16);break;case"X":n=(parseInt(n,10)>>>0).toString(16).toUpperCase()}i.json.test(s.type)?v+=n:(!i.number.test(s.type)||f&&!s.sign?d="":(d=f?"+":"-",n=n.toString().replace(i.sign,"")),c=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",u=s.width-(d+n).length,l=s.width&&u>0?c.repeat(u):"",v+=s.align?d+n+l:"0"===c?d+l+n:l+d+n)}return v}(function(e){if(s[e])return s[e];for(var t,n=e,r=[],o=0;n;){if(null!==(t=i.text.exec(n)))r.push(t[0]);else if(null!==(t=i.modulo.exec(n)))r.push("%");else{if(null===(t=i.placeholder.exec(n)))throw new SyntaxError("[sprintf] unexpected placeholder");if(t[2]){o|=1;var a=[],l=t[2],c=[];if(null===(c=i.key.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(a.push(c[1]);""!==(l=l.substring(c[0].length));)if(null!==(c=i.key_access.exec(l)))a.push(c[1]);else{if(null===(c=i.index_access.exec(l)))throw new SyntaxError("[sprintf] failed to parse named argument key");a.push(c[1])}t[2]=a}else o|=2;if(3===o)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");r.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}n=n.substring(t[0].length)}return s[e]=r}(e),arguments)}function a(e,t){return o.apply(null,[e].concat(t||[]))}var s=Object.create(null);"undefined"!=typeof window&&(window.sprintf=o,window.vsprintf=a,void 0===(r=function(){return{sprintf:o,vsprintf:a}}.call(t,n,t,e))||(e.exports=r))}()}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,n),o.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},function(){"use strict";var e,t,r,i,o=n(616),a=n.n(o);function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}function l(e){var t=function(e){if("object"!=s(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==s(t)?t:t+""}n(604),a()(console.error),e={"(":9,"!":8,"*":7,"/":7,"%":7,"+":6,"-":6,"<":5,"<=":5,">":5,">=":5,"==":4,"!=":4,"&&":3,"||":2,"?":1,"?:":1},t=["(","?"],r={")":["("],":":["?","?:"]},i=/<=|>=|==|!=|&&|\|\||\?:|\(|!|\*|\/|%|\+|-|<|>|\?|\)|:/;var c={"!":function(e){return!e},"*":function(e,t){return e*t},"/":function(e,t){return e/t},"%":function(e,t){return e%t},"+":function(e,t){return e+t},"-":function(e,t){return e-t},"<":function(e,t){return e":function(e,t){return e>t},">=":function(e,t){return e>=t},"==":function(e,t){return e===t},"!=":function(e,t){return e!==t},"&&":function(e,t){return e&&t},"||":function(e,t){return e||t},"?:":function(e,t,n){if(e)throw t;return n}};var u={contextDelimiter:"",onMissingKey:null};function f(e,t){var n;for(n in this.data=e,this.pluralForms={},this.options={},u)this.options[n]=void 0!==t&&n in t?t[n]:u[n]}function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function p(e){for(var t=1;t=0||e[l]3&&void 0!==arguments[3]?arguments[3]:10,a=e[t];if(y(n)&&m(r))if("function"==typeof i)if("number"==typeof o){var s={callback:i,priority:o,namespace:r};if(a[n]){var l,c=a[n].handlers;for(l=c.length;l>0&&!(o>=c[l-1].priority);l--);l===c.length?c[l]=s:c.splice(l,0,s),a.__current.forEach((function(e){e.name===n&&e.currentIndex>=l&&e.currentIndex++}))}else a[n]={handlers:[s],runs:0};"hookAdded"!==n&&e.doAction("hookAdded",n,r,i,o)}else console.error("If specified, the hook priority must be a number.");else console.error("The hook callback must be a function.")}},b=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return function(r,i){var o=e[t];if(y(r)&&(n||m(i))){if(!o[r])return 0;var a=0;if(n)a=o[r].handlers.length,o[r]={runs:o[r].runs,handlers:[]};else for(var s=o[r].handlers,l=function(e){s[e].namespace===i&&(s.splice(e,1),a++,o.__current.forEach((function(t){t.name===r&&t.currentIndex>=e&&t.currentIndex--})))},c=s.length-1;c>=0;c--)l(c);return"hookRemoved"!==r&&e.doAction("hookRemoved",r,i),a}}},S=function(e,t){return function(n,r){var i=e[t];return void 0!==r?n in i&&i[n].handlers.some((function(e){return e.namespace===r})):n in i}},k=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return function(r){var i=e[t];i[r]||(i[r]={handlers:[],runs:0}),i[r].runs++;for(var o=i[r].handlers,a=arguments.length,s=new Array(a>1?a-1:0),l=1;l1&&void 0!==arguments[1]?arguments[1]:"default";r.data[t]=p(p(p({},h),r.data[t]),e),r.data[t][""]=p(p({},h[""]),r.data[t][""])},s=function(e,t){a(e,t),o()},l=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default",t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0;return r.data[e]||a(void 0,e),r.dcnpgettext(e,t,n,i,o)},c=function(){return arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default"},u=function(e,t,r){var i=l(r,t,e);return n?(i=n.applyFilters("i18n.gettext_with_context",i,e,t,r),n.applyFilters("i18n.gettext_with_context_"+c(r),i,e,t,r)):i};if(n){var d=function(e){v.test(e)&&o()};n.addAction("hookAdded","core/i18n",d),n.addAction("hookRemoved","core/i18n",d)}return{getLocaleData:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default";return r.data[e]},setLocaleData:s,resetLocaleData:function(e,t){r.data={},r.pluralForms={},s(e,t)},subscribe:function(e){return i.add(e),function(){return i.delete(e)}},__:function(e,t){var r=l(t,void 0,e);return n?(r=n.applyFilters("i18n.gettext",r,e,t),n.applyFilters("i18n.gettext_"+c(t),r,e,t)):r},_x:u,_n:function(e,t,r,i){var o=l(i,void 0,e,t,r);return n?(o=n.applyFilters("i18n.ngettext",o,e,t,r,i),n.applyFilters("i18n.ngettext_"+c(i),o,e,t,r,i)):o},_nx:function(e,t,r,i,o){var a=l(o,i,e,t,r);return n?(a=n.applyFilters("i18n.ngettext_with_context",a,e,t,r,i,o),n.applyFilters("i18n.ngettext_with_context_"+c(o),a,e,t,r,i,o)):a},isRTL:function(){return"rtl"===u("ltr","text direction")},hasTranslation:function(e,t,i){var o,a,s=t?t+""+e:e,l=!(null===(o=r.data)||void 0===o||null===(a=o[null!=i?i:"default"])||void 0===a||!a[s]);return n&&(l=n.applyFilters("i18n.has_translation",l,e,t,i),l=n.applyFilters("i18n.has_translation_"+c(i),l,e,t,i)),l}}}(0,0,E)),A=(L.getLocaleData.bind(L),L.setLocaleData.bind(L),L.resetLocaleData.bind(L),L.subscribe.bind(L),L.__.bind(L));L._x.bind(L),L._n.bind(L),L._nx.bind(L),L.isRTL.bind(L),L.hasTranslation.bind(L),Promise.resolve(),window.frmDom.util.onClickPreventDefault;var C=(new URL(window.location.href).searchParams,window.frmGlobal),T=(C.url,C.nonce,"frm_hidden");function q(e){return q="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},q(e)}function P(e,t){for(var n=0;n=i)){var o=r.querySelector("select").value,a=this.calculateValue(i,n,this.getMaxValue(o,t));r.querySelector('.frm-slider-value input[type="text"]').value=a,r.querySelector(".frm-slider-bullet .frm-slider-value-label").innerText=a,r.querySelector(".frm-slider-active-track").style.width="".concat(n,"px"),this.initChildSlidersWidth(r,n,t,a+o),this.options[t].translateX=n,this.options[t].value=a+o,this.options[t].fullValue=this.updateValue(r,this.options[t].value),this.valueChangeDebouncer(t)}}}},{key:"getMaxValue",value:function(e,t){return"%"===e?100:this.options[t].maxValue}},{key:"enableDragging",value:function(e,t){e.target.classList.add("frm-dragging"),this.options[t].dragging=!0,this.options[t].startX=e.clientX-this.options[t].translateX}},{key:"disableDragging",value:function(e,t){!1!==this.options[e].dragging&&(t.target.classList.remove("frm-dragging"),this.options[e].dragging=!1,this.triggerValueChange(e))}},{key:"triggerValueChange",value:function(e){var t=this;if(null===this.options[e].dependentUpdater){var n=this.sliderElements[e].classList.contains("frm-has-multiple-values")?this.sliderElements[e].closest(".frm-style-component").querySelector('input[type="hidden"]'):this.sliderElements[e].querySelectorAll('.frm-slider-value input[type="hidden"]');n instanceof NodeList?n.forEach((function(n){n.dispatchEvent(t.eventsChange[e])})):n.dispatchEvent(this.eventsChange[e])}else this.options[e].dependentUpdater.updateAllDependentElements(this.options[e].fullValue)}},{key:"calculateValue",value:function(e,t,n){var r=Math.ceil(this.sliderBulletWidth*(t/e)),i=Math.ceil((t+r)/e*n);return Math.min(i,n)}},{key:"updateValue",value:function(e,t){var n=this;if(e.classList.contains("frm-base-font-size")){var r=document.querySelector('input[name="frm_style_setting[post_content][use_base_font_size]"]');null!==r&&(r.value="true")}if(e.classList.contains("frm-has-multiple-values")){var i=e.closest(".frm-style-component").querySelector('input[type="hidden"]'),o=i.value.split(" "),a=e.dataset.type;switch(o[2]||(o[2]="0px"),o[3]||(o[3]="0px"),a){case"vertical":o[0]=t,o[2]=t;break;case"horizontal":o[1]=t,o[3]=t;break;case"top":o[0]=t;break;case"bottom":o[2]=t;break;case"left":o[3]=t;break;case"right":o[1]=t}var s=o.join(" ");return i.value=s,this.getSliderGroupItems(e).forEach((function(e){var r=n.getUnitMeasureFromValue(t);e.querySelector('.frm-slider-value input[type="text"]').value=parseInt(t,10),e.querySelector("select").value=r})),s}if(e.classList.contains("frm-has-independent-fields")){var l=e.querySelectorAll('.frm-slider-value input[type="hidden"]'),c=e.querySelectorAll('.frm-slider-value input[type="text"]');return l.forEach((function(e,n){e.value=t,c[n+1].value=parseInt(t,10)})),t}return e.querySelector('.frm-slider-value input[type="hidden"]').value=t,t}},{key:"getUnitMeasureFromValue",value:function(e){return["%","px","em"].find((function(t){return e.includes(t)}))||""}}])&&M(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function U(e){return U="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},U(e)}function z(e,t){for(var n=0;n li"),this.slideTrackLine=this.wrapper.querySelector(".frm-tabs-active-underline"),this.slideTrack=this.wrapper.querySelector(".frm-tabs-slide-track"),this.slides=this.wrapper.querySelectorAll(".frm-tabs-slide-track > div"),this.init()))},(t=[{key:"init",value:function(){var e=this;null!==this.wrapper&&this.navs.length&&null!==this.trackLine&&null!==this.slideTrack&&this.slides.length&&(this.initDefaultSlideTrackerWidth(),this.navs.forEach((function(t,n){t.addEventListener("click",(function(t){return e.onNavClick(t,n)}))})))}},{key:"onNavClick",value:function(e,t){this.removeActiveClassnameFromNavs(),e.target.classList.add("frm-active"),this.initSlideTrackUnderline(e.target,t),this.changeSlide(t)}},{key:"initDefaultSlideTrackerWidth",value:function(){this.slideTrackLine.dataset.initialWidth&&(this.slideTrackLine.style.width="".concat(this.slideTrackLine.dataset.initialWidth,"px"))}},{key:"initSlideTrackUnderline",value:function(e,t){this.slideTrackLine.classList.remove("frm-first","frm-last");var n=void 0!==e?e:this.navs.filter((function(e){return e.classList.contains("frm-active")}));this.slideTrackLine.style.transform="translateX(".concat(n.offsetLeft,"px)"),this.slideTrackLine.style.width=n.clientWidth+"px",this.navs.length!==t+1?0===t&&this.slideTrackLine.classList.add("frm-first"):this.slideTrackLine.classList.add("frm-last")}},{key:"changeSlide",value:function(e){this.removeActiveClassnameFromSlides();var t=0==e?"0px":"calc( ( ".concat(100*e,"% + ").concat(parseInt(this.flexboxSlidesGap,10)*e,"px ) * -1 )");this.slideTrack.style.transform="translateX(".concat(t,")"),e in this.slides&&this.slides[e].classList.add("frm-active")}},{key:"removeActiveClassnameFromSlides",value:function(){this.slides.forEach((function(e){return e.classList.remove("frm-active")}))}},{key:"removeActiveClassnameFromNavs",value:function(){this.navs.forEach((function(e){return e.classList.remove("frm-active")}))}}])&&z(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function B(e){return B="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},B(e)}function $(e,t){for(var n=0;n ul").querySelectorAll(":scope > li").forEach((function(e){e.querySelector("h3").addEventListener("mouseover",(function(e){t.style.transform="translateY(".concat(e.target.closest("li").offsetTop,"px)"),t.classList.add("frm-animating"),t.classList.remove("frm_hidden"),setTimeout((function(){t.classList.remove("frm-animating")}),250)}))})),document.querySelectorAll("#frm_style_sidebar .accordion-section h3").forEach((function(e){e.addEventListener("click",(function(){t.classList.add("frm_hidden")}))}))}}},{key:"initStyleClassCopyToClipboard",value:function(e){var t=this;document.querySelector(".frm-copy-text").addEventListener("click",(function(n){var r=n.currentTarget.innerText;navigator.clipboard.writeText(r).then((function(){t.success(e)}))}))}}])&&H(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}())}()}(); \ No newline at end of file diff --git a/js/formidable_styles.js.map b/js/formidable_styles.js.map deleted file mode 100644 index 5519c22482..0000000000 --- a/js/formidable_styles.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"formidable_styles.js","mappings":";;;;;;;;;;;;;;;;AAAsC;AACE;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,aAAa,oBAAoB,MAAM;AACnD;AACe;AACf,aAAa,2DAAO;;AAEpB;AACA,SAAS,4DAAQ;AACjB;AACA;;;;;;;;;;;;;;;;AC5BA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA,EAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB;AACA,YAAY,GAAG;AACf;AACe;AACf;AACA;;AAEA,cAAc,oBAAoB;AAClC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;;AC7GsC;;AAEtC;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf,gBAAgB,2DAAO;;AAEvB;AACA,sBAAsB,OAAO;AAC7B;AACA;;;;;;;;;;;;;;;;ACjBA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;AC3HA;AACA;AACA;AACuD;AACF;AACrD;AACA;AACA;AACA;AACA;AACA,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC;;AAEA;AACA;AACA;AACA,YAAY,sBAAsB;AAClC,YAAY,sBAAsB;AAClC;AACA,YAAY,SAAS;AACrB;;AAEA;AACA;AACA;AACA;;AAEA,SAAS,gEAAgB;AACzB;AACA;;AAEA,SAAS,iEAAiB;AAC1B;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,QAAQ;;AAEzB;;AAEA,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA,kBAAkB;AAClB;;;AAGA;AACA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,+DAAe,aAAa,EAAC;AAC7B;;;;;;;;;;;;ACtGA;AACA;AACA;AACA;AACA;AACA,YAAY,sBA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CA;AACA;AAC4B;AAC5B;AACA,aAAa,oBAAoB;AACjC;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;;AAEA;AACA;AACA,gBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,iCAAiC;AAC9C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,YAAY;;AAE1B,cAAc,YAAY;;AAE1B;AACA,aAAa,sDAAsD;AACnE;AACA;AACA;;AAEA;AACA,aAAa,6BAA6B;AAC1C;AACA;;AAEA;AACA,aAAa,2CAA2C;AACxD;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,4DAA4D;AACzE;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,6EAA6E;AAC1F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8FAA8F;AAC3G;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,eAAe;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,gEAAgE;AAC7E;AACA;AACA;;AAEA,cAAc,kCAAkC;;AAEhD;AACA;AACA;AACA;AACA,cAAc,eAAe;AAC7B,cAAc,eAAe;AAC7B;AACA,cAAc,iBAAiB;AAC/B;AACA,cAAc,WAAW;AACzB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB;AACA,cAAc,KAAK;AACnB;AACA,cAAc,OAAO;AACrB,cAAc,gBAAgB;AAC9B;;AAEA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB,YAAY,4BAA4B;AACxC;;AAEO;AACP;AACA;AACA;AACA,YAAY;AACZ;AACA,mBAAmB,8CAAM,GAAG;AAC5B;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,aAAa,mBAAmB;AAChC,cAAc,qBAAqB;AACn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Q,CAAC;EACjD,OAAOmP,MAAM,CAACE,gBAAgB,CAAE,SAAU,CAAC,KAAK,MAAM;AACvD,CAAC;;;;;;;;;;AChDD;AACA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,4BAA4B;AAC1C,cAAc,4BAA4B;AAC1C,cAAc,4BAA4B;AAC1C;AACA,cAAc,4BAA4B;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;AACA,WAAW,eAAe;AAC1B,WAAW,eAAe;AAC1B;AACA,YAAY,4BAA4B;AACxC;AACA;AACA;;AAEA,YAAY,4BAA4B;AACxC;;AAEA,YAAY,4BAA4B;AACxC;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,eAAe,SAAS;AACxB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA,2BAA2B,eAAe;AAC1C,qBAAqB,iBAAiB;AACtC,cAAc,iBAAiB;AAC/B,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,KAA+B,GAAG,EAMtC;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;ACtKA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA,uBAAuB;AACvB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ,IAA8B;AACtC,QAAQ,eAAkB;AAC1B,QAAQ,gBAAmB;AAC3B;AACA;AACA;AACA;;AAEA,YAAY,IAA6C;AACzD,YAAY,mCAAO;AACnB;AACA;AACA;AACA;AACA,aAAa;AAAA,kGAAC;AACd;AACA;AACA;AACA,CAAC,IAAI;;;;;;;;;;;;;;;;;ACtO0C;;AAE/C;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,gGAAgG;AAC9G;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,qCAAqC;AACnD;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,gBAAgB;AACrD;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA,qBAAqB;;AAErB,cAAc,kBAAkB;AAChC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B,WAAW,kBAAkB;AAC7B;AACe;AACf;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,QAAQ,gEAAW;AACnB;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB;AACA,WAAW,aAAa;AACxB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AAC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","sources":["webpack://formidable/./node_modules/@tannin/compile/index.js","webpack://formidable/./node_modules/@tannin/evaluate/index.js","webpack://formidable/./node_modules/@tannin/plural-forms/index.js","webpack://formidable/./node_modules/@tannin/postfix/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createAddHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createCurrentHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDidHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDoingHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHasHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHooks.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRemoveHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRunHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateHookName.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateNamespace.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/create-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/default-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/index.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/sprintf.js","webpack://formidable/./js/src/admin/styles/dependent-updater-component.js","webpack://formidable/./js/src/admin/styles/radio-style-component.js","webpack://formidable/./js/src/admin/styles/slider-style-component.js","webpack://formidable/./js/src/admin/styles/tabs-style-component.js","webpack://formidable/./js/src/components/class-tabs-navigator.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/./node_modules/memize/index.js","webpack://formidable/./node_modules/sprintf-js/src/sprintf.js","webpack://formidable/./node_modules/tannin/index.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/compat get default export","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/admin/styles.js"],"sourcesContent":["import postfix from '@tannin/postfix';\nimport evaluate from '@tannin/evaluate';\n\n/**\n * Given a C expression, returns a function which can be called to evaluate its\n * result.\n *\n * @example\n *\n * ```js\n * import compile from '@tannin/compile';\n *\n * const evaluate = compile( 'n > 1' );\n *\n * evaluate( { n: 2 } );\n * // ⇒ true\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {(variables?:{[variable:string]:*})=>*} Compiled evaluator.\n */\nexport default function compile( expression ) {\n\tvar terms = postfix( expression );\n\n\treturn function( variables ) {\n\t\treturn evaluate( terms, variables );\n\t};\n}\n","/**\n * Operator callback functions.\n *\n * @type {Object}\n */\nvar OPERATORS = {\n\t'!': function( a ) {\n\t\treturn ! a;\n\t},\n\t'*': function( a, b ) {\n\t\treturn a * b;\n\t},\n\t'/': function( a, b ) {\n\t\treturn a / b;\n\t},\n\t'%': function( a, b ) {\n\t\treturn a % b;\n\t},\n\t'+': function( a, b ) {\n\t\treturn a + b;\n\t},\n\t'-': function( a, b ) {\n\t\treturn a - b;\n\t},\n\t'<': function( a, b ) {\n\t\treturn a < b;\n\t},\n\t'<=': function( a, b ) {\n\t\treturn a <= b;\n\t},\n\t'>': function( a, b ) {\n\t\treturn a > b;\n\t},\n\t'>=': function( a, b ) {\n\t\treturn a >= b;\n\t},\n\t'==': function( a, b ) {\n\t\treturn a === b;\n\t},\n\t'!=': function( a, b ) {\n\t\treturn a !== b;\n\t},\n\t'&&': function( a, b ) {\n\t\treturn a && b;\n\t},\n\t'||': function( a, b ) {\n\t\treturn a || b;\n\t},\n\t'?:': function( a, b, c ) {\n\t\tif ( a ) {\n\t\t\tthrow b;\n\t\t}\n\n\t\treturn c;\n\t},\n};\n\n/**\n * Given an array of postfix terms and operand variables, returns the result of\n * the postfix evaluation.\n *\n * @example\n *\n * ```js\n * import evaluate from '@tannin/evaluate';\n *\n * // 3 + 4 * 5 / 6 ⇒ '3 4 5 * 6 / +'\n * const terms = [ '3', '4', '5', '*', '6', '/', '+' ];\n *\n * evaluate( terms, {} );\n * // ⇒ 6.333333333333334\n * ```\n *\n * @param {string[]} postfix Postfix terms.\n * @param {Object} variables Operand variables.\n *\n * @return {*} Result of evaluation.\n */\nexport default function evaluate( postfix, variables ) {\n\tvar stack = [],\n\t\ti, j, args, getOperatorResult, term, value;\n\n\tfor ( i = 0; i < postfix.length; i++ ) {\n\t\tterm = postfix[ i ];\n\n\t\tgetOperatorResult = OPERATORS[ term ];\n\t\tif ( getOperatorResult ) {\n\t\t\t// Pop from stack by number of function arguments.\n\t\t\tj = getOperatorResult.length;\n\t\t\targs = Array( j );\n\t\t\twhile ( j-- ) {\n\t\t\t\targs[ j ] = stack.pop();\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tvalue = getOperatorResult.apply( null, args );\n\t\t\t} catch ( earlyReturn ) {\n\t\t\t\treturn earlyReturn;\n\t\t\t}\n\t\t} else if ( variables.hasOwnProperty( term ) ) {\n\t\t\tvalue = variables[ term ];\n\t\t} else {\n\t\t\tvalue = +term;\n\t\t}\n\n\t\tstack.push( value );\n\t}\n\n\treturn stack[ 0 ];\n}\n","import compile from '@tannin/compile';\n\n/**\n * Given a C expression, returns a function which, when called with a value,\n * evaluates the result with the value assumed to be the \"n\" variable of the\n * expression. The result will be coerced to its numeric equivalent.\n *\n * @param {string} expression C expression.\n *\n * @return {Function} Evaluator function.\n */\nexport default function pluralForms( expression ) {\n\tvar evaluate = compile( expression );\n\n\treturn function( n ) {\n\t\treturn +evaluate( { n: n } );\n\t};\n}\n","var PRECEDENCE, OPENERS, TERMINATORS, PATTERN;\n\n/**\n * Operator precedence mapping.\n *\n * @type {Object}\n */\nPRECEDENCE = {\n\t'(': 9,\n\t'!': 8,\n\t'*': 7,\n\t'/': 7,\n\t'%': 7,\n\t'+': 6,\n\t'-': 6,\n\t'<': 5,\n\t'<=': 5,\n\t'>': 5,\n\t'>=': 5,\n\t'==': 4,\n\t'!=': 4,\n\t'&&': 3,\n\t'||': 2,\n\t'?': 1,\n\t'?:': 1,\n};\n\n/**\n * Characters which signal pair opening, to be terminated by terminators.\n *\n * @type {string[]}\n */\nOPENERS = [ '(', '?' ];\n\n/**\n * Characters which signal pair termination, the value an array with the\n * opener as its first member. The second member is an optional operator\n * replacement to push to the stack.\n *\n * @type {string[]}\n */\nTERMINATORS = {\n\t')': [ '(' ],\n\t':': [ '?', '?:' ],\n};\n\n/**\n * Pattern matching operators and openers.\n *\n * @type {RegExp}\n */\nPATTERN = /<=|>=|==|!=|&&|\\|\\||\\?:|\\(|!|\\*|\\/|%|\\+|-|<|>|\\?|\\)|:/;\n\n/**\n * Given a C expression, returns the equivalent postfix (Reverse Polish)\n * notation terms as an array.\n *\n * If a postfix string is desired, simply `.join( ' ' )` the result.\n *\n * @example\n *\n * ```js\n * import postfix from '@tannin/postfix';\n *\n * postfix( 'n > 1' );\n * // ⇒ [ 'n', '1', '>' ]\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {string[]} Postfix terms.\n */\nexport default function postfix( expression ) {\n\tvar terms = [],\n\t\tstack = [],\n\t\tmatch, operator, term, element;\n\n\twhile ( ( match = expression.match( PATTERN ) ) ) {\n\t\toperator = match[ 0 ];\n\n\t\t// Term is the string preceding the operator match. It may contain\n\t\t// whitespace, and may be empty (if operator is at beginning).\n\t\tterm = expression.substr( 0, match.index ).trim();\n\t\tif ( term ) {\n\t\t\tterms.push( term );\n\t\t}\n\n\t\twhile ( ( element = stack.pop() ) ) {\n\t\t\tif ( TERMINATORS[ operator ] ) {\n\t\t\t\tif ( TERMINATORS[ operator ][ 0 ] === element ) {\n\t\t\t\t\t// Substitution works here under assumption that because\n\t\t\t\t\t// the assigned operator will no longer be a terminator, it\n\t\t\t\t\t// will be pushed to the stack during the condition below.\n\t\t\t\t\toperator = TERMINATORS[ operator ][ 1 ] || operator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if ( OPENERS.indexOf( element ) >= 0 || PRECEDENCE[ element ] < PRECEDENCE[ operator ] ) {\n\t\t\t\t// Push to stack if either an opener or when pop reveals an\n\t\t\t\t// element of lower precedence.\n\t\t\t\tstack.push( element );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// For each popped from stack, push to terms.\n\t\t\tterms.push( element );\n\t\t}\n\n\t\tif ( ! TERMINATORS[ operator ] ) {\n\t\t\tstack.push( operator );\n\t\t}\n\n\t\t// Slice matched fragment from expression to continue match.\n\t\texpression = expression.substr( match.index + operator.length );\n\t}\n\n\t// Push remainder of operand, if exists, to terms.\n\texpression = expression.trim();\n\tif ( expression ) {\n\t\tterms.push( expression );\n\t}\n\n\t// Pop remaining items from stack into terms.\n\treturn terms.concat( stack.reverse() );\n}\n","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback AddHook\n *\n * Adds the hook to the appropriate hooks container.\n *\n * @param {string} hookName Name of hook to add\n * @param {string} namespace The unique namespace identifying the callback in the form `vendor/plugin/function`.\n * @param {import('.').Callback} callback Function to call when the hook is run\n * @param {number} [priority=10] Priority of this hook\n */\n\n/**\n * Returns a function which, when invoked, will add a hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {AddHook} Function that adds a new hook.\n */\n\nfunction createAddHook(hooks, storeKey) {\n return function addHook(hookName, namespace, callback) {\n var priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10;\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!validateNamespace(namespace)) {\n return;\n }\n\n if ('function' !== typeof callback) {\n // eslint-disable-next-line no-console\n console.error('The hook callback must be a function.');\n return;\n } // Validate numeric priority\n\n\n if ('number' !== typeof priority) {\n // eslint-disable-next-line no-console\n console.error('If specified, the hook priority must be a number.');\n return;\n }\n\n var handler = {\n callback: callback,\n priority: priority,\n namespace: namespace\n };\n\n if (hooksStore[hookName]) {\n // Find the correct insert index of the new hook.\n var handlers = hooksStore[hookName].handlers;\n /** @type {number} */\n\n var i;\n\n for (i = handlers.length; i > 0; i--) {\n if (priority >= handlers[i - 1].priority) {\n break;\n }\n }\n\n if (i === handlers.length) {\n // If append, operate via direct assignment.\n handlers[i] = handler;\n } else {\n // Otherwise, insert before index via splice.\n handlers.splice(i, 0, handler);\n } // We may also be currently executing this hook. If the callback\n // we're adding would come after the current callback, there's no\n // problem; otherwise we need to increase the execution index of\n // any other runs by 1 to account for the added element.\n\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex++;\n }\n });\n } else {\n // This is the first hook of its type.\n hooksStore[hookName] = {\n handlers: [handler],\n runs: 0\n };\n }\n\n if (hookName !== 'hookAdded') {\n hooks.doAction('hookAdded', hookName, namespace, callback, priority);\n }\n };\n}\n\nexport default createAddHook;\n//# sourceMappingURL=createAddHook.js.map","/**\n * Returns a function which, when invoked, will return the name of the\n * currently running hook, or `null` if no hook of the given type is currently\n * running.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {() => string | null} Function that returns the current hook name or null.\n */\nfunction createCurrentHook(hooks, storeKey) {\n return function currentHook() {\n var _hooksStore$__current, _hooksStore$__current2;\n\n var hooksStore = hooks[storeKey];\n return (_hooksStore$__current = (_hooksStore$__current2 = hooksStore.__current[hooksStore.__current.length - 1]) === null || _hooksStore$__current2 === void 0 ? void 0 : _hooksStore$__current2.name) !== null && _hooksStore$__current !== void 0 ? _hooksStore$__current : null;\n };\n}\n\nexport default createCurrentHook;\n//# sourceMappingURL=createCurrentHook.js.map","/**\n * Internal dependencies\n */\nimport validateHookName from './validateHookName.js';\n/**\n * @callback DidHook\n *\n * Returns the number of times an action has been fired.\n *\n * @param {string} hookName The hook name to check.\n *\n * @return {number | undefined} The number of times the hook has run.\n */\n\n/**\n * Returns a function which, when invoked, will return the number of times a\n * hook has been called.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DidHook} Function that returns a hook's call count.\n */\n\nfunction createDidHook(hooks, storeKey) {\n return function didHook(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0;\n };\n}\n\nexport default createDidHook;\n//# sourceMappingURL=createDidHook.js.map","/**\n * @callback DoingHook\n * Returns whether a hook is currently being executed.\n *\n * @param {string} [hookName] The name of the hook to check for. If\n * omitted, will check for any hook being executed.\n *\n * @return {boolean} Whether the hook is being executed.\n */\n\n/**\n * Returns a function which, when invoked, will return whether a hook is\n * currently being executed.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DoingHook} Function that returns whether a hook is currently\n * being executed.\n */\nfunction createDoingHook(hooks, storeKey) {\n return function doingHook(hookName) {\n var hooksStore = hooks[storeKey]; // If the hookName was not passed, check for any current hook.\n\n if ('undefined' === typeof hookName) {\n return 'undefined' !== typeof hooksStore.__current[0];\n } // Return the __current hook.\n\n\n return hooksStore.__current[0] ? hookName === hooksStore.__current[0].name : false;\n };\n}\n\nexport default createDoingHook;\n//# sourceMappingURL=createDoingHook.js.map","/**\n * @callback HasHook\n *\n * Returns whether any handlers are attached for the given hookName and optional namespace.\n *\n * @param {string} hookName The name of the hook to check for.\n * @param {string} [namespace] Optional. The unique namespace identifying the callback\n * in the form `vendor/plugin/function`.\n *\n * @return {boolean} Whether there are handlers that are attached to the given hook.\n */\n\n/**\n * Returns a function which, when invoked, will return whether any handlers are\n * attached to a particular hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {HasHook} Function that returns whether any handlers are\n * attached to a particular hook and optional namespace.\n */\nfunction createHasHook(hooks, storeKey) {\n return function hasHook(hookName, namespace) {\n var hooksStore = hooks[storeKey]; // Use the namespace if provided.\n\n if ('undefined' !== typeof namespace) {\n return hookName in hooksStore && hooksStore[hookName].handlers.some(function (hook) {\n return hook.namespace === namespace;\n });\n }\n\n return hookName in hooksStore;\n };\n}\n\nexport default createHasHook;\n//# sourceMappingURL=createHasHook.js.map","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\n\n/**\n * Internal dependencies\n */\nimport createAddHook from './createAddHook';\nimport createRemoveHook from './createRemoveHook';\nimport createHasHook from './createHasHook';\nimport createRunHook from './createRunHook';\nimport createCurrentHook from './createCurrentHook';\nimport createDoingHook from './createDoingHook';\nimport createDidHook from './createDidHook';\n/**\n * Internal class for constructing hooks. Use `createHooks()` function\n *\n * Note, it is necessary to expose this class to make its type public.\n *\n * @private\n */\n\nexport var _Hooks = function _Hooks() {\n _classCallCheck(this, _Hooks);\n\n /** @type {import('.').Store} actions */\n this.actions = Object.create(null);\n this.actions.__current = [];\n /** @type {import('.').Store} filters */\n\n this.filters = Object.create(null);\n this.filters.__current = [];\n this.addAction = createAddHook(this, 'actions');\n this.addFilter = createAddHook(this, 'filters');\n this.removeAction = createRemoveHook(this, 'actions');\n this.removeFilter = createRemoveHook(this, 'filters');\n this.hasAction = createHasHook(this, 'actions');\n this.hasFilter = createHasHook(this, 'filters');\n this.removeAllActions = createRemoveHook(this, 'actions', true);\n this.removeAllFilters = createRemoveHook(this, 'filters', true);\n this.doAction = createRunHook(this, 'actions');\n this.applyFilters = createRunHook(this, 'filters', true);\n this.currentAction = createCurrentHook(this, 'actions');\n this.currentFilter = createCurrentHook(this, 'filters');\n this.doingAction = createDoingHook(this, 'actions');\n this.doingFilter = createDoingHook(this, 'filters');\n this.didAction = createDidHook(this, 'actions');\n this.didFilter = createDidHook(this, 'filters');\n};\n/** @typedef {_Hooks} Hooks */\n\n/**\n * Returns an instance of the hooks object.\n *\n * @return {Hooks} A Hooks instance.\n */\n\nfunction createHooks() {\n return new _Hooks();\n}\n\nexport default createHooks;\n//# sourceMappingURL=createHooks.js.map","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback RemoveHook\n * Removes the specified callback (or all callbacks) from the hook with a given hookName\n * and namespace.\n *\n * @param {string} hookName The name of the hook to modify.\n * @param {string} namespace The unique namespace identifying the callback in the\n * form `vendor/plugin/function`.\n *\n * @return {number | undefined} The number of callbacks removed.\n */\n\n/**\n * Returns a function which, when invoked, will remove a specified hook or all\n * hooks by the given name.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [removeAll=false] Whether to remove all callbacks for a hookName,\n * without regard to namespace. Used to create\n * `removeAll*` functions.\n *\n * @return {RemoveHook} Function that removes hooks.\n */\n\nfunction createRemoveHook(hooks, storeKey) {\n var removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function removeHook(hookName, namespace) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!removeAll && !validateNamespace(namespace)) {\n return;\n } // Bail if no hooks exist by this name\n\n\n if (!hooksStore[hookName]) {\n return 0;\n }\n\n var handlersRemoved = 0;\n\n if (removeAll) {\n handlersRemoved = hooksStore[hookName].handlers.length;\n hooksStore[hookName] = {\n runs: hooksStore[hookName].runs,\n handlers: []\n };\n } else {\n // Try to find the specified callback to remove.\n var handlers = hooksStore[hookName].handlers;\n\n var _loop = function _loop(i) {\n if (handlers[i].namespace === namespace) {\n handlers.splice(i, 1);\n handlersRemoved++; // This callback may also be part of a hook that is\n // currently executing. If the callback we're removing\n // comes after the current callback, there's no problem;\n // otherwise we need to decrease the execution index of any\n // other runs by 1 to account for the removed element.\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex--;\n }\n });\n }\n };\n\n for (var i = handlers.length - 1; i >= 0; i--) {\n _loop(i);\n }\n }\n\n if (hookName !== 'hookRemoved') {\n hooks.doAction('hookRemoved', hookName, namespace);\n }\n\n return handlersRemoved;\n };\n}\n\nexport default createRemoveHook;\n//# sourceMappingURL=createRemoveHook.js.map","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\n\n/**\n * Returns a function which, when invoked, will execute all callbacks\n * registered to a hook of the specified type, optionally returning the final\n * value of the call chain.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [returnFirstArg=false] Whether each hook callback is expected to\n * return its first argument.\n *\n * @return {(hookName:string, ...args: unknown[]) => unknown} Function that runs hook callbacks.\n */\nfunction createRunHook(hooks, storeKey) {\n var returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function runHooks(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!hooksStore[hookName]) {\n hooksStore[hookName] = {\n handlers: [],\n runs: 0\n };\n }\n\n hooksStore[hookName].runs++;\n var handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds.\n\n if ('production' !== process.env.NODE_ENV) {\n // Handle any 'all' hooks registered.\n if ('hookAdded' !== hookName && hooksStore.all) {\n handlers.push.apply(handlers, _toConsumableArray(hooksStore.all.handlers));\n }\n }\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (!handlers || !handlers.length) {\n return returnFirstArg ? args[0] : undefined;\n }\n\n var hookInfo = {\n name: hookName,\n currentIndex: 0\n };\n\n hooksStore.__current.push(hookInfo);\n\n while (hookInfo.currentIndex < handlers.length) {\n var handler = handlers[hookInfo.currentIndex];\n var result = handler.callback.apply(null, args);\n\n if (returnFirstArg) {\n args[0] = result;\n }\n\n hookInfo.currentIndex++;\n }\n\n hooksStore.__current.pop();\n\n if (returnFirstArg) {\n return args[0];\n }\n };\n}\n\nexport default createRunHook;\n//# sourceMappingURL=createRunHook.js.map","/**\n * Internal dependencies\n */\nimport createHooks from './createHooks';\n/** @typedef {(...args: any[])=>any} Callback */\n\n/**\n * @typedef Handler\n * @property {Callback} callback The callback\n * @property {string} namespace The namespace\n * @property {number} priority The namespace\n */\n\n/**\n * @typedef Hook\n * @property {Handler[]} handlers Array of handlers\n * @property {number} runs Run counter\n */\n\n/**\n * @typedef Current\n * @property {string} name Hook name\n * @property {number} currentIndex The index\n */\n\n/**\n * @typedef {Record & {__current: Current[]}} Store\n */\n\n/**\n * @typedef {'actions' | 'filters'} StoreKey\n */\n\n/**\n * @typedef {import('./createHooks').Hooks} Hooks\n */\n\nexport var defaultHooks = createHooks();\nvar addAction = defaultHooks.addAction,\n addFilter = defaultHooks.addFilter,\n removeAction = defaultHooks.removeAction,\n removeFilter = defaultHooks.removeFilter,\n hasAction = defaultHooks.hasAction,\n hasFilter = defaultHooks.hasFilter,\n removeAllActions = defaultHooks.removeAllActions,\n removeAllFilters = defaultHooks.removeAllFilters,\n doAction = defaultHooks.doAction,\n applyFilters = defaultHooks.applyFilters,\n currentAction = defaultHooks.currentAction,\n currentFilter = defaultHooks.currentFilter,\n doingAction = defaultHooks.doingAction,\n doingFilter = defaultHooks.doingFilter,\n didAction = defaultHooks.didAction,\n didFilter = defaultHooks.didFilter,\n actions = defaultHooks.actions,\n filters = defaultHooks.filters;\nexport { createHooks, addAction, addFilter, removeAction, removeFilter, hasAction, hasFilter, removeAllActions, removeAllFilters, doAction, applyFilters, currentAction, currentFilter, doingAction, doingFilter, didAction, didFilter, actions, filters };\n//# sourceMappingURL=index.js.map","/**\n * Validate a hookName string.\n *\n * @param {string} hookName The hook name to validate. Should be a non empty string containing\n * only numbers, letters, dashes, periods and underscores. Also,\n * the hook name cannot begin with `__`.\n *\n * @return {boolean} Whether the hook name is valid.\n */\nfunction validateHookName(hookName) {\n if ('string' !== typeof hookName || '' === hookName) {\n // eslint-disable-next-line no-console\n console.error('The hook name must be a non-empty string.');\n return false;\n }\n\n if (/^__/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name cannot begin with `__`.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name can only contain numbers, letters, dashes, periods and underscores.');\n return false;\n }\n\n return true;\n}\n\nexport default validateHookName;\n//# sourceMappingURL=validateHookName.js.map","/**\n * Validate a namespace string.\n *\n * @param {string} namespace The namespace to validate - should take the form\n * `vendor/plugin/function`.\n *\n * @return {boolean} Whether the namespace is valid.\n */\nfunction validateNamespace(namespace) {\n if ('string' !== typeof namespace || '' === namespace) {\n // eslint-disable-next-line no-console\n console.error('The namespace must be a non-empty string.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.\\-\\/]*$/.test(namespace)) {\n // eslint-disable-next-line no-console\n console.error('The namespace can only contain numbers, letters, dashes, periods, underscores and slashes.');\n return false;\n }\n\n return true;\n}\n\nexport default validateNamespace;\n//# sourceMappingURL=validateNamespace.js.map","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n/**\n * External dependencies\n */\nimport Tannin from 'tannin';\n/**\n * @typedef {Record} LocaleData\n */\n\n/**\n * Default locale data to use for Tannin domain when not otherwise provided.\n * Assumes an English plural forms expression.\n *\n * @type {LocaleData}\n */\n\nvar DEFAULT_LOCALE_DATA = {\n '': {\n /** @param {number} n */\n plural_forms: function plural_forms(n) {\n return n === 1 ? 0 : 1;\n }\n }\n};\n/*\n * Regular expression that matches i18n hooks like `i18n.gettext`, `i18n.ngettext`,\n * `i18n.gettext_domain` or `i18n.ngettext_with_context` or `i18n.has_translation`.\n */\n\nvar I18N_HOOK_REGEXP = /^i18n\\.(n?gettext|has_translation)(_|$)/;\n/**\n * @typedef {(domain?: string) => LocaleData} GetLocaleData\n *\n * Returns locale data by domain in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} SetLocaleData\n *\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} ResetLocaleData\n *\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/** @typedef {() => void} SubscribeCallback */\n\n/** @typedef {() => void} UnsubscribeCallback */\n\n/**\n * @typedef {(callback: SubscribeCallback) => UnsubscribeCallback} Subscribe\n *\n * Subscribes to changes of locale data\n */\n\n/**\n * @typedef {(domain?: string) => string} GetFilterDomain\n * Retrieve the domain to use when calling domain-specific filters.\n */\n\n/**\n * @typedef {(text: string, domain?: string) => string} __\n *\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n */\n\n/**\n * @typedef {(text: string, context: string, domain?: string) => string} _x\n *\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, domain?: string) => string} _n\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, context: string, domain?: string) => string} _nx\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n */\n\n/**\n * @typedef {() => boolean} IsRtl\n *\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n */\n\n/**\n * @typedef {(single: string, context?: string, domain?: string) => boolean} HasTranslation\n *\n * Check if there is a translation for a given string in singular form.\n */\n\n/** @typedef {import('@wordpress/hooks').Hooks} Hooks */\n\n/**\n * An i18n instance\n *\n * @typedef I18n\n * @property {GetLocaleData} getLocaleData Returns locale data by domain in a Jed-formatted JSON object shape.\n * @property {SetLocaleData} setLocaleData Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n * @property {ResetLocaleData} resetLocaleData Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n * @property {Subscribe} subscribe Subscribes to changes of Tannin locale data.\n * @property {__} __ Retrieve the translation of text.\n * @property {_x} _x Retrieve translated string with gettext context.\n * @property {_n} _n Translates and retrieves the singular or plural form based on the supplied\n * number.\n * @property {_nx} _nx Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n * @property {IsRtl} isRTL Check if current locale is RTL.\n * @property {HasTranslation} hasTranslation Check if there is a translation for a given string.\n */\n\n/**\n * Create an i18n instance\n *\n * @param {LocaleData} [initialData] Locale data configuration.\n * @param {string} [initialDomain] Domain for which configuration applies.\n * @param {Hooks} [hooks] Hooks implementation.\n * @return {I18n} I18n instance\n */\n\nexport var createI18n = function createI18n(initialData, initialDomain, hooks) {\n /**\n * The underlying instance of Tannin to which exported functions interface.\n *\n * @type {Tannin}\n */\n var tannin = new Tannin({});\n var listeners = new Set();\n\n var notifyListeners = function notifyListeners() {\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n /**\n * Subscribe to changes of locale data.\n *\n * @param {SubscribeCallback} callback Subscription callback.\n * @return {UnsubscribeCallback} Unsubscribe callback.\n */\n\n\n var subscribe = function subscribe(callback) {\n listeners.add(callback);\n return function () {\n return listeners.delete(callback);\n };\n };\n /** @type {GetLocaleData} */\n\n\n var getLocaleData = function getLocaleData() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return tannin.data[domain];\n };\n /**\n * @param {LocaleData} [data]\n * @param {string} [domain]\n */\n\n\n var doSetLocaleData = function doSetLocaleData(data) {\n var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';\n tannin.data[domain] = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA), tannin.data[domain]), data); // Populate default domain configuration (supported locale date which omits\n // a plural forms expression).\n\n tannin.data[domain][''] = _objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA['']), tannin.data[domain]['']);\n };\n /** @type {SetLocaleData} */\n\n\n var setLocaleData = function setLocaleData(data, domain) {\n doSetLocaleData(data, domain);\n notifyListeners();\n };\n /** @type {ResetLocaleData} */\n\n\n var resetLocaleData = function resetLocaleData(data, domain) {\n // Reset all current Tannin locale data.\n tannin.data = {}; // Reset cached plural forms functions cache.\n\n tannin.pluralForms = {};\n setLocaleData(data, domain);\n };\n /**\n * Wrapper for Tannin's `dcnpgettext`. Populates default locale data if not\n * otherwise previously assigned.\n *\n * @param {string|undefined} domain Domain to retrieve the translated text.\n * @param {string|undefined} context Context information for the translators.\n * @param {string} single Text to translate if non-plural. Used as\n * fallback return value on a caught error.\n * @param {string} [plural] The text to be used if the number is\n * plural.\n * @param {number} [number] The number to compare against to use\n * either the singular or plural form.\n *\n * @return {string} The translated string.\n */\n\n\n var dcnpgettext = function dcnpgettext() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n var context = arguments.length > 1 ? arguments[1] : undefined;\n var single = arguments.length > 2 ? arguments[2] : undefined;\n var plural = arguments.length > 3 ? arguments[3] : undefined;\n var number = arguments.length > 4 ? arguments[4] : undefined;\n\n if (!tannin.data[domain]) {\n // use `doSetLocaleData` to set silently, without notifying listeners\n doSetLocaleData(undefined, domain);\n }\n\n return tannin.dcnpgettext(domain, context, single, plural, number);\n };\n /** @type {GetFilterDomain} */\n\n\n var getFilterDomain = function getFilterDomain() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return domain;\n };\n /** @type {__} */\n\n\n var __ = function __(text, domain) {\n var translation = dcnpgettext(domain, undefined, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext', translation, text, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_' + getFilterDomain(domain), translation, text, domain)\n );\n };\n /** @type {_x} */\n\n\n var _x = function _x(text, context, domain) {\n var translation = dcnpgettext(domain, context, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation based on context information.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context', translation, text, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context_' + getFilterDomain(domain), translation, text, context, domain)\n );\n };\n /** @type {_n} */\n\n\n var _n = function _n(single, plural, number, domain) {\n var translation = dcnpgettext(domain, undefined, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext', translation, single, plural, number, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_' + getFilterDomain(domain), translation, single, plural, number, domain)\n );\n };\n /** @type {_nx} */\n\n\n var _nx = function _nx(single, plural, number, context, domain) {\n var translation = dcnpgettext(domain, context, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string with gettext context.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context', translation, single, plural, number, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context_' + getFilterDomain(domain), translation, single, plural, number, context, domain)\n );\n };\n /** @type {IsRtl} */\n\n\n var isRTL = function isRTL() {\n return 'rtl' === _x('ltr', 'text direction');\n };\n /** @type {HasTranslation} */\n\n\n var hasTranslation = function hasTranslation(single, context, domain) {\n var _tannin$data, _tannin$data2;\n\n var key = context ? context + \"\\x04\" + single : single;\n var result = !!((_tannin$data = tannin.data) !== null && _tannin$data !== void 0 && (_tannin$data2 = _tannin$data[domain !== null && domain !== void 0 ? domain : 'default']) !== null && _tannin$data2 !== void 0 && _tannin$data2[key]);\n\n if (hooks) {\n /**\n * Filters the presence of a translation in the locale data.\n *\n * @param {boolean} hasTranslation Whether the translation is present or not..\n * @param {string} single The singular form of the translated text (used as key in locale data)\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation', result, single, context, domain);\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation_' + getFilterDomain(domain), result, single, context, domain);\n }\n\n return result;\n };\n\n if (initialData) {\n setLocaleData(initialData, initialDomain);\n }\n\n if (hooks) {\n /**\n * @param {string} hookName\n */\n var onHookAddedOrRemoved = function onHookAddedOrRemoved(hookName) {\n if (I18N_HOOK_REGEXP.test(hookName)) {\n notifyListeners();\n }\n };\n\n hooks.addAction('hookAdded', 'core/i18n', onHookAddedOrRemoved);\n hooks.addAction('hookRemoved', 'core/i18n', onHookAddedOrRemoved);\n }\n\n return {\n getLocaleData: getLocaleData,\n setLocaleData: setLocaleData,\n resetLocaleData: resetLocaleData,\n subscribe: subscribe,\n __: __,\n _x: _x,\n _n: _n,\n _nx: _nx,\n isRTL: isRTL,\n hasTranslation: hasTranslation\n };\n};\n//# sourceMappingURL=create-i18n.js.map","/**\n * Internal dependencies\n */\nimport { createI18n } from './create-i18n';\n/**\n * WordPress dependencies\n */\n\nimport { defaultHooks } from '@wordpress/hooks';\nvar i18n = createI18n(undefined, undefined, defaultHooks);\n/**\n * Default, singleton instance of `I18n`.\n */\n\nexport default i18n;\n/*\n * Comments in this file are duplicated from ./i18n due to\n * https://github.com/WordPress/gutenberg/pull/20318#issuecomment-590837722\n */\n\n/**\n * @typedef {import('./create-i18n').LocaleData} LocaleData\n * @typedef {import('./create-i18n').SubscribeCallback} SubscribeCallback\n * @typedef {import('./create-i18n').UnsubscribeCallback} UnsubscribeCallback\n */\n\n/**\n * Returns locale data by domain in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {string} [domain] Domain for which to get the data.\n * @return {LocaleData} Locale data.\n */\n\nexport var getLocaleData = i18n.getLocaleData.bind(i18n);\n/**\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var setLocaleData = i18n.setLocaleData.bind(i18n);\n/**\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var resetLocaleData = i18n.resetLocaleData.bind(i18n);\n/**\n * Subscribes to changes of locale data\n *\n * @param {SubscribeCallback} callback Subscription callback\n * @return {UnsubscribeCallback} Unsubscribe callback\n */\n\nexport var subscribe = i18n.subscribe.bind(i18n);\n/**\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n *\n * @param {string} text Text to translate.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated text.\n */\n\nexport var __ = i18n.__.bind(i18n);\n/**\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n *\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated context string without pipe.\n */\n\nexport var _x = i18n._x.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _n = i18n._n.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _nx = i18n._nx.bind(i18n);\n/**\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n *\n * @return {boolean} Whether locale is RTL.\n */\n\nexport var isRTL = i18n.isRTL.bind(i18n);\n/**\n * Check if there is a translation for a given string (in singular form).\n *\n * @param {string} single Singular form of the string to look up.\n * @param {string} [context] Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n * @return {boolean} Whether the translation exists or not.\n */\n\nexport var hasTranslation = i18n.hasTranslation.bind(i18n);\n//# sourceMappingURL=default-i18n.js.map","export { sprintf } from './sprintf';\nexport * from './create-i18n';\nexport { default as defaultI18n, setLocaleData, resetLocaleData, getLocaleData, subscribe, __, _x, _n, _nx, isRTL, hasTranslation } from './default-i18n';\n//# sourceMappingURL=index.js.map","/**\n * External dependencies\n */\nimport memoize from 'memize';\nimport sprintfjs from 'sprintf-js';\n/**\n * Log to console, once per message; or more precisely, per referentially equal\n * argument set. Because Jed throws errors, we log these to the console instead\n * to avoid crashing the application.\n *\n * @param {...*} args Arguments to pass to `console.error`\n */\n\nvar logErrorOnce = memoize(console.error); // eslint-disable-line no-console\n\n/**\n * Returns a formatted string. If an error occurs in applying the format, the\n * original format string is returned.\n *\n * @param {string} format The format of the string to generate.\n * @param {...*} args Arguments to apply to the format.\n *\n * @see https://www.npmjs.com/package/sprintf-js\n *\n * @return {string} The formatted string.\n */\n\nexport function sprintf(format) {\n try {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return sprintfjs.sprintf.apply(sprintfjs, [format].concat(args));\n } catch (error) {\n logErrorOnce('sprintf error: \\n\\n' + error.toString());\n return format;\n }\n}\n//# sourceMappingURL=sprintf.js.map","/**\n * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview.\n * The names of the elements that will be updated are specified using the \"will-change\" attribute.\n * It is primarily used in components from Style/Quick Settings.\n * For instance, when the \"FrmPrimaryColorStyleComponent\" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds.\n */\nexport default class frmStyleDependentUpdaterComponent {\n\n\t/**\n\t * Creates an instance of frmStyleDependentUpdaterComponent.\n\t * @param {HTMLElement} component - The component element.\n\t */\n\tconstructor( component ) {\n\t\tthis.component = component;\n\t\ttry {\n\t\t\tconst willChangeData = JSON.parse( this.component.dataset.willChange );\n\t\t\tthis.data = {\n\t\t\t\tpropagateInputs: this.initPropagationList( willChangeData ),\n\t\t\t\tchangeEvent: new Event( 'change', { bubbles: true } )\n\t\t\t};\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'Error parsing JSON data from \"will-change\" attribute.', error );\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the list of inputs to propagate changes to.\n\t * The selection is made by provided input's names list in \"will-change\" attribute.\n\t * @param {string[]} inputNames - The names of the inputs to propagate changes to.\n\t * @return {HTMLElement[]} - The list of inputs to propagate changes to.\n\t */\n\tinitPropagationList( inputNames ) {\n\t\tconst list = [];\n\t\tinputNames.forEach( ( name ) => {\n\t\t\tconst input = document.querySelector( `input[name=\"${name}\"]` );\n\t\t\tif ( null !== input ) {\n\t\t\t\tlist.push( input );\n\t\t\t}\n\t\t});\n\t\treturn list;\n\t}\n\n\t/**\n\t * Updates all dependent elements with the given value.\n\t * @param {string} value - The value to update the dependent elements with.\n\t */\n\tupdateAllDependentElements( value ) {\n\t\tconsole.log( this.data.propagateInputs );\n\t\tthis.data.propagateInputs.forEach( ( input ) => {\n\t\t\tinput.value = value;\n\t\t});\n\t\tthis.data.propagateInputs[0].dispatchEvent( this.data.changeEvent );\n\t}\n}","import { show, hide } from 'core/utils';\n\n/**\n * Represents a radio style component.\n * @class\n */\nexport default class frmRadioStyleComponent {\n\n\tconstructor() {\n\t\tthis.radioElements = document.querySelectorAll( '.frm-style-component.frm-radio-component' );\n\t\tif ( 0 < this.radioElements.length ) {\n\t\t\tthis.init();\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the radio style component.\n\t */\n\tinit() {\n\t\tthis.radioElements.forEach( ( element ) => {\n\t\t\tthis.initOnRadioChange( element );\n\t\t});\n\t\tthis.initTrackerOnAccordionClick();\n\t}\n\n\tinitTrackerOnAccordionClick() {\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\n\t\taccordionitems.forEach( ( accordionitem ) => {\n\t\t\taccordionitem.addEventListener( 'click', ( event ) => {\n\t\t\t\tconst wrapper = event.target.closest( '.accordion-section' );\n\t\t\t\tconst radioButtons = wrapper.querySelectorAll( '.frm-style-component.frm-radio-component input[type=\"radio\"]:checked' );\n\n\t\t\t\tradioButtons.forEach( ( radio ) => {\n\t\t\t\t\tsetTimeout( () => this.onRadioChange( radio ), 200 );\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the onRadioChange event for the given wrapper.\n\t * @param {HTMLElement} radioElement - The radio element.\n\t */\n\tinitOnRadioChange( radioElement ) {\n\t\tradioElement.querySelectorAll( 'input[type=\"radio\"]' ).forEach( ( radio ) => {\n\t\t\tif ( radio.checked ) {\n\t\t\t\tthis.onRadioChange( radio );\n\t\t\t}\n\t\t\tradio.addEventListener( 'change', ( event ) => {\n\t\t\t\tthis.onRadioChange( event.target );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Handles the onRadioChange event for the given wrapper.\n\t * @param {HTMLElement} target - The active radio button.\n\t */\n\tonRadioChange( target ) {\n\t\tconst wrapper = target.closest( '.frm-style-component.frm-radio-component' );\n\t\tconst activeItem = wrapper.querySelector( 'input[type=\"radio\"]:checked + label' );\n\n\t\tif ( null === activeItem ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.moveTracker( activeItem, wrapper );\n\t\tthis.hideExtraElements( target );\n\t\tthis.maybeShowExtraElements( target );\n\t}\n\n\t/**\n\t * Display additional elements related to the selected radio option.\n\t * @param {HTMLElement} radio - The radio button element.\n\t */\n\tmaybeShowExtraElements( radio ) {\n\t\tconst elementAttr = radio.getAttribute( 'data-frm-show-element' );\n\t\tif ( null === elementAttr ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elements = document.querySelectorAll( `div[data-frm-element=\"${elementAttr}\"]` );\n\n\t\tif ( 0 === elements.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\telements.forEach( ( element ) => {\n\t\t\tshow( element );\n\t\t\telement.classList.add( 'frm-element-is-visible' );\n\t\t});\n\t}\n\n\t/**\n\t * Hide the possible opepend extra elements.\n\t */\n\thideExtraElements() {\n\t\tconst elements = document.querySelectorAll( '.frm-element-is-visible' );\n\t\tif ( 0 === elements.length ) {\n\t\t\treturn;\n\t\t}\n\t\telements.forEach( ( element ) => {\n\t\t\telement.classList.remove( 'frm-element-is-visible' );\n\t\t\telement.classList.add( 'frm_hidden' );\n\t\t\thide( element );\n\t\t});\n\t}\n\n\t/**\n\t * Moves the tracker to the active item.\n\t * @param {HTMLElement} activeItem - The active item element.\n\t * @param {HTMLElement} wrapper - The wrapper element.\n\t */\n\tmoveTracker( activeItem, wrapper ) {\n\t\tconst offset = activeItem.offsetLeft;\n\t\tconst width = activeItem.offsetWidth;\n\t\tconst tracker = wrapper.querySelector( '.frm-radio-active-tracker' );\n\n\t\ttracker.style.left = 0;\n\t\ttracker.style.width = `${width}px`;\n\t\ttracker.style.transform = `translateX(${ offset }px)`;\n\t}\n}\n","import frmStyleDependentUpdaterComponent from './dependent-updater-component';\n/**\n * Represents a slider style component.\n * @class frmSliderStyleComponent\n */\nexport default class frmSliderStyleComponent {\n\n\tconstructor() {\n\t\tthis.sliderElements = document.querySelectorAll( '.frm-slider-component' );\n\t\tif ( 0 === this.sliderElements.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// The slider bullet point width in pixels. Used in value calculation on drag event.\n\t\tthis.sliderBulletWidth = 16;\n\t\tthis.sliderMarginRight = 5;\n\t\tthis.eventsChange = [];\n\n\t\tconst { debounce } = frmDom.util;\n\t\tthis.valueChangeDebouncer = debounce( ( index ) => this.triggerValueChange( index ), 25 );\n\n\t\tthis.initOptions();\n\t\tthis.init();\n\t}\n\n\t/**\n\t * Initializes the options for the slider style component.\n\t */\n\tinitOptions() {\n\t\tthis.options = [];\n\t\tthis.sliderElements.forEach( ( element, index ) => {\n\t\t\tconst parentWrapper = element.classList.contains( 'frm-has-multiple-values' ) ? element.closest( '.frm-style-component' ) : element;\n\t\t\tthis.options.push({\n\t\t\t\tdragging: false,\n\t\t\t\tstartX: 0,\n\t\t\t\ttranslateX: 0,\n\t\t\t\tmaxValue: parseInt( element.dataset.maxValue, 10 ),\n\t\t\t\telement: element,\n\t\t\t\tindex: index,\n\t\t\t\tvalue: 0,\n\t\t\t\tdependentUpdater: parentWrapper.classList.contains( 'frm-style-dependent-updater-component' ) ? new frmStyleDependentUpdaterComponent( parentWrapper ) : null\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the slider style component.\n\t */\n\tinit() {\n\t\tthis.initSlidersPosition();\n\t\tthis.initDraggable();\n\t}\n\n\t/**\n\t * Initializes the draggable functionality for the slider style component.\n\t */\n\tinitDraggable() {\n\t\tthis.sliderElements.forEach( ( element, index ) => {\n\t\t\tthis.eventsChange[ index ] = new Event( 'change', { \n\t\t\t\tbubbles: true,\n\t\t\t\tcancelable: true\n\t\t\t});\n\t\t\tconst draggableBullet = element.querySelector( '.frm-slider-bullet' );\n\t\t\tconst valueInput = element.querySelector( '.frm-slider-value input[type=\"text\"]' );\n\n\t\t\tvalueInput.addEventListener( 'change', ( event ) => {\n\t\t\t\tconst unit = element.querySelector( 'select' ).value;\n\n\t\t\t\tif ( this.getMaxValue( unit, index ) < parseInt( event.target.value, 10 ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.initSliderWidth( element );\n\t\t\t\tthis.options[ index ].fullValue = this.updateValue( element, valueInput.value + unit );\n\t\t\t\tthis.triggerValueChange( index );\n\t\t\t});\n\n\t\t\tthis.expandSliderGroup( element );\n\t\t\tthis.updateOnUnitChange( element, valueInput, index );\n\t\t\tthis.changeSliderPositionOnClick( element, valueInput, index );\n\n\t\t\tdraggableBullet.addEventListener( 'mousedown', ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.enableDragging( event, index );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mousemove', ( event ) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.moveTracker( event, index );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mouseup', ( event) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.disableDragging( index, event );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mouseleave', ( event ) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.disableDragging( index, event );\n\t\t\t});\n\t\t});\n\t}\n\n\texpandSliderGroup( element ) {\n\t\tconst svgIcon = element.querySelector( '.frmsvg' );\n\n\t\tif ( 'undefined' === typeof element.dataset.displaySliders || null === svgIcon ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst sliderGroupItems = this.getSliderGroupItems( element );\n\t\tsvgIcon.addEventListener( 'click', ( ) => {\n\t\t\tsliderGroupItems.forEach( ( item ) => {\n\t\t\t\titem.classList.toggle( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\tupdateOnUnitChange( element, valueInput, index ) {\n\t\telement.querySelector( 'select' ).addEventListener( 'change', ( event ) => {\n\t\t\tconst unit = event.target.value.toLowerCase();\n\n\t\t\tif ( '' === unit ) {\n\t\t\t\telement.classList.add( 'frm-disabled', 'frm-empty' );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( 'auto' === unit ) {\n\t\t\t\telement.classList.add( 'frm-disabled' );\n\t\t\t\tthis.updateValue( element, 'auto' );\n\t\t\t\tthis.triggerValueChange( index );\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\telement.classList.remove( 'frm-disabled', 'frm-empty' );\n\t\t\tthis.options[ index ].fullValue = valueInput.value + unit;\n\t\t\tthis.updateValue( element, this.options[ index ].fullValue );\n\t\t\tthis.triggerValueChange( index );\n\t\t});\n\t}\n\n\tchangeSliderPositionOnClick( element, valueInput, index ) {\n\t\tconst frmSlider = element.querySelector( '.frm-slider' );\n\t\tconst customEvent = new Event( 'change', {\n\t\t\t'bubbles': true,\n\t\t\t'cancelable': true\n\t\t});\n\n\t\tfrmSlider.addEventListener( 'click', ( event ) => {\n\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\n\t\t\tif ( ! event.target.classList.contains( 'frm-slider' ) && ! event.target.classList.contains( 'frm-slider-active-track' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst sliderWidth = frmSlider.offsetWidth - this.sliderBulletWidth;\n\t\t\tconst sliderRect = frmSlider.getBoundingClientRect();\n\t\t\tconst deltaX = event.clientX - sliderRect.left - this.sliderBulletWidth;\n\t\t\tconst unit = element.querySelector( 'select' ).value;\n\t\t\tconst value = this.calculateValue( sliderWidth, deltaX, this.getMaxValue( unit, index ) );\n\n\t\t\tif ( value < 0 ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.options[ index ].fullValue = this.updateValue( element, value + unit );\n\t\t\tthis.initChildSlidersWidth( element, deltaX, index, value + unit );\n\n\t\t\tvalueInput.value = value;\n\t\t\tvalueInput.dispatchEvent( customEvent );\n\n\t\t});\n\t}\n\n\t/**\n\t * Retrieves an array of slider group items based on the provided element.\n\t *\n\t * @param {HTMLElement} element - The element to retrieve slider group items from.\n\t * @return {NodeList} - An array-like object containing the slider group items.\n\t */\n\tgetSliderGroupItems( element ) {\n\t\tif ( 'undefined' === typeof element.dataset.displaySliders ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst slidersGroup = element.dataset.displaySliders.split( ',' );\n\t\tconst query = slidersGroup.map( ( item ) => {\n\t\t\treturn `.frm-slider-component[data-type=\"${item}\"]`;\n\t\t}).join( ', ' );\n\n\t\treturn element.closest( '.frm-style-component' ).querySelectorAll( query )\n\t}\n\n\t/**\n\t * Initializes the position of sliders when a style accordion section is opened.\n\t */\n\tinitSlidersPosition() {\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\tconst quickSettings = document.querySelector( '.frm-quick-settings' );\n\t\tconst openedAccordion = document.querySelector( '.accordion-section.open' );\n\n\t\t// Detect if upload background image upload has triggered and initialize the \"Image Opacity\" slider width.\n\t\twp.hooks.addAction( 'frm_pro_on_bg_image_upload', 'formidable', ( event ) => {\n\t\t\tconst imageBackgroundOpacitySlider = event.closest( '.accordion-section-content' ).querySelector( '#frm-bg-image-opacity-slider' );\n\t\t\tthis.initSlidersWidth( imageBackgroundOpacitySlider );\n\t\t});\n\n\t\t// init the sliders width from \"Quick Settings\" page.\n\t\tif ( null !== quickSettings ) {\n\t\t\tthis.initSlidersWidth( quickSettings );\n\t\t}\n\n\t\t// Init the sliders width in opened accordion section from \"Advanced Settings\" page.\n\t\tif ( null !== openedAccordion ) {\n\t\t\tthis.initSlidersWidth( openedAccordion );\n\t\t}\n\n\t\t// init the sliders width everytime when an accordion section is opened from \"Advanced Settings\" page.\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', ( event ) => {\n\t\t\t\tthis.initSlidersWidth( event.target.closest( '.accordion-section' ) );\n\t\t\t});\n\t\t});\n\n\t\tthis.initSliderPositionOnFieldShapeChange();\n\t}\n\n\t/**\n\t * Initializes the width of \"Corner Radius\" slider that is dynamically is displayed on \"Field Shape\" option change from \"Quick Settings\".\n\t *\n\t * @return {void}\n\t */\n\tinitSliderPositionOnFieldShapeChange() {\n\t\tconst fieldShapeType = document.querySelector( '.frm-style-component.frm-field-shape' );\n\n\t\tif ( null === fieldShapeType ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst radioButtons = fieldShapeType.querySelectorAll( 'input[type=\"radio\"]' );\n\t\tradioButtons.forEach( ( radio ) => {\n\t\t\tradio.addEventListener( 'change', ( event ) => {\n\t\t\t\tif ( event.target.checked && 'rounded-corner' === event.target.value ) {\n\t\t\t\t\tconst slider = document.querySelector( 'div[data-frm-element=\"field-shape-corner-radius\"] .frm-slider-component' );\n\t\t\t\t\tthis.initSliderWidth( slider );\n\t\t\t\t}\n\t\t\t})\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the width of sliders within a given section.\n\t *\n\t * @param {HTMLElement} section - The section containing the sliders.\n\t * @return {void}\n\t */\n\tinitSlidersWidth( section ) {\n\t\tconst sliders = section.querySelectorAll( '.frm-slider-component' );\n\t\tsliders.forEach( ( slider ) => {\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.initSliderWidth( slider );\n\t\t\t}, 100 );\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the width of a slider.\n\t *\n\t * @param {HTMLElement} slider - The slider element.\n\t * @return {void}\n\t */\n\tinitSliderWidth( slider ) {\n\t\tif ( slider.classList.contains( 'frm-disabled' ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst index = this.getSliderIndex( slider );\n\t\tconst sliderWidth = slider.querySelector( '.frm-slider' ).offsetWidth - this.sliderBulletWidth;\n\t\tconst value = parseInt( slider.querySelector( '.frm-slider-value input[type=\"text\"]' ).value, 10 );\n\t\tconst unit = slider.querySelector( 'select' ).value;\n\t\tconst deltaX = '%' === unit ? Math.round( sliderWidth * value / 100 ) : Math.ceil( ( value / this.options[ index ].maxValue ) * sliderWidth );\n\n\t\tslider.querySelector( '.frm-slider-active-track' ).style.width = `${deltaX}px`;\n\t\tthis.options[ index ].translateX = deltaX;\n\t\tthis.options[ index ].value = value + unit;\n\t}\n\n\t/**\n\t * Initializes the width of child sliders.\n\t *\n\t * @param {HTMLElement} slider - The parent slider element.\n\t * @param {number} width - The width to set for the child sliders.\n\t * @param {number} index - The starting index for the child sliders.\n\t * @param {number} value - The value to set for the child sliders.\n\t */\n\tinitChildSlidersWidth( slider, width, index, value ) {\n\t\tif ( ! slider.classList.contains( 'frm-has-independent-fields' ) && ! slider.classList.contains( 'frm-has-multiple-values' ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst childSliders = slider.classList.contains( 'frm-has-independent-fields' ) ? slider.querySelectorAll( '.frm-independent-slider-field' ) : this.getSliderGroupItems( slider );\n\n\t\tchildSliders.forEach( ( item, childIndex ) => {\n\t\t\titem.querySelector( '.frm-slider-active-track' ).style.width = `${width}px`;\n\t\t\tthis.options[ index + childIndex + 1 ].translateX = width;\n\t\t\tthis.options[ index + childIndex + 1 ].value = value;\n\t\t});\n\t}\n\n\t/**\n\t * Returns the index of the specified slider element.\n\t *\n\t * @param {HTMLElement} slider - The slider element.\n\t * @return {number} The index of the slider element.\n\t */\n\tgetSliderIndex( slider ) {\n\t\treturn this.options.filter( ( option ) => {\n\t\t\treturn option.element === slider;\n\t\t})[0].index;\n\t};\n\n\t/**\n\t * Handles the movement of the slider tracker.\n\t *\n\t * @param {Event} event - The event object representing the mouse movement.\n\t * @param {number} index - The index of the slider element.\n\t * @return {void}\n\t */\n\tmoveTracker( event, index ) {\n\t\tif ( ! this.options[ index ].dragging ) {\n\t\t\treturn;\n\t\t}\n\t\tlet deltaX = event.clientX - this.options[ index ].startX;\n\t\tconst element = this.sliderElements[ index ];\n\t\tconst sliderWidth = element.querySelector( '.frm-slider' ).offsetWidth;\n\n\t\t// Ensure deltaX does not go below 0\n\t\tdeltaX = Math.max( deltaX, 0 );\n\n\t\tif ( deltaX + this.sliderBulletWidth / 2 + this.sliderMarginRight >= sliderWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tconst unit = element.querySelector( 'select' ).value;\n\t\tconst value = this.calculateValue( sliderWidth, deltaX, this.getMaxValue( unit, index ) );\n\n\t\telement.querySelector( '.frm-slider-value input[type=\"text\"]' ).value = value;\n\t\telement.querySelector( '.frm-slider-bullet .frm-slider-value-label' ).innerText = value;\n\t\telement.querySelector( '.frm-slider-active-track' ).style.width = `${deltaX}px`;\n\t\tthis.initChildSlidersWidth( element, deltaX, index, value + unit );\n\n\t\tthis.options[ index ].translateX = deltaX;\n\t\tthis.options[ index ].value = value + unit;\n\t\tthis.options[ index ].fullValue = this.updateValue( element, this.options[ index ].value );\n\t\tthis.valueChangeDebouncer( index );\n\t}\n\n\t/**\n\t * Get the maximum value based on the unit and index.\n\t *\n\t * @param {string} unit - The unit of measurement.\n\t * @param {number} index - The index of the option.\n\t * @return {number} The maximum value.\n\t */\n\tgetMaxValue( unit, index ) {\n\t\treturn '%' === unit ? 100 : this.options[ index ].maxValue;\n\t}\n\n\t/**\n\t * Enables dragging for the slider style component.\n\t *\n\t * @param {Event} event - The event object.\n\t * @param {number} index - The index of the option being dragged.\n\t */\n\tenableDragging( event, index ) {\n\t\tevent.target.classList.add( 'frm-dragging' );\n\t\tthis.options[ index ].dragging = true;\n\t\tthis.options[ index ].startX = event.clientX - this.options[ index ].translateX;\n\t}\n\n\t/**\n\t * Disables dragging for a specific index.\n\t *\n\t * @param {number} index - The index of the option to disable dragging for.\n\t * @param {Event} event - The event object triggered by the dragging action.\n\t */\n\tdisableDragging( index, event ) {\n\t\tif ( false === this.options[ index ].dragging ) {\n\t\t\treturn;\n\t\t}\n\t\tevent.target.classList.remove( 'frm-dragging' );\n\t\tthis.options[ index ].dragging = false;\n\t\tthis.triggerValueChange( index );\n\t}\n\n\t/**\n\t * Triggers a value change for the specified index.\n\t *\n\t * @param {number} index - The index of the value to be changed.\n\t */\n\ttriggerValueChange( index ) {\n\n\t\tif ( null !== this.options[ index ].dependentUpdater ) {\n\t\t\tconsole.log( this.options[ index ].fullValue );\n\t\t\tthis.options[ index ].dependentUpdater.updateAllDependentElements( this.options[ index ].fullValue );\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = this.sliderElements[ index ].classList.contains( 'frm-has-multiple-values' ) ? this.sliderElements[ index ].closest('.frm-style-component').querySelector( 'input[type=\"hidden\"]' ) : this.sliderElements[ index ].querySelectorAll( '.frm-slider-value input[type=\"hidden\"]' );\n\t\tif ( input instanceof NodeList ) {\n\t\t\tinput.forEach( ( item ) => {\n\t\t\t\titem.dispatchEvent( this.eventsChange[ index ] );\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tinput.dispatchEvent( this.eventsChange[ index ] );\n\t}\n\n\t/**\n\t * Calculates the value based on the width, deltaX, and maxValue.\n\t *\n\t * @param {number} width - The width of the slider.\n\t * @param {number} deltaX - The change in x-coordinate.\n\t * @param {number} maxValue - The maximum value.\n\t * @return {number} - The calculated value.\n\t */\n\tcalculateValue( width, deltaX, maxValue ) {\n\n\t\t// Indicates the additional value generated by the slider's drag progress (up to 100%) and the width of the slider bullet.\n\t\t// Generates a more accurate value for the slider's start (0) and end (maximum value) positions, taking into account the slider's position and bullet width.\n\t\tconst delta = Math.ceil( this.sliderBulletWidth * ( deltaX / width ) );\n\n\t\tconst value = Math.ceil( ( ( deltaX + delta ) / width ) * maxValue );\n\n\t\treturn Math.min( value, maxValue )\n\t}\n\n\t/**\n\t * Updates the value of a slider component.\n\t *\n\t * @param {HTMLElement} element - The slider component element.\n\t * @param {string} value - The new value to be set.\n\t * @return {string} - The updated value.\n\t */\n\tupdateValue( element, value ) {\n\t\t// When the slider component is used for \"Base Font Size\", we need to update a hidden input field when change happens to indicate that the \"Base Font Size\" has been adjusted.\n\t\t// Used to avoid conflicts with other possible font sizes adjustemnts in \"Advanced Settings\" when moving from \"Quick Settings\" when \"Base Font Size\" is not changed.\n\t\tif ( element.classList.contains( 'frm-base-font-size' ) ) {\n\t\t\tconst userBaseFontSizeInput = document.querySelector( 'input[name=\"frm_style_setting[post_content][use_base_font_size]\"]' );\n\t\t\tif ( null !== userBaseFontSizeInput ) {\n\t\t\t\tuserBaseFontSizeInput.value = 'true';\n\t\t\t}\n\t\t}\n\t\tif ( element.classList.contains( 'frm-has-multiple-values' ) ) {\n\t\t\tconst input = element.closest( '.frm-style-component' ).querySelector( 'input[type=\"hidden\"]' );\n\t\t\tconst inputValue = input.value.split( ' ' );\n\t\t\tconst type = element.dataset.type;\n\n\t\t\tif ( ! inputValue[2] ) {\n\t\t\t\tinputValue[2] = '0px';\n\t\t\t}\n\n\t\t\tif ( ! inputValue[3] ) {\n\t\t\t\tinputValue[3] = '0px';\n\t\t\t}\n\n\t\t\tswitch ( type ) {\n\t\t\t\tcase 'vertical':\n\t\t\t\t\tinputValue[0] = value;\n\t\t\t\t\tinputValue[2] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'horizontal':\n\t\t\t\t\tinputValue[1] = value;\n\t\t\t\t\tinputValue[3] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'top':\n\t\t\t\t\tinputValue[0] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'bottom':\n\t\t\t\t\tinputValue[2] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'left':\n\t\t\t\t\tinputValue[3] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'right':\n\t\t\t\t\tinputValue[1] = value;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst newValue = inputValue.join( ' ' );\n\t\t\tinput.value = newValue;\n\n\t\t\tconst childSlidersGroup = this.getSliderGroupItems( element );\n\t\t\tchildSlidersGroup.forEach( ( slider ) => {\n\t\t\t\tconst unitMeasure = this.getUnitMeasureFromValue( value );\n\t\t\t\tslider.querySelector( '.frm-slider-value input[type=\"text\"]' ).value = parseInt( value, 10 );\n\t\t\t\tslider.querySelector( 'select' ).value = unitMeasure;\n\t\t\t});\n\n\t\t\treturn newValue;\n\t\t}\n\n\t\tif ( element.classList.contains( 'frm-has-independent-fields' ) ) {\n\t\t\tconst inputValues = element.querySelectorAll( '.frm-slider-value input[type=\"hidden\"]' );\n\t\t\tconst visibleValues = element.querySelectorAll( '.frm-slider-value input[type=\"text\"]' );\n\t\t\tinputValues.forEach( ( input, index ) => {\n\t\t\t\tinput.value = value;\n\t\t\t\tvisibleValues[ index + 1 ].value = parseInt( value, 10 );\n\t\t\t});\n\n\t\t\treturn value;\n\t\t}\n\n\t\telement.querySelector( '.frm-slider-value input[type=\"hidden\"]' ).value = value;\n\t\treturn value;\n\t}\n\n\t/**\n\t * Returns the unit of measurement used in the given value.\n\t *\n\t * @param {string} value - The value to check for the unit of measurement.\n\t * @return {string} The unit of measurement ('%', 'px', 'em') found in the value, or an empty string if none is found.\n\t */\n\tgetUnitMeasureFromValue( value ) {\n\t\treturn [ '%', 'px', 'em' ].find( unit => value.includes( unit ) ) || '';\n\t}\n}","import { frmTabsNavigator } from '../../components/class-tabs-navigator';\n/**\n * Represents a Tabs Style Component.\n * @class\n */\nexport default class frmTabsStyleComponent {\n\n\tconstructor() {\n\t\tthis.elements = document.querySelectorAll( '.frm-style-tabs-wrapper' );\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.init();\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the Tabs Style Component.\n\t */\n\tinit() {\n\t\tthis.elements.forEach( ( element ) => {\n\t\t\tnew frmTabsNavigator( element );\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the component on tab click.\n\t * @param {Element} wrapper - The wrapper element.\n\t */\n\tinitOnTabClick( wrapper ) {\n\t\tthis.initActiveBackgroundWidth( wrapper );\n\t\twrapper.querySelectorAll( '.frm-tab-item' ).forEach( ( tab ) => {\n\t\t\ttab.addEventListener( 'click', ( event ) => {\n\t\t\t\tthis.onTabClick( event.target.closest( '.frm-tabs-wrapper' ) );\n\t\t\t});\n\t\t});\n\t}\n}","export class frmTabsNavigator {\n\n\tconstructor( wrapper ) {\n\t\tif ( 'undefined' === typeof wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrapper = wrapper instanceof Element ? wrapper : document.querySelector( wrapper );\n\n\t\tif ( null === this.wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.flexboxSlidesGap = '16px';\n\t\tthis.navs = this.wrapper.querySelectorAll( '.frm-tabs-navs ul > li' );\n\t\tthis.slideTrackLine = this.wrapper.querySelector( '.frm-tabs-active-underline' );\n\t\tthis.slideTrack = this.wrapper.querySelector( '.frm-tabs-slide-track' );\n\t\tthis.slides = this.wrapper.querySelectorAll( '.frm-tabs-slide-track > div' );\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\tif ( null === this.wrapper || ! this.navs.length || null === this.trackLine || null === this.slideTrack || ! this.slides.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initDefaultSlideTrackerWidth();\n\t\tthis.navs.forEach( ( nav, index ) => {\n\t\t\tnav.addEventListener( 'click', event => this.onNavClick( event, index ) );\n\t\t});\n\t}\n\n\tonNavClick( event, index ) {\n\t\tthis.removeActiveClassnameFromNavs();\n\t\tevent.target.classList.add( 'frm-active' );\n\t\tthis.initSlideTrackUnderline( event.target, index );\n\t\tthis.changeSlide( index );\n\t}\n\n\tinitDefaultSlideTrackerWidth() {\n\t\tif ( ! this.slideTrackLine.dataset.initialWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.slideTrackLine.style.width = `${this.slideTrackLine.dataset.initialWidth}px`;\n\t}\n\tinitSlideTrackUnderline( nav, index ) {\n\t\tthis.slideTrackLine.classList.remove( 'frm-first', 'frm-last' );\n\t\tconst activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) ) ;\n\t\tthis.slideTrackLine.style.transform = `translateX(${activeNav.offsetLeft}px)`;\n\t\tthis.slideTrackLine.style.width = activeNav.clientWidth + 'px';\n\n\t\tif ( this.navs.length === index + 1 ) { \n\t\t\tthis.slideTrackLine.classList.add( 'frm-last' );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 === index ) {\n\t\t\tthis.slideTrackLine.classList.add( 'frm-first' );\n\t\t}\n\t}\n\n\tchangeSlide( index ) {\n\t\tthis.removeActiveClassnameFromSlides();\n\t\tconst translate = index == 0 ? '0px' : `calc( ( ${( index * 100 )}% + ${parseInt( this.flexboxSlidesGap, 10 ) * index }px ) * -1 )`;\n\t\tthis.slideTrack.style.transform = `translateX(${translate})`;\n\t\tif ( index in this.slides ) {\n\t\t\tthis.slides[ index ].classList.add( 'frm-active' );\n\t\t}\n\t}\n\n\tremoveActiveClassnameFromSlides() {\n\t\tthis.slides.forEach( slide => slide.classList.remove( 'frm-active' ) );\n\t}\n\n\tremoveActiveClassnameFromNavs() {\n\t\tthis.navs.forEach( nav => nav.classList.remove( 'frm-active' ) );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\n","export class frmAnimate {\n\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements\n\t * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d\n\t *\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true });\n\t\t});\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay - The transition delay value.\n\t *\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( index + 1 ) * delay + 's';\n\t\t\t});\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t});\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${type}\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true });\n};\n","export const { onClickPreventDefault } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = ( paramName ) => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ([ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = {[paramName]: paramValue};\n\t\twindow.history[updateMethod]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","/**\n * Memize options object.\n *\n * @typedef MemizeOptions\n *\n * @property {number} [maxSize] Maximum size of the cache.\n */\n\n/**\n * Internal cache entry.\n *\n * @typedef MemizeCacheNode\n *\n * @property {?MemizeCacheNode|undefined} [prev] Previous node.\n * @property {?MemizeCacheNode|undefined} [next] Next node.\n * @property {Array<*>} args Function arguments for cache\n * entry.\n * @property {*} val Function result.\n */\n\n/**\n * Properties of the enhanced function for controlling cache.\n *\n * @typedef MemizeMemoizedFunction\n *\n * @property {()=>void} clear Clear the cache.\n */\n\n/**\n * Accepts a function to be memoized, and returns a new memoized function, with\n * optional options.\n *\n * @template {Function} F\n *\n * @param {F} fn Function to memoize.\n * @param {MemizeOptions} [options] Options object.\n *\n * @return {F & MemizeMemoizedFunction} Memoized function.\n */\nfunction memize( fn, options ) {\n\tvar size = 0;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar head;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar tail;\n\n\toptions = options || {};\n\n\tfunction memoized( /* ...args */ ) {\n\t\tvar node = head,\n\t\t\tlen = arguments.length,\n\t\t\targs, i;\n\n\t\tsearchCache: while ( node ) {\n\t\t\t// Perform a shallow equality test to confirm that whether the node\n\t\t\t// under test is a candidate for the arguments passed. Two arrays\n\t\t\t// are shallowly equal if their length matches and each entry is\n\t\t\t// strictly equal between the two sets. Avoid abstracting to a\n\t\t\t// function which could incur an arguments leaking deoptimization.\n\n\t\t\t// Check whether node arguments match arguments length\n\t\t\tif ( node.args.length !== arguments.length ) {\n\t\t\t\tnode = node.next;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Check whether node arguments match arguments values\n\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\tif ( node.args[ i ] !== arguments[ i ] ) {\n\t\t\t\t\tnode = node.next;\n\t\t\t\t\tcontinue searchCache;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// At this point we can assume we've found a match\n\n\t\t\t// Surface matched node to head if not already\n\t\t\tif ( node !== head ) {\n\t\t\t\t// As tail, shift to previous. Must only shift if not also\n\t\t\t\t// head, since if both head and tail, there is no previous.\n\t\t\t\tif ( node === tail ) {\n\t\t\t\t\ttail = node.prev;\n\t\t\t\t}\n\n\t\t\t\t// Adjust siblings to point to each other. If node was tail,\n\t\t\t\t// this also handles new tail's empty `next` assignment.\n\t\t\t\t/** @type {MemizeCacheNode} */ ( node.prev ).next = node.next;\n\t\t\t\tif ( node.next ) {\n\t\t\t\t\tnode.next.prev = node.prev;\n\t\t\t\t}\n\n\t\t\t\tnode.next = head;\n\t\t\t\tnode.prev = null;\n\t\t\t\t/** @type {MemizeCacheNode} */ ( head ).prev = node;\n\t\t\t\thead = node;\n\t\t\t}\n\n\t\t\t// Return immediately\n\t\t\treturn node.val;\n\t\t}\n\n\t\t// No cached value found. Continue to insertion phase:\n\n\t\t// Create a copy of arguments (avoid leaking deoptimization)\n\t\targs = new Array( len );\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\targs[ i ] = arguments[ i ];\n\t\t}\n\n\t\tnode = {\n\t\t\targs: args,\n\n\t\t\t// Generate the result from original function\n\t\t\tval: fn.apply( null, args ),\n\t\t};\n\n\t\t// Don't need to check whether node is already head, since it would\n\t\t// have been returned above already if it was\n\n\t\t// Shift existing head down list\n\t\tif ( head ) {\n\t\t\thead.prev = node;\n\t\t\tnode.next = head;\n\t\t} else {\n\t\t\t// If no head, follows that there's no tail (at initial or reset)\n\t\t\ttail = node;\n\t\t}\n\n\t\t// Trim tail if we're reached max size and are pending cache insertion\n\t\tif ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) {\n\t\t\ttail = /** @type {MemizeCacheNode} */ ( tail ).prev;\n\t\t\t/** @type {MemizeCacheNode} */ ( tail ).next = null;\n\t\t} else {\n\t\t\tsize++;\n\t\t}\n\n\t\thead = node;\n\n\t\treturn node.val;\n\t}\n\n\tmemoized.clear = function() {\n\t\thead = null;\n\t\ttail = null;\n\t\tsize = 0;\n\t};\n\n\tif ( process.env.NODE_ENV === 'test' ) {\n\t\t// Cache is not exposed in the public API, but used in tests to ensure\n\t\t// expected list progression\n\t\tmemoized.getCache = function() {\n\t\t\treturn [ head, tail, size ];\n\t\t};\n\t}\n\n\t// Ignore reason: There's not a clear solution to create an intersection of\n\t// the function with additional properties, where the goal is to retain the\n\t// function signature of the incoming argument and add control properties\n\t// on the return value.\n\n\t// @ts-ignore\n\treturn memoized;\n}\n\nmodule.exports = memize;\n","/* global window, exports, define */\n\n!function() {\n 'use strict'\n\n var re = {\n not_string: /[^s]/,\n not_bool: /[^t]/,\n not_type: /[^T]/,\n not_primitive: /[^v]/,\n number: /[diefg]/,\n numeric_arg: /[bcdiefguxX]/,\n json: /[j]/,\n not_json: /[^j]/,\n text: /^[^\\x25]+/,\n modulo: /^\\x25{2}/,\n placeholder: /^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,\n key: /^([a-z_][a-z_\\d]*)/i,\n key_access: /^\\.([a-z_][a-z_\\d]*)/i,\n index_access: /^\\[(\\d+)\\]/,\n sign: /^[+-]/\n }\n\n function sprintf(key) {\n // `arguments` is not an array, but should be fine for this call\n return sprintf_format(sprintf_parse(key), arguments)\n }\n\n function vsprintf(fmt, argv) {\n return sprintf.apply(null, [fmt].concat(argv || []))\n }\n\n function sprintf_format(parse_tree, argv) {\n var cursor = 1, tree_length = parse_tree.length, arg, output = '', i, k, ph, pad, pad_character, pad_length, is_positive, sign\n for (i = 0; i < tree_length; i++) {\n if (typeof parse_tree[i] === 'string') {\n output += parse_tree[i]\n }\n else if (typeof parse_tree[i] === 'object') {\n ph = parse_tree[i] // convenience purposes only\n if (ph.keys) { // keyword argument\n arg = argv[cursor]\n for (k = 0; k < ph.keys.length; k++) {\n if (arg == undefined) {\n throw new Error(sprintf('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"', ph.keys[k], ph.keys[k-1]))\n }\n arg = arg[ph.keys[k]]\n }\n }\n else if (ph.param_no) { // positional argument (explicit)\n arg = argv[ph.param_no]\n }\n else { // positional argument (implicit)\n arg = argv[cursor++]\n }\n\n if (re.not_type.test(ph.type) && re.not_primitive.test(ph.type) && arg instanceof Function) {\n arg = arg()\n }\n\n if (re.numeric_arg.test(ph.type) && (typeof arg !== 'number' && isNaN(arg))) {\n throw new TypeError(sprintf('[sprintf] expecting number but found %T', arg))\n }\n\n if (re.number.test(ph.type)) {\n is_positive = arg >= 0\n }\n\n switch (ph.type) {\n case 'b':\n arg = parseInt(arg, 10).toString(2)\n break\n case 'c':\n arg = String.fromCharCode(parseInt(arg, 10))\n break\n case 'd':\n case 'i':\n arg = parseInt(arg, 10)\n break\n case 'j':\n arg = JSON.stringify(arg, null, ph.width ? parseInt(ph.width) : 0)\n break\n case 'e':\n arg = ph.precision ? parseFloat(arg).toExponential(ph.precision) : parseFloat(arg).toExponential()\n break\n case 'f':\n arg = ph.precision ? parseFloat(arg).toFixed(ph.precision) : parseFloat(arg)\n break\n case 'g':\n arg = ph.precision ? String(Number(arg.toPrecision(ph.precision))) : parseFloat(arg)\n break\n case 'o':\n arg = (parseInt(arg, 10) >>> 0).toString(8)\n break\n case 's':\n arg = String(arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 't':\n arg = String(!!arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'T':\n arg = Object.prototype.toString.call(arg).slice(8, -1).toLowerCase()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'u':\n arg = parseInt(arg, 10) >>> 0\n break\n case 'v':\n arg = arg.valueOf()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'x':\n arg = (parseInt(arg, 10) >>> 0).toString(16)\n break\n case 'X':\n arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase()\n break\n }\n if (re.json.test(ph.type)) {\n output += arg\n }\n else {\n if (re.number.test(ph.type) && (!is_positive || ph.sign)) {\n sign = is_positive ? '+' : '-'\n arg = arg.toString().replace(re.sign, '')\n }\n else {\n sign = ''\n }\n pad_character = ph.pad_char ? ph.pad_char === '0' ? '0' : ph.pad_char.charAt(1) : ' '\n pad_length = ph.width - (sign + arg).length\n pad = ph.width ? (pad_length > 0 ? pad_character.repeat(pad_length) : '') : ''\n output += ph.align ? sign + arg + pad : (pad_character === '0' ? sign + pad + arg : pad + sign + arg)\n }\n }\n }\n return output\n }\n\n var sprintf_cache = Object.create(null)\n\n function sprintf_parse(fmt) {\n if (sprintf_cache[fmt]) {\n return sprintf_cache[fmt]\n }\n\n var _fmt = fmt, match, parse_tree = [], arg_names = 0\n while (_fmt) {\n if ((match = re.text.exec(_fmt)) !== null) {\n parse_tree.push(match[0])\n }\n else if ((match = re.modulo.exec(_fmt)) !== null) {\n parse_tree.push('%')\n }\n else if ((match = re.placeholder.exec(_fmt)) !== null) {\n if (match[2]) {\n arg_names |= 1\n var field_list = [], replacement_field = match[2], field_match = []\n if ((field_match = re.key.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n while ((replacement_field = replacement_field.substring(field_match[0].length)) !== '') {\n if ((field_match = re.key_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else if ((field_match = re.index_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n }\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n match[2] = field_list\n }\n else {\n arg_names |= 2\n }\n if (arg_names === 3) {\n throw new Error('[sprintf] mixing positional and named placeholders is not (yet) supported')\n }\n\n parse_tree.push(\n {\n placeholder: match[0],\n param_no: match[1],\n keys: match[2],\n sign: match[3],\n pad_char: match[4],\n align: match[5],\n width: match[6],\n precision: match[7],\n type: match[8]\n }\n )\n }\n else {\n throw new SyntaxError('[sprintf] unexpected placeholder')\n }\n _fmt = _fmt.substring(match[0].length)\n }\n return sprintf_cache[fmt] = parse_tree\n }\n\n /**\n * export to either browser or node.js\n */\n /* eslint-disable quote-props */\n if (typeof exports !== 'undefined') {\n exports['sprintf'] = sprintf\n exports['vsprintf'] = vsprintf\n }\n if (typeof window !== 'undefined') {\n window['sprintf'] = sprintf\n window['vsprintf'] = vsprintf\n\n if (typeof define === 'function' && define['amd']) {\n define(function() {\n return {\n 'sprintf': sprintf,\n 'vsprintf': vsprintf\n }\n })\n }\n }\n /* eslint-enable quote-props */\n}(); // eslint-disable-line\n","import pluralForms from '@tannin/plural-forms';\n\n/**\n * Tannin constructor options.\n *\n * @typedef {Object} TanninOptions\n *\n * @property {string} [contextDelimiter] Joiner in string lookup with context.\n * @property {Function} [onMissingKey] Callback to invoke when key missing.\n */\n\n/**\n * Domain metadata.\n *\n * @typedef {Object} TanninDomainMetadata\n *\n * @property {string} [domain] Domain name.\n * @property {string} [lang] Language code.\n * @property {(string|Function)} [plural_forms] Plural forms expression or\n * function evaluator.\n */\n\n/**\n * Domain translation pair respectively representing the singular and plural\n * translation.\n *\n * @typedef {[string,string]} TanninTranslation\n */\n\n/**\n * Locale data domain. The key is used as reference for lookup, the value an\n * array of two string entries respectively representing the singular and plural\n * translation.\n *\n * @typedef {{[key:string]:TanninDomainMetadata|TanninTranslation,'':TanninDomainMetadata|TanninTranslation}} TanninLocaleDomain\n */\n\n/**\n * Jed-formatted locale data.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @typedef {{[domain:string]:TanninLocaleDomain}} TanninLocaleData\n */\n\n/**\n * Default Tannin constructor options.\n *\n * @type {TanninOptions}\n */\nvar DEFAULT_OPTIONS = {\n\tcontextDelimiter: '\\u0004',\n\tonMissingKey: null,\n};\n\n/**\n * Given a specific locale data's config `plural_forms` value, returns the\n * expression.\n *\n * @example\n *\n * ```\n * getPluralExpression( 'nplurals=2; plural=(n != 1);' ) === '(n != 1)'\n * ```\n *\n * @param {string} pf Locale data plural forms.\n *\n * @return {string} Plural forms expression.\n */\nfunction getPluralExpression( pf ) {\n\tvar parts, i, part;\n\n\tparts = pf.split( ';' );\n\n\tfor ( i = 0; i < parts.length; i++ ) {\n\t\tpart = parts[ i ].trim();\n\t\tif ( part.indexOf( 'plural=' ) === 0 ) {\n\t\t\treturn part.substr( 7 );\n\t\t}\n\t}\n}\n\n/**\n * Tannin constructor.\n *\n * @class\n *\n * @param {TanninLocaleData} data Jed-formatted locale data.\n * @param {TanninOptions} [options] Tannin options.\n */\nexport default function Tannin( data, options ) {\n\tvar key;\n\n\t/**\n\t * Jed-formatted locale data.\n\t *\n\t * @name Tannin#data\n\t * @type {TanninLocaleData}\n\t */\n\tthis.data = data;\n\n\t/**\n\t * Plural forms function cache, keyed by plural forms string.\n\t *\n\t * @name Tannin#pluralForms\n\t * @type {Object}\n\t */\n\tthis.pluralForms = {};\n\n\t/**\n\t * Effective options for instance, including defaults.\n\t *\n\t * @name Tannin#options\n\t * @type {TanninOptions}\n\t */\n\tthis.options = {};\n\n\tfor ( key in DEFAULT_OPTIONS ) {\n\t\tthis.options[ key ] = options !== undefined && key in options\n\t\t\t? options[ key ]\n\t\t\t: DEFAULT_OPTIONS[ key ];\n\t}\n}\n\n/**\n * Returns the plural form index for the given domain and value.\n *\n * @param {string} domain Domain on which to calculate plural form.\n * @param {number} n Value for which plural form is to be calculated.\n *\n * @return {number} Plural form index.\n */\nTannin.prototype.getPluralForm = function( domain, n ) {\n\tvar getPluralForm = this.pluralForms[ domain ],\n\t\tconfig, plural, pf;\n\n\tif ( ! getPluralForm ) {\n\t\tconfig = this.data[ domain ][ '' ];\n\n\t\tpf = (\n\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t// @ts-ignore\n\t\t\tconfig.plural_forms\n\t\t);\n\n\t\tif ( typeof pf !== 'function' ) {\n\t\t\tplural = getPluralExpression(\n\t\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t\t// @ts-ignore\n\t\t\t\tconfig.plural_forms\n\t\t\t);\n\n\t\t\tpf = pluralForms( plural );\n\t\t}\n\n\t\tgetPluralForm = this.pluralForms[ domain ] = pf;\n\t}\n\n\treturn getPluralForm( n );\n};\n\n/**\n * Translate a string.\n *\n * @param {string} domain Translation domain.\n * @param {string|void} context Context distinguishing terms of the same name.\n * @param {string} singular Primary key for translation lookup.\n * @param {string=} plural Fallback value used for non-zero plural\n * form index.\n * @param {number=} n Value to use in calculating plural form.\n *\n * @return {string} Translated string.\n */\nTannin.prototype.dcnpgettext = function( domain, context, singular, plural, n ) {\n\tvar index, key, entry;\n\n\tif ( n === undefined ) {\n\t\t// Default to singular.\n\t\tindex = 0;\n\t} else {\n\t\t// Find index by evaluating plural form for value.\n\t\tindex = this.getPluralForm( domain, n );\n\t}\n\n\tkey = singular;\n\n\t// If provided, context is prepended to key with delimiter.\n\tif ( context ) {\n\t\tkey = context + this.options.contextDelimiter + singular;\n\t}\n\n\tentry = this.data[ domain ][ key ];\n\n\t// Verify not only that entry exists, but that the intended index is within\n\t// range and non-empty.\n\tif ( entry && entry[ index ] ) {\n\t\treturn entry[ index ];\n\t}\n\n\tif ( this.options.onMissingKey ) {\n\t\tthis.options.onMissingKey( singular, domain );\n\t}\n\n\t// If entry not found, fall back to singular vs. plural with zero index\n\t// representing the singular value.\n\treturn index === 0 ? singular : plural;\n};\n","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { __ } from '@wordpress/i18n';\nimport frmRadioStyleComponent from './styles/radio-style-component.js';\nimport frmSliderStyleComponent from './styles/slider-style-component.js';\nimport frmTabsStyleComponent from './styles/tabs-style-component.js';\nimport frmStyleDependentUpdaterComponent from './styles/dependent-updater-component.js';\n\n/**\n * Represents the frmStyleOptions class.\n * @class\n */\nclass frmStyleOptions {\n\n\tconstructor() {\n\t\tthis.success = frmDom.success;\n\t\tthis.init();\n\t\tthis.initHover();\n\t}\n\n\t/**\n\t * Initializes the style components: frmRadioStyleComponent, frmSliderStyleComponent, and frmTabsStyleComponent.\n\t * Init the dependent \n\t */\n\tinit() {\n\t\tnew frmRadioStyleComponent();\n\t\tnew frmSliderStyleComponent();\n\t\tnew frmTabsStyleComponent();\n\n\t\tthis.initColorPickerDependentUpdaterComponents();\n\t\tthis.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) );\n\t}\n\n\t/**\n\t * Initializes the color picker dependent updater components.\n\t * Retrieves the components and elements, and adds them to the elements array.\n\t * Adds an action hook for the frm_style_options_color_change event.\n\t */\n\tinitColorPickerDependentUpdaterComponents() {\n\t\tconst components = document.querySelectorAll( '.frm-style-dependent-updater-component.frm-colorpicker' );\n\t\tconst elements = [];\n\n\t\tcomponents.forEach( ( component ) => {\n\t\t\tconst element = component.querySelector( 'input.hex' );\n\t\t\tconst id = 'undefined' !== typeof element ? element.getAttribute( 'id' ) : null;\n\n\t\t\tif ( null !== id ) {\n\t\t\t\telements.push({\n\t\t\t\t\tid: id,\n\t\t\t\t\tdependentUpdaterClass: new frmStyleDependentUpdaterComponent( component, 'colorpicker' )\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\twp.hooks.addAction( 'frm_style_options_color_change', 'formidable', ( { event, value } ) => {\n\t\t\tconst container = event.target.closest( '.wp-picker-container' );\n\t\t\tconst id = event.target.getAttribute( 'id' );\n\n\t\t\tcontainer.querySelector( '.wp-color-result-text' ).innerText = value;\n\n\t\t\telements.forEach( ( element ) => {\n\t\t\t\tif ( element.id === id ) {\n\t\t\t\t\telement.dependentUpdaterClass.updateAllDependentElements( value );\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the hover functionality for the style options.\n\t * Creates a hover element and appends it to the settingsWrapper.\n\t * Adds event listeners for mouseover and click events.\n\t */\n\tinitHover() {\n\t\tconst settingsWrapper = document.querySelector( '.frm-right-panel .styling_settings .accordion-container' );\n\t\tif ( null === settingsWrapper ) {\n\t\t\treturn;\n\t\t}\n\t\tconst hoverElement = document.createElement( 'div' );\n\t\thoverElement.classList.add( 'frm_hidden' );\n\t\thoverElement.classList.add( 'frm-style-settings-hover' );\n\t\tsettingsWrapper.appendChild( hoverElement );\n\n\t\tconst styleOptionsMenu = settingsWrapper.querySelector( ':scope > ul' );\n\n\t\tstyleOptionsMenu.querySelectorAll( ':scope > li' ).forEach( ( item ) => {\n\t\t\titem.querySelector('h3').addEventListener( 'mouseover', ( event ) => {\n\t\t\t\thoverElement.style.transform = `translateY(${event.target.closest('li').offsetTop}px)`;\n\t\t\t\thoverElement.classList.add( 'frm-animating' );\n\t\t\t\thoverElement.classList.remove( 'frm_hidden' );\n\t\t\t\tsetTimeout( () => { hoverElement.classList.remove( 'frm-animating' ); }, 250 );\n\t\t\t});\n\t\t});\n\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', () => {\n\t\t\t\thoverElement.classList.add( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the copy to clipboard functionality for style classes.\n\t * Adds a click event listener to the copyLabel element.\n\t * Copies the class name to the clipboard and displays a success message.\n\t * @param {string} successMessage - The success message to display.\n\t */\n\tinitStyleClassCopyToClipboard( successMessage ) {\n\t\tconst copyLabel = document.querySelector( '.frm-copy-text' );\n\t\tcopyLabel.addEventListener( 'click', ( event ) => {\n\t\t\tconst className = event.currentTarget.innerText;\n\t\t\tnavigator.clipboard.writeText( className ).then( () => {\n\t\t\t\tthis.success( successMessage );\n\t\t\t});\n\t\t})\n\t}\n}\n\nnew frmStyleOptions();\n"],"names":["frmStyleDependentUpdaterComponent","component","_classCallCheck","willChangeData","JSON","parse","dataset","willChange","data","propagateInputs","initPropagationList","changeEvent","Event","bubbles","error","console","_createClass","key","value","inputNames","list","forEach","name","input","document","querySelector","concat","push","updateAllDependentElements","log","dispatchEvent","default","show","hide","frmRadioStyleComponent","radioElements","querySelectorAll","length","init","_this","element","initOnRadioChange","initTrackerOnAccordionClick","_this2","accordionitems","accordionitem","addEventListener","event","wrapper","target","closest","radioButtons","radio","setTimeout","onRadioChange","radioElement","_this3","checked","activeItem","moveTracker","hideExtraElements","maybeShowExtraElements","elementAttr","getAttribute","elements","classList","add","remove","offset","offsetLeft","width","offsetWidth","tracker","style","left","transform","frmSliderStyleComponent","sliderElements","sliderBulletWidth","sliderMarginRight","eventsChange","debounce","frmDom","util","valueChangeDebouncer","index","triggerValueChange","initOptions","options","parentWrapper","contains","dragging","startX","translateX","maxValue","parseInt","dependentUpdater","initSlidersPosition","initDraggable","cancelable","draggableBullet","valueInput","unit","getMaxValue","initSliderWidth","fullValue","updateValue","expandSliderGroup","updateOnUnitChange","changeSliderPositionOnClick","preventDefault","stopPropagation","enableDragging","disableDragging","svgIcon","displaySliders","sliderGroupItems","getSliderGroupItems","item","toggle","_this4","toLowerCase","_this5","frmSlider","customEvent","sliderWidth","sliderRect","getBoundingClientRect","deltaX","clientX","calculateValue","initChildSlidersWidth","slidersGroup","split","query","map","join","_this6","quickSettings","openedAccordion","wp","hooks","addAction","imageBackgroundOpacitySlider","initSlidersWidth","initSliderPositionOnFieldShapeChange","_this7","fieldShapeType","slider","section","_this8","sliders","getSliderIndex","Math","round","ceil","_this9","childSliders","childIndex","filter","option","max","innerText","_this10","NodeList","delta","min","_this11","userBaseFontSizeInput","inputValue","type","newValue","childSlidersGroup","unitMeasure","getUnitMeasureFromValue","inputValues","visibleValues","find","includes","frmTabsNavigator","frmTabsStyleComponent","initOnTabClick","initActiveBackgroundWidth","tab","onTabClick","Element","flexboxSlidesGap","navs","slideTrackLine","slideTrack","slides","trackLine","initDefaultSlideTrackerWidth","nav","onNavClick","removeActiveClassnameFromNavs","initSlideTrackUnderline","changeSlide","initialWidth","activeNav","clientWidth","removeActiveClassnameFromSlides","translate","slide","_window$frmGlobal","window","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","frmAnimate","arguments","undefined","prepareElements","fadeIn","applyStyleToElements","resetOpacity","once","cascadeFadeIn","delay","transitionDelay","opacity","callback","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","showFormError","inputId","errorId","message","inputElement","errorElement","warn","span","textContent","setAttribute","onClickPreventDefault","URL","location","href","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","__","frmStyleOptions","success","initHover","initColorPickerDependentUpdaterComponents","initStyleClassCopyToClipboard","components","id","dependentUpdaterClass","_ref","container","settingsWrapper","hoverElement","createElement","appendChild","styleOptionsMenu","offsetTop","successMessage","copyLabel","className","currentTarget","navigator","clipboard","writeText"],"sourceRoot":""} \ No newline at end of file diff --git a/js/src/admin/styles/dependent-updater-component.js b/js/src/settings-components/components/dependent-updater-component.js similarity index 93% rename from js/src/admin/styles/dependent-updater-component.js rename to js/src/settings-components/components/dependent-updater-component.js index cc1cb94324..c837e55bb5 100644 --- a/js/src/admin/styles/dependent-updater-component.js +++ b/js/src/settings-components/components/dependent-updater-component.js @@ -4,10 +4,10 @@ * It is primarily used in components from Style/Quick Settings. * For instance, when the "FrmPrimaryColorStyleComponent" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds. */ -export default class frmStyleDependentUpdaterComponent { +export default class frmDependentUpdaterComponent { /** - * Creates an instance of frmStyleDependentUpdaterComponent. + * Creates an instance of frmDependentUpdaterComponent. * @param {HTMLElement} component - The component element. */ constructor( component ) { @@ -50,4 +50,4 @@ export default class frmStyleDependentUpdaterComponent { }); this.data.propagateInputs[0].dispatchEvent( this.data.changeEvent ); } -} \ No newline at end of file +} diff --git a/js/src/admin/styles/radio-style-component.js b/js/src/settings-components/components/radio-component.js similarity index 96% rename from js/src/admin/styles/radio-style-component.js rename to js/src/settings-components/components/radio-component.js index 033eb79a64..4a44c5a0ea 100644 --- a/js/src/admin/styles/radio-style-component.js +++ b/js/src/settings-components/components/radio-component.js @@ -1,10 +1,10 @@ import { show, hide } from 'core/utils'; /** - * Represents a radio style component. + * Represents a radio component. * @class */ -export default class frmRadioStyleComponent { +export default class frmRadioComponent { constructor() { this.radioElements = document.querySelectorAll( '.frm-style-component.frm-radio-component' ); @@ -14,7 +14,7 @@ export default class frmRadioStyleComponent { } /** - * Initializes the radio style component. + * Initializes the radio component. */ init() { this.radioElements.forEach( ( element ) => { diff --git a/js/src/admin/styles/slider-style-component.js b/js/src/settings-components/components/slider-component.js similarity index 96% rename from js/src/admin/styles/slider-style-component.js rename to js/src/settings-components/components/slider-component.js index 448eee765a..f8fa4c4c0d 100644 --- a/js/src/admin/styles/slider-style-component.js +++ b/js/src/settings-components/components/slider-component.js @@ -1,9 +1,9 @@ -import frmStyleDependentUpdaterComponent from './dependent-updater-component'; +import frmDependentUpdaterComponent from './dependent-updater-component'; /** - * Represents a slider style component. - * @class frmSliderStyleComponent + * Represents a slider component. + * @class frmSliderComponent */ -export default class frmSliderStyleComponent { +export default class frmSliderComponent { constructor() { this.sliderElements = document.querySelectorAll( '.frm-slider-component' ); @@ -24,7 +24,7 @@ export default class frmSliderStyleComponent { } /** - * Initializes the options for the slider style component. + * Initializes the options for the slider component. */ initOptions() { this.options = []; @@ -38,13 +38,13 @@ export default class frmSliderStyleComponent { element: element, index: index, value: 0, - dependentUpdater: parentWrapper.classList.contains( 'frm-style-dependent-updater-component' ) ? new frmStyleDependentUpdaterComponent( parentWrapper ) : null + dependentUpdater: parentWrapper.classList.contains( 'frm-style-dependent-updater-component' ) ? new frmDependentUpdaterComponent( parentWrapper ) : null }); }); } /** - * Initializes the slider style component. + * Initializes the slider component. */ init() { this.initSlidersPosition(); @@ -52,11 +52,11 @@ export default class frmSliderStyleComponent { } /** - * Initializes the draggable functionality for the slider style component. + * Initializes the draggable functionality for the slider component. */ initDraggable() { this.sliderElements.forEach( ( element, index ) => { - this.eventsChange[ index ] = new Event( 'change', { + this.eventsChange[ index ] = new Event( 'change', { bubbles: true, cancelable: true }); @@ -207,7 +207,7 @@ export default class frmSliderStyleComponent { } /** - * Initializes the position of sliders when a style accordion section is opened. + * Initializes the position of sliders when a accordion section is opened. */ initSlidersPosition() { const accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' ); @@ -379,7 +379,7 @@ export default class frmSliderStyleComponent { } /** - * Enables dragging for the slider style component. + * Enables dragging for the slider component. * * @param {Event} event - The event object. * @param {number} index - The index of the option being dragged. @@ -539,4 +539,4 @@ export default class frmSliderStyleComponent { getUnitMeasureFromValue( value ) { return [ '%', 'px', 'em' ].find( unit => value.includes( unit ) ) || ''; } -} \ No newline at end of file +} diff --git a/js/src/admin/styles/tabs-style-component.js b/js/src/settings-components/components/tabs-component.js similarity index 85% rename from js/src/admin/styles/tabs-style-component.js rename to js/src/settings-components/components/tabs-component.js index 5db18a2ac8..abdb4258fd 100644 --- a/js/src/admin/styles/tabs-style-component.js +++ b/js/src/settings-components/components/tabs-component.js @@ -1,9 +1,9 @@ import { frmTabsNavigator } from '../../components/class-tabs-navigator'; /** - * Represents a Tabs Style Component. + * Represents a Tabs Component. * @class */ -export default class frmTabsStyleComponent { +export default class frmTabsComponent { constructor() { this.elements = document.querySelectorAll( '.frm-style-tabs-wrapper' ); @@ -13,7 +13,7 @@ export default class frmTabsStyleComponent { } /** - * Initializes the Tabs Style Component. + * Initializes the Tabs Component. */ init() { this.elements.forEach( ( element ) => { @@ -33,4 +33,4 @@ export default class frmTabsStyleComponent { }); }); } -} \ No newline at end of file +} diff --git a/js/src/admin/styles.js b/js/src/settings-components/settings-components.js similarity index 79% rename from js/src/admin/styles.js rename to js/src/settings-components/settings-components.js index 86332e6d60..ae3748267e 100644 --- a/js/src/admin/styles.js +++ b/js/src/settings-components/settings-components.js @@ -1,14 +1,14 @@ import { __ } from '@wordpress/i18n'; -import frmRadioStyleComponent from './styles/radio-style-component.js'; -import frmSliderStyleComponent from './styles/slider-style-component.js'; -import frmTabsStyleComponent from './styles/tabs-style-component.js'; -import frmStyleDependentUpdaterComponent from './styles/dependent-updater-component.js'; +import frmRadioComponent from './components/radio-component.js'; +import frmSliderComponent from './components/slider-component.js'; +import frmTabsComponent from './components/tabs-component.js'; +import frmDependentUpdaterComponent from './components/dependent-updater-component.js'; /** - * Represents the frmStyleOptions class. + * Represents the frmSettingsComponents class. * @class */ -class frmStyleOptions { +class frmSettingsComponents { constructor() { this.success = frmDom.success; @@ -17,13 +17,13 @@ class frmStyleOptions { } /** - * Initializes the style components: frmRadioStyleComponent, frmSliderStyleComponent, and frmTabsStyleComponent. - * Init the dependent + * Initializes the components: frmRadioComponent, frmSliderComponent, and frmTabsComponent. + * Init the dependent */ init() { - new frmRadioStyleComponent(); - new frmSliderStyleComponent(); - new frmTabsStyleComponent(); + new frmRadioComponent(); + new frmSliderComponent(); + new frmTabsComponent(); this.initColorPickerDependentUpdaterComponents(); this.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) ); @@ -45,7 +45,7 @@ class frmStyleOptions { if ( null !== id ) { elements.push({ id: id, - dependentUpdaterClass: new frmStyleDependentUpdaterComponent( component, 'colorpicker' ) + dependentUpdaterClass: new frmDependentUpdaterComponent( component, 'colorpicker' ) }); } }); @@ -65,7 +65,7 @@ class frmStyleOptions { } /** - * Initializes the hover functionality for the style options. + * Initializes the hover functionality for the options. * Creates a hover element and appends it to the settingsWrapper. * Adds event listeners for mouseover and click events. */ @@ -99,13 +99,17 @@ class frmStyleOptions { } /** - * Initializes the copy to clipboard functionality for style classes. + * Initializes the copy to clipboard functionality for classes. * Adds a click event listener to the copyLabel element. * Copies the class name to the clipboard and displays a success message. * @param {string} successMessage - The success message to display. */ initStyleClassCopyToClipboard( successMessage ) { const copyLabel = document.querySelector( '.frm-copy-text' ); + if ( ! copyLabel ) { + return; + } + copyLabel.addEventListener( 'click', ( event ) => { const className = event.currentTarget.innerText; navigator.clipboard.writeText( className ).then( () => { @@ -115,4 +119,4 @@ class frmStyleOptions { } } -new frmStyleOptions(); +new frmSettingsComponents(); diff --git a/webpack.config.js b/webpack.config.js index c81dc75799..0cb8975299 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -25,7 +25,7 @@ const config = { formidable_dashboard: './js/src/dashboard.js', 'onboarding-wizard': './js/src/onboarding-wizard/index.js', 'addons-page': './js/src/addons-page/index.js', - formidable_styles: './js/src/admin/styles.js', + 'formidable-settings-components': './js/src/settings-components/settings-components.js', }, output: { filename: '[name].js', From 91ded0bf5cbc0d47454caa0a4f62cc78a3b47029 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 11 Mar 2025 11:23:32 +0300 Subject: [PATCH 002/230] Fix .eslintignore file --- .eslintignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.eslintignore b/.eslintignore index 00edff8975..983f0ec1cf 100644 --- a/.eslintignore +++ b/.eslintignore @@ -5,7 +5,7 @@ **/formidable_overlay.js **/formidable_dashboard.js **/formidable-templates.js -**/settings-components.js +**/formidable-settings-components.js **/node_modules/** **/vendor/** From 21acb64238226f7413b14bdf10a9fc1ca5ec08d1 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 11 Mar 2025 12:50:31 +0300 Subject: [PATCH 003/230] Add new tabs to new fields --- classes/views/frm-forms/add_field_links.php | 340 ++++++++++---------- css/admin/frm-settings-components.css | 5 + css/frm_admin.css | 13 +- 3 files changed, 181 insertions(+), 177 deletions(-) diff --git a/classes/views/frm-forms/add_field_links.php b/classes/views/frm-forms/add_field_links.php index 7a7bf1b96f..c3e8f8751f 100644 --- a/classes/views/frm-forms/add_field_links.php +++ b/classes/views/frm-forms/add_field_links.php @@ -3,181 +3,187 @@ die( 'You are not allowed to call this page directly.' ); } ?> -
+
- +
+
+ +
+ +
+
    +
  • +
  • + +
+
-
- 'field-list', - 'placeholder' => __( 'Search Fields', 'formidable' ), - 'tosearch' => 'frmbutton', - ) - ); - ?> - -
- -

- -

-
    - $field_type ) { - - if ( isset( $field_type['section'] ) ) { - if ( ! isset( $field_sections[ $field_type['section'] ] ) ) { - $field_sections[ $field_type['section'] ] = array(); - } - $field_sections[ $field_type['section'] ][ $field_key ] = $field_type; - continue; - } - - if ( is_array( $field_type ) && isset( $field_type['switch_from'] ) ) { - continue; - } - - if ( is_array( $field_type ) && isset( $field_type['types'] ) ) { - _deprecated_argument( 'Field with sub types', '4.0' ); - $field_label = $field_type['name']; - - ?> - - -
-
- - -

- -

-
    - $field_type ) { - FrmFieldsHelper::show_add_field_buttons( compact( 'field_key', 'field_type', 'id', 'no_allow_class' ) ); - unset( $field_key, $field_type ); - } - ?> -
-
- -
- +
    + $field_type ) { + $field_label = FrmFormsHelper::get_field_link_name( $field_type ); + $classes = 'frmbutton frm6 frm_t' . $field_key; + if ( ! empty( $field_type['hide'] ) ) { + $classes .= ' frm_hidden'; + } + ?> +
  • + + + + + +
  • + +
+
+ +

+ +

+
    + $field_type ) { + + if ( isset( $field_type['section'] ) ) { + if ( ! isset( $field_sections[ $field_type['section'] ] ) ) { + $field_sections[ $field_type['section'] ] = array(); + } + $field_sections[ $field_type['section'] ][ $field_key ] = $field_type; + continue; + } + + if ( is_array( $field_type ) && isset( $field_type['switch_from'] ) ) { + continue; + } + + if ( is_array( $field_type ) && isset( $field_type['types'] ) ) { + _deprecated_argument( 'Field with sub types', '4.0' ); + $field_label = $field_type['name']; + ?> + + +
+
+ + +

+ +

+
    + $field_type ) { + FrmFieldsHelper::show_add_field_buttons( compact( 'field_key', 'field_type', 'id', 'no_allow_class' ) ); + unset( $field_key, $field_type ); + } + ?> +
+
+ +
+ +
-
-
-
-
- +
+
+
+
+
+ +
+
+
+
+ + + + + + + + __( 'Smart Default Values', 'formidable' ), + 'callback' => array( 'FrmFieldsHelper', 'smart_values' ), + 'id' => 'frm-smart-values-box', + ) + ); + + FrmFieldsHelper::inline_modal( + array( + 'title' => __( 'Add Layout Classes', 'formidable' ), + 'callback' => array( 'FrmFieldsHelper', 'layout_classes' ), + 'id' => 'frm-layout-classes-box', + ) + ); + + FrmFieldsHelper::inline_modal( + array( + 'title' => __( 'Input Mask Format', 'formidable' ), + 'callback' => array( 'FrmFieldsHelper', 'input_mask' ), + 'id' => 'frm-input-mask-box', + ) + ); + ?> +
+
-
- - - - - - - - __( 'Smart Default Values', 'formidable' ), - 'callback' => array( 'FrmFieldsHelper', 'smart_values' ), - 'id' => 'frm-smart-values-box', - ) - ); - - FrmFieldsHelper::inline_modal( - array( - 'title' => __( 'Add Layout Classes', 'formidable' ), - 'callback' => array( 'FrmFieldsHelper', 'layout_classes' ), - 'id' => 'frm-layout-classes-box', - ) - ); - - FrmFieldsHelper::inline_modal( - array( - 'title' => __( 'Input Mask Format', 'formidable' ), - 'callback' => array( 'FrmFieldsHelper', 'input_mask' ), - 'id' => 'frm-input-mask-box', - ) - ); - ?> -
diff --git a/css/admin/frm-settings-components.css b/css/admin/frm-settings-components.css index 2e44bb3757..fb69583e93 100644 --- a/css/admin/frm-settings-components.css +++ b/css/admin/frm-settings-components.css @@ -1,3 +1,7 @@ +.frm-settings-panel { + padding: var(--gap-md); +} + .formidable_page_formidable-styles.js .control-section .accordion-section-title:focus { background: none; } @@ -418,6 +422,7 @@ } .frm-style-tabs-wrapper .frm-tabs-navs { padding: 0px; + min-height: 44px; } .frm-style-tabs-wrapper .frm-tabs-navs ul { diff --git a/css/frm_admin.css b/css/frm_admin.css index bc9d1dec5b..de65c74be1 100644 --- a/css/frm_admin.css +++ b/css/frm_admin.css @@ -4394,13 +4394,7 @@ label input[type="checkbox"], label input[type="radio"] { font-size: inherit; } -#frm-options-panel { - padding: 0 var(--gap-sm); - color: var(--grey-900); -} - -.frm-right-panel a.frm_add_logic_link, -#frm-options-panel h3 { +.frm-right-panel a.frm_add_logic_link { padding: 15px 0; margin-top: -2px; } @@ -7796,7 +7790,6 @@ ul.frm_two_col { .field_type_list.frm_grid_container { gap: var(--gap-xs) var(--gap-sm); - margin: var(--gap-xs); } .field_type_list li { @@ -7806,7 +7799,7 @@ ul.frm_two_col { #frm-insert-fields .frm-search { float: none; - margin: 15px 20px; + margin: 0 0 var(--gap-md); width: auto; } @@ -7932,7 +7925,7 @@ input[disabled], gap: var(--gap-xs); align-items: center; border-radius: var(--border-radius) !important; - padding: var(--gap-xs) var(--gap-sm) !important; + padding: var(--gap-xs) !important; color: var(--grey-900) !important; } From b34e3a302e5b86c63c29d49f254d3fa22f571a8f Mon Sep 17 00:00:00 2001 From: Sherv Date: Wed, 12 Mar 2025 12:27:43 +0300 Subject: [PATCH 004/230] Revert style components assets --- classes/controllers/FrmStylesController.php | 1 + .../styles/components/FrmStyleComponent.php | 38 +++++++++++++------ 2 files changed, 27 insertions(+), 12 deletions(-) diff --git a/classes/controllers/FrmStylesController.php b/classes/controllers/FrmStylesController.php index 394ae37a13..5d59564816 100644 --- a/classes/controllers/FrmStylesController.php +++ b/classes/controllers/FrmStylesController.php @@ -120,6 +120,7 @@ public static function admin_init() { return; } + FrmStyleComponent::register_assets(); self::load_pro_hooks(); $version = FrmAppHelper::plugin_version(); diff --git a/classes/views/styles/components/FrmStyleComponent.php b/classes/views/styles/components/FrmStyleComponent.php index 20f4ef60a5..e341c54707 100644 --- a/classes/views/styles/components/FrmStyleComponent.php +++ b/classes/views/styles/components/FrmStyleComponent.php @@ -4,6 +4,15 @@ } class FrmStyleComponent { + /** + * The CSS and JS scripts slug. + * + * @since 6.14 + * + * @var string + */ + const ASSETS_SLUG = 'formidable-style-components'; + /** * The folder name where views files are located. * @@ -63,6 +72,21 @@ private function __construct() { $this->load_js(); } + /** + * Register CSS & JS style components assets. + * + * @since 6.14 + * + * @return void + */ + public static function register_assets() { + $plugin_url = FrmAppHelper::plugin_url(); + $version = FrmAppHelper::plugin_version(); + + wp_register_style( self::ASSETS_SLUG, $plugin_url . '/css/admin/style-components.css', array(), $version ); + wp_register_script( self::ASSETS_SLUG, $plugin_url . '/js/formidable_styles.js', array( 'formidable_admin' ), $version, true ); + } + /** * Get the singleton instance. * @@ -209,6 +233,7 @@ protected function hide_component() { * @return void */ private function load_css() { + wp_enqueue_style( self::ASSETS_SLUG ); wp_enqueue_style( 'formidable-settings-components' ); } @@ -220,18 +245,7 @@ private function load_css() { * @return void */ private function load_js() { + wp_enqueue_script( self::ASSETS_SLUG ); wp_enqueue_script( 'formidable-settings-components' ); } - - /** - * Register CSS & JS style components assets. - * - * @since 6.14 - * @deprecated x.x - * - * @return void - */ - public static function register_assets() { - _deprecated_function( __METHOD__, 'x.x' ); - } } From 2a751cc4aa57541e98b3128d2bfd866801acccf3 Mon Sep 17 00:00:00 2001 From: Sherv Date: Wed, 12 Mar 2025 12:28:39 +0300 Subject: [PATCH 005/230] Remove components from styles.js --- js/src/admin/styles.js | 110 ++++++++++++++++++ .../styles/dependent-updater-component.js | 53 +++++++++ 2 files changed, 163 insertions(+) create mode 100644 js/src/admin/styles.js create mode 100644 js/src/admin/styles/dependent-updater-component.js diff --git a/js/src/admin/styles.js b/js/src/admin/styles.js new file mode 100644 index 0000000000..fe50bb77f9 --- /dev/null +++ b/js/src/admin/styles.js @@ -0,0 +1,110 @@ +import { __ } from '@wordpress/i18n'; +import frmStyleDependentUpdaterComponent from './styles/dependent-updater-component.js'; + +/** + * Represents the frmStyleOptions class. + * @class + */ +class frmStyleOptions { + + constructor() { + this.success = frmDom.success; + this.init(); + this.initHover(); + } + + /** + * Init the dependent + */ + init() { + this.initColorPickerDependentUpdaterComponents(); + this.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) ); + } + + /** + * Initializes the color picker dependent updater components. + * Retrieves the components and elements, and adds them to the elements array. + * Adds an action hook for the frm_style_options_color_change event. + */ + initColorPickerDependentUpdaterComponents() { + const components = document.querySelectorAll( '.frm-style-dependent-updater-component.frm-colorpicker' ); + const elements = []; + + components.forEach( ( component ) => { + const element = component.querySelector( 'input.hex' ); + const id = 'undefined' !== typeof element ? element.getAttribute( 'id' ) : null; + + if ( null !== id ) { + elements.push({ + id: id, + dependentUpdaterClass: new frmStyleDependentUpdaterComponent( component, 'colorpicker' ) + }); + } + }); + + wp.hooks.addAction( 'frm_style_options_color_change', 'formidable', ( { event, value } ) => { + const container = event.target.closest( '.wp-picker-container' ); + const id = event.target.getAttribute( 'id' ); + + container.querySelector( '.wp-color-result-text' ).innerText = value; + + elements.forEach( ( element ) => { + if ( element.id === id ) { + element.dependentUpdaterClass.updateAllDependentElements( value ); + } + }); + }); + } + + /** + * Initializes the hover functionality for the style options. + * Creates a hover element and appends it to the settingsWrapper. + * Adds event listeners for mouseover and click events. + */ + initHover() { + const settingsWrapper = document.querySelector( '.frm-right-panel .styling_settings .accordion-container' ); + if ( null === settingsWrapper ) { + return; + } + const hoverElement = document.createElement( 'div' ); + hoverElement.classList.add( 'frm_hidden' ); + hoverElement.classList.add( 'frm-style-settings-hover' ); + settingsWrapper.appendChild( hoverElement ); + + const styleOptionsMenu = settingsWrapper.querySelector( ':scope > ul' ); + + styleOptionsMenu.querySelectorAll( ':scope > li' ).forEach( ( item ) => { + item.querySelector('h3').addEventListener( 'mouseover', ( event ) => { + hoverElement.style.transform = `translateY(${event.target.closest('li').offsetTop}px)`; + hoverElement.classList.add( 'frm-animating' ); + hoverElement.classList.remove( 'frm_hidden' ); + setTimeout( () => { hoverElement.classList.remove( 'frm-animating' ); }, 250 ); + }); + }); + + const accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' ); + accordionitems.forEach( ( item ) => { + item.addEventListener( 'click', () => { + hoverElement.classList.add( 'frm_hidden' ); + }); + }); + } + + /** + * Initializes the copy to clipboard functionality for style classes. + * Adds a click event listener to the copyLabel element. + * Copies the class name to the clipboard and displays a success message. + * @param {string} successMessage - The success message to display. + */ + initStyleClassCopyToClipboard( successMessage ) { + const copyLabel = document.querySelector( '.frm-copy-text' ); + copyLabel.addEventListener( 'click', ( event ) => { + const className = event.currentTarget.innerText; + navigator.clipboard.writeText( className ).then( () => { + this.success( successMessage ); + }); + }) + } +} + +new frmStyleOptions(); diff --git a/js/src/admin/styles/dependent-updater-component.js b/js/src/admin/styles/dependent-updater-component.js new file mode 100644 index 0000000000..0111738ecc --- /dev/null +++ b/js/src/admin/styles/dependent-updater-component.js @@ -0,0 +1,53 @@ +/** + * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview. + * The names of the elements that will be updated are specified using the "will-change" attribute. + * It is primarily used in components from Style/Quick Settings. + * For instance, when the "FrmPrimaryColorStyleComponent" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds. + */ +export default class frmStyleDependentUpdaterComponent { + + /** + * Creates an instance of frmStyleDependentUpdaterComponent. + * @param {HTMLElement} component - The component element. + */ + constructor( component ) { + this.component = component; + try { + const willChangeData = JSON.parse( this.component.dataset.willChange ); + this.data = { + propagateInputs: this.initPropagationList( willChangeData ), + changeEvent: new Event( 'change', { bubbles: true } ) + }; + } catch ( error ) { + console.error( 'Error parsing JSON data from "will-change" attribute.', error ); + } + } + + /** + * Initializes the list of inputs to propagate changes to. + * The selection is made by provided input's names list in "will-change" attribute. + * @param {string[]} inputNames - The names of the inputs to propagate changes to. + * @return {HTMLElement[]} - The list of inputs to propagate changes to. + */ + initPropagationList( inputNames ) { + const list = []; + inputNames.forEach( ( name ) => { + const input = document.querySelector( `input[name="${name}"]` ); + if ( null !== input ) { + list.push( input ); + } + }); + return list; + } + + /** + * Updates all dependent elements with the given value. + * @param {string} value - The value to update the dependent elements with. + */ + updateAllDependentElements( value ) { + this.data.propagateInputs.forEach( ( input ) => { + input.value = value; + }); + this.data.propagateInputs[0].dispatchEvent( this.data.changeEvent ); + } +} From 6a7f7454c2648cb53598f2dcc7f24737c1c51e0d Mon Sep 17 00:00:00 2001 From: Sherv Date: Wed, 12 Mar 2025 12:29:21 +0300 Subject: [PATCH 006/230] Add Settings Components module --- .../components/dependent-updater-component.js | 53 -------- .../components/slider-component.js | 2 +- js/src/settings-components/index.js | 18 +++ .../settings-components.js | 122 ------------------ 4 files changed, 19 insertions(+), 176 deletions(-) delete mode 100644 js/src/settings-components/components/dependent-updater-component.js create mode 100644 js/src/settings-components/index.js delete mode 100644 js/src/settings-components/settings-components.js diff --git a/js/src/settings-components/components/dependent-updater-component.js b/js/src/settings-components/components/dependent-updater-component.js deleted file mode 100644 index c837e55bb5..0000000000 --- a/js/src/settings-components/components/dependent-updater-component.js +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview. - * The names of the elements that will be updated are specified using the "will-change" attribute. - * It is primarily used in components from Style/Quick Settings. - * For instance, when the "FrmPrimaryColorStyleComponent" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds. - */ -export default class frmDependentUpdaterComponent { - - /** - * Creates an instance of frmDependentUpdaterComponent. - * @param {HTMLElement} component - The component element. - */ - constructor( component ) { - this.component = component; - try { - const willChangeData = JSON.parse( this.component.dataset.willChange ); - this.data = { - propagateInputs: this.initPropagationList( willChangeData ), - changeEvent: new Event( 'change', { bubbles: true } ) - }; - } catch ( error ) { - console.error( 'Error parsing JSON data from "will-change" attribute.', error ); - } - } - - /** - * Initializes the list of inputs to propagate changes to. - * The selection is made by provided input's names list in "will-change" attribute. - * @param {string[]} inputNames - The names of the inputs to propagate changes to. - * @return {HTMLElement[]} - The list of inputs to propagate changes to. - */ - initPropagationList( inputNames ) { - const list = []; - inputNames.forEach( ( name ) => { - const input = document.querySelector( `input[name="${name}"]` ); - if ( null !== input ) { - list.push( input ); - } - }); - return list; - } - - /** - * Updates all dependent elements with the given value. - * @param {string} value - The value to update the dependent elements with. - */ - updateAllDependentElements( value ) { - this.data.propagateInputs.forEach( ( input ) => { - input.value = value; - }); - this.data.propagateInputs[0].dispatchEvent( this.data.changeEvent ); - } -} diff --git a/js/src/settings-components/components/slider-component.js b/js/src/settings-components/components/slider-component.js index f8fa4c4c0d..f9d5c798be 100644 --- a/js/src/settings-components/components/slider-component.js +++ b/js/src/settings-components/components/slider-component.js @@ -1,4 +1,4 @@ -import frmDependentUpdaterComponent from './dependent-updater-component'; +import frmDependentUpdaterComponent from '../../admin/styles/dependent-updater-component'; /** * Represents a slider component. * @class frmSliderComponent diff --git a/js/src/settings-components/index.js b/js/src/settings-components/index.js new file mode 100644 index 0000000000..0cc2fe59ed --- /dev/null +++ b/js/src/settings-components/index.js @@ -0,0 +1,18 @@ +/** + * WordPress dependencies + */ +import domReady from '@wordpress/dom-ready'; + +/** + * Internal dependencies + */ +import frmRadioComponent from './components/radio-component.js'; +import frmSliderComponent from './components/slider-component.js'; +import frmTabsComponent from './components/tabs-component.js'; + +domReady( () => { + new frmRadioComponent(); + new frmSliderComponent(); + new frmTabsComponent(); +} ); + diff --git a/js/src/settings-components/settings-components.js b/js/src/settings-components/settings-components.js deleted file mode 100644 index ae3748267e..0000000000 --- a/js/src/settings-components/settings-components.js +++ /dev/null @@ -1,122 +0,0 @@ -import { __ } from '@wordpress/i18n'; -import frmRadioComponent from './components/radio-component.js'; -import frmSliderComponent from './components/slider-component.js'; -import frmTabsComponent from './components/tabs-component.js'; -import frmDependentUpdaterComponent from './components/dependent-updater-component.js'; - -/** - * Represents the frmSettingsComponents class. - * @class - */ -class frmSettingsComponents { - - constructor() { - this.success = frmDom.success; - this.init(); - this.initHover(); - } - - /** - * Initializes the components: frmRadioComponent, frmSliderComponent, and frmTabsComponent. - * Init the dependent - */ - init() { - new frmRadioComponent(); - new frmSliderComponent(); - new frmTabsComponent(); - - this.initColorPickerDependentUpdaterComponents(); - this.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) ); - } - - /** - * Initializes the color picker dependent updater components. - * Retrieves the components and elements, and adds them to the elements array. - * Adds an action hook for the frm_style_options_color_change event. - */ - initColorPickerDependentUpdaterComponents() { - const components = document.querySelectorAll( '.frm-style-dependent-updater-component.frm-colorpicker' ); - const elements = []; - - components.forEach( ( component ) => { - const element = component.querySelector( 'input.hex' ); - const id = 'undefined' !== typeof element ? element.getAttribute( 'id' ) : null; - - if ( null !== id ) { - elements.push({ - id: id, - dependentUpdaterClass: new frmDependentUpdaterComponent( component, 'colorpicker' ) - }); - } - }); - - wp.hooks.addAction( 'frm_style_options_color_change', 'formidable', ( { event, value } ) => { - const container = event.target.closest( '.wp-picker-container' ); - const id = event.target.getAttribute( 'id' ); - - container.querySelector( '.wp-color-result-text' ).innerText = value; - - elements.forEach( ( element ) => { - if ( element.id === id ) { - element.dependentUpdaterClass.updateAllDependentElements( value ); - } - }); - }); - } - - /** - * Initializes the hover functionality for the options. - * Creates a hover element and appends it to the settingsWrapper. - * Adds event listeners for mouseover and click events. - */ - initHover() { - const settingsWrapper = document.querySelector( '.frm-right-panel .styling_settings .accordion-container' ); - if ( null === settingsWrapper ) { - return; - } - const hoverElement = document.createElement( 'div' ); - hoverElement.classList.add( 'frm_hidden' ); - hoverElement.classList.add( 'frm-style-settings-hover' ); - settingsWrapper.appendChild( hoverElement ); - - const styleOptionsMenu = settingsWrapper.querySelector( ':scope > ul' ); - - styleOptionsMenu.querySelectorAll( ':scope > li' ).forEach( ( item ) => { - item.querySelector('h3').addEventListener( 'mouseover', ( event ) => { - hoverElement.style.transform = `translateY(${event.target.closest('li').offsetTop}px)`; - hoverElement.classList.add( 'frm-animating' ); - hoverElement.classList.remove( 'frm_hidden' ); - setTimeout( () => { hoverElement.classList.remove( 'frm-animating' ); }, 250 ); - }); - }); - - const accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' ); - accordionitems.forEach( ( item ) => { - item.addEventListener( 'click', () => { - hoverElement.classList.add( 'frm_hidden' ); - }); - }); - } - - /** - * Initializes the copy to clipboard functionality for classes. - * Adds a click event listener to the copyLabel element. - * Copies the class name to the clipboard and displays a success message. - * @param {string} successMessage - The success message to display. - */ - initStyleClassCopyToClipboard( successMessage ) { - const copyLabel = document.querySelector( '.frm-copy-text' ); - if ( ! copyLabel ) { - return; - } - - copyLabel.addEventListener( 'click', ( event ) => { - const className = event.currentTarget.innerText; - navigator.clipboard.writeText( className ).then( () => { - this.success( successMessage ); - }); - }) - } -} - -new frmSettingsComponents(); From c2c7429a8fb2e596b19993a303c31400ef9ed8f2 Mon Sep 17 00:00:00 2001 From: Sherv Date: Wed, 12 Mar 2025 12:30:07 +0300 Subject: [PATCH 007/230] Update .eslintignore and Webpack configuration --- .eslintignore | 1 + js/formidable-settings-components.js | 4391 +--------------------- js/formidable-settings-components.js.map | 2 +- js/formidable_styles.js | 1 + js/formidable_styles.js.map | 1 + webpack.config.js | 3 +- 6 files changed, 7 insertions(+), 4392 deletions(-) create mode 100644 js/formidable_styles.js create mode 100644 js/formidable_styles.js.map diff --git a/.eslintignore b/.eslintignore index 983f0ec1cf..9becb64621 100644 --- a/.eslintignore +++ b/.eslintignore @@ -5,6 +5,7 @@ **/formidable_overlay.js **/formidable_dashboard.js **/formidable-templates.js +**/formidable_styles.js **/formidable-settings-components.js **/node_modules/** diff --git a/js/formidable-settings-components.js b/js/formidable-settings-components.js index cb90c305d4..e5adc56c41 100644 --- a/js/formidable-settings-components.js +++ b/js/formidable-settings-components.js @@ -1,4390 +1 @@ -/******/ (function() { // webpackBootstrap -/******/ var __webpack_modules__ = ({ - -/***/ "./node_modules/@tannin/compile/index.js": -/*!***********************************************!*\ - !*** ./node_modules/@tannin/compile/index.js ***! - \***********************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ compile; } -/* harmony export */ }); -/* harmony import */ var _tannin_postfix__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tannin/postfix */ "./node_modules/@tannin/postfix/index.js"); -/* harmony import */ var _tannin_evaluate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tannin/evaluate */ "./node_modules/@tannin/evaluate/index.js"); - - - -/** - * Given a C expression, returns a function which can be called to evaluate its - * result. - * - * @example - * - * ```js - * import compile from '@tannin/compile'; - * - * const evaluate = compile( 'n > 1' ); - * - * evaluate( { n: 2 } ); - * // ⇒ true - * ``` - * - * @param {string} expression C expression. - * - * @return {(variables?:{[variable:string]:*})=>*} Compiled evaluator. - */ -function compile( expression ) { - var terms = (0,_tannin_postfix__WEBPACK_IMPORTED_MODULE_0__["default"])( expression ); - - return function( variables ) { - return (0,_tannin_evaluate__WEBPACK_IMPORTED_MODULE_1__["default"])( terms, variables ); - }; -} - - -/***/ }), - -/***/ "./node_modules/@tannin/evaluate/index.js": -/*!************************************************!*\ - !*** ./node_modules/@tannin/evaluate/index.js ***! - \************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ evaluate; } -/* harmony export */ }); -/** - * Operator callback functions. - * - * @type {Object} - */ -var OPERATORS = { - '!': function( a ) { - return ! a; - }, - '*': function( a, b ) { - return a * b; - }, - '/': function( a, b ) { - return a / b; - }, - '%': function( a, b ) { - return a % b; - }, - '+': function( a, b ) { - return a + b; - }, - '-': function( a, b ) { - return a - b; - }, - '<': function( a, b ) { - return a < b; - }, - '<=': function( a, b ) { - return a <= b; - }, - '>': function( a, b ) { - return a > b; - }, - '>=': function( a, b ) { - return a >= b; - }, - '==': function( a, b ) { - return a === b; - }, - '!=': function( a, b ) { - return a !== b; - }, - '&&': function( a, b ) { - return a && b; - }, - '||': function( a, b ) { - return a || b; - }, - '?:': function( a, b, c ) { - if ( a ) { - throw b; - } - - return c; - }, -}; - -/** - * Given an array of postfix terms and operand variables, returns the result of - * the postfix evaluation. - * - * @example - * - * ```js - * import evaluate from '@tannin/evaluate'; - * - * // 3 + 4 * 5 / 6 ⇒ '3 4 5 * 6 / +' - * const terms = [ '3', '4', '5', '*', '6', '/', '+' ]; - * - * evaluate( terms, {} ); - * // ⇒ 6.333333333333334 - * ``` - * - * @param {string[]} postfix Postfix terms. - * @param {Object} variables Operand variables. - * - * @return {*} Result of evaluation. - */ -function evaluate( postfix, variables ) { - var stack = [], - i, j, args, getOperatorResult, term, value; - - for ( i = 0; i < postfix.length; i++ ) { - term = postfix[ i ]; - - getOperatorResult = OPERATORS[ term ]; - if ( getOperatorResult ) { - // Pop from stack by number of function arguments. - j = getOperatorResult.length; - args = Array( j ); - while ( j-- ) { - args[ j ] = stack.pop(); - } - - try { - value = getOperatorResult.apply( null, args ); - } catch ( earlyReturn ) { - return earlyReturn; - } - } else if ( variables.hasOwnProperty( term ) ) { - value = variables[ term ]; - } else { - value = +term; - } - - stack.push( value ); - } - - return stack[ 0 ]; -} - - -/***/ }), - -/***/ "./node_modules/@tannin/plural-forms/index.js": -/*!****************************************************!*\ - !*** ./node_modules/@tannin/plural-forms/index.js ***! - \****************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ pluralForms; } -/* harmony export */ }); -/* harmony import */ var _tannin_compile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tannin/compile */ "./node_modules/@tannin/compile/index.js"); - - -/** - * Given a C expression, returns a function which, when called with a value, - * evaluates the result with the value assumed to be the "n" variable of the - * expression. The result will be coerced to its numeric equivalent. - * - * @param {string} expression C expression. - * - * @return {Function} Evaluator function. - */ -function pluralForms( expression ) { - var evaluate = (0,_tannin_compile__WEBPACK_IMPORTED_MODULE_0__["default"])( expression ); - - return function( n ) { - return +evaluate( { n: n } ); - }; -} - - -/***/ }), - -/***/ "./node_modules/@tannin/postfix/index.js": -/*!***********************************************!*\ - !*** ./node_modules/@tannin/postfix/index.js ***! - \***********************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ postfix; } -/* harmony export */ }); -var PRECEDENCE, OPENERS, TERMINATORS, PATTERN; - -/** - * Operator precedence mapping. - * - * @type {Object} - */ -PRECEDENCE = { - '(': 9, - '!': 8, - '*': 7, - '/': 7, - '%': 7, - '+': 6, - '-': 6, - '<': 5, - '<=': 5, - '>': 5, - '>=': 5, - '==': 4, - '!=': 4, - '&&': 3, - '||': 2, - '?': 1, - '?:': 1, -}; - -/** - * Characters which signal pair opening, to be terminated by terminators. - * - * @type {string[]} - */ -OPENERS = [ '(', '?' ]; - -/** - * Characters which signal pair termination, the value an array with the - * opener as its first member. The second member is an optional operator - * replacement to push to the stack. - * - * @type {string[]} - */ -TERMINATORS = { - ')': [ '(' ], - ':': [ '?', '?:' ], -}; - -/** - * Pattern matching operators and openers. - * - * @type {RegExp} - */ -PATTERN = /<=|>=|==|!=|&&|\|\||\?:|\(|!|\*|\/|%|\+|-|<|>|\?|\)|:/; - -/** - * Given a C expression, returns the equivalent postfix (Reverse Polish) - * notation terms as an array. - * - * If a postfix string is desired, simply `.join( ' ' )` the result. - * - * @example - * - * ```js - * import postfix from '@tannin/postfix'; - * - * postfix( 'n > 1' ); - * // ⇒ [ 'n', '1', '>' ] - * ``` - * - * @param {string} expression C expression. - * - * @return {string[]} Postfix terms. - */ -function postfix( expression ) { - var terms = [], - stack = [], - match, operator, term, element; - - while ( ( match = expression.match( PATTERN ) ) ) { - operator = match[ 0 ]; - - // Term is the string preceding the operator match. It may contain - // whitespace, and may be empty (if operator is at beginning). - term = expression.substr( 0, match.index ).trim(); - if ( term ) { - terms.push( term ); - } - - while ( ( element = stack.pop() ) ) { - if ( TERMINATORS[ operator ] ) { - if ( TERMINATORS[ operator ][ 0 ] === element ) { - // Substitution works here under assumption that because - // the assigned operator will no longer be a terminator, it - // will be pushed to the stack during the condition below. - operator = TERMINATORS[ operator ][ 1 ] || operator; - break; - } - } else if ( OPENERS.indexOf( element ) >= 0 || PRECEDENCE[ element ] < PRECEDENCE[ operator ] ) { - // Push to stack if either an opener or when pop reveals an - // element of lower precedence. - stack.push( element ); - break; - } - - // For each popped from stack, push to terms. - terms.push( element ); - } - - if ( ! TERMINATORS[ operator ] ) { - stack.push( operator ); - } - - // Slice matched fragment from expression to continue match. - expression = expression.substr( match.index + operator.length ); - } - - // Push remainder of operand, if exists, to terms. - expression = expression.trim(); - if ( expression ) { - terms.push( expression ); - } - - // Pop remaining items from stack into terms. - return terms.concat( stack.reverse() ); -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/createAddHook.js": -/*!*********************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/createAddHook.js ***! - \*********************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateNamespace.js */ "./node_modules/@wordpress/hooks/build-module/validateNamespace.js"); -/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./validateHookName.js */ "./node_modules/@wordpress/hooks/build-module/validateHookName.js"); -/** - * Internal dependencies - */ - - -/** - * @callback AddHook - * - * Adds the hook to the appropriate hooks container. - * - * @param {string} hookName Name of hook to add - * @param {string} namespace The unique namespace identifying the callback in the form `vendor/plugin/function`. - * @param {import('.').Callback} callback Function to call when the hook is run - * @param {number} [priority=10] Priority of this hook - */ - -/** - * Returns a function which, when invoked, will add a hook. - * - * @param {import('.').Hooks} hooks Hooks instance. - * @param {import('.').StoreKey} storeKey - * - * @return {AddHook} Function that adds a new hook. - */ - -function createAddHook(hooks, storeKey) { - return function addHook(hookName, namespace, callback) { - var priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10; - var hooksStore = hooks[storeKey]; - - if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_1__["default"])(hookName)) { - return; - } - - if (!(0,_validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__["default"])(namespace)) { - return; - } - - if ('function' !== typeof callback) { - // eslint-disable-next-line no-console - console.error('The hook callback must be a function.'); - return; - } // Validate numeric priority - - - if ('number' !== typeof priority) { - // eslint-disable-next-line no-console - console.error('If specified, the hook priority must be a number.'); - return; - } - - var handler = { - callback: callback, - priority: priority, - namespace: namespace - }; - - if (hooksStore[hookName]) { - // Find the correct insert index of the new hook. - var handlers = hooksStore[hookName].handlers; - /** @type {number} */ - - var i; - - for (i = handlers.length; i > 0; i--) { - if (priority >= handlers[i - 1].priority) { - break; - } - } - - if (i === handlers.length) { - // If append, operate via direct assignment. - handlers[i] = handler; - } else { - // Otherwise, insert before index via splice. - handlers.splice(i, 0, handler); - } // We may also be currently executing this hook. If the callback - // we're adding would come after the current callback, there's no - // problem; otherwise we need to increase the execution index of - // any other runs by 1 to account for the added element. - - - hooksStore.__current.forEach(function (hookInfo) { - if (hookInfo.name === hookName && hookInfo.currentIndex >= i) { - hookInfo.currentIndex++; - } - }); - } else { - // This is the first hook of its type. - hooksStore[hookName] = { - handlers: [handler], - runs: 0 - }; - } - - if (hookName !== 'hookAdded') { - hooks.doAction('hookAdded', hookName, namespace, callback, priority); - } - }; -} - -/* harmony default export */ __webpack_exports__["default"] = (createAddHook); -//# sourceMappingURL=createAddHook.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/createCurrentHook.js": -/*!*************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/createCurrentHook.js ***! - \*************************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/** - * Returns a function which, when invoked, will return the name of the - * currently running hook, or `null` if no hook of the given type is currently - * running. - * - * @param {import('.').Hooks} hooks Hooks instance. - * @param {import('.').StoreKey} storeKey - * - * @return {() => string | null} Function that returns the current hook name or null. - */ -function createCurrentHook(hooks, storeKey) { - return function currentHook() { - var _hooksStore$__current, _hooksStore$__current2; - - var hooksStore = hooks[storeKey]; - return (_hooksStore$__current = (_hooksStore$__current2 = hooksStore.__current[hooksStore.__current.length - 1]) === null || _hooksStore$__current2 === void 0 ? void 0 : _hooksStore$__current2.name) !== null && _hooksStore$__current !== void 0 ? _hooksStore$__current : null; - }; -} - -/* harmony default export */ __webpack_exports__["default"] = (createCurrentHook); -//# sourceMappingURL=createCurrentHook.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/createDidHook.js": -/*!*********************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/createDidHook.js ***! - \*********************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateHookName.js */ "./node_modules/@wordpress/hooks/build-module/validateHookName.js"); -/** - * Internal dependencies - */ - -/** - * @callback DidHook - * - * Returns the number of times an action has been fired. - * - * @param {string} hookName The hook name to check. - * - * @return {number | undefined} The number of times the hook has run. - */ - -/** - * Returns a function which, when invoked, will return the number of times a - * hook has been called. - * - * @param {import('.').Hooks} hooks Hooks instance. - * @param {import('.').StoreKey} storeKey - * - * @return {DidHook} Function that returns a hook's call count. - */ - -function createDidHook(hooks, storeKey) { - return function didHook(hookName) { - var hooksStore = hooks[storeKey]; - - if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_0__["default"])(hookName)) { - return; - } - - return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0; - }; -} - -/* harmony default export */ __webpack_exports__["default"] = (createDidHook); -//# sourceMappingURL=createDidHook.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/createDoingHook.js": -/*!***********************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/createDoingHook.js ***! - \***********************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/** - * @callback DoingHook - * Returns whether a hook is currently being executed. - * - * @param {string} [hookName] The name of the hook to check for. If - * omitted, will check for any hook being executed. - * - * @return {boolean} Whether the hook is being executed. - */ - -/** - * Returns a function which, when invoked, will return whether a hook is - * currently being executed. - * - * @param {import('.').Hooks} hooks Hooks instance. - * @param {import('.').StoreKey} storeKey - * - * @return {DoingHook} Function that returns whether a hook is currently - * being executed. - */ -function createDoingHook(hooks, storeKey) { - return function doingHook(hookName) { - var hooksStore = hooks[storeKey]; // If the hookName was not passed, check for any current hook. - - if ('undefined' === typeof hookName) { - return 'undefined' !== typeof hooksStore.__current[0]; - } // Return the __current hook. - - - return hooksStore.__current[0] ? hookName === hooksStore.__current[0].name : false; - }; -} - -/* harmony default export */ __webpack_exports__["default"] = (createDoingHook); -//# sourceMappingURL=createDoingHook.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/createHasHook.js": -/*!*********************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/createHasHook.js ***! - \*********************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/** - * @callback HasHook - * - * Returns whether any handlers are attached for the given hookName and optional namespace. - * - * @param {string} hookName The name of the hook to check for. - * @param {string} [namespace] Optional. The unique namespace identifying the callback - * in the form `vendor/plugin/function`. - * - * @return {boolean} Whether there are handlers that are attached to the given hook. - */ - -/** - * Returns a function which, when invoked, will return whether any handlers are - * attached to a particular hook. - * - * @param {import('.').Hooks} hooks Hooks instance. - * @param {import('.').StoreKey} storeKey - * - * @return {HasHook} Function that returns whether any handlers are - * attached to a particular hook and optional namespace. - */ -function createHasHook(hooks, storeKey) { - return function hasHook(hookName, namespace) { - var hooksStore = hooks[storeKey]; // Use the namespace if provided. - - if ('undefined' !== typeof namespace) { - return hookName in hooksStore && hooksStore[hookName].handlers.some(function (hook) { - return hook.namespace === namespace; - }); - } - - return hookName in hooksStore; - }; -} - -/* harmony default export */ __webpack_exports__["default"] = (createHasHook); -//# sourceMappingURL=createHasHook.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/createHooks.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/createHooks.js ***! - \*******************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ _Hooks: function() { return /* binding */ _Hooks; } -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); -/* harmony import */ var _createAddHook__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./createAddHook */ "./node_modules/@wordpress/hooks/build-module/createAddHook.js"); -/* harmony import */ var _createRemoveHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./createRemoveHook */ "./node_modules/@wordpress/hooks/build-module/createRemoveHook.js"); -/* harmony import */ var _createHasHook__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./createHasHook */ "./node_modules/@wordpress/hooks/build-module/createHasHook.js"); -/* harmony import */ var _createRunHook__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createRunHook */ "./node_modules/@wordpress/hooks/build-module/createRunHook.js"); -/* harmony import */ var _createCurrentHook__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./createCurrentHook */ "./node_modules/@wordpress/hooks/build-module/createCurrentHook.js"); -/* harmony import */ var _createDoingHook__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./createDoingHook */ "./node_modules/@wordpress/hooks/build-module/createDoingHook.js"); -/* harmony import */ var _createDidHook__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./createDidHook */ "./node_modules/@wordpress/hooks/build-module/createDidHook.js"); - - -/** - * Internal dependencies - */ - - - - - - - -/** - * Internal class for constructing hooks. Use `createHooks()` function - * - * Note, it is necessary to expose this class to make its type public. - * - * @private - */ - -var _Hooks = function _Hooks() { - (0,_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, _Hooks); - - /** @type {import('.').Store} actions */ - this.actions = Object.create(null); - this.actions.__current = []; - /** @type {import('.').Store} filters */ - - this.filters = Object.create(null); - this.filters.__current = []; - this.addAction = (0,_createAddHook__WEBPACK_IMPORTED_MODULE_1__["default"])(this, 'actions'); - this.addFilter = (0,_createAddHook__WEBPACK_IMPORTED_MODULE_1__["default"])(this, 'filters'); - this.removeAction = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_2__["default"])(this, 'actions'); - this.removeFilter = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_2__["default"])(this, 'filters'); - this.hasAction = (0,_createHasHook__WEBPACK_IMPORTED_MODULE_3__["default"])(this, 'actions'); - this.hasFilter = (0,_createHasHook__WEBPACK_IMPORTED_MODULE_3__["default"])(this, 'filters'); - this.removeAllActions = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_2__["default"])(this, 'actions', true); - this.removeAllFilters = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_2__["default"])(this, 'filters', true); - this.doAction = (0,_createRunHook__WEBPACK_IMPORTED_MODULE_4__["default"])(this, 'actions'); - this.applyFilters = (0,_createRunHook__WEBPACK_IMPORTED_MODULE_4__["default"])(this, 'filters', true); - this.currentAction = (0,_createCurrentHook__WEBPACK_IMPORTED_MODULE_5__["default"])(this, 'actions'); - this.currentFilter = (0,_createCurrentHook__WEBPACK_IMPORTED_MODULE_5__["default"])(this, 'filters'); - this.doingAction = (0,_createDoingHook__WEBPACK_IMPORTED_MODULE_6__["default"])(this, 'actions'); - this.doingFilter = (0,_createDoingHook__WEBPACK_IMPORTED_MODULE_6__["default"])(this, 'filters'); - this.didAction = (0,_createDidHook__WEBPACK_IMPORTED_MODULE_7__["default"])(this, 'actions'); - this.didFilter = (0,_createDidHook__WEBPACK_IMPORTED_MODULE_7__["default"])(this, 'filters'); -}; -/** @typedef {_Hooks} Hooks */ - -/** - * Returns an instance of the hooks object. - * - * @return {Hooks} A Hooks instance. - */ - -function createHooks() { - return new _Hooks(); -} - -/* harmony default export */ __webpack_exports__["default"] = (createHooks); -//# sourceMappingURL=createHooks.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/createRemoveHook.js": -/*!************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/createRemoveHook.js ***! - \************************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateNamespace.js */ "./node_modules/@wordpress/hooks/build-module/validateNamespace.js"); -/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./validateHookName.js */ "./node_modules/@wordpress/hooks/build-module/validateHookName.js"); -/** - * Internal dependencies - */ - - -/** - * @callback RemoveHook - * Removes the specified callback (or all callbacks) from the hook with a given hookName - * and namespace. - * - * @param {string} hookName The name of the hook to modify. - * @param {string} namespace The unique namespace identifying the callback in the - * form `vendor/plugin/function`. - * - * @return {number | undefined} The number of callbacks removed. - */ - -/** - * Returns a function which, when invoked, will remove a specified hook or all - * hooks by the given name. - * - * @param {import('.').Hooks} hooks Hooks instance. - * @param {import('.').StoreKey} storeKey - * @param {boolean} [removeAll=false] Whether to remove all callbacks for a hookName, - * without regard to namespace. Used to create - * `removeAll*` functions. - * - * @return {RemoveHook} Function that removes hooks. - */ - -function createRemoveHook(hooks, storeKey) { - var removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; - return function removeHook(hookName, namespace) { - var hooksStore = hooks[storeKey]; - - if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_1__["default"])(hookName)) { - return; - } - - if (!removeAll && !(0,_validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__["default"])(namespace)) { - return; - } // Bail if no hooks exist by this name - - - if (!hooksStore[hookName]) { - return 0; - } - - var handlersRemoved = 0; - - if (removeAll) { - handlersRemoved = hooksStore[hookName].handlers.length; - hooksStore[hookName] = { - runs: hooksStore[hookName].runs, - handlers: [] - }; - } else { - // Try to find the specified callback to remove. - var handlers = hooksStore[hookName].handlers; - - var _loop = function _loop(i) { - if (handlers[i].namespace === namespace) { - handlers.splice(i, 1); - handlersRemoved++; // This callback may also be part of a hook that is - // currently executing. If the callback we're removing - // comes after the current callback, there's no problem; - // otherwise we need to decrease the execution index of any - // other runs by 1 to account for the removed element. - - hooksStore.__current.forEach(function (hookInfo) { - if (hookInfo.name === hookName && hookInfo.currentIndex >= i) { - hookInfo.currentIndex--; - } - }); - } - }; - - for (var i = handlers.length - 1; i >= 0; i--) { - _loop(i); - } - } - - if (hookName !== 'hookRemoved') { - hooks.doAction('hookRemoved', hookName, namespace); - } - - return handlersRemoved; - }; -} - -/* harmony default export */ __webpack_exports__["default"] = (createRemoveHook); -//# sourceMappingURL=createRemoveHook.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/createRunHook.js": -/*!*********************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/createRunHook.js ***! - \*********************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js"); - - -/** - * Returns a function which, when invoked, will execute all callbacks - * registered to a hook of the specified type, optionally returning the final - * value of the call chain. - * - * @param {import('.').Hooks} hooks Hooks instance. - * @param {import('.').StoreKey} storeKey - * @param {boolean} [returnFirstArg=false] Whether each hook callback is expected to - * return its first argument. - * - * @return {(hookName:string, ...args: unknown[]) => unknown} Function that runs hook callbacks. - */ -function createRunHook(hooks, storeKey) { - var returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; - return function runHooks(hookName) { - var hooksStore = hooks[storeKey]; - - if (!hooksStore[hookName]) { - hooksStore[hookName] = { - handlers: [], - runs: 0 - }; - } - - hooksStore[hookName].runs++; - var handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds. - - if (true) { - // Handle any 'all' hooks registered. - if ('hookAdded' !== hookName && hooksStore.all) { - handlers.push.apply(handlers, (0,_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__["default"])(hooksStore.all.handlers)); - } - } - - for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } - - if (!handlers || !handlers.length) { - return returnFirstArg ? args[0] : undefined; - } - - var hookInfo = { - name: hookName, - currentIndex: 0 - }; - - hooksStore.__current.push(hookInfo); - - while (hookInfo.currentIndex < handlers.length) { - var handler = handlers[hookInfo.currentIndex]; - var result = handler.callback.apply(null, args); - - if (returnFirstArg) { - args[0] = result; - } - - hookInfo.currentIndex++; - } - - hooksStore.__current.pop(); - - if (returnFirstArg) { - return args[0]; - } - }; -} - -/* harmony default export */ __webpack_exports__["default"] = (createRunHook); -//# sourceMappingURL=createRunHook.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/index.js": -/*!*************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/index.js ***! - \*************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ actions: function() { return /* binding */ actions; }, -/* harmony export */ addAction: function() { return /* binding */ addAction; }, -/* harmony export */ addFilter: function() { return /* binding */ addFilter; }, -/* harmony export */ applyFilters: function() { return /* binding */ applyFilters; }, -/* harmony export */ createHooks: function() { return /* reexport safe */ _createHooks__WEBPACK_IMPORTED_MODULE_0__["default"]; }, -/* harmony export */ currentAction: function() { return /* binding */ currentAction; }, -/* harmony export */ currentFilter: function() { return /* binding */ currentFilter; }, -/* harmony export */ defaultHooks: function() { return /* binding */ defaultHooks; }, -/* harmony export */ didAction: function() { return /* binding */ didAction; }, -/* harmony export */ didFilter: function() { return /* binding */ didFilter; }, -/* harmony export */ doAction: function() { return /* binding */ doAction; }, -/* harmony export */ doingAction: function() { return /* binding */ doingAction; }, -/* harmony export */ doingFilter: function() { return /* binding */ doingFilter; }, -/* harmony export */ filters: function() { return /* binding */ filters; }, -/* harmony export */ hasAction: function() { return /* binding */ hasAction; }, -/* harmony export */ hasFilter: function() { return /* binding */ hasFilter; }, -/* harmony export */ removeAction: function() { return /* binding */ removeAction; }, -/* harmony export */ removeAllActions: function() { return /* binding */ removeAllActions; }, -/* harmony export */ removeAllFilters: function() { return /* binding */ removeAllFilters; }, -/* harmony export */ removeFilter: function() { return /* binding */ removeFilter; } -/* harmony export */ }); -/* harmony import */ var _createHooks__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./createHooks */ "./node_modules/@wordpress/hooks/build-module/createHooks.js"); -/** - * Internal dependencies - */ - -/** @typedef {(...args: any[])=>any} Callback */ - -/** - * @typedef Handler - * @property {Callback} callback The callback - * @property {string} namespace The namespace - * @property {number} priority The namespace - */ - -/** - * @typedef Hook - * @property {Handler[]} handlers Array of handlers - * @property {number} runs Run counter - */ - -/** - * @typedef Current - * @property {string} name Hook name - * @property {number} currentIndex The index - */ - -/** - * @typedef {Record & {__current: Current[]}} Store - */ - -/** - * @typedef {'actions' | 'filters'} StoreKey - */ - -/** - * @typedef {import('./createHooks').Hooks} Hooks - */ - -var defaultHooks = (0,_createHooks__WEBPACK_IMPORTED_MODULE_0__["default"])(); -var addAction = defaultHooks.addAction, - addFilter = defaultHooks.addFilter, - removeAction = defaultHooks.removeAction, - removeFilter = defaultHooks.removeFilter, - hasAction = defaultHooks.hasAction, - hasFilter = defaultHooks.hasFilter, - removeAllActions = defaultHooks.removeAllActions, - removeAllFilters = defaultHooks.removeAllFilters, - doAction = defaultHooks.doAction, - applyFilters = defaultHooks.applyFilters, - currentAction = defaultHooks.currentAction, - currentFilter = defaultHooks.currentFilter, - doingAction = defaultHooks.doingAction, - doingFilter = defaultHooks.doingFilter, - didAction = defaultHooks.didAction, - didFilter = defaultHooks.didFilter, - actions = defaultHooks.actions, - filters = defaultHooks.filters; - -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/validateHookName.js": -/*!************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/validateHookName.js ***! - \************************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/** - * Validate a hookName string. - * - * @param {string} hookName The hook name to validate. Should be a non empty string containing - * only numbers, letters, dashes, periods and underscores. Also, - * the hook name cannot begin with `__`. - * - * @return {boolean} Whether the hook name is valid. - */ -function validateHookName(hookName) { - if ('string' !== typeof hookName || '' === hookName) { - // eslint-disable-next-line no-console - console.error('The hook name must be a non-empty string.'); - return false; - } - - if (/^__/.test(hookName)) { - // eslint-disable-next-line no-console - console.error('The hook name cannot begin with `__`.'); - return false; - } - - if (!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(hookName)) { - // eslint-disable-next-line no-console - console.error('The hook name can only contain numbers, letters, dashes, periods and underscores.'); - return false; - } - - return true; -} - -/* harmony default export */ __webpack_exports__["default"] = (validateHookName); -//# sourceMappingURL=validateHookName.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/build-module/validateNamespace.js": -/*!*************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/build-module/validateNamespace.js ***! - \*************************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/** - * Validate a namespace string. - * - * @param {string} namespace The namespace to validate - should take the form - * `vendor/plugin/function`. - * - * @return {boolean} Whether the namespace is valid. - */ -function validateNamespace(namespace) { - if ('string' !== typeof namespace || '' === namespace) { - // eslint-disable-next-line no-console - console.error('The namespace must be a non-empty string.'); - return false; - } - - if (!/^[a-zA-Z][a-zA-Z0-9_.\-\/]*$/.test(namespace)) { - // eslint-disable-next-line no-console - console.error('The namespace can only contain numbers, letters, dashes, periods, underscores and slashes.'); - return false; - } - - return true; -} - -/* harmony default export */ __webpack_exports__["default"] = (validateNamespace); -//# sourceMappingURL=validateNamespace.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/i18n/build-module/create-i18n.js": -/*!******************************************************************!*\ - !*** ./node_modules/@wordpress/i18n/build-module/create-i18n.js ***! - \******************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ createI18n: function() { return /* binding */ createI18n; } -/* harmony export */ }); -/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js"); -/* harmony import */ var tannin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tannin */ "./node_modules/tannin/index.js"); - - -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } - -function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0,_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } - -/** - * External dependencies - */ - -/** - * @typedef {Record} LocaleData - */ - -/** - * Default locale data to use for Tannin domain when not otherwise provided. - * Assumes an English plural forms expression. - * - * @type {LocaleData} - */ - -var DEFAULT_LOCALE_DATA = { - '': { - /** @param {number} n */ - plural_forms: function plural_forms(n) { - return n === 1 ? 0 : 1; - } - } -}; -/* - * Regular expression that matches i18n hooks like `i18n.gettext`, `i18n.ngettext`, - * `i18n.gettext_domain` or `i18n.ngettext_with_context` or `i18n.has_translation`. - */ - -var I18N_HOOK_REGEXP = /^i18n\.(n?gettext|has_translation)(_|$)/; -/** - * @typedef {(domain?: string) => LocaleData} GetLocaleData - * - * Returns locale data by domain in a - * Jed-formatted JSON object shape. - * - * @see http://messageformat.github.io/Jed/ - */ - -/** - * @typedef {(data?: LocaleData, domain?: string) => void} SetLocaleData - * - * Merges locale data into the Tannin instance by domain. Accepts data in a - * Jed-formatted JSON object shape. - * - * @see http://messageformat.github.io/Jed/ - */ - -/** - * @typedef {(data?: LocaleData, domain?: string) => void} ResetLocaleData - * - * Resets all current Tannin instance locale data and sets the specified - * locale data for the domain. Accepts data in a Jed-formatted JSON object shape. - * - * @see http://messageformat.github.io/Jed/ - */ - -/** @typedef {() => void} SubscribeCallback */ - -/** @typedef {() => void} UnsubscribeCallback */ - -/** - * @typedef {(callback: SubscribeCallback) => UnsubscribeCallback} Subscribe - * - * Subscribes to changes of locale data - */ - -/** - * @typedef {(domain?: string) => string} GetFilterDomain - * Retrieve the domain to use when calling domain-specific filters. - */ - -/** - * @typedef {(text: string, domain?: string) => string} __ - * - * Retrieve the translation of text. - * - * @see https://developer.wordpress.org/reference/functions/__/ - */ - -/** - * @typedef {(text: string, context: string, domain?: string) => string} _x - * - * Retrieve translated string with gettext context. - * - * @see https://developer.wordpress.org/reference/functions/_x/ - */ - -/** - * @typedef {(single: string, plural: string, number: number, domain?: string) => string} _n - * - * Translates and retrieves the singular or plural form based on the supplied - * number. - * - * @see https://developer.wordpress.org/reference/functions/_n/ - */ - -/** - * @typedef {(single: string, plural: string, number: number, context: string, domain?: string) => string} _nx - * - * Translates and retrieves the singular or plural form based on the supplied - * number, with gettext context. - * - * @see https://developer.wordpress.org/reference/functions/_nx/ - */ - -/** - * @typedef {() => boolean} IsRtl - * - * Check if current locale is RTL. - * - * **RTL (Right To Left)** is a locale property indicating that text is written from right to left. - * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common - * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages, - * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`). - */ - -/** - * @typedef {(single: string, context?: string, domain?: string) => boolean} HasTranslation - * - * Check if there is a translation for a given string in singular form. - */ - -/** @typedef {import('@wordpress/hooks').Hooks} Hooks */ - -/** - * An i18n instance - * - * @typedef I18n - * @property {GetLocaleData} getLocaleData Returns locale data by domain in a Jed-formatted JSON object shape. - * @property {SetLocaleData} setLocaleData Merges locale data into the Tannin instance by domain. Accepts data in a - * Jed-formatted JSON object shape. - * @property {ResetLocaleData} resetLocaleData Resets all current Tannin instance locale data and sets the specified - * locale data for the domain. Accepts data in a Jed-formatted JSON object shape. - * @property {Subscribe} subscribe Subscribes to changes of Tannin locale data. - * @property {__} __ Retrieve the translation of text. - * @property {_x} _x Retrieve translated string with gettext context. - * @property {_n} _n Translates and retrieves the singular or plural form based on the supplied - * number. - * @property {_nx} _nx Translates and retrieves the singular or plural form based on the supplied - * number, with gettext context. - * @property {IsRtl} isRTL Check if current locale is RTL. - * @property {HasTranslation} hasTranslation Check if there is a translation for a given string. - */ - -/** - * Create an i18n instance - * - * @param {LocaleData} [initialData] Locale data configuration. - * @param {string} [initialDomain] Domain for which configuration applies. - * @param {Hooks} [hooks] Hooks implementation. - * @return {I18n} I18n instance - */ - -var createI18n = function createI18n(initialData, initialDomain, hooks) { - /** - * The underlying instance of Tannin to which exported functions interface. - * - * @type {Tannin} - */ - var tannin = new tannin__WEBPACK_IMPORTED_MODULE_1__["default"]({}); - var listeners = new Set(); - - var notifyListeners = function notifyListeners() { - listeners.forEach(function (listener) { - return listener(); - }); - }; - /** - * Subscribe to changes of locale data. - * - * @param {SubscribeCallback} callback Subscription callback. - * @return {UnsubscribeCallback} Unsubscribe callback. - */ - - - var subscribe = function subscribe(callback) { - listeners.add(callback); - return function () { - return listeners.delete(callback); - }; - }; - /** @type {GetLocaleData} */ - - - var getLocaleData = function getLocaleData() { - var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default'; - return tannin.data[domain]; - }; - /** - * @param {LocaleData} [data] - * @param {string} [domain] - */ - - - var doSetLocaleData = function doSetLocaleData(data) { - var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default'; - tannin.data[domain] = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA), tannin.data[domain]), data); // Populate default domain configuration (supported locale date which omits - // a plural forms expression). - - tannin.data[domain][''] = _objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA['']), tannin.data[domain]['']); - }; - /** @type {SetLocaleData} */ - - - var setLocaleData = function setLocaleData(data, domain) { - doSetLocaleData(data, domain); - notifyListeners(); - }; - /** @type {ResetLocaleData} */ - - - var resetLocaleData = function resetLocaleData(data, domain) { - // Reset all current Tannin locale data. - tannin.data = {}; // Reset cached plural forms functions cache. - - tannin.pluralForms = {}; - setLocaleData(data, domain); - }; - /** - * Wrapper for Tannin's `dcnpgettext`. Populates default locale data if not - * otherwise previously assigned. - * - * @param {string|undefined} domain Domain to retrieve the translated text. - * @param {string|undefined} context Context information for the translators. - * @param {string} single Text to translate if non-plural. Used as - * fallback return value on a caught error. - * @param {string} [plural] The text to be used if the number is - * plural. - * @param {number} [number] The number to compare against to use - * either the singular or plural form. - * - * @return {string} The translated string. - */ - - - var dcnpgettext = function dcnpgettext() { - var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default'; - var context = arguments.length > 1 ? arguments[1] : undefined; - var single = arguments.length > 2 ? arguments[2] : undefined; - var plural = arguments.length > 3 ? arguments[3] : undefined; - var number = arguments.length > 4 ? arguments[4] : undefined; - - if (!tannin.data[domain]) { - // use `doSetLocaleData` to set silently, without notifying listeners - doSetLocaleData(undefined, domain); - } - - return tannin.dcnpgettext(domain, context, single, plural, number); - }; - /** @type {GetFilterDomain} */ - - - var getFilterDomain = function getFilterDomain() { - var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default'; - return domain; - }; - /** @type {__} */ - - - var __ = function __(text, domain) { - var translation = dcnpgettext(domain, undefined, text); - - if (!hooks) { - return translation; - } - /** - * Filters text with its translation. - * - * @param {string} translation Translated text. - * @param {string} text Text to translate. - * @param {string} domain Text domain. Unique identifier for retrieving translated strings. - */ - - - translation = - /** @type {string} */ - - /** @type {*} */ - hooks.applyFilters('i18n.gettext', translation, text, domain); - return ( - /** @type {string} */ - - /** @type {*} */ - hooks.applyFilters('i18n.gettext_' + getFilterDomain(domain), translation, text, domain) - ); - }; - /** @type {_x} */ - - - var _x = function _x(text, context, domain) { - var translation = dcnpgettext(domain, context, text); - - if (!hooks) { - return translation; - } - /** - * Filters text with its translation based on context information. - * - * @param {string} translation Translated text. - * @param {string} text Text to translate. - * @param {string} context Context information for the translators. - * @param {string} domain Text domain. Unique identifier for retrieving translated strings. - */ - - - translation = - /** @type {string} */ - - /** @type {*} */ - hooks.applyFilters('i18n.gettext_with_context', translation, text, context, domain); - return ( - /** @type {string} */ - - /** @type {*} */ - hooks.applyFilters('i18n.gettext_with_context_' + getFilterDomain(domain), translation, text, context, domain) - ); - }; - /** @type {_n} */ - - - var _n = function _n(single, plural, number, domain) { - var translation = dcnpgettext(domain, undefined, single, plural, number); - - if (!hooks) { - return translation; - } - /** - * Filters the singular or plural form of a string. - * - * @param {string} translation Translated text. - * @param {string} single The text to be used if the number is singular. - * @param {string} plural The text to be used if the number is plural. - * @param {string} number The number to compare against to use either the singular or plural form. - * @param {string} domain Text domain. Unique identifier for retrieving translated strings. - */ - - - translation = - /** @type {string} */ - - /** @type {*} */ - hooks.applyFilters('i18n.ngettext', translation, single, plural, number, domain); - return ( - /** @type {string} */ - - /** @type {*} */ - hooks.applyFilters('i18n.ngettext_' + getFilterDomain(domain), translation, single, plural, number, domain) - ); - }; - /** @type {_nx} */ - - - var _nx = function _nx(single, plural, number, context, domain) { - var translation = dcnpgettext(domain, context, single, plural, number); - - if (!hooks) { - return translation; - } - /** - * Filters the singular or plural form of a string with gettext context. - * - * @param {string} translation Translated text. - * @param {string} single The text to be used if the number is singular. - * @param {string} plural The text to be used if the number is plural. - * @param {string} number The number to compare against to use either the singular or plural form. - * @param {string} context Context information for the translators. - * @param {string} domain Text domain. Unique identifier for retrieving translated strings. - */ - - - translation = - /** @type {string} */ - - /** @type {*} */ - hooks.applyFilters('i18n.ngettext_with_context', translation, single, plural, number, context, domain); - return ( - /** @type {string} */ - - /** @type {*} */ - hooks.applyFilters('i18n.ngettext_with_context_' + getFilterDomain(domain), translation, single, plural, number, context, domain) - ); - }; - /** @type {IsRtl} */ - - - var isRTL = function isRTL() { - return 'rtl' === _x('ltr', 'text direction'); - }; - /** @type {HasTranslation} */ - - - var hasTranslation = function hasTranslation(single, context, domain) { - var _tannin$data, _tannin$data2; - - var key = context ? context + "\x04" + single : single; - var result = !!((_tannin$data = tannin.data) !== null && _tannin$data !== void 0 && (_tannin$data2 = _tannin$data[domain !== null && domain !== void 0 ? domain : 'default']) !== null && _tannin$data2 !== void 0 && _tannin$data2[key]); - - if (hooks) { - /** - * Filters the presence of a translation in the locale data. - * - * @param {boolean} hasTranslation Whether the translation is present or not.. - * @param {string} single The singular form of the translated text (used as key in locale data) - * @param {string} context Context information for the translators. - * @param {string} domain Text domain. Unique identifier for retrieving translated strings. - */ - result = - /** @type { boolean } */ - - /** @type {*} */ - hooks.applyFilters('i18n.has_translation', result, single, context, domain); - result = - /** @type { boolean } */ - - /** @type {*} */ - hooks.applyFilters('i18n.has_translation_' + getFilterDomain(domain), result, single, context, domain); - } - - return result; - }; - - if (initialData) { - setLocaleData(initialData, initialDomain); - } - - if (hooks) { - /** - * @param {string} hookName - */ - var onHookAddedOrRemoved = function onHookAddedOrRemoved(hookName) { - if (I18N_HOOK_REGEXP.test(hookName)) { - notifyListeners(); - } - }; - - hooks.addAction('hookAdded', 'core/i18n', onHookAddedOrRemoved); - hooks.addAction('hookRemoved', 'core/i18n', onHookAddedOrRemoved); - } - - return { - getLocaleData: getLocaleData, - setLocaleData: setLocaleData, - resetLocaleData: resetLocaleData, - subscribe: subscribe, - __: __, - _x: _x, - _n: _n, - _nx: _nx, - isRTL: isRTL, - hasTranslation: hasTranslation - }; -}; -//# sourceMappingURL=create-i18n.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/i18n/build-module/default-i18n.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@wordpress/i18n/build-module/default-i18n.js ***! - \*******************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ __: function() { return /* binding */ __; }, -/* harmony export */ _n: function() { return /* binding */ _n; }, -/* harmony export */ _nx: function() { return /* binding */ _nx; }, -/* harmony export */ _x: function() { return /* binding */ _x; }, -/* harmony export */ getLocaleData: function() { return /* binding */ getLocaleData; }, -/* harmony export */ hasTranslation: function() { return /* binding */ hasTranslation; }, -/* harmony export */ isRTL: function() { return /* binding */ isRTL; }, -/* harmony export */ resetLocaleData: function() { return /* binding */ resetLocaleData; }, -/* harmony export */ setLocaleData: function() { return /* binding */ setLocaleData; }, -/* harmony export */ subscribe: function() { return /* binding */ subscribe; } -/* harmony export */ }); -/* harmony import */ var _create_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./create-i18n */ "./node_modules/@wordpress/i18n/build-module/create-i18n.js"); -/* harmony import */ var _wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/hooks */ "./node_modules/@wordpress/hooks/build-module/index.js"); -/** - * Internal dependencies - */ - -/** - * WordPress dependencies - */ - - -var i18n = (0,_create_i18n__WEBPACK_IMPORTED_MODULE_0__.createI18n)(undefined, undefined, _wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__.defaultHooks); -/** - * Default, singleton instance of `I18n`. - */ - -/* harmony default export */ __webpack_exports__["default"] = (i18n); -/* - * Comments in this file are duplicated from ./i18n due to - * https://github.com/WordPress/gutenberg/pull/20318#issuecomment-590837722 - */ - -/** - * @typedef {import('./create-i18n').LocaleData} LocaleData - * @typedef {import('./create-i18n').SubscribeCallback} SubscribeCallback - * @typedef {import('./create-i18n').UnsubscribeCallback} UnsubscribeCallback - */ - -/** - * Returns locale data by domain in a Jed-formatted JSON object shape. - * - * @see http://messageformat.github.io/Jed/ - * - * @param {string} [domain] Domain for which to get the data. - * @return {LocaleData} Locale data. - */ - -var getLocaleData = i18n.getLocaleData.bind(i18n); -/** - * Merges locale data into the Tannin instance by domain. Accepts data in a - * Jed-formatted JSON object shape. - * - * @see http://messageformat.github.io/Jed/ - * - * @param {LocaleData} [data] Locale data configuration. - * @param {string} [domain] Domain for which configuration applies. - */ - -var setLocaleData = i18n.setLocaleData.bind(i18n); -/** - * Resets all current Tannin instance locale data and sets the specified - * locale data for the domain. Accepts data in a Jed-formatted JSON object shape. - * - * @see http://messageformat.github.io/Jed/ - * - * @param {LocaleData} [data] Locale data configuration. - * @param {string} [domain] Domain for which configuration applies. - */ - -var resetLocaleData = i18n.resetLocaleData.bind(i18n); -/** - * Subscribes to changes of locale data - * - * @param {SubscribeCallback} callback Subscription callback - * @return {UnsubscribeCallback} Unsubscribe callback - */ - -var subscribe = i18n.subscribe.bind(i18n); -/** - * Retrieve the translation of text. - * - * @see https://developer.wordpress.org/reference/functions/__/ - * - * @param {string} text Text to translate. - * @param {string} [domain] Domain to retrieve the translated text. - * - * @return {string} Translated text. - */ - -var __ = i18n.__.bind(i18n); -/** - * Retrieve translated string with gettext context. - * - * @see https://developer.wordpress.org/reference/functions/_x/ - * - * @param {string} text Text to translate. - * @param {string} context Context information for the translators. - * @param {string} [domain] Domain to retrieve the translated text. - * - * @return {string} Translated context string without pipe. - */ - -var _x = i18n._x.bind(i18n); -/** - * Translates and retrieves the singular or plural form based on the supplied - * number. - * - * @see https://developer.wordpress.org/reference/functions/_n/ - * - * @param {string} single The text to be used if the number is singular. - * @param {string} plural The text to be used if the number is plural. - * @param {number} number The number to compare against to use either the - * singular or plural form. - * @param {string} [domain] Domain to retrieve the translated text. - * - * @return {string} The translated singular or plural form. - */ - -var _n = i18n._n.bind(i18n); -/** - * Translates and retrieves the singular or plural form based on the supplied - * number, with gettext context. - * - * @see https://developer.wordpress.org/reference/functions/_nx/ - * - * @param {string} single The text to be used if the number is singular. - * @param {string} plural The text to be used if the number is plural. - * @param {number} number The number to compare against to use either the - * singular or plural form. - * @param {string} context Context information for the translators. - * @param {string} [domain] Domain to retrieve the translated text. - * - * @return {string} The translated singular or plural form. - */ - -var _nx = i18n._nx.bind(i18n); -/** - * Check if current locale is RTL. - * - * **RTL (Right To Left)** is a locale property indicating that text is written from right to left. - * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common - * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages, - * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`). - * - * @return {boolean} Whether locale is RTL. - */ - -var isRTL = i18n.isRTL.bind(i18n); -/** - * Check if there is a translation for a given string (in singular form). - * - * @param {string} single Singular form of the string to look up. - * @param {string} [context] Context information for the translators. - * @param {string} [domain] Domain to retrieve the translated text. - * @return {boolean} Whether the translation exists or not. - */ - -var hasTranslation = i18n.hasTranslation.bind(i18n); -//# sourceMappingURL=default-i18n.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/i18n/build-module/index.js": -/*!************************************************************!*\ - !*** ./node_modules/@wordpress/i18n/build-module/index.js ***! - \************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ __: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.__; }, -/* harmony export */ _n: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._n; }, -/* harmony export */ _nx: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._nx; }, -/* harmony export */ _x: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._x; }, -/* harmony export */ createI18n: function() { return /* reexport safe */ _create_i18n__WEBPACK_IMPORTED_MODULE_1__.createI18n; }, -/* harmony export */ defaultI18n: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__["default"]; }, -/* harmony export */ getLocaleData: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.getLocaleData; }, -/* harmony export */ hasTranslation: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.hasTranslation; }, -/* harmony export */ isRTL: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.isRTL; }, -/* harmony export */ resetLocaleData: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.resetLocaleData; }, -/* harmony export */ setLocaleData: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.setLocaleData; }, -/* harmony export */ sprintf: function() { return /* reexport safe */ _sprintf__WEBPACK_IMPORTED_MODULE_0__.sprintf; }, -/* harmony export */ subscribe: function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.subscribe; } -/* harmony export */ }); -/* harmony import */ var _sprintf__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sprintf */ "./node_modules/@wordpress/i18n/build-module/sprintf.js"); -/* harmony import */ var _create_i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./create-i18n */ "./node_modules/@wordpress/i18n/build-module/create-i18n.js"); -/* harmony import */ var _default_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./default-i18n */ "./node_modules/@wordpress/i18n/build-module/default-i18n.js"); - - - -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ "./node_modules/@wordpress/i18n/build-module/sprintf.js": -/*!**************************************************************!*\ - !*** ./node_modules/@wordpress/i18n/build-module/sprintf.js ***! - \**************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ sprintf: function() { return /* binding */ sprintf; } -/* harmony export */ }); -/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js"); -/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var sprintf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! sprintf-js */ "./node_modules/sprintf-js/src/sprintf.js"); -/* harmony import */ var sprintf_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(sprintf_js__WEBPACK_IMPORTED_MODULE_1__); -/** - * External dependencies - */ - - -/** - * Log to console, once per message; or more precisely, per referentially equal - * argument set. Because Jed throws errors, we log these to the console instead - * to avoid crashing the application. - * - * @param {...*} args Arguments to pass to `console.error` - */ - -var logErrorOnce = memize__WEBPACK_IMPORTED_MODULE_0___default()(console.error); // eslint-disable-line no-console - -/** - * Returns a formatted string. If an error occurs in applying the format, the - * original format string is returned. - * - * @param {string} format The format of the string to generate. - * @param {...*} args Arguments to apply to the format. - * - * @see https://www.npmjs.com/package/sprintf-js - * - * @return {string} The formatted string. - */ - -function sprintf(format) { - try { - for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } - - return sprintf_js__WEBPACK_IMPORTED_MODULE_1___default().sprintf.apply((sprintf_js__WEBPACK_IMPORTED_MODULE_1___default()), [format].concat(args)); - } catch (error) { - logErrorOnce('sprintf error: \n\n' + error.toString()); - return format; - } -} -//# sourceMappingURL=sprintf.js.map - -/***/ }), - -/***/ "./js/src/components/class-tabs-navigator.js": -/*!***************************************************!*\ - !*** ./js/src/components/class-tabs-navigator.js ***! - \***************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ frmTabsNavigator: function() { return /* binding */ frmTabsNavigator; } -/* harmony export */ }); -function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } -function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } -function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } -function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } -function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } -var frmTabsNavigator = /*#__PURE__*/function () { - function frmTabsNavigator(wrapper) { - _classCallCheck(this, frmTabsNavigator); - if ('undefined' === typeof wrapper) { - return; - } - this.wrapper = wrapper instanceof Element ? wrapper : document.querySelector(wrapper); - if (null === this.wrapper) { - return; - } - this.flexboxSlidesGap = '16px'; - this.navs = this.wrapper.querySelectorAll('.frm-tabs-navs ul > li'); - this.slideTrackLine = this.wrapper.querySelector('.frm-tabs-active-underline'); - this.slideTrack = this.wrapper.querySelector('.frm-tabs-slide-track'); - this.slides = this.wrapper.querySelectorAll('.frm-tabs-slide-track > div'); - this.init(); - } - return _createClass(frmTabsNavigator, [{ - key: "init", - value: function init() { - var _this = this; - if (null === this.wrapper || !this.navs.length || null === this.trackLine || null === this.slideTrack || !this.slides.length) { - return; - } - this.initDefaultSlideTrackerWidth(); - this.navs.forEach(function (nav, index) { - nav.addEventListener('click', function (event) { - return _this.onNavClick(event, index); - }); - }); - } - }, { - key: "onNavClick", - value: function onNavClick(event, index) { - this.removeActiveClassnameFromNavs(); - event.target.classList.add('frm-active'); - this.initSlideTrackUnderline(event.target, index); - this.changeSlide(index); - } - }, { - key: "initDefaultSlideTrackerWidth", - value: function initDefaultSlideTrackerWidth() { - if (!this.slideTrackLine.dataset.initialWidth) { - return; - } - this.slideTrackLine.style.width = "".concat(this.slideTrackLine.dataset.initialWidth, "px"); - } - }, { - key: "initSlideTrackUnderline", - value: function initSlideTrackUnderline(nav, index) { - this.slideTrackLine.classList.remove('frm-first', 'frm-last'); - var activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter(function (nav) { - return nav.classList.contains('frm-active'); - }); - this.slideTrackLine.style.transform = "translateX(".concat(activeNav.offsetLeft, "px)"); - this.slideTrackLine.style.width = activeNav.clientWidth + 'px'; - if (this.navs.length === index + 1) { - this.slideTrackLine.classList.add('frm-last'); - return; - } - if (0 === index) { - this.slideTrackLine.classList.add('frm-first'); - } - } - }, { - key: "changeSlide", - value: function changeSlide(index) { - this.removeActiveClassnameFromSlides(); - var translate = index == 0 ? '0px' : "calc( ( ".concat(index * 100, "% + ").concat(parseInt(this.flexboxSlidesGap, 10) * index, "px ) * -1 )"); - this.slideTrack.style.transform = "translateX(".concat(translate, ")"); - if (index in this.slides) { - this.slides[index].classList.add('frm-active'); - } - } - }, { - key: "removeActiveClassnameFromSlides", - value: function removeActiveClassnameFromSlides() { - this.slides.forEach(function (slide) { - return slide.classList.remove('frm-active'); - }); - } - }, { - key: "removeActiveClassnameFromNavs", - value: function removeActiveClassnameFromNavs() { - this.navs.forEach(function (nav) { - return nav.classList.remove('frm-active'); - }); - } - }]); -}(); - -/***/ }), - -/***/ "./js/src/core/constants.js": -/*!**********************************!*\ - !*** ./js/src/core/constants.js ***! - \**********************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ CHECKED_CLASS: function() { return /* binding */ CHECKED_CLASS; }, -/* harmony export */ CURRENT_CLASS: function() { return /* binding */ CURRENT_CLASS; }, -/* harmony export */ HIDDEN_CLASS: function() { return /* binding */ HIDDEN_CLASS; }, -/* harmony export */ HIDE_JS_CLASS: function() { return /* binding */ HIDE_JS_CLASS; }, -/* harmony export */ PLUGIN_URL: function() { return /* binding */ PLUGIN_URL; }, -/* harmony export */ nonce: function() { return /* binding */ nonce; } -/* harmony export */ }); -var _window$frmGlobal = window.frmGlobal, - PLUGIN_URL = _window$frmGlobal.url, - nonce = _window$frmGlobal.nonce; - -var HIDDEN_CLASS = 'frm_hidden'; -var HIDE_JS_CLASS = 'frm-hide-js'; -var CURRENT_CLASS = 'frm-current'; -var CHECKED_CLASS = 'frm-checked'; - -/***/ }), - -/***/ "./js/src/core/utils/animation.js": -/*!****************************************!*\ - !*** ./js/src/core/utils/animation.js ***! - \****************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ frmAnimate: function() { return /* binding */ frmAnimate; } -/* harmony export */ }); -function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } -function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } -function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } -function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } -function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } -var frmAnimate = /*#__PURE__*/function () { - /** - * Construct frmAnimate - * - * @param {Element|Element[]} elements - * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d - * - */ - function frmAnimate(elements) { - var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default'; - _classCallCheck(this, frmAnimate); - this.elements = elements; - this.type = type; - this.prepareElements(); - } - - /** - * Init animation - fadeIn. - * Requires this.type = 'default'; - * ex: new frmAnimate( elements ).fadeIn(); - */ - return _createClass(frmAnimate, [{ - key: "fadeIn", - value: function fadeIn() { - var _this = this; - this.applyStyleToElements(function (element) { - element.classList.add('frm-fadein-up'); - element.addEventListener('animationend', function () { - _this.resetOpacity(); - element.classList.remove('frm-fadein-up'); - }, { - once: true - }); - }); - } - - /** - * Init animation - cascadeFadeIn. - * Requires this.type = 'cascade'|'cascade-3d'; - * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn(); - * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn(); - * - * @param {float} delay - The transition delay value. - * - */ - }, { - key: "cascadeFadeIn", - value: function cascadeFadeIn() { - var _this2 = this; - var delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.03; - setTimeout(function () { - _this2.applyStyleToElements(function (element, index) { - element.classList.remove('frm-animate'); - element.style.transitionDelay = (index + 1) * delay + 's'; - }); - }, 200); - } - }, { - key: "prepareElements", - value: function prepareElements() { - var _this3 = this; - this.applyStyleToElements(function (element) { - if ('default' === _this3.type) { - element.style.opacity = '0.0'; - } - if ('cascade' === _this3.type) { - element.classList.add('frm-init-cascade-animation'); - } - if ('cascade-3d' === _this3.type) { - element.classList.add('frm-init-fadein-3d'); - } - element.classList.add('frm-animate'); - }); - } - }, { - key: "resetOpacity", - value: function resetOpacity() { - this.applyStyleToElements(function (element) { - return element.style.opacity = '1.0'; - }); - } - }, { - key: "applyStyleToElements", - value: function applyStyleToElements(callback) { - if (this.elements instanceof Element) { - callback(this.elements, 0); - return; - } - if (0 < this.elements.length) { - this.elements.forEach(function (element, index) { - return callback(element, index); - }); - } - } - }]); -}(); - -/***/ }), - -/***/ "./js/src/core/utils/async.js": -/*!************************************!*\ - !*** ./js/src/core/utils/async.js ***! - \************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ addToRequestQueue: function() { return /* binding */ addToRequestQueue; } -/* harmony export */ }); -// Initialize lastPromise with a resolved promise as the starting point for the queue -var lastPromise = Promise.resolve(); - -/** - * Adds a task to the request queue. - * - * @param {function(): Promise} task A function that returns a promise. - * @return {Promise} The new last promise in the queue. - */ -var addToRequestQueue = function addToRequestQueue(task) { - return lastPromise = lastPromise.then(task).catch(task); -}; - -/***/ }), - -/***/ "./js/src/core/utils/error.js": -/*!************************************!*\ - !*** ./js/src/core/utils/error.js ***! - \************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ showFormError: function() { return /* binding */ showFormError; } -/* harmony export */ }); -/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! . */ "./js/src/core/utils/index.js"); -/** - * Internal dependencies - */ - - -/** - * Displays form validation error messages. - * - * @param {string} inputId The ID selector for the input field with the error. - * @param {string} errorId The ID selector for the error message display element. - * @param {string} type The categorization of the error (e.g., "invalid", "empty"). - * @param {string} [message] Optional. The specific error message to display. - * @return {void} - */ -var showFormError = function showFormError(inputId, errorId, type, message) { - var inputElement = document.querySelector(inputId); - var errorElement = document.querySelector(errorId); - if (!inputElement || !errorElement) { - console.warn('showFormError: Unable to find input or error element.'); - return; - } - - // If a message is provided, update the span element's text that matches the error type - if (message) { - var span = errorElement.querySelector("span[frm-error=\"".concat(type, "\"]")); - if (span) { - span.textContent = message; - } - } - - // Assign the error type and make the error message visible - errorElement.setAttribute('frm-error', type); - (0,___WEBPACK_IMPORTED_MODULE_0__.show)(errorElement); - - // Hide the error message when the user starts typing in the faulty input field - inputElement.addEventListener('keyup', function () { - (0,___WEBPACK_IMPORTED_MODULE_0__.hide)(errorElement); - }, { - once: true - }); -}; - -/***/ }), - -/***/ "./js/src/core/utils/event.js": -/*!************************************!*\ - !*** ./js/src/core/utils/event.js ***! - \************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ onClickPreventDefault: function() { return /* binding */ onClickPreventDefault; } -/* harmony export */ }); -var onClickPreventDefault = window.frmDom.util.onClickPreventDefault; - - -/***/ }), - -/***/ "./js/src/core/utils/index.js": -/*!************************************!*\ - !*** ./js/src/core/utils/index.js ***! - \************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ addToRequestQueue: function() { return /* reexport safe */ _async__WEBPACK_IMPORTED_MODULE_1__.addToRequestQueue; }, -/* harmony export */ frmAnimate: function() { return /* reexport safe */ _animation__WEBPACK_IMPORTED_MODULE_0__.frmAnimate; }, -/* harmony export */ getQueryParam: function() { return /* reexport safe */ _url__WEBPACK_IMPORTED_MODULE_4__.getQueryParam; }, -/* harmony export */ hasQueryParam: function() { return /* reexport safe */ _url__WEBPACK_IMPORTED_MODULE_4__.hasQueryParam; }, -/* harmony export */ hide: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.hide; }, -/* harmony export */ hideElements: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.hideElements; }, -/* harmony export */ isEmptyObject: function() { return /* reexport safe */ _validation__WEBPACK_IMPORTED_MODULE_5__.isEmptyObject; }, -/* harmony export */ isHTMLElement: function() { return /* reexport safe */ _validation__WEBPACK_IMPORTED_MODULE_5__.isHTMLElement; }, -/* harmony export */ isValidEmail: function() { return /* reexport safe */ _validation__WEBPACK_IMPORTED_MODULE_5__.isValidEmail; }, -/* harmony export */ isVisible: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.isVisible; }, -/* harmony export */ onClickPreventDefault: function() { return /* reexport safe */ _event__WEBPACK_IMPORTED_MODULE_3__.onClickPreventDefault; }, -/* harmony export */ removeQueryParam: function() { return /* reexport safe */ _url__WEBPACK_IMPORTED_MODULE_4__.removeQueryParam; }, -/* harmony export */ setQueryParam: function() { return /* reexport safe */ _url__WEBPACK_IMPORTED_MODULE_4__.setQueryParam; }, -/* harmony export */ show: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.show; }, -/* harmony export */ showElements: function() { return /* reexport safe */ _visibility__WEBPACK_IMPORTED_MODULE_6__.showElements; }, -/* harmony export */ showFormError: function() { return /* reexport safe */ _error__WEBPACK_IMPORTED_MODULE_2__.showFormError; } -/* harmony export */ }); -/* harmony import */ var _animation__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./animation */ "./js/src/core/utils/animation.js"); -/* harmony import */ var _async__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./async */ "./js/src/core/utils/async.js"); -/* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./error */ "./js/src/core/utils/error.js"); -/* harmony import */ var _event__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./event */ "./js/src/core/utils/event.js"); -/* harmony import */ var _url__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./url */ "./js/src/core/utils/url.js"); -/* harmony import */ var _validation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./validation */ "./js/src/core/utils/validation.js"); -/* harmony import */ var _visibility__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./visibility */ "./js/src/core/utils/visibility.js"); - - - - - - - - -/***/ }), - -/***/ "./js/src/core/utils/url.js": -/*!**********************************!*\ - !*** ./js/src/core/utils/url.js ***! - \**********************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ getQueryParam: function() { return /* binding */ getQueryParam; }, -/* harmony export */ hasQueryParam: function() { return /* binding */ hasQueryParam; }, -/* harmony export */ removeQueryParam: function() { return /* binding */ removeQueryParam; }, -/* harmony export */ setQueryParam: function() { return /* binding */ setQueryParam; } -/* harmony export */ }); -function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } -function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } -function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } -/** - * Initializes URL and URLSearchParams objects from the current window's location - */ -var url = new URL(window.location.href); -var urlParams = url.searchParams; - -/** - * Gets the value of a specified query parameter from the current URL. - * - * @param {string} paramName The name of the query parameter to retrieve. - * @return {string|null} The value associated with the specified query parameter name, or null if not found. - */ -var getQueryParam = function getQueryParam(paramName) { - return urlParams.get(paramName); -}; - -/** - * Removes a query parameter from the current URL and returns the updated URL string. - * - * @param {string} paramName The name of the query parameter to remove. - * @return {string} The updated URL string. - */ -var removeQueryParam = function removeQueryParam(paramName) { - urlParams.delete(paramName); - url.search = urlParams.toString(); - return url.toString(); -}; - -/** - * Sets the value of a query parameter in the current URL and optionally updates the browser's history state. - * - * @param {string} paramName The name of the query parameter to set. - * @param {string} paramValue The value to set for the query parameter. - * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'. - * @return {string} The updated URL string. - */ -var setQueryParam = function setQueryParam(paramName, paramValue) { - var updateMethod = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'pushState'; - urlParams.set(paramName, paramValue); - url.search = urlParams.toString(); - if (['pushState', 'replaceState'].includes(updateMethod)) { - var state = _defineProperty({}, paramName, paramValue); - window.history[updateMethod](state, '', url); - } - return url.toString(); -}; - -/** - * Checks if a query parameter exists in the current URL. - * - * @param {string} paramName The name of the query parameter to check. - * @return {boolean} True if the query parameter exists, otherwise false. - */ -var hasQueryParam = function hasQueryParam(paramName) { - return urlParams.has(paramName); -}; - -/***/ }), - -/***/ "./js/src/core/utils/validation.js": -/*!*****************************************!*\ - !*** ./js/src/core/utils/validation.js ***! - \*****************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ isEmptyObject: function() { return /* binding */ isEmptyObject; }, -/* harmony export */ isHTMLElement: function() { return /* binding */ isHTMLElement; }, -/* harmony export */ isValidEmail: function() { return /* binding */ isValidEmail; } -/* harmony export */ }); -/** - * Validates an email address using a regular expression. - * - * @param {string} email The email address to validate. - * @return {boolean} True if the email address is valid, otherwise false. - */ -var isValidEmail = function isValidEmail(email) { - return typeof email === 'string' ? /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(email) : false; -}; - -/** - * Validates if the given element is an instance of HTMLElement. - * - * @param {any} element Element to be checked. - * @return {boolean} True if it's an HTMLElement, otherwise false. - */ -var isHTMLElement = function isHTMLElement(element) { - return element instanceof HTMLElement || console.warn('Invalid argument: Element must be an instance of HTMLElement') || false; -}; - -/** - * Checks if the given object is empty. - * - * @param {Object} obj The object to check. - * @return {boolean} True if the object is empty, otherwise false. - */ -var isEmptyObject = function isEmptyObject(obj) { - return Object.keys(obj).length === 0 && obj.constructor === Object; -}; - -/***/ }), - -/***/ "./js/src/core/utils/visibility.js": -/*!*****************************************!*\ - !*** ./js/src/core/utils/visibility.js ***! - \*****************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ hide: function() { return /* binding */ hide; }, -/* harmony export */ hideElements: function() { return /* binding */ hideElements; }, -/* harmony export */ isVisible: function() { return /* binding */ isVisible; }, -/* harmony export */ show: function() { return /* binding */ show; }, -/* harmony export */ showElements: function() { return /* binding */ showElements; } -/* harmony export */ }); -/* harmony import */ var core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core/constants */ "./js/src/core/constants.js"); -/** - * Internal dependencies - */ - - -/** - * Shows specified elements by removing the hidden class. - * - * @param {Array} elements An array of elements to show. - * @return {void} - */ -var showElements = function showElements(elements) { - var _Array$from; - return (_Array$from = Array.from(elements)) === null || _Array$from === void 0 ? void 0 : _Array$from.forEach(function (element) { - return show(element); - }); -}; - -/** - * Hides specified elements by adding the hidden class. - * - * @param {Array} elements An array of elements to hide. - * @return {void} - */ -var hideElements = function hideElements(elements) { - var _Array$from2; - return (_Array$from2 = Array.from(elements)) === null || _Array$from2 === void 0 ? void 0 : _Array$from2.forEach(function (element) { - return hide(element); - }); -}; - -/** - * Removes the hidden class to show the element. - * - * @param {Element} element The element to show. - * @return {void} - */ -var show = function show(element) { - return element === null || element === void 0 ? void 0 : element.classList.remove(core_constants__WEBPACK_IMPORTED_MODULE_0__.HIDDEN_CLASS); -}; - -/** - * Adds the hidden class to hide the element. - * - * @param {Element} element The element to hide. - * @return {void} - */ -var hide = function hide(element) { - return element === null || element === void 0 ? void 0 : element.classList.add(core_constants__WEBPACK_IMPORTED_MODULE_0__.HIDDEN_CLASS); -}; - -/** - * Checks if an element is visible. - * - * @param {HTMLElement} element The HTML element to check for visibility. - * @return {boolean} Returns true if the element is visible, otherwise false. - */ -var isVisible = function isVisible(element) { - var styles = window.getComputedStyle(element); - return styles.getPropertyValue('display') !== 'none'; -}; - -/***/ }), - -/***/ "./js/src/settings-components/components/dependent-updater-component.js": -/*!******************************************************************************!*\ - !*** ./js/src/settings-components/components/dependent-updater-component.js ***! - \******************************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ frmDependentUpdaterComponent; } -/* harmony export */ }); -function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } -function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } -function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } -function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } -function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } -/** - * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview. - * The names of the elements that will be updated are specified using the "will-change" attribute. - * It is primarily used in components from Style/Quick Settings. - * For instance, when the "FrmPrimaryColorStyleComponent" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds. - */ -var frmDependentUpdaterComponent = /*#__PURE__*/function () { - /** - * Creates an instance of frmDependentUpdaterComponent. - * @param {HTMLElement} component - The component element. - */ - function frmDependentUpdaterComponent(component) { - _classCallCheck(this, frmDependentUpdaterComponent); - this.component = component; - try { - var willChangeData = JSON.parse(this.component.dataset.willChange); - this.data = { - propagateInputs: this.initPropagationList(willChangeData), - changeEvent: new Event('change', { - bubbles: true - }) - }; - } catch (error) { - console.error('Error parsing JSON data from "will-change" attribute.', error); - } - } - - /** - * Initializes the list of inputs to propagate changes to. - * The selection is made by provided input's names list in "will-change" attribute. - * @param {string[]} inputNames - The names of the inputs to propagate changes to. - * @return {HTMLElement[]} - The list of inputs to propagate changes to. - */ - return _createClass(frmDependentUpdaterComponent, [{ - key: "initPropagationList", - value: function initPropagationList(inputNames) { - var list = []; - inputNames.forEach(function (name) { - var input = document.querySelector("input[name=\"".concat(name, "\"]")); - if (null !== input) { - list.push(input); - } - }); - return list; - } - - /** - * Updates all dependent elements with the given value. - * @param {string} value - The value to update the dependent elements with. - */ - }, { - key: "updateAllDependentElements", - value: function updateAllDependentElements(value) { - this.data.propagateInputs.forEach(function (input) { - input.value = value; - }); - this.data.propagateInputs[0].dispatchEvent(this.data.changeEvent); - } - }]); -}(); - - -/***/ }), - -/***/ "./js/src/settings-components/components/radio-component.js": -/*!******************************************************************!*\ - !*** ./js/src/settings-components/components/radio-component.js ***! - \******************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ frmRadioComponent; } -/* harmony export */ }); -/* harmony import */ var core_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core/utils */ "./js/src/core/utils/index.js"); -function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } -function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } -function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } -function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } -function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } - - -/** - * Represents a radio component. - * @class - */ -var frmRadioComponent = /*#__PURE__*/function () { - function frmRadioComponent() { - _classCallCheck(this, frmRadioComponent); - this.radioElements = document.querySelectorAll('.frm-style-component.frm-radio-component'); - if (0 < this.radioElements.length) { - this.init(); - } - } - - /** - * Initializes the radio component. - */ - return _createClass(frmRadioComponent, [{ - key: "init", - value: function init() { - var _this = this; - this.radioElements.forEach(function (element) { - _this.initOnRadioChange(element); - }); - this.initTrackerOnAccordionClick(); - } - }, { - key: "initTrackerOnAccordionClick", - value: function initTrackerOnAccordionClick() { - var _this2 = this; - var accordionitems = document.querySelectorAll('#frm_style_sidebar .accordion-section h3'); - accordionitems.forEach(function (accordionitem) { - accordionitem.addEventListener('click', function (event) { - var wrapper = event.target.closest('.accordion-section'); - var radioButtons = wrapper.querySelectorAll('.frm-style-component.frm-radio-component input[type="radio"]:checked'); - radioButtons.forEach(function (radio) { - setTimeout(function () { - return _this2.onRadioChange(radio); - }, 200); - }); - }); - }); - } - - /** - * Initializes the onRadioChange event for the given wrapper. - * @param {HTMLElement} radioElement - The radio element. - */ - }, { - key: "initOnRadioChange", - value: function initOnRadioChange(radioElement) { - var _this3 = this; - radioElement.querySelectorAll('input[type="radio"]').forEach(function (radio) { - if (radio.checked) { - _this3.onRadioChange(radio); - } - radio.addEventListener('change', function (event) { - _this3.onRadioChange(event.target); - }); - }); - } - - /** - * Handles the onRadioChange event for the given wrapper. - * @param {HTMLElement} target - The active radio button. - */ - }, { - key: "onRadioChange", - value: function onRadioChange(target) { - var wrapper = target.closest('.frm-style-component.frm-radio-component'); - var activeItem = wrapper.querySelector('input[type="radio"]:checked + label'); - if (null === activeItem) { - return; - } - this.moveTracker(activeItem, wrapper); - this.hideExtraElements(target); - this.maybeShowExtraElements(target); - } - - /** - * Display additional elements related to the selected radio option. - * @param {HTMLElement} radio - The radio button element. - */ - }, { - key: "maybeShowExtraElements", - value: function maybeShowExtraElements(radio) { - var elementAttr = radio.getAttribute('data-frm-show-element'); - if (null === elementAttr) { - return; - } - var elements = document.querySelectorAll("div[data-frm-element=\"".concat(elementAttr, "\"]")); - if (0 === elements.length) { - return; - } - elements.forEach(function (element) { - (0,core_utils__WEBPACK_IMPORTED_MODULE_0__.show)(element); - element.classList.add('frm-element-is-visible'); - }); - } - - /** - * Hide the possible opepend extra elements. - */ - }, { - key: "hideExtraElements", - value: function hideExtraElements() { - var elements = document.querySelectorAll('.frm-element-is-visible'); - if (0 === elements.length) { - return; - } - elements.forEach(function (element) { - element.classList.remove('frm-element-is-visible'); - element.classList.add('frm_hidden'); - (0,core_utils__WEBPACK_IMPORTED_MODULE_0__.hide)(element); - }); - } - - /** - * Moves the tracker to the active item. - * @param {HTMLElement} activeItem - The active item element. - * @param {HTMLElement} wrapper - The wrapper element. - */ - }, { - key: "moveTracker", - value: function moveTracker(activeItem, wrapper) { - var offset = activeItem.offsetLeft; - var width = activeItem.offsetWidth; - var tracker = wrapper.querySelector('.frm-radio-active-tracker'); - tracker.style.left = 0; - tracker.style.width = "".concat(width, "px"); - tracker.style.transform = "translateX(".concat(offset, "px)"); - } - }]); -}(); - - -/***/ }), - -/***/ "./js/src/settings-components/components/slider-component.js": -/*!*******************************************************************!*\ - !*** ./js/src/settings-components/components/slider-component.js ***! - \*******************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ frmSliderComponent; } -/* harmony export */ }); -/* harmony import */ var _dependent_updater_component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./dependent-updater-component */ "./js/src/settings-components/components/dependent-updater-component.js"); -function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } -function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } -function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } -function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } -function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } - -/** - * Represents a slider component. - * @class frmSliderComponent - */ -var frmSliderComponent = /*#__PURE__*/function () { - function frmSliderComponent() { - var _this = this; - _classCallCheck(this, frmSliderComponent); - this.sliderElements = document.querySelectorAll('.frm-slider-component'); - if (0 === this.sliderElements.length) { - return; - } - - // The slider bullet point width in pixels. Used in value calculation on drag event. - this.sliderBulletWidth = 16; - this.sliderMarginRight = 5; - this.eventsChange = []; - var debounce = frmDom.util.debounce; - this.valueChangeDebouncer = debounce(function (index) { - return _this.triggerValueChange(index); - }, 25); - this.initOptions(); - this.init(); - } - - /** - * Initializes the options for the slider component. - */ - return _createClass(frmSliderComponent, [{ - key: "initOptions", - value: function initOptions() { - var _this2 = this; - this.options = []; - this.sliderElements.forEach(function (element, index) { - var parentWrapper = element.classList.contains('frm-has-multiple-values') ? element.closest('.frm-style-component') : element; - _this2.options.push({ - dragging: false, - startX: 0, - translateX: 0, - maxValue: parseInt(element.dataset.maxValue, 10), - element: element, - index: index, - value: 0, - dependentUpdater: parentWrapper.classList.contains('frm-style-dependent-updater-component') ? new _dependent_updater_component__WEBPACK_IMPORTED_MODULE_0__["default"](parentWrapper) : null - }); - }); - } - - /** - * Initializes the slider component. - */ - }, { - key: "init", - value: function init() { - this.initSlidersPosition(); - this.initDraggable(); - } - - /** - * Initializes the draggable functionality for the slider component. - */ - }, { - key: "initDraggable", - value: function initDraggable() { - var _this3 = this; - this.sliderElements.forEach(function (element, index) { - _this3.eventsChange[index] = new Event('change', { - bubbles: true, - cancelable: true - }); - var draggableBullet = element.querySelector('.frm-slider-bullet'); - var valueInput = element.querySelector('.frm-slider-value input[type="text"]'); - valueInput.addEventListener('change', function (event) { - var unit = element.querySelector('select').value; - if (_this3.getMaxValue(unit, index) < parseInt(event.target.value, 10)) { - return; - } - _this3.initSliderWidth(element); - _this3.options[index].fullValue = _this3.updateValue(element, valueInput.value + unit); - _this3.triggerValueChange(index); - }); - _this3.expandSliderGroup(element); - _this3.updateOnUnitChange(element, valueInput, index); - _this3.changeSliderPositionOnClick(element, valueInput, index); - draggableBullet.addEventListener('mousedown', function (event) { - event.preventDefault(); - event.stopPropagation(); - if (element.classList.contains('frm-disabled')) { - return; - } - _this3.enableDragging(event, index); - }); - draggableBullet.addEventListener('mousemove', function (event) { - if (element.classList.contains('frm-disabled')) { - return; - } - _this3.moveTracker(event, index); - }); - draggableBullet.addEventListener('mouseup', function (event) { - if (element.classList.contains('frm-disabled')) { - return; - } - _this3.disableDragging(index, event); - }); - draggableBullet.addEventListener('mouseleave', function (event) { - if (element.classList.contains('frm-disabled')) { - return; - } - _this3.disableDragging(index, event); - }); - }); - } - }, { - key: "expandSliderGroup", - value: function expandSliderGroup(element) { - var svgIcon = element.querySelector('.frmsvg'); - if ('undefined' === typeof element.dataset.displaySliders || null === svgIcon) { - return; - } - var sliderGroupItems = this.getSliderGroupItems(element); - svgIcon.addEventListener('click', function () { - sliderGroupItems.forEach(function (item) { - item.classList.toggle('frm_hidden'); - }); - }); - } - }, { - key: "updateOnUnitChange", - value: function updateOnUnitChange(element, valueInput, index) { - var _this4 = this; - element.querySelector('select').addEventListener('change', function (event) { - var unit = event.target.value.toLowerCase(); - if ('' === unit) { - element.classList.add('frm-disabled', 'frm-empty'); - return; - } - if ('auto' === unit) { - element.classList.add('frm-disabled'); - _this4.updateValue(element, 'auto'); - _this4.triggerValueChange(index); - return; - } - element.classList.remove('frm-disabled', 'frm-empty'); - _this4.options[index].fullValue = valueInput.value + unit; - _this4.updateValue(element, _this4.options[index].fullValue); - _this4.triggerValueChange(index); - }); - } - }, { - key: "changeSliderPositionOnClick", - value: function changeSliderPositionOnClick(element, valueInput, index) { - var _this5 = this; - var frmSlider = element.querySelector('.frm-slider'); - var customEvent = new Event('change', { - 'bubbles': true, - 'cancelable': true - }); - frmSlider.addEventListener('click', function (event) { - if (element.classList.contains('frm-disabled')) { - return; - } - event.preventDefault(); - event.stopPropagation(); - if (!event.target.classList.contains('frm-slider') && !event.target.classList.contains('frm-slider-active-track')) { - return; - } - var sliderWidth = frmSlider.offsetWidth - _this5.sliderBulletWidth; - var sliderRect = frmSlider.getBoundingClientRect(); - var deltaX = event.clientX - sliderRect.left - _this5.sliderBulletWidth; - var unit = element.querySelector('select').value; - var value = _this5.calculateValue(sliderWidth, deltaX, _this5.getMaxValue(unit, index)); - if (value < 0) { - return; - } - _this5.options[index].fullValue = _this5.updateValue(element, value + unit); - _this5.initChildSlidersWidth(element, deltaX, index, value + unit); - valueInput.value = value; - valueInput.dispatchEvent(customEvent); - }); - } - - /** - * Retrieves an array of slider group items based on the provided element. - * - * @param {HTMLElement} element - The element to retrieve slider group items from. - * @return {NodeList} - An array-like object containing the slider group items. - */ - }, { - key: "getSliderGroupItems", - value: function getSliderGroupItems(element) { - if ('undefined' === typeof element.dataset.displaySliders) { - return []; - } - var slidersGroup = element.dataset.displaySliders.split(','); - var query = slidersGroup.map(function (item) { - return ".frm-slider-component[data-type=\"".concat(item, "\"]"); - }).join(', '); - return element.closest('.frm-style-component').querySelectorAll(query); - } - - /** - * Initializes the position of sliders when a accordion section is opened. - */ - }, { - key: "initSlidersPosition", - value: function initSlidersPosition() { - var _this6 = this; - var accordionitems = document.querySelectorAll('#frm_style_sidebar .accordion-section h3'); - var quickSettings = document.querySelector('.frm-quick-settings'); - var openedAccordion = document.querySelector('.accordion-section.open'); - - // Detect if upload background image upload has triggered and initialize the "Image Opacity" slider width. - wp.hooks.addAction('frm_pro_on_bg_image_upload', 'formidable', function (event) { - var imageBackgroundOpacitySlider = event.closest('.accordion-section-content').querySelector('#frm-bg-image-opacity-slider'); - _this6.initSlidersWidth(imageBackgroundOpacitySlider); - }); - - // init the sliders width from "Quick Settings" page. - if (null !== quickSettings) { - this.initSlidersWidth(quickSettings); - } - - // Init the sliders width in opened accordion section from "Advanced Settings" page. - if (null !== openedAccordion) { - this.initSlidersWidth(openedAccordion); - } - - // init the sliders width everytime when an accordion section is opened from "Advanced Settings" page. - accordionitems.forEach(function (item) { - item.addEventListener('click', function (event) { - _this6.initSlidersWidth(event.target.closest('.accordion-section')); - }); - }); - this.initSliderPositionOnFieldShapeChange(); - } - - /** - * Initializes the width of "Corner Radius" slider that is dynamically is displayed on "Field Shape" option change from "Quick Settings". - * - * @return {void} - */ - }, { - key: "initSliderPositionOnFieldShapeChange", - value: function initSliderPositionOnFieldShapeChange() { - var _this7 = this; - var fieldShapeType = document.querySelector('.frm-style-component.frm-field-shape'); - if (null === fieldShapeType) { - return; - } - var radioButtons = fieldShapeType.querySelectorAll('input[type="radio"]'); - radioButtons.forEach(function (radio) { - radio.addEventListener('change', function (event) { - if (event.target.checked && 'rounded-corner' === event.target.value) { - var slider = document.querySelector('div[data-frm-element="field-shape-corner-radius"] .frm-slider-component'); - _this7.initSliderWidth(slider); - } - }); - }); - } - - /** - * Initializes the width of sliders within a given section. - * - * @param {HTMLElement} section - The section containing the sliders. - * @return {void} - */ - }, { - key: "initSlidersWidth", - value: function initSlidersWidth(section) { - var _this8 = this; - var sliders = section.querySelectorAll('.frm-slider-component'); - sliders.forEach(function (slider) { - setTimeout(function () { - _this8.initSliderWidth(slider); - }, 100); - }); - } - - /** - * Initializes the width of a slider. - * - * @param {HTMLElement} slider - The slider element. - * @return {void} - */ - }, { - key: "initSliderWidth", - value: function initSliderWidth(slider) { - if (slider.classList.contains('frm-disabled')) { - return; - } - var index = this.getSliderIndex(slider); - var sliderWidth = slider.querySelector('.frm-slider').offsetWidth - this.sliderBulletWidth; - var value = parseInt(slider.querySelector('.frm-slider-value input[type="text"]').value, 10); - var unit = slider.querySelector('select').value; - var deltaX = '%' === unit ? Math.round(sliderWidth * value / 100) : Math.ceil(value / this.options[index].maxValue * sliderWidth); - slider.querySelector('.frm-slider-active-track').style.width = "".concat(deltaX, "px"); - this.options[index].translateX = deltaX; - this.options[index].value = value + unit; - } - - /** - * Initializes the width of child sliders. - * - * @param {HTMLElement} slider - The parent slider element. - * @param {number} width - The width to set for the child sliders. - * @param {number} index - The starting index for the child sliders. - * @param {number} value - The value to set for the child sliders. - */ - }, { - key: "initChildSlidersWidth", - value: function initChildSlidersWidth(slider, width, index, value) { - var _this9 = this; - if (!slider.classList.contains('frm-has-independent-fields') && !slider.classList.contains('frm-has-multiple-values')) { - return; - } - var childSliders = slider.classList.contains('frm-has-independent-fields') ? slider.querySelectorAll('.frm-independent-slider-field') : this.getSliderGroupItems(slider); - childSliders.forEach(function (item, childIndex) { - item.querySelector('.frm-slider-active-track').style.width = "".concat(width, "px"); - _this9.options[index + childIndex + 1].translateX = width; - _this9.options[index + childIndex + 1].value = value; - }); - } - - /** - * Returns the index of the specified slider element. - * - * @param {HTMLElement} slider - The slider element. - * @return {number} The index of the slider element. - */ - }, { - key: "getSliderIndex", - value: function getSliderIndex(slider) { - return this.options.filter(function (option) { - return option.element === slider; - })[0].index; - } - }, { - key: "moveTracker", - value: - /** - * Handles the movement of the slider tracker. - * - * @param {Event} event - The event object representing the mouse movement. - * @param {number} index - The index of the slider element. - * @return {void} - */ - function moveTracker(event, index) { - if (!this.options[index].dragging) { - return; - } - var deltaX = event.clientX - this.options[index].startX; - var element = this.sliderElements[index]; - var sliderWidth = element.querySelector('.frm-slider').offsetWidth; - - // Ensure deltaX does not go below 0 - deltaX = Math.max(deltaX, 0); - if (deltaX + this.sliderBulletWidth / 2 + this.sliderMarginRight >= sliderWidth) { - return; - } - var unit = element.querySelector('select').value; - var value = this.calculateValue(sliderWidth, deltaX, this.getMaxValue(unit, index)); - element.querySelector('.frm-slider-value input[type="text"]').value = value; - element.querySelector('.frm-slider-bullet .frm-slider-value-label').innerText = value; - element.querySelector('.frm-slider-active-track').style.width = "".concat(deltaX, "px"); - this.initChildSlidersWidth(element, deltaX, index, value + unit); - this.options[index].translateX = deltaX; - this.options[index].value = value + unit; - this.options[index].fullValue = this.updateValue(element, this.options[index].value); - this.valueChangeDebouncer(index); - } - - /** - * Get the maximum value based on the unit and index. - * - * @param {string} unit - The unit of measurement. - * @param {number} index - The index of the option. - * @return {number} The maximum value. - */ - }, { - key: "getMaxValue", - value: function getMaxValue(unit, index) { - return '%' === unit ? 100 : this.options[index].maxValue; - } - - /** - * Enables dragging for the slider component. - * - * @param {Event} event - The event object. - * @param {number} index - The index of the option being dragged. - */ - }, { - key: "enableDragging", - value: function enableDragging(event, index) { - event.target.classList.add('frm-dragging'); - this.options[index].dragging = true; - this.options[index].startX = event.clientX - this.options[index].translateX; - } - - /** - * Disables dragging for a specific index. - * - * @param {number} index - The index of the option to disable dragging for. - * @param {Event} event - The event object triggered by the dragging action. - */ - }, { - key: "disableDragging", - value: function disableDragging(index, event) { - if (false === this.options[index].dragging) { - return; - } - event.target.classList.remove('frm-dragging'); - this.options[index].dragging = false; - this.triggerValueChange(index); - } - - /** - * Triggers a value change for the specified index. - * - * @param {number} index - The index of the value to be changed. - */ - }, { - key: "triggerValueChange", - value: function triggerValueChange(index) { - var _this10 = this; - if (null !== this.options[index].dependentUpdater) { - this.options[index].dependentUpdater.updateAllDependentElements(this.options[index].fullValue); - return; - } - var input = this.sliderElements[index].classList.contains('frm-has-multiple-values') ? this.sliderElements[index].closest('.frm-style-component').querySelector('input[type="hidden"]') : this.sliderElements[index].querySelectorAll('.frm-slider-value input[type="hidden"]'); - if (input instanceof NodeList) { - input.forEach(function (item) { - item.dispatchEvent(_this10.eventsChange[index]); - }); - return; - } - input.dispatchEvent(this.eventsChange[index]); - } - - /** - * Calculates the value based on the width, deltaX, and maxValue. - * - * @param {number} width - The width of the slider. - * @param {number} deltaX - The change in x-coordinate. - * @param {number} maxValue - The maximum value. - * @return {number} - The calculated value. - */ - }, { - key: "calculateValue", - value: function calculateValue(width, deltaX, maxValue) { - // Indicates the additional value generated by the slider's drag progress (up to 100%) and the width of the slider bullet. - // Generates a more accurate value for the slider's start (0) and end (maximum value) positions, taking into account the slider's position and bullet width. - var delta = Math.ceil(this.sliderBulletWidth * (deltaX / width)); - var value = Math.ceil((deltaX + delta) / width * maxValue); - return Math.min(value, maxValue); - } - - /** - * Updates the value of a slider component. - * - * @param {HTMLElement} element - The slider component element. - * @param {string} value - The new value to be set. - * @return {string} - The updated value. - */ - }, { - key: "updateValue", - value: function updateValue(element, value) { - var _this11 = this; - // When the slider component is used for "Base Font Size", we need to update a hidden input field when change happens to indicate that the "Base Font Size" has been adjusted. - // Used to avoid conflicts with other possible font sizes adjustemnts in "Advanced Settings" when moving from "Quick Settings" when "Base Font Size" is not changed. - if (element.classList.contains('frm-base-font-size')) { - var userBaseFontSizeInput = document.querySelector('input[name="frm_style_setting[post_content][use_base_font_size]"]'); - if (null !== userBaseFontSizeInput) { - userBaseFontSizeInput.value = 'true'; - } - } - if (element.classList.contains('frm-has-multiple-values')) { - var input = element.closest('.frm-style-component').querySelector('input[type="hidden"]'); - var inputValue = input.value.split(' '); - var type = element.dataset.type; - if (!inputValue[2]) { - inputValue[2] = '0px'; - } - if (!inputValue[3]) { - inputValue[3] = '0px'; - } - switch (type) { - case 'vertical': - inputValue[0] = value; - inputValue[2] = value; - break; - case 'horizontal': - inputValue[1] = value; - inputValue[3] = value; - break; - case 'top': - inputValue[0] = value; - break; - case 'bottom': - inputValue[2] = value; - break; - case 'left': - inputValue[3] = value; - break; - case 'right': - inputValue[1] = value; - break; - } - var newValue = inputValue.join(' '); - input.value = newValue; - var childSlidersGroup = this.getSliderGroupItems(element); - childSlidersGroup.forEach(function (slider) { - var unitMeasure = _this11.getUnitMeasureFromValue(value); - slider.querySelector('.frm-slider-value input[type="text"]').value = parseInt(value, 10); - slider.querySelector('select').value = unitMeasure; - }); - return newValue; - } - if (element.classList.contains('frm-has-independent-fields')) { - var inputValues = element.querySelectorAll('.frm-slider-value input[type="hidden"]'); - var visibleValues = element.querySelectorAll('.frm-slider-value input[type="text"]'); - inputValues.forEach(function (input, index) { - input.value = value; - visibleValues[index + 1].value = parseInt(value, 10); - }); - return value; - } - element.querySelector('.frm-slider-value input[type="hidden"]').value = value; - return value; - } - - /** - * Returns the unit of measurement used in the given value. - * - * @param {string} value - The value to check for the unit of measurement. - * @return {string} The unit of measurement ('%', 'px', 'em') found in the value, or an empty string if none is found. - */ - }, { - key: "getUnitMeasureFromValue", - value: function getUnitMeasureFromValue(value) { - return ['%', 'px', 'em'].find(function (unit) { - return value.includes(unit); - }) || ''; - } - }]); -}(); - - -/***/ }), - -/***/ "./js/src/settings-components/components/tabs-component.js": -/*!*****************************************************************!*\ - !*** ./js/src/settings-components/components/tabs-component.js ***! - \*****************************************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ frmTabsComponent; } -/* harmony export */ }); -/* harmony import */ var _components_class_tabs_navigator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../components/class-tabs-navigator */ "./js/src/components/class-tabs-navigator.js"); -function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } -function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } -function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } -function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } -function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } - -/** - * Represents a Tabs Component. - * @class - */ -var frmTabsComponent = /*#__PURE__*/function () { - function frmTabsComponent() { - _classCallCheck(this, frmTabsComponent); - this.elements = document.querySelectorAll('.frm-style-tabs-wrapper'); - if (0 < this.elements.length) { - this.init(); - } - } - - /** - * Initializes the Tabs Component. - */ - return _createClass(frmTabsComponent, [{ - key: "init", - value: function init() { - this.elements.forEach(function (element) { - new _components_class_tabs_navigator__WEBPACK_IMPORTED_MODULE_0__.frmTabsNavigator(element); - }); - } - - /** - * Initializes the component on tab click. - * @param {Element} wrapper - The wrapper element. - */ - }, { - key: "initOnTabClick", - value: function initOnTabClick(wrapper) { - var _this = this; - this.initActiveBackgroundWidth(wrapper); - wrapper.querySelectorAll('.frm-tab-item').forEach(function (tab) { - tab.addEventListener('click', function (event) { - _this.onTabClick(event.target.closest('.frm-tabs-wrapper')); - }); - }); - } - }]); -}(); - - -/***/ }), - -/***/ "./node_modules/memize/index.js": -/*!**************************************!*\ - !*** ./node_modules/memize/index.js ***! - \**************************************/ -/***/ (function(module) { - -/** - * Memize options object. - * - * @typedef MemizeOptions - * - * @property {number} [maxSize] Maximum size of the cache. - */ - -/** - * Internal cache entry. - * - * @typedef MemizeCacheNode - * - * @property {?MemizeCacheNode|undefined} [prev] Previous node. - * @property {?MemizeCacheNode|undefined} [next] Next node. - * @property {Array<*>} args Function arguments for cache - * entry. - * @property {*} val Function result. - */ - -/** - * Properties of the enhanced function for controlling cache. - * - * @typedef MemizeMemoizedFunction - * - * @property {()=>void} clear Clear the cache. - */ - -/** - * Accepts a function to be memoized, and returns a new memoized function, with - * optional options. - * - * @template {Function} F - * - * @param {F} fn Function to memoize. - * @param {MemizeOptions} [options] Options object. - * - * @return {F & MemizeMemoizedFunction} Memoized function. - */ -function memize( fn, options ) { - var size = 0; - - /** @type {?MemizeCacheNode|undefined} */ - var head; - - /** @type {?MemizeCacheNode|undefined} */ - var tail; - - options = options || {}; - - function memoized( /* ...args */ ) { - var node = head, - len = arguments.length, - args, i; - - searchCache: while ( node ) { - // Perform a shallow equality test to confirm that whether the node - // under test is a candidate for the arguments passed. Two arrays - // are shallowly equal if their length matches and each entry is - // strictly equal between the two sets. Avoid abstracting to a - // function which could incur an arguments leaking deoptimization. - - // Check whether node arguments match arguments length - if ( node.args.length !== arguments.length ) { - node = node.next; - continue; - } - - // Check whether node arguments match arguments values - for ( i = 0; i < len; i++ ) { - if ( node.args[ i ] !== arguments[ i ] ) { - node = node.next; - continue searchCache; - } - } - - // At this point we can assume we've found a match - - // Surface matched node to head if not already - if ( node !== head ) { - // As tail, shift to previous. Must only shift if not also - // head, since if both head and tail, there is no previous. - if ( node === tail ) { - tail = node.prev; - } - - // Adjust siblings to point to each other. If node was tail, - // this also handles new tail's empty `next` assignment. - /** @type {MemizeCacheNode} */ ( node.prev ).next = node.next; - if ( node.next ) { - node.next.prev = node.prev; - } - - node.next = head; - node.prev = null; - /** @type {MemizeCacheNode} */ ( head ).prev = node; - head = node; - } - - // Return immediately - return node.val; - } - - // No cached value found. Continue to insertion phase: - - // Create a copy of arguments (avoid leaking deoptimization) - args = new Array( len ); - for ( i = 0; i < len; i++ ) { - args[ i ] = arguments[ i ]; - } - - node = { - args: args, - - // Generate the result from original function - val: fn.apply( null, args ), - }; - - // Don't need to check whether node is already head, since it would - // have been returned above already if it was - - // Shift existing head down list - if ( head ) { - head.prev = node; - node.next = head; - } else { - // If no head, follows that there's no tail (at initial or reset) - tail = node; - } - - // Trim tail if we're reached max size and are pending cache insertion - if ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) { - tail = /** @type {MemizeCacheNode} */ ( tail ).prev; - /** @type {MemizeCacheNode} */ ( tail ).next = null; - } else { - size++; - } - - head = node; - - return node.val; - } - - memoized.clear = function() { - head = null; - tail = null; - size = 0; - }; - - if ( false ) {} - - // Ignore reason: There's not a clear solution to create an intersection of - // the function with additional properties, where the goal is to retain the - // function signature of the incoming argument and add control properties - // on the return value. - - // @ts-ignore - return memoized; -} - -module.exports = memize; - - -/***/ }), - -/***/ "./node_modules/sprintf-js/src/sprintf.js": -/*!************************************************!*\ - !*** ./node_modules/sprintf-js/src/sprintf.js ***! - \************************************************/ -/***/ (function(module, exports, __webpack_require__) { - -var __WEBPACK_AMD_DEFINE_RESULT__;/* global window, exports, define */ - -!function() { - 'use strict' - - var re = { - not_string: /[^s]/, - not_bool: /[^t]/, - not_type: /[^T]/, - not_primitive: /[^v]/, - number: /[diefg]/, - numeric_arg: /[bcdiefguxX]/, - json: /[j]/, - not_json: /[^j]/, - text: /^[^\x25]+/, - modulo: /^\x25{2}/, - placeholder: /^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/, - key: /^([a-z_][a-z_\d]*)/i, - key_access: /^\.([a-z_][a-z_\d]*)/i, - index_access: /^\[(\d+)\]/, - sign: /^[+-]/ - } - - function sprintf(key) { - // `arguments` is not an array, but should be fine for this call - return sprintf_format(sprintf_parse(key), arguments) - } - - function vsprintf(fmt, argv) { - return sprintf.apply(null, [fmt].concat(argv || [])) - } - - function sprintf_format(parse_tree, argv) { - var cursor = 1, tree_length = parse_tree.length, arg, output = '', i, k, ph, pad, pad_character, pad_length, is_positive, sign - for (i = 0; i < tree_length; i++) { - if (typeof parse_tree[i] === 'string') { - output += parse_tree[i] - } - else if (typeof parse_tree[i] === 'object') { - ph = parse_tree[i] // convenience purposes only - if (ph.keys) { // keyword argument - arg = argv[cursor] - for (k = 0; k < ph.keys.length; k++) { - if (arg == undefined) { - throw new Error(sprintf('[sprintf] Cannot access property "%s" of undefined value "%s"', ph.keys[k], ph.keys[k-1])) - } - arg = arg[ph.keys[k]] - } - } - else if (ph.param_no) { // positional argument (explicit) - arg = argv[ph.param_no] - } - else { // positional argument (implicit) - arg = argv[cursor++] - } - - if (re.not_type.test(ph.type) && re.not_primitive.test(ph.type) && arg instanceof Function) { - arg = arg() - } - - if (re.numeric_arg.test(ph.type) && (typeof arg !== 'number' && isNaN(arg))) { - throw new TypeError(sprintf('[sprintf] expecting number but found %T', arg)) - } - - if (re.number.test(ph.type)) { - is_positive = arg >= 0 - } - - switch (ph.type) { - case 'b': - arg = parseInt(arg, 10).toString(2) - break - case 'c': - arg = String.fromCharCode(parseInt(arg, 10)) - break - case 'd': - case 'i': - arg = parseInt(arg, 10) - break - case 'j': - arg = JSON.stringify(arg, null, ph.width ? parseInt(ph.width) : 0) - break - case 'e': - arg = ph.precision ? parseFloat(arg).toExponential(ph.precision) : parseFloat(arg).toExponential() - break - case 'f': - arg = ph.precision ? parseFloat(arg).toFixed(ph.precision) : parseFloat(arg) - break - case 'g': - arg = ph.precision ? String(Number(arg.toPrecision(ph.precision))) : parseFloat(arg) - break - case 'o': - arg = (parseInt(arg, 10) >>> 0).toString(8) - break - case 's': - arg = String(arg) - arg = (ph.precision ? arg.substring(0, ph.precision) : arg) - break - case 't': - arg = String(!!arg) - arg = (ph.precision ? arg.substring(0, ph.precision) : arg) - break - case 'T': - arg = Object.prototype.toString.call(arg).slice(8, -1).toLowerCase() - arg = (ph.precision ? arg.substring(0, ph.precision) : arg) - break - case 'u': - arg = parseInt(arg, 10) >>> 0 - break - case 'v': - arg = arg.valueOf() - arg = (ph.precision ? arg.substring(0, ph.precision) : arg) - break - case 'x': - arg = (parseInt(arg, 10) >>> 0).toString(16) - break - case 'X': - arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase() - break - } - if (re.json.test(ph.type)) { - output += arg - } - else { - if (re.number.test(ph.type) && (!is_positive || ph.sign)) { - sign = is_positive ? '+' : '-' - arg = arg.toString().replace(re.sign, '') - } - else { - sign = '' - } - pad_character = ph.pad_char ? ph.pad_char === '0' ? '0' : ph.pad_char.charAt(1) : ' ' - pad_length = ph.width - (sign + arg).length - pad = ph.width ? (pad_length > 0 ? pad_character.repeat(pad_length) : '') : '' - output += ph.align ? sign + arg + pad : (pad_character === '0' ? sign + pad + arg : pad + sign + arg) - } - } - } - return output - } - - var sprintf_cache = Object.create(null) - - function sprintf_parse(fmt) { - if (sprintf_cache[fmt]) { - return sprintf_cache[fmt] - } - - var _fmt = fmt, match, parse_tree = [], arg_names = 0 - while (_fmt) { - if ((match = re.text.exec(_fmt)) !== null) { - parse_tree.push(match[0]) - } - else if ((match = re.modulo.exec(_fmt)) !== null) { - parse_tree.push('%') - } - else if ((match = re.placeholder.exec(_fmt)) !== null) { - if (match[2]) { - arg_names |= 1 - var field_list = [], replacement_field = match[2], field_match = [] - if ((field_match = re.key.exec(replacement_field)) !== null) { - field_list.push(field_match[1]) - while ((replacement_field = replacement_field.substring(field_match[0].length)) !== '') { - if ((field_match = re.key_access.exec(replacement_field)) !== null) { - field_list.push(field_match[1]) - } - else if ((field_match = re.index_access.exec(replacement_field)) !== null) { - field_list.push(field_match[1]) - } - else { - throw new SyntaxError('[sprintf] failed to parse named argument key') - } - } - } - else { - throw new SyntaxError('[sprintf] failed to parse named argument key') - } - match[2] = field_list - } - else { - arg_names |= 2 - } - if (arg_names === 3) { - throw new Error('[sprintf] mixing positional and named placeholders is not (yet) supported') - } - - parse_tree.push( - { - placeholder: match[0], - param_no: match[1], - keys: match[2], - sign: match[3], - pad_char: match[4], - align: match[5], - width: match[6], - precision: match[7], - type: match[8] - } - ) - } - else { - throw new SyntaxError('[sprintf] unexpected placeholder') - } - _fmt = _fmt.substring(match[0].length) - } - return sprintf_cache[fmt] = parse_tree - } - - /** - * export to either browser or node.js - */ - /* eslint-disable quote-props */ - if (true) { - exports.sprintf = sprintf - exports.vsprintf = vsprintf - } - if (typeof window !== 'undefined') { - window['sprintf'] = sprintf - window['vsprintf'] = vsprintf - - if (true) { - !(__WEBPACK_AMD_DEFINE_RESULT__ = (function() { - return { - 'sprintf': sprintf, - 'vsprintf': vsprintf - } - }).call(exports, __webpack_require__, exports, module), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) - } - } - /* eslint-enable quote-props */ -}(); // eslint-disable-line - - -/***/ }), - -/***/ "./node_modules/tannin/index.js": -/*!**************************************!*\ - !*** ./node_modules/tannin/index.js ***! - \**************************************/ -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ Tannin; } -/* harmony export */ }); -/* harmony import */ var _tannin_plural_forms__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tannin/plural-forms */ "./node_modules/@tannin/plural-forms/index.js"); - - -/** - * Tannin constructor options. - * - * @typedef {Object} TanninOptions - * - * @property {string} [contextDelimiter] Joiner in string lookup with context. - * @property {Function} [onMissingKey] Callback to invoke when key missing. - */ - -/** - * Domain metadata. - * - * @typedef {Object} TanninDomainMetadata - * - * @property {string} [domain] Domain name. - * @property {string} [lang] Language code. - * @property {(string|Function)} [plural_forms] Plural forms expression or - * function evaluator. - */ - -/** - * Domain translation pair respectively representing the singular and plural - * translation. - * - * @typedef {[string,string]} TanninTranslation - */ - -/** - * Locale data domain. The key is used as reference for lookup, the value an - * array of two string entries respectively representing the singular and plural - * translation. - * - * @typedef {{[key:string]:TanninDomainMetadata|TanninTranslation,'':TanninDomainMetadata|TanninTranslation}} TanninLocaleDomain - */ - -/** - * Jed-formatted locale data. - * - * @see http://messageformat.github.io/Jed/ - * - * @typedef {{[domain:string]:TanninLocaleDomain}} TanninLocaleData - */ - -/** - * Default Tannin constructor options. - * - * @type {TanninOptions} - */ -var DEFAULT_OPTIONS = { - contextDelimiter: '\u0004', - onMissingKey: null, -}; - -/** - * Given a specific locale data's config `plural_forms` value, returns the - * expression. - * - * @example - * - * ``` - * getPluralExpression( 'nplurals=2; plural=(n != 1);' ) === '(n != 1)' - * ``` - * - * @param {string} pf Locale data plural forms. - * - * @return {string} Plural forms expression. - */ -function getPluralExpression( pf ) { - var parts, i, part; - - parts = pf.split( ';' ); - - for ( i = 0; i < parts.length; i++ ) { - part = parts[ i ].trim(); - if ( part.indexOf( 'plural=' ) === 0 ) { - return part.substr( 7 ); - } - } -} - -/** - * Tannin constructor. - * - * @class - * - * @param {TanninLocaleData} data Jed-formatted locale data. - * @param {TanninOptions} [options] Tannin options. - */ -function Tannin( data, options ) { - var key; - - /** - * Jed-formatted locale data. - * - * @name Tannin#data - * @type {TanninLocaleData} - */ - this.data = data; - - /** - * Plural forms function cache, keyed by plural forms string. - * - * @name Tannin#pluralForms - * @type {Object} - */ - this.pluralForms = {}; - - /** - * Effective options for instance, including defaults. - * - * @name Tannin#options - * @type {TanninOptions} - */ - this.options = {}; - - for ( key in DEFAULT_OPTIONS ) { - this.options[ key ] = options !== undefined && key in options - ? options[ key ] - : DEFAULT_OPTIONS[ key ]; - } -} - -/** - * Returns the plural form index for the given domain and value. - * - * @param {string} domain Domain on which to calculate plural form. - * @param {number} n Value for which plural form is to be calculated. - * - * @return {number} Plural form index. - */ -Tannin.prototype.getPluralForm = function( domain, n ) { - var getPluralForm = this.pluralForms[ domain ], - config, plural, pf; - - if ( ! getPluralForm ) { - config = this.data[ domain ][ '' ]; - - pf = ( - config[ 'Plural-Forms' ] || - config[ 'plural-forms' ] || - // Ignore reason: As known, there's no way to document the empty - // string property on a key to guarantee this as metadata. - // @ts-ignore - config.plural_forms - ); - - if ( typeof pf !== 'function' ) { - plural = getPluralExpression( - config[ 'Plural-Forms' ] || - config[ 'plural-forms' ] || - // Ignore reason: As known, there's no way to document the empty - // string property on a key to guarantee this as metadata. - // @ts-ignore - config.plural_forms - ); - - pf = (0,_tannin_plural_forms__WEBPACK_IMPORTED_MODULE_0__["default"])( plural ); - } - - getPluralForm = this.pluralForms[ domain ] = pf; - } - - return getPluralForm( n ); -}; - -/** - * Translate a string. - * - * @param {string} domain Translation domain. - * @param {string|void} context Context distinguishing terms of the same name. - * @param {string} singular Primary key for translation lookup. - * @param {string=} plural Fallback value used for non-zero plural - * form index. - * @param {number=} n Value to use in calculating plural form. - * - * @return {string} Translated string. - */ -Tannin.prototype.dcnpgettext = function( domain, context, singular, plural, n ) { - var index, key, entry; - - if ( n === undefined ) { - // Default to singular. - index = 0; - } else { - // Find index by evaluating plural form for value. - index = this.getPluralForm( domain, n ); - } - - key = singular; - - // If provided, context is prepended to key with delimiter. - if ( context ) { - key = context + this.options.contextDelimiter + singular; - } - - entry = this.data[ domain ][ key ]; - - // Verify not only that entry exists, but that the intended index is within - // range and non-empty. - if ( entry && entry[ index ] ) { - return entry[ index ]; - } - - if ( this.options.onMissingKey ) { - this.options.onMissingKey( singular, domain ); - } - - // If entry not found, fall back to singular vs. plural with zero index - // representing the singular value. - return index === 0 ? singular : plural; -}; - - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js": -/*!***************************************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js ***! - \***************************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _arrayLikeToArray; } -/* harmony export */ }); -function _arrayLikeToArray(r, a) { - (null == a || a > r.length) && (a = r.length); - for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; - return n; -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js": -/*!****************************************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js ***! - \****************************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _arrayWithoutHoles; } -/* harmony export */ }); -/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js"); - -function _arrayWithoutHoles(r) { - if (Array.isArray(r)) return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r); -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js": -/*!*************************************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***! - \*************************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _classCallCheck; } -/* harmony export */ }); -function _classCallCheck(a, n) { - if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js": -/*!**************************************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js ***! - \**************************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _iterableToArray; } -/* harmony export */ }); -function _iterableToArray(r) { - if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js": -/*!****************************************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js ***! - \****************************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _nonIterableSpread; } -/* harmony export */ }); -function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js": -/*!****************************************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js ***! - \****************************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _toConsumableArray; } -/* harmony export */ }); -/* harmony import */ var _arrayWithoutHoles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayWithoutHoles.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js"); -/* harmony import */ var _iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iterableToArray.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js"); -/* harmony import */ var _unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js"); -/* harmony import */ var _nonIterableSpread_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./nonIterableSpread.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js"); - - - - -function _toConsumableArray(r) { - return (0,_arrayWithoutHoles_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r) || (0,_iterableToArray_js__WEBPACK_IMPORTED_MODULE_1__["default"])(r) || (0,_unsupportedIterableToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(r) || (0,_nonIterableSpread_js__WEBPACK_IMPORTED_MODULE_3__["default"])(); -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js": -/*!*************************************************************************************************************!*\ - !*** ./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js ***! - \*************************************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _unsupportedIterableToArray; } -/* harmony export */ }); -/* harmony import */ var _arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./arrayLikeToArray.js */ "./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js"); - -function _unsupportedIterableToArray(r, a) { - if (r) { - if ("string" == typeof r) return (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r, a); - var t = {}.toString.call(r).slice(8, -1); - return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? (0,_arrayLikeToArray_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r, a) : void 0; - } -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js": -/*!************************************************************************************************!*\ - !*** ./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js ***! - \************************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _defineProperty; } -/* harmony export */ }); -/* harmony import */ var _toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./toPropertyKey.js */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js"); - -function _defineProperty(e, r, t) { - return (r = (0,_toPropertyKey_js__WEBPACK_IMPORTED_MODULE_0__["default"])(r)) in e ? Object.defineProperty(e, r, { - value: t, - enumerable: !0, - configurable: !0, - writable: !0 - }) : e[r] = t, e; -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js": -/*!*********************************************************************************************!*\ - !*** ./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js ***! - \*********************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ toPrimitive; } -/* harmony export */ }); -/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js"); - -function toPrimitive(t, r) { - if ("object" != (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(t) || !t) return t; - var e = t[Symbol.toPrimitive]; - if (void 0 !== e) { - var i = e.call(t, r || "default"); - if ("object" != (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i)) return i; - throw new TypeError("@@toPrimitive must return a primitive value."); - } - return ("string" === r ? String : Number)(t); -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js": -/*!***********************************************************************************************!*\ - !*** ./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js ***! - \***********************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ toPropertyKey; } -/* harmony export */ }); -/* harmony import */ var _typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typeof.js */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js"); -/* harmony import */ var _toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./toPrimitive.js */ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js"); - - -function toPropertyKey(t) { - var i = (0,_toPrimitive_js__WEBPACK_IMPORTED_MODULE_1__["default"])(t, "string"); - return "symbol" == (0,_typeof_js__WEBPACK_IMPORTED_MODULE_0__["default"])(i) ? i : i + ""; -} - - -/***/ }), - -/***/ "./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js": -/*!****************************************************************************************!*\ - !*** ./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js ***! - \****************************************************************************************/ -/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "default": function() { return /* binding */ _typeof; } -/* harmony export */ }); -function _typeof(o) { - "@babel/helpers - typeof"; - - return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { - return typeof o; - } : function (o) { - return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; - }, _typeof(o); -} - - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // 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 */ -/******/ !function() { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function() { return module['default']; } : -/******/ function() { return module; }; -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ }(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ !function() { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = function(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 */ -/******/ !function() { -/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } -/******/ }(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ !function() { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(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. -!function() { -"use strict"; -/*!***********************************************************!*\ - !*** ./js/src/settings-components/settings-components.js ***! - \***********************************************************/ -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/i18n */ "./node_modules/@wordpress/i18n/build-module/index.js"); -/* harmony import */ var _components_radio_component_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/radio-component.js */ "./js/src/settings-components/components/radio-component.js"); -/* harmony import */ var _components_slider_component_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/slider-component.js */ "./js/src/settings-components/components/slider-component.js"); -/* harmony import */ var _components_tabs_component_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/tabs-component.js */ "./js/src/settings-components/components/tabs-component.js"); -/* harmony import */ var _components_dependent_updater_component_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/dependent-updater-component.js */ "./js/src/settings-components/components/dependent-updater-component.js"); -function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); } -function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } } -function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; } -function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } -function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } - - - - - - -/** - * Represents the frmSettingsComponents class. - * @class - */ -var frmSettingsComponents = /*#__PURE__*/function () { - function frmSettingsComponents() { - _classCallCheck(this, frmSettingsComponents); - this.success = frmDom.success; - this.init(); - this.initHover(); - } - - /** - * Initializes the components: frmRadioComponent, frmSliderComponent, and frmTabsComponent. - * Init the dependent - */ - return _createClass(frmSettingsComponents, [{ - key: "init", - value: function init() { - new _components_radio_component_js__WEBPACK_IMPORTED_MODULE_1__["default"](); - new _components_slider_component_js__WEBPACK_IMPORTED_MODULE_2__["default"](); - new _components_tabs_component_js__WEBPACK_IMPORTED_MODULE_3__["default"](); - this.initColorPickerDependentUpdaterComponents(); - this.initStyleClassCopyToClipboard((0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('The class name has been copied.', 'formidable')); - } - - /** - * Initializes the color picker dependent updater components. - * Retrieves the components and elements, and adds them to the elements array. - * Adds an action hook for the frm_style_options_color_change event. - */ - }, { - key: "initColorPickerDependentUpdaterComponents", - value: function initColorPickerDependentUpdaterComponents() { - var components = document.querySelectorAll('.frm-style-dependent-updater-component.frm-colorpicker'); - var elements = []; - components.forEach(function (component) { - var element = component.querySelector('input.hex'); - var id = 'undefined' !== typeof element ? element.getAttribute('id') : null; - if (null !== id) { - elements.push({ - id: id, - dependentUpdaterClass: new _components_dependent_updater_component_js__WEBPACK_IMPORTED_MODULE_4__["default"](component, 'colorpicker') - }); - } - }); - wp.hooks.addAction('frm_style_options_color_change', 'formidable', function (_ref) { - var event = _ref.event, - value = _ref.value; - var container = event.target.closest('.wp-picker-container'); - var id = event.target.getAttribute('id'); - container.querySelector('.wp-color-result-text').innerText = value; - elements.forEach(function (element) { - if (element.id === id) { - element.dependentUpdaterClass.updateAllDependentElements(value); - } - }); - }); - } - - /** - * Initializes the hover functionality for the options. - * Creates a hover element and appends it to the settingsWrapper. - * Adds event listeners for mouseover and click events. - */ - }, { - key: "initHover", - value: function initHover() { - var settingsWrapper = document.querySelector('.frm-right-panel .styling_settings .accordion-container'); - if (null === settingsWrapper) { - return; - } - var hoverElement = document.createElement('div'); - hoverElement.classList.add('frm_hidden'); - hoverElement.classList.add('frm-style-settings-hover'); - settingsWrapper.appendChild(hoverElement); - var styleOptionsMenu = settingsWrapper.querySelector(':scope > ul'); - styleOptionsMenu.querySelectorAll(':scope > li').forEach(function (item) { - item.querySelector('h3').addEventListener('mouseover', function (event) { - hoverElement.style.transform = "translateY(".concat(event.target.closest('li').offsetTop, "px)"); - hoverElement.classList.add('frm-animating'); - hoverElement.classList.remove('frm_hidden'); - setTimeout(function () { - hoverElement.classList.remove('frm-animating'); - }, 250); - }); - }); - var accordionitems = document.querySelectorAll('#frm_style_sidebar .accordion-section h3'); - accordionitems.forEach(function (item) { - item.addEventListener('click', function () { - hoverElement.classList.add('frm_hidden'); - }); - }); - } - - /** - * Initializes the copy to clipboard functionality for classes. - * Adds a click event listener to the copyLabel element. - * Copies the class name to the clipboard and displays a success message. - * @param {string} successMessage - The success message to display. - */ - }, { - key: "initStyleClassCopyToClipboard", - value: function initStyleClassCopyToClipboard(successMessage) { - var _this = this; - var copyLabel = document.querySelector('.frm-copy-text'); - if (!copyLabel) { - return; - } - copyLabel.addEventListener('click', function (event) { - var className = event.currentTarget.innerText; - navigator.clipboard.writeText(className).then(function () { - _this.success(successMessage); - }); - }); - } - }]); -}(); -new frmSettingsComponents(); -}(); -/******/ })() -; -//# sourceMappingURL=formidable-settings-components.js.map \ No newline at end of file +!function(){"use strict";Promise.resolve(),window.frmDom.util.onClickPreventDefault;var e=(new URL(window.location.href).searchParams,window.frmGlobal),t=(e.url,e.nonce,"frm_hidden");function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function n(e,t){for(var i=0;i=r)){var a=n.querySelector("select").value,o=this.calculateValue(r,i,this.getMaxValue(a,t));n.querySelector('.frm-slider-value input[type="text"]').value=o,n.querySelector(".frm-slider-bullet .frm-slider-value-label").innerText=o,n.querySelector(".frm-slider-active-track").style.width="".concat(i,"px"),this.initChildSlidersWidth(n,i,t,o+a),this.options[t].translateX=i,this.options[t].value=o+a,this.options[t].fullValue=this.updateValue(n,this.options[t].value),this.valueChangeDebouncer(t)}}}},{key:"getMaxValue",value:function(e,t){return"%"===e?100:this.options[t].maxValue}},{key:"enableDragging",value:function(e,t){e.target.classList.add("frm-dragging"),this.options[t].dragging=!0,this.options[t].startX=e.clientX-this.options[t].translateX}},{key:"disableDragging",value:function(e,t){!1!==this.options[e].dragging&&(t.target.classList.remove("frm-dragging"),this.options[e].dragging=!1,this.triggerValueChange(e))}},{key:"triggerValueChange",value:function(e){var t=this;if(null===this.options[e].dependentUpdater){var i=this.sliderElements[e].classList.contains("frm-has-multiple-values")?this.sliderElements[e].closest(".frm-style-component").querySelector('input[type="hidden"]'):this.sliderElements[e].querySelectorAll('.frm-slider-value input[type="hidden"]');i instanceof NodeList?i.forEach((function(i){i.dispatchEvent(t.eventsChange[e])})):i.dispatchEvent(this.eventsChange[e])}else this.options[e].dependentUpdater.updateAllDependentElements(this.options[e].fullValue)}},{key:"calculateValue",value:function(e,t,i){var n=Math.ceil(this.sliderBulletWidth*(t/e)),r=Math.ceil((t+n)/e*i);return Math.min(r,i)}},{key:"updateValue",value:function(e,t){var i=this;if(e.classList.contains("frm-base-font-size")){var n=document.querySelector('input[name="frm_style_setting[post_content][use_base_font_size]"]');null!==n&&(n.value="true")}if(e.classList.contains("frm-has-multiple-values")){var r=e.closest(".frm-style-component").querySelector('input[type="hidden"]'),a=r.value.split(" "),o=e.dataset.type;switch(a[2]||(a[2]="0px"),a[3]||(a[3]="0px"),o){case"vertical":a[0]=t,a[2]=t;break;case"horizontal":a[1]=t,a[3]=t;break;case"top":a[0]=t;break;case"bottom":a[2]=t;break;case"left":a[3]=t;break;case"right":a[1]=t}var l=a.join(" ");return r.value=l,this.getSliderGroupItems(e).forEach((function(e){var n=i.getUnitMeasureFromValue(t);e.querySelector('.frm-slider-value input[type="text"]').value=parseInt(t,10),e.querySelector("select").value=n})),l}if(e.classList.contains("frm-has-independent-fields")){var s=e.querySelectorAll('.frm-slider-value input[type="hidden"]'),c=e.querySelectorAll('.frm-slider-value input[type="text"]');return s.forEach((function(e,i){e.value=t,c[i+1].value=parseInt(t,10)})),t}return e.querySelector('.frm-slider-value input[type="hidden"]').value=t,t}},{key:"getUnitMeasureFromValue",value:function(e){return["%","px","em"].find((function(t){return e.includes(t)}))||""}}])&&f(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function v(e,t){for(var i=0;i li"),this.slideTrackLine=this.wrapper.querySelector(".frm-tabs-active-underline"),this.slideTrack=this.wrapper.querySelector(".frm-tabs-slide-track"),this.slides=this.wrapper.querySelectorAll(".frm-tabs-slide-track > div"),this.init()))},(t=[{key:"init",value:function(){var e=this;null!==this.wrapper&&this.navs.length&&null!==this.trackLine&&null!==this.slideTrack&&this.slides.length&&(this.initDefaultSlideTrackerWidth(),this.navs.forEach((function(t,i){t.addEventListener("click",(function(t){return e.onNavClick(t,i)}))})))}},{key:"onNavClick",value:function(e,t){this.removeActiveClassnameFromNavs(),e.target.classList.add("frm-active"),this.initSlideTrackUnderline(e.target,t),this.changeSlide(t)}},{key:"initDefaultSlideTrackerWidth",value:function(){this.slideTrackLine.dataset.initialWidth&&(this.slideTrackLine.style.width="".concat(this.slideTrackLine.dataset.initialWidth,"px"))}},{key:"initSlideTrackUnderline",value:function(e,t){this.slideTrackLine.classList.remove("frm-first","frm-last");var i=void 0!==e?e:this.navs.filter((function(e){return e.classList.contains("frm-active")}));this.slideTrackLine.style.transform="translateX(".concat(i.offsetLeft,"px)"),this.slideTrackLine.style.width=i.clientWidth+"px",this.navs.length!==t+1?0===t&&this.slideTrackLine.classList.add("frm-first"):this.slideTrackLine.classList.add("frm-last")}},{key:"changeSlide",value:function(e){this.removeActiveClassnameFromSlides();var t=0==e?"0px":"calc( ( ".concat(100*e,"% + ").concat(parseInt(this.flexboxSlidesGap,10)*e,"px ) * -1 )");this.slideTrack.style.transform="translateX(".concat(t,")"),e in this.slides&&this.slides[e].classList.add("frm-active")}},{key:"removeActiveClassnameFromSlides",value:function(){this.slides.forEach((function(e){return e.classList.remove("frm-active")}))}},{key:"removeActiveClassnameFromNavs",value:function(){this.navs.forEach((function(e){return e.classList.remove("frm-active")}))}}])&&v(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function g(e){return g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function b(e,t){for(var i=0;i 1' );\n *\n * evaluate( { n: 2 } );\n * // ⇒ true\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {(variables?:{[variable:string]:*})=>*} Compiled evaluator.\n */\nexport default function compile( expression ) {\n\tvar terms = postfix( expression );\n\n\treturn function( variables ) {\n\t\treturn evaluate( terms, variables );\n\t};\n}\n","/**\n * Operator callback functions.\n *\n * @type {Object}\n */\nvar OPERATORS = {\n\t'!': function( a ) {\n\t\treturn ! a;\n\t},\n\t'*': function( a, b ) {\n\t\treturn a * b;\n\t},\n\t'/': function( a, b ) {\n\t\treturn a / b;\n\t},\n\t'%': function( a, b ) {\n\t\treturn a % b;\n\t},\n\t'+': function( a, b ) {\n\t\treturn a + b;\n\t},\n\t'-': function( a, b ) {\n\t\treturn a - b;\n\t},\n\t'<': function( a, b ) {\n\t\treturn a < b;\n\t},\n\t'<=': function( a, b ) {\n\t\treturn a <= b;\n\t},\n\t'>': function( a, b ) {\n\t\treturn a > b;\n\t},\n\t'>=': function( a, b ) {\n\t\treturn a >= b;\n\t},\n\t'==': function( a, b ) {\n\t\treturn a === b;\n\t},\n\t'!=': function( a, b ) {\n\t\treturn a !== b;\n\t},\n\t'&&': function( a, b ) {\n\t\treturn a && b;\n\t},\n\t'||': function( a, b ) {\n\t\treturn a || b;\n\t},\n\t'?:': function( a, b, c ) {\n\t\tif ( a ) {\n\t\t\tthrow b;\n\t\t}\n\n\t\treturn c;\n\t},\n};\n\n/**\n * Given an array of postfix terms and operand variables, returns the result of\n * the postfix evaluation.\n *\n * @example\n *\n * ```js\n * import evaluate from '@tannin/evaluate';\n *\n * // 3 + 4 * 5 / 6 ⇒ '3 4 5 * 6 / +'\n * const terms = [ '3', '4', '5', '*', '6', '/', '+' ];\n *\n * evaluate( terms, {} );\n * // ⇒ 6.333333333333334\n * ```\n *\n * @param {string[]} postfix Postfix terms.\n * @param {Object} variables Operand variables.\n *\n * @return {*} Result of evaluation.\n */\nexport default function evaluate( postfix, variables ) {\n\tvar stack = [],\n\t\ti, j, args, getOperatorResult, term, value;\n\n\tfor ( i = 0; i < postfix.length; i++ ) {\n\t\tterm = postfix[ i ];\n\n\t\tgetOperatorResult = OPERATORS[ term ];\n\t\tif ( getOperatorResult ) {\n\t\t\t// Pop from stack by number of function arguments.\n\t\t\tj = getOperatorResult.length;\n\t\t\targs = Array( j );\n\t\t\twhile ( j-- ) {\n\t\t\t\targs[ j ] = stack.pop();\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tvalue = getOperatorResult.apply( null, args );\n\t\t\t} catch ( earlyReturn ) {\n\t\t\t\treturn earlyReturn;\n\t\t\t}\n\t\t} else if ( variables.hasOwnProperty( term ) ) {\n\t\t\tvalue = variables[ term ];\n\t\t} else {\n\t\t\tvalue = +term;\n\t\t}\n\n\t\tstack.push( value );\n\t}\n\n\treturn stack[ 0 ];\n}\n","import compile from '@tannin/compile';\n\n/**\n * Given a C expression, returns a function which, when called with a value,\n * evaluates the result with the value assumed to be the \"n\" variable of the\n * expression. The result will be coerced to its numeric equivalent.\n *\n * @param {string} expression C expression.\n *\n * @return {Function} Evaluator function.\n */\nexport default function pluralForms( expression ) {\n\tvar evaluate = compile( expression );\n\n\treturn function( n ) {\n\t\treturn +evaluate( { n: n } );\n\t};\n}\n","var PRECEDENCE, OPENERS, TERMINATORS, PATTERN;\n\n/**\n * Operator precedence mapping.\n *\n * @type {Object}\n */\nPRECEDENCE = {\n\t'(': 9,\n\t'!': 8,\n\t'*': 7,\n\t'/': 7,\n\t'%': 7,\n\t'+': 6,\n\t'-': 6,\n\t'<': 5,\n\t'<=': 5,\n\t'>': 5,\n\t'>=': 5,\n\t'==': 4,\n\t'!=': 4,\n\t'&&': 3,\n\t'||': 2,\n\t'?': 1,\n\t'?:': 1,\n};\n\n/**\n * Characters which signal pair opening, to be terminated by terminators.\n *\n * @type {string[]}\n */\nOPENERS = [ '(', '?' ];\n\n/**\n * Characters which signal pair termination, the value an array with the\n * opener as its first member. The second member is an optional operator\n * replacement to push to the stack.\n *\n * @type {string[]}\n */\nTERMINATORS = {\n\t')': [ '(' ],\n\t':': [ '?', '?:' ],\n};\n\n/**\n * Pattern matching operators and openers.\n *\n * @type {RegExp}\n */\nPATTERN = /<=|>=|==|!=|&&|\\|\\||\\?:|\\(|!|\\*|\\/|%|\\+|-|<|>|\\?|\\)|:/;\n\n/**\n * Given a C expression, returns the equivalent postfix (Reverse Polish)\n * notation terms as an array.\n *\n * If a postfix string is desired, simply `.join( ' ' )` the result.\n *\n * @example\n *\n * ```js\n * import postfix from '@tannin/postfix';\n *\n * postfix( 'n > 1' );\n * // ⇒ [ 'n', '1', '>' ]\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {string[]} Postfix terms.\n */\nexport default function postfix( expression ) {\n\tvar terms = [],\n\t\tstack = [],\n\t\tmatch, operator, term, element;\n\n\twhile ( ( match = expression.match( PATTERN ) ) ) {\n\t\toperator = match[ 0 ];\n\n\t\t// Term is the string preceding the operator match. It may contain\n\t\t// whitespace, and may be empty (if operator is at beginning).\n\t\tterm = expression.substr( 0, match.index ).trim();\n\t\tif ( term ) {\n\t\t\tterms.push( term );\n\t\t}\n\n\t\twhile ( ( element = stack.pop() ) ) {\n\t\t\tif ( TERMINATORS[ operator ] ) {\n\t\t\t\tif ( TERMINATORS[ operator ][ 0 ] === element ) {\n\t\t\t\t\t// Substitution works here under assumption that because\n\t\t\t\t\t// the assigned operator will no longer be a terminator, it\n\t\t\t\t\t// will be pushed to the stack during the condition below.\n\t\t\t\t\toperator = TERMINATORS[ operator ][ 1 ] || operator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if ( OPENERS.indexOf( element ) >= 0 || PRECEDENCE[ element ] < PRECEDENCE[ operator ] ) {\n\t\t\t\t// Push to stack if either an opener or when pop reveals an\n\t\t\t\t// element of lower precedence.\n\t\t\t\tstack.push( element );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// For each popped from stack, push to terms.\n\t\t\tterms.push( element );\n\t\t}\n\n\t\tif ( ! TERMINATORS[ operator ] ) {\n\t\t\tstack.push( operator );\n\t\t}\n\n\t\t// Slice matched fragment from expression to continue match.\n\t\texpression = expression.substr( match.index + operator.length );\n\t}\n\n\t// Push remainder of operand, if exists, to terms.\n\texpression = expression.trim();\n\tif ( expression ) {\n\t\tterms.push( expression );\n\t}\n\n\t// Pop remaining items from stack into terms.\n\treturn terms.concat( stack.reverse() );\n}\n","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback AddHook\n *\n * Adds the hook to the appropriate hooks container.\n *\n * @param {string} hookName Name of hook to add\n * @param {string} namespace The unique namespace identifying the callback in the form `vendor/plugin/function`.\n * @param {import('.').Callback} callback Function to call when the hook is run\n * @param {number} [priority=10] Priority of this hook\n */\n\n/**\n * Returns a function which, when invoked, will add a hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {AddHook} Function that adds a new hook.\n */\n\nfunction createAddHook(hooks, storeKey) {\n return function addHook(hookName, namespace, callback) {\n var priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10;\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!validateNamespace(namespace)) {\n return;\n }\n\n if ('function' !== typeof callback) {\n // eslint-disable-next-line no-console\n console.error('The hook callback must be a function.');\n return;\n } // Validate numeric priority\n\n\n if ('number' !== typeof priority) {\n // eslint-disable-next-line no-console\n console.error('If specified, the hook priority must be a number.');\n return;\n }\n\n var handler = {\n callback: callback,\n priority: priority,\n namespace: namespace\n };\n\n if (hooksStore[hookName]) {\n // Find the correct insert index of the new hook.\n var handlers = hooksStore[hookName].handlers;\n /** @type {number} */\n\n var i;\n\n for (i = handlers.length; i > 0; i--) {\n if (priority >= handlers[i - 1].priority) {\n break;\n }\n }\n\n if (i === handlers.length) {\n // If append, operate via direct assignment.\n handlers[i] = handler;\n } else {\n // Otherwise, insert before index via splice.\n handlers.splice(i, 0, handler);\n } // We may also be currently executing this hook. If the callback\n // we're adding would come after the current callback, there's no\n // problem; otherwise we need to increase the execution index of\n // any other runs by 1 to account for the added element.\n\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex++;\n }\n });\n } else {\n // This is the first hook of its type.\n hooksStore[hookName] = {\n handlers: [handler],\n runs: 0\n };\n }\n\n if (hookName !== 'hookAdded') {\n hooks.doAction('hookAdded', hookName, namespace, callback, priority);\n }\n };\n}\n\nexport default createAddHook;\n//# sourceMappingURL=createAddHook.js.map","/**\n * Returns a function which, when invoked, will return the name of the\n * currently running hook, or `null` if no hook of the given type is currently\n * running.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {() => string | null} Function that returns the current hook name or null.\n */\nfunction createCurrentHook(hooks, storeKey) {\n return function currentHook() {\n var _hooksStore$__current, _hooksStore$__current2;\n\n var hooksStore = hooks[storeKey];\n return (_hooksStore$__current = (_hooksStore$__current2 = hooksStore.__current[hooksStore.__current.length - 1]) === null || _hooksStore$__current2 === void 0 ? void 0 : _hooksStore$__current2.name) !== null && _hooksStore$__current !== void 0 ? _hooksStore$__current : null;\n };\n}\n\nexport default createCurrentHook;\n//# sourceMappingURL=createCurrentHook.js.map","/**\n * Internal dependencies\n */\nimport validateHookName from './validateHookName.js';\n/**\n * @callback DidHook\n *\n * Returns the number of times an action has been fired.\n *\n * @param {string} hookName The hook name to check.\n *\n * @return {number | undefined} The number of times the hook has run.\n */\n\n/**\n * Returns a function which, when invoked, will return the number of times a\n * hook has been called.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DidHook} Function that returns a hook's call count.\n */\n\nfunction createDidHook(hooks, storeKey) {\n return function didHook(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0;\n };\n}\n\nexport default createDidHook;\n//# sourceMappingURL=createDidHook.js.map","/**\n * @callback DoingHook\n * Returns whether a hook is currently being executed.\n *\n * @param {string} [hookName] The name of the hook to check for. If\n * omitted, will check for any hook being executed.\n *\n * @return {boolean} Whether the hook is being executed.\n */\n\n/**\n * Returns a function which, when invoked, will return whether a hook is\n * currently being executed.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DoingHook} Function that returns whether a hook is currently\n * being executed.\n */\nfunction createDoingHook(hooks, storeKey) {\n return function doingHook(hookName) {\n var hooksStore = hooks[storeKey]; // If the hookName was not passed, check for any current hook.\n\n if ('undefined' === typeof hookName) {\n return 'undefined' !== typeof hooksStore.__current[0];\n } // Return the __current hook.\n\n\n return hooksStore.__current[0] ? hookName === hooksStore.__current[0].name : false;\n };\n}\n\nexport default createDoingHook;\n//# sourceMappingURL=createDoingHook.js.map","/**\n * @callback HasHook\n *\n * Returns whether any handlers are attached for the given hookName and optional namespace.\n *\n * @param {string} hookName The name of the hook to check for.\n * @param {string} [namespace] Optional. The unique namespace identifying the callback\n * in the form `vendor/plugin/function`.\n *\n * @return {boolean} Whether there are handlers that are attached to the given hook.\n */\n\n/**\n * Returns a function which, when invoked, will return whether any handlers are\n * attached to a particular hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {HasHook} Function that returns whether any handlers are\n * attached to a particular hook and optional namespace.\n */\nfunction createHasHook(hooks, storeKey) {\n return function hasHook(hookName, namespace) {\n var hooksStore = hooks[storeKey]; // Use the namespace if provided.\n\n if ('undefined' !== typeof namespace) {\n return hookName in hooksStore && hooksStore[hookName].handlers.some(function (hook) {\n return hook.namespace === namespace;\n });\n }\n\n return hookName in hooksStore;\n };\n}\n\nexport default createHasHook;\n//# sourceMappingURL=createHasHook.js.map","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\n\n/**\n * Internal dependencies\n */\nimport createAddHook from './createAddHook';\nimport createRemoveHook from './createRemoveHook';\nimport createHasHook from './createHasHook';\nimport createRunHook from './createRunHook';\nimport createCurrentHook from './createCurrentHook';\nimport createDoingHook from './createDoingHook';\nimport createDidHook from './createDidHook';\n/**\n * Internal class for constructing hooks. Use `createHooks()` function\n *\n * Note, it is necessary to expose this class to make its type public.\n *\n * @private\n */\n\nexport var _Hooks = function _Hooks() {\n _classCallCheck(this, _Hooks);\n\n /** @type {import('.').Store} actions */\n this.actions = Object.create(null);\n this.actions.__current = [];\n /** @type {import('.').Store} filters */\n\n this.filters = Object.create(null);\n this.filters.__current = [];\n this.addAction = createAddHook(this, 'actions');\n this.addFilter = createAddHook(this, 'filters');\n this.removeAction = createRemoveHook(this, 'actions');\n this.removeFilter = createRemoveHook(this, 'filters');\n this.hasAction = createHasHook(this, 'actions');\n this.hasFilter = createHasHook(this, 'filters');\n this.removeAllActions = createRemoveHook(this, 'actions', true);\n this.removeAllFilters = createRemoveHook(this, 'filters', true);\n this.doAction = createRunHook(this, 'actions');\n this.applyFilters = createRunHook(this, 'filters', true);\n this.currentAction = createCurrentHook(this, 'actions');\n this.currentFilter = createCurrentHook(this, 'filters');\n this.doingAction = createDoingHook(this, 'actions');\n this.doingFilter = createDoingHook(this, 'filters');\n this.didAction = createDidHook(this, 'actions');\n this.didFilter = createDidHook(this, 'filters');\n};\n/** @typedef {_Hooks} Hooks */\n\n/**\n * Returns an instance of the hooks object.\n *\n * @return {Hooks} A Hooks instance.\n */\n\nfunction createHooks() {\n return new _Hooks();\n}\n\nexport default createHooks;\n//# sourceMappingURL=createHooks.js.map","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback RemoveHook\n * Removes the specified callback (or all callbacks) from the hook with a given hookName\n * and namespace.\n *\n * @param {string} hookName The name of the hook to modify.\n * @param {string} namespace The unique namespace identifying the callback in the\n * form `vendor/plugin/function`.\n *\n * @return {number | undefined} The number of callbacks removed.\n */\n\n/**\n * Returns a function which, when invoked, will remove a specified hook or all\n * hooks by the given name.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [removeAll=false] Whether to remove all callbacks for a hookName,\n * without regard to namespace. Used to create\n * `removeAll*` functions.\n *\n * @return {RemoveHook} Function that removes hooks.\n */\n\nfunction createRemoveHook(hooks, storeKey) {\n var removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function removeHook(hookName, namespace) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!removeAll && !validateNamespace(namespace)) {\n return;\n } // Bail if no hooks exist by this name\n\n\n if (!hooksStore[hookName]) {\n return 0;\n }\n\n var handlersRemoved = 0;\n\n if (removeAll) {\n handlersRemoved = hooksStore[hookName].handlers.length;\n hooksStore[hookName] = {\n runs: hooksStore[hookName].runs,\n handlers: []\n };\n } else {\n // Try to find the specified callback to remove.\n var handlers = hooksStore[hookName].handlers;\n\n var _loop = function _loop(i) {\n if (handlers[i].namespace === namespace) {\n handlers.splice(i, 1);\n handlersRemoved++; // This callback may also be part of a hook that is\n // currently executing. If the callback we're removing\n // comes after the current callback, there's no problem;\n // otherwise we need to decrease the execution index of any\n // other runs by 1 to account for the removed element.\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex--;\n }\n });\n }\n };\n\n for (var i = handlers.length - 1; i >= 0; i--) {\n _loop(i);\n }\n }\n\n if (hookName !== 'hookRemoved') {\n hooks.doAction('hookRemoved', hookName, namespace);\n }\n\n return handlersRemoved;\n };\n}\n\nexport default createRemoveHook;\n//# sourceMappingURL=createRemoveHook.js.map","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\n\n/**\n * Returns a function which, when invoked, will execute all callbacks\n * registered to a hook of the specified type, optionally returning the final\n * value of the call chain.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [returnFirstArg=false] Whether each hook callback is expected to\n * return its first argument.\n *\n * @return {(hookName:string, ...args: unknown[]) => unknown} Function that runs hook callbacks.\n */\nfunction createRunHook(hooks, storeKey) {\n var returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function runHooks(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!hooksStore[hookName]) {\n hooksStore[hookName] = {\n handlers: [],\n runs: 0\n };\n }\n\n hooksStore[hookName].runs++;\n var handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds.\n\n if ('production' !== process.env.NODE_ENV) {\n // Handle any 'all' hooks registered.\n if ('hookAdded' !== hookName && hooksStore.all) {\n handlers.push.apply(handlers, _toConsumableArray(hooksStore.all.handlers));\n }\n }\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (!handlers || !handlers.length) {\n return returnFirstArg ? args[0] : undefined;\n }\n\n var hookInfo = {\n name: hookName,\n currentIndex: 0\n };\n\n hooksStore.__current.push(hookInfo);\n\n while (hookInfo.currentIndex < handlers.length) {\n var handler = handlers[hookInfo.currentIndex];\n var result = handler.callback.apply(null, args);\n\n if (returnFirstArg) {\n args[0] = result;\n }\n\n hookInfo.currentIndex++;\n }\n\n hooksStore.__current.pop();\n\n if (returnFirstArg) {\n return args[0];\n }\n };\n}\n\nexport default createRunHook;\n//# sourceMappingURL=createRunHook.js.map","/**\n * Internal dependencies\n */\nimport createHooks from './createHooks';\n/** @typedef {(...args: any[])=>any} Callback */\n\n/**\n * @typedef Handler\n * @property {Callback} callback The callback\n * @property {string} namespace The namespace\n * @property {number} priority The namespace\n */\n\n/**\n * @typedef Hook\n * @property {Handler[]} handlers Array of handlers\n * @property {number} runs Run counter\n */\n\n/**\n * @typedef Current\n * @property {string} name Hook name\n * @property {number} currentIndex The index\n */\n\n/**\n * @typedef {Record & {__current: Current[]}} Store\n */\n\n/**\n * @typedef {'actions' | 'filters'} StoreKey\n */\n\n/**\n * @typedef {import('./createHooks').Hooks} Hooks\n */\n\nexport var defaultHooks = createHooks();\nvar addAction = defaultHooks.addAction,\n addFilter = defaultHooks.addFilter,\n removeAction = defaultHooks.removeAction,\n removeFilter = defaultHooks.removeFilter,\n hasAction = defaultHooks.hasAction,\n hasFilter = defaultHooks.hasFilter,\n removeAllActions = defaultHooks.removeAllActions,\n removeAllFilters = defaultHooks.removeAllFilters,\n doAction = defaultHooks.doAction,\n applyFilters = defaultHooks.applyFilters,\n currentAction = defaultHooks.currentAction,\n currentFilter = defaultHooks.currentFilter,\n doingAction = defaultHooks.doingAction,\n doingFilter = defaultHooks.doingFilter,\n didAction = defaultHooks.didAction,\n didFilter = defaultHooks.didFilter,\n actions = defaultHooks.actions,\n filters = defaultHooks.filters;\nexport { createHooks, addAction, addFilter, removeAction, removeFilter, hasAction, hasFilter, removeAllActions, removeAllFilters, doAction, applyFilters, currentAction, currentFilter, doingAction, doingFilter, didAction, didFilter, actions, filters };\n//# sourceMappingURL=index.js.map","/**\n * Validate a hookName string.\n *\n * @param {string} hookName The hook name to validate. Should be a non empty string containing\n * only numbers, letters, dashes, periods and underscores. Also,\n * the hook name cannot begin with `__`.\n *\n * @return {boolean} Whether the hook name is valid.\n */\nfunction validateHookName(hookName) {\n if ('string' !== typeof hookName || '' === hookName) {\n // eslint-disable-next-line no-console\n console.error('The hook name must be a non-empty string.');\n return false;\n }\n\n if (/^__/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name cannot begin with `__`.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name can only contain numbers, letters, dashes, periods and underscores.');\n return false;\n }\n\n return true;\n}\n\nexport default validateHookName;\n//# sourceMappingURL=validateHookName.js.map","/**\n * Validate a namespace string.\n *\n * @param {string} namespace The namespace to validate - should take the form\n * `vendor/plugin/function`.\n *\n * @return {boolean} Whether the namespace is valid.\n */\nfunction validateNamespace(namespace) {\n if ('string' !== typeof namespace || '' === namespace) {\n // eslint-disable-next-line no-console\n console.error('The namespace must be a non-empty string.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.\\-\\/]*$/.test(namespace)) {\n // eslint-disable-next-line no-console\n console.error('The namespace can only contain numbers, letters, dashes, periods, underscores and slashes.');\n return false;\n }\n\n return true;\n}\n\nexport default validateNamespace;\n//# sourceMappingURL=validateNamespace.js.map","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n/**\n * External dependencies\n */\nimport Tannin from 'tannin';\n/**\n * @typedef {Record} LocaleData\n */\n\n/**\n * Default locale data to use for Tannin domain when not otherwise provided.\n * Assumes an English plural forms expression.\n *\n * @type {LocaleData}\n */\n\nvar DEFAULT_LOCALE_DATA = {\n '': {\n /** @param {number} n */\n plural_forms: function plural_forms(n) {\n return n === 1 ? 0 : 1;\n }\n }\n};\n/*\n * Regular expression that matches i18n hooks like `i18n.gettext`, `i18n.ngettext`,\n * `i18n.gettext_domain` or `i18n.ngettext_with_context` or `i18n.has_translation`.\n */\n\nvar I18N_HOOK_REGEXP = /^i18n\\.(n?gettext|has_translation)(_|$)/;\n/**\n * @typedef {(domain?: string) => LocaleData} GetLocaleData\n *\n * Returns locale data by domain in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} SetLocaleData\n *\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} ResetLocaleData\n *\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/** @typedef {() => void} SubscribeCallback */\n\n/** @typedef {() => void} UnsubscribeCallback */\n\n/**\n * @typedef {(callback: SubscribeCallback) => UnsubscribeCallback} Subscribe\n *\n * Subscribes to changes of locale data\n */\n\n/**\n * @typedef {(domain?: string) => string} GetFilterDomain\n * Retrieve the domain to use when calling domain-specific filters.\n */\n\n/**\n * @typedef {(text: string, domain?: string) => string} __\n *\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n */\n\n/**\n * @typedef {(text: string, context: string, domain?: string) => string} _x\n *\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, domain?: string) => string} _n\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, context: string, domain?: string) => string} _nx\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n */\n\n/**\n * @typedef {() => boolean} IsRtl\n *\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n */\n\n/**\n * @typedef {(single: string, context?: string, domain?: string) => boolean} HasTranslation\n *\n * Check if there is a translation for a given string in singular form.\n */\n\n/** @typedef {import('@wordpress/hooks').Hooks} Hooks */\n\n/**\n * An i18n instance\n *\n * @typedef I18n\n * @property {GetLocaleData} getLocaleData Returns locale data by domain in a Jed-formatted JSON object shape.\n * @property {SetLocaleData} setLocaleData Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n * @property {ResetLocaleData} resetLocaleData Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n * @property {Subscribe} subscribe Subscribes to changes of Tannin locale data.\n * @property {__} __ Retrieve the translation of text.\n * @property {_x} _x Retrieve translated string with gettext context.\n * @property {_n} _n Translates and retrieves the singular or plural form based on the supplied\n * number.\n * @property {_nx} _nx Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n * @property {IsRtl} isRTL Check if current locale is RTL.\n * @property {HasTranslation} hasTranslation Check if there is a translation for a given string.\n */\n\n/**\n * Create an i18n instance\n *\n * @param {LocaleData} [initialData] Locale data configuration.\n * @param {string} [initialDomain] Domain for which configuration applies.\n * @param {Hooks} [hooks] Hooks implementation.\n * @return {I18n} I18n instance\n */\n\nexport var createI18n = function createI18n(initialData, initialDomain, hooks) {\n /**\n * The underlying instance of Tannin to which exported functions interface.\n *\n * @type {Tannin}\n */\n var tannin = new Tannin({});\n var listeners = new Set();\n\n var notifyListeners = function notifyListeners() {\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n /**\n * Subscribe to changes of locale data.\n *\n * @param {SubscribeCallback} callback Subscription callback.\n * @return {UnsubscribeCallback} Unsubscribe callback.\n */\n\n\n var subscribe = function subscribe(callback) {\n listeners.add(callback);\n return function () {\n return listeners.delete(callback);\n };\n };\n /** @type {GetLocaleData} */\n\n\n var getLocaleData = function getLocaleData() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return tannin.data[domain];\n };\n /**\n * @param {LocaleData} [data]\n * @param {string} [domain]\n */\n\n\n var doSetLocaleData = function doSetLocaleData(data) {\n var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';\n tannin.data[domain] = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA), tannin.data[domain]), data); // Populate default domain configuration (supported locale date which omits\n // a plural forms expression).\n\n tannin.data[domain][''] = _objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA['']), tannin.data[domain]['']);\n };\n /** @type {SetLocaleData} */\n\n\n var setLocaleData = function setLocaleData(data, domain) {\n doSetLocaleData(data, domain);\n notifyListeners();\n };\n /** @type {ResetLocaleData} */\n\n\n var resetLocaleData = function resetLocaleData(data, domain) {\n // Reset all current Tannin locale data.\n tannin.data = {}; // Reset cached plural forms functions cache.\n\n tannin.pluralForms = {};\n setLocaleData(data, domain);\n };\n /**\n * Wrapper for Tannin's `dcnpgettext`. Populates default locale data if not\n * otherwise previously assigned.\n *\n * @param {string|undefined} domain Domain to retrieve the translated text.\n * @param {string|undefined} context Context information for the translators.\n * @param {string} single Text to translate if non-plural. Used as\n * fallback return value on a caught error.\n * @param {string} [plural] The text to be used if the number is\n * plural.\n * @param {number} [number] The number to compare against to use\n * either the singular or plural form.\n *\n * @return {string} The translated string.\n */\n\n\n var dcnpgettext = function dcnpgettext() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n var context = arguments.length > 1 ? arguments[1] : undefined;\n var single = arguments.length > 2 ? arguments[2] : undefined;\n var plural = arguments.length > 3 ? arguments[3] : undefined;\n var number = arguments.length > 4 ? arguments[4] : undefined;\n\n if (!tannin.data[domain]) {\n // use `doSetLocaleData` to set silently, without notifying listeners\n doSetLocaleData(undefined, domain);\n }\n\n return tannin.dcnpgettext(domain, context, single, plural, number);\n };\n /** @type {GetFilterDomain} */\n\n\n var getFilterDomain = function getFilterDomain() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return domain;\n };\n /** @type {__} */\n\n\n var __ = function __(text, domain) {\n var translation = dcnpgettext(domain, undefined, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext', translation, text, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_' + getFilterDomain(domain), translation, text, domain)\n );\n };\n /** @type {_x} */\n\n\n var _x = function _x(text, context, domain) {\n var translation = dcnpgettext(domain, context, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation based on context information.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context', translation, text, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context_' + getFilterDomain(domain), translation, text, context, domain)\n );\n };\n /** @type {_n} */\n\n\n var _n = function _n(single, plural, number, domain) {\n var translation = dcnpgettext(domain, undefined, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext', translation, single, plural, number, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_' + getFilterDomain(domain), translation, single, plural, number, domain)\n );\n };\n /** @type {_nx} */\n\n\n var _nx = function _nx(single, plural, number, context, domain) {\n var translation = dcnpgettext(domain, context, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string with gettext context.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context', translation, single, plural, number, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context_' + getFilterDomain(domain), translation, single, plural, number, context, domain)\n );\n };\n /** @type {IsRtl} */\n\n\n var isRTL = function isRTL() {\n return 'rtl' === _x('ltr', 'text direction');\n };\n /** @type {HasTranslation} */\n\n\n var hasTranslation = function hasTranslation(single, context, domain) {\n var _tannin$data, _tannin$data2;\n\n var key = context ? context + \"\\x04\" + single : single;\n var result = !!((_tannin$data = tannin.data) !== null && _tannin$data !== void 0 && (_tannin$data2 = _tannin$data[domain !== null && domain !== void 0 ? domain : 'default']) !== null && _tannin$data2 !== void 0 && _tannin$data2[key]);\n\n if (hooks) {\n /**\n * Filters the presence of a translation in the locale data.\n *\n * @param {boolean} hasTranslation Whether the translation is present or not..\n * @param {string} single The singular form of the translated text (used as key in locale data)\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation', result, single, context, domain);\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation_' + getFilterDomain(domain), result, single, context, domain);\n }\n\n return result;\n };\n\n if (initialData) {\n setLocaleData(initialData, initialDomain);\n }\n\n if (hooks) {\n /**\n * @param {string} hookName\n */\n var onHookAddedOrRemoved = function onHookAddedOrRemoved(hookName) {\n if (I18N_HOOK_REGEXP.test(hookName)) {\n notifyListeners();\n }\n };\n\n hooks.addAction('hookAdded', 'core/i18n', onHookAddedOrRemoved);\n hooks.addAction('hookRemoved', 'core/i18n', onHookAddedOrRemoved);\n }\n\n return {\n getLocaleData: getLocaleData,\n setLocaleData: setLocaleData,\n resetLocaleData: resetLocaleData,\n subscribe: subscribe,\n __: __,\n _x: _x,\n _n: _n,\n _nx: _nx,\n isRTL: isRTL,\n hasTranslation: hasTranslation\n };\n};\n//# sourceMappingURL=create-i18n.js.map","/**\n * Internal dependencies\n */\nimport { createI18n } from './create-i18n';\n/**\n * WordPress dependencies\n */\n\nimport { defaultHooks } from '@wordpress/hooks';\nvar i18n = createI18n(undefined, undefined, defaultHooks);\n/**\n * Default, singleton instance of `I18n`.\n */\n\nexport default i18n;\n/*\n * Comments in this file are duplicated from ./i18n due to\n * https://github.com/WordPress/gutenberg/pull/20318#issuecomment-590837722\n */\n\n/**\n * @typedef {import('./create-i18n').LocaleData} LocaleData\n * @typedef {import('./create-i18n').SubscribeCallback} SubscribeCallback\n * @typedef {import('./create-i18n').UnsubscribeCallback} UnsubscribeCallback\n */\n\n/**\n * Returns locale data by domain in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {string} [domain] Domain for which to get the data.\n * @return {LocaleData} Locale data.\n */\n\nexport var getLocaleData = i18n.getLocaleData.bind(i18n);\n/**\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var setLocaleData = i18n.setLocaleData.bind(i18n);\n/**\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var resetLocaleData = i18n.resetLocaleData.bind(i18n);\n/**\n * Subscribes to changes of locale data\n *\n * @param {SubscribeCallback} callback Subscription callback\n * @return {UnsubscribeCallback} Unsubscribe callback\n */\n\nexport var subscribe = i18n.subscribe.bind(i18n);\n/**\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n *\n * @param {string} text Text to translate.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated text.\n */\n\nexport var __ = i18n.__.bind(i18n);\n/**\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n *\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated context string without pipe.\n */\n\nexport var _x = i18n._x.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _n = i18n._n.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _nx = i18n._nx.bind(i18n);\n/**\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n *\n * @return {boolean} Whether locale is RTL.\n */\n\nexport var isRTL = i18n.isRTL.bind(i18n);\n/**\n * Check if there is a translation for a given string (in singular form).\n *\n * @param {string} single Singular form of the string to look up.\n * @param {string} [context] Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n * @return {boolean} Whether the translation exists or not.\n */\n\nexport var hasTranslation = i18n.hasTranslation.bind(i18n);\n//# sourceMappingURL=default-i18n.js.map","export { sprintf } from './sprintf';\nexport * from './create-i18n';\nexport { default as defaultI18n, setLocaleData, resetLocaleData, getLocaleData, subscribe, __, _x, _n, _nx, isRTL, hasTranslation } from './default-i18n';\n//# sourceMappingURL=index.js.map","/**\n * External dependencies\n */\nimport memoize from 'memize';\nimport sprintfjs from 'sprintf-js';\n/**\n * Log to console, once per message; or more precisely, per referentially equal\n * argument set. Because Jed throws errors, we log these to the console instead\n * to avoid crashing the application.\n *\n * @param {...*} args Arguments to pass to `console.error`\n */\n\nvar logErrorOnce = memoize(console.error); // eslint-disable-line no-console\n\n/**\n * Returns a formatted string. If an error occurs in applying the format, the\n * original format string is returned.\n *\n * @param {string} format The format of the string to generate.\n * @param {...*} args Arguments to apply to the format.\n *\n * @see https://www.npmjs.com/package/sprintf-js\n *\n * @return {string} The formatted string.\n */\n\nexport function sprintf(format) {\n try {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return sprintfjs.sprintf.apply(sprintfjs, [format].concat(args));\n } catch (error) {\n logErrorOnce('sprintf error: \\n\\n' + error.toString());\n return format;\n }\n}\n//# sourceMappingURL=sprintf.js.map","export class frmTabsNavigator {\n\n\tconstructor( wrapper ) {\n\t\tif ( 'undefined' === typeof wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrapper = wrapper instanceof Element ? wrapper : document.querySelector( wrapper );\n\n\t\tif ( null === this.wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.flexboxSlidesGap = '16px';\n\t\tthis.navs = this.wrapper.querySelectorAll( '.frm-tabs-navs ul > li' );\n\t\tthis.slideTrackLine = this.wrapper.querySelector( '.frm-tabs-active-underline' );\n\t\tthis.slideTrack = this.wrapper.querySelector( '.frm-tabs-slide-track' );\n\t\tthis.slides = this.wrapper.querySelectorAll( '.frm-tabs-slide-track > div' );\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\tif ( null === this.wrapper || ! this.navs.length || null === this.trackLine || null === this.slideTrack || ! this.slides.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initDefaultSlideTrackerWidth();\n\t\tthis.navs.forEach( ( nav, index ) => {\n\t\t\tnav.addEventListener( 'click', event => this.onNavClick( event, index ) );\n\t\t});\n\t}\n\n\tonNavClick( event, index ) {\n\t\tthis.removeActiveClassnameFromNavs();\n\t\tevent.target.classList.add( 'frm-active' );\n\t\tthis.initSlideTrackUnderline( event.target, index );\n\t\tthis.changeSlide( index );\n\t}\n\n\tinitDefaultSlideTrackerWidth() {\n\t\tif ( ! this.slideTrackLine.dataset.initialWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.slideTrackLine.style.width = `${this.slideTrackLine.dataset.initialWidth}px`;\n\t}\n\tinitSlideTrackUnderline( nav, index ) {\n\t\tthis.slideTrackLine.classList.remove( 'frm-first', 'frm-last' );\n\t\tconst activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) ) ;\n\t\tthis.slideTrackLine.style.transform = `translateX(${activeNav.offsetLeft}px)`;\n\t\tthis.slideTrackLine.style.width = activeNav.clientWidth + 'px';\n\n\t\tif ( this.navs.length === index + 1 ) { \n\t\t\tthis.slideTrackLine.classList.add( 'frm-last' );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 === index ) {\n\t\t\tthis.slideTrackLine.classList.add( 'frm-first' );\n\t\t}\n\t}\n\n\tchangeSlide( index ) {\n\t\tthis.removeActiveClassnameFromSlides();\n\t\tconst translate = index == 0 ? '0px' : `calc( ( ${( index * 100 )}% + ${parseInt( this.flexboxSlidesGap, 10 ) * index }px ) * -1 )`;\n\t\tthis.slideTrack.style.transform = `translateX(${translate})`;\n\t\tif ( index in this.slides ) {\n\t\t\tthis.slides[ index ].classList.add( 'frm-active' );\n\t\t}\n\t}\n\n\tremoveActiveClassnameFromSlides() {\n\t\tthis.slides.forEach( slide => slide.classList.remove( 'frm-active' ) );\n\t}\n\n\tremoveActiveClassnameFromNavs() {\n\t\tthis.navs.forEach( nav => nav.classList.remove( 'frm-active' ) );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\n","export class frmAnimate {\n\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements\n\t * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d\n\t *\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true });\n\t\t});\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay - The transition delay value.\n\t *\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( index + 1 ) * delay + 's';\n\t\t\t});\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t});\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${type}\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true });\n};\n","export const { onClickPreventDefault } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = ( paramName ) => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ([ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = {[paramName]: paramValue};\n\t\twindow.history[updateMethod]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","/**\n * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview.\n * The names of the elements that will be updated are specified using the \"will-change\" attribute.\n * It is primarily used in components from Style/Quick Settings.\n * For instance, when the \"FrmPrimaryColorStyleComponent\" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds.\n */\nexport default class frmDependentUpdaterComponent {\n\n\t/**\n\t * Creates an instance of frmDependentUpdaterComponent.\n\t * @param {HTMLElement} component - The component element.\n\t */\n\tconstructor( component ) {\n\t\tthis.component = component;\n\t\ttry {\n\t\t\tconst willChangeData = JSON.parse( this.component.dataset.willChange );\n\t\t\tthis.data = {\n\t\t\t\tpropagateInputs: this.initPropagationList( willChangeData ),\n\t\t\t\tchangeEvent: new Event( 'change', { bubbles: true } )\n\t\t\t};\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'Error parsing JSON data from \"will-change\" attribute.', error );\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the list of inputs to propagate changes to.\n\t * The selection is made by provided input's names list in \"will-change\" attribute.\n\t * @param {string[]} inputNames - The names of the inputs to propagate changes to.\n\t * @return {HTMLElement[]} - The list of inputs to propagate changes to.\n\t */\n\tinitPropagationList( inputNames ) {\n\t\tconst list = [];\n\t\tinputNames.forEach( ( name ) => {\n\t\t\tconst input = document.querySelector( `input[name=\"${name}\"]` );\n\t\t\tif ( null !== input ) {\n\t\t\t\tlist.push( input );\n\t\t\t}\n\t\t});\n\t\treturn list;\n\t}\n\n\t/**\n\t * Updates all dependent elements with the given value.\n\t * @param {string} value - The value to update the dependent elements with.\n\t */\n\tupdateAllDependentElements( value ) {\n\t\tthis.data.propagateInputs.forEach( ( input ) => {\n\t\t\tinput.value = value;\n\t\t});\n\t\tthis.data.propagateInputs[0].dispatchEvent( this.data.changeEvent );\n\t}\n}\n","import { show, hide } from 'core/utils';\n\n/**\n * Represents a radio component.\n * @class\n */\nexport default class frmRadioComponent {\n\n\tconstructor() {\n\t\tthis.radioElements = document.querySelectorAll( '.frm-style-component.frm-radio-component' );\n\t\tif ( 0 < this.radioElements.length ) {\n\t\t\tthis.init();\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the radio component.\n\t */\n\tinit() {\n\t\tthis.radioElements.forEach( ( element ) => {\n\t\t\tthis.initOnRadioChange( element );\n\t\t});\n\t\tthis.initTrackerOnAccordionClick();\n\t}\n\n\tinitTrackerOnAccordionClick() {\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\n\t\taccordionitems.forEach( ( accordionitem ) => {\n\t\t\taccordionitem.addEventListener( 'click', ( event ) => {\n\t\t\t\tconst wrapper = event.target.closest( '.accordion-section' );\n\t\t\t\tconst radioButtons = wrapper.querySelectorAll( '.frm-style-component.frm-radio-component input[type=\"radio\"]:checked' );\n\n\t\t\t\tradioButtons.forEach( ( radio ) => {\n\t\t\t\t\tsetTimeout( () => this.onRadioChange( radio ), 200 );\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the onRadioChange event for the given wrapper.\n\t * @param {HTMLElement} radioElement - The radio element.\n\t */\n\tinitOnRadioChange( radioElement ) {\n\t\tradioElement.querySelectorAll( 'input[type=\"radio\"]' ).forEach( ( radio ) => {\n\t\t\tif ( radio.checked ) {\n\t\t\t\tthis.onRadioChange( radio );\n\t\t\t}\n\t\t\tradio.addEventListener( 'change', ( event ) => {\n\t\t\t\tthis.onRadioChange( event.target );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Handles the onRadioChange event for the given wrapper.\n\t * @param {HTMLElement} target - The active radio button.\n\t */\n\tonRadioChange( target ) {\n\t\tconst wrapper = target.closest( '.frm-style-component.frm-radio-component' );\n\t\tconst activeItem = wrapper.querySelector( 'input[type=\"radio\"]:checked + label' );\n\n\t\tif ( null === activeItem ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.moveTracker( activeItem, wrapper );\n\t\tthis.hideExtraElements( target );\n\t\tthis.maybeShowExtraElements( target );\n\t}\n\n\t/**\n\t * Display additional elements related to the selected radio option.\n\t * @param {HTMLElement} radio - The radio button element.\n\t */\n\tmaybeShowExtraElements( radio ) {\n\t\tconst elementAttr = radio.getAttribute( 'data-frm-show-element' );\n\t\tif ( null === elementAttr ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elements = document.querySelectorAll( `div[data-frm-element=\"${elementAttr}\"]` );\n\n\t\tif ( 0 === elements.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\telements.forEach( ( element ) => {\n\t\t\tshow( element );\n\t\t\telement.classList.add( 'frm-element-is-visible' );\n\t\t});\n\t}\n\n\t/**\n\t * Hide the possible opepend extra elements.\n\t */\n\thideExtraElements() {\n\t\tconst elements = document.querySelectorAll( '.frm-element-is-visible' );\n\t\tif ( 0 === elements.length ) {\n\t\t\treturn;\n\t\t}\n\t\telements.forEach( ( element ) => {\n\t\t\telement.classList.remove( 'frm-element-is-visible' );\n\t\t\telement.classList.add( 'frm_hidden' );\n\t\t\thide( element );\n\t\t});\n\t}\n\n\t/**\n\t * Moves the tracker to the active item.\n\t * @param {HTMLElement} activeItem - The active item element.\n\t * @param {HTMLElement} wrapper - The wrapper element.\n\t */\n\tmoveTracker( activeItem, wrapper ) {\n\t\tconst offset = activeItem.offsetLeft;\n\t\tconst width = activeItem.offsetWidth;\n\t\tconst tracker = wrapper.querySelector( '.frm-radio-active-tracker' );\n\n\t\ttracker.style.left = 0;\n\t\ttracker.style.width = `${width}px`;\n\t\ttracker.style.transform = `translateX(${ offset }px)`;\n\t}\n}\n","import frmDependentUpdaterComponent from './dependent-updater-component';\n/**\n * Represents a slider component.\n * @class frmSliderComponent\n */\nexport default class frmSliderComponent {\n\n\tconstructor() {\n\t\tthis.sliderElements = document.querySelectorAll( '.frm-slider-component' );\n\t\tif ( 0 === this.sliderElements.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// The slider bullet point width in pixels. Used in value calculation on drag event.\n\t\tthis.sliderBulletWidth = 16;\n\t\tthis.sliderMarginRight = 5;\n\t\tthis.eventsChange = [];\n\n\t\tconst { debounce } = frmDom.util;\n\t\tthis.valueChangeDebouncer = debounce( ( index ) => this.triggerValueChange( index ), 25 );\n\n\t\tthis.initOptions();\n\t\tthis.init();\n\t}\n\n\t/**\n\t * Initializes the options for the slider component.\n\t */\n\tinitOptions() {\n\t\tthis.options = [];\n\t\tthis.sliderElements.forEach( ( element, index ) => {\n\t\t\tconst parentWrapper = element.classList.contains( 'frm-has-multiple-values' ) ? element.closest( '.frm-style-component' ) : element;\n\t\t\tthis.options.push({\n\t\t\t\tdragging: false,\n\t\t\t\tstartX: 0,\n\t\t\t\ttranslateX: 0,\n\t\t\t\tmaxValue: parseInt( element.dataset.maxValue, 10 ),\n\t\t\t\telement: element,\n\t\t\t\tindex: index,\n\t\t\t\tvalue: 0,\n\t\t\t\tdependentUpdater: parentWrapper.classList.contains( 'frm-style-dependent-updater-component' ) ? new frmDependentUpdaterComponent( parentWrapper ) : null\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the slider component.\n\t */\n\tinit() {\n\t\tthis.initSlidersPosition();\n\t\tthis.initDraggable();\n\t}\n\n\t/**\n\t * Initializes the draggable functionality for the slider component.\n\t */\n\tinitDraggable() {\n\t\tthis.sliderElements.forEach( ( element, index ) => {\n\t\t\tthis.eventsChange[ index ] = new Event( 'change', {\n\t\t\t\tbubbles: true,\n\t\t\t\tcancelable: true\n\t\t\t});\n\t\t\tconst draggableBullet = element.querySelector( '.frm-slider-bullet' );\n\t\t\tconst valueInput = element.querySelector( '.frm-slider-value input[type=\"text\"]' );\n\n\t\t\tvalueInput.addEventListener( 'change', ( event ) => {\n\t\t\t\tconst unit = element.querySelector( 'select' ).value;\n\n\t\t\t\tif ( this.getMaxValue( unit, index ) < parseInt( event.target.value, 10 ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.initSliderWidth( element );\n\t\t\t\tthis.options[ index ].fullValue = this.updateValue( element, valueInput.value + unit );\n\t\t\t\tthis.triggerValueChange( index );\n\t\t\t});\n\n\t\t\tthis.expandSliderGroup( element );\n\t\t\tthis.updateOnUnitChange( element, valueInput, index );\n\t\t\tthis.changeSliderPositionOnClick( element, valueInput, index );\n\n\t\t\tdraggableBullet.addEventListener( 'mousedown', ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.enableDragging( event, index );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mousemove', ( event ) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.moveTracker( event, index );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mouseup', ( event) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.disableDragging( index, event );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mouseleave', ( event ) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.disableDragging( index, event );\n\t\t\t});\n\t\t});\n\t}\n\n\texpandSliderGroup( element ) {\n\t\tconst svgIcon = element.querySelector( '.frmsvg' );\n\n\t\tif ( 'undefined' === typeof element.dataset.displaySliders || null === svgIcon ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst sliderGroupItems = this.getSliderGroupItems( element );\n\t\tsvgIcon.addEventListener( 'click', ( ) => {\n\t\t\tsliderGroupItems.forEach( ( item ) => {\n\t\t\t\titem.classList.toggle( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\tupdateOnUnitChange( element, valueInput, index ) {\n\t\telement.querySelector( 'select' ).addEventListener( 'change', ( event ) => {\n\t\t\tconst unit = event.target.value.toLowerCase();\n\n\t\t\tif ( '' === unit ) {\n\t\t\t\telement.classList.add( 'frm-disabled', 'frm-empty' );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( 'auto' === unit ) {\n\t\t\t\telement.classList.add( 'frm-disabled' );\n\t\t\t\tthis.updateValue( element, 'auto' );\n\t\t\t\tthis.triggerValueChange( index );\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\telement.classList.remove( 'frm-disabled', 'frm-empty' );\n\t\t\tthis.options[ index ].fullValue = valueInput.value + unit;\n\t\t\tthis.updateValue( element, this.options[ index ].fullValue );\n\t\t\tthis.triggerValueChange( index );\n\t\t});\n\t}\n\n\tchangeSliderPositionOnClick( element, valueInput, index ) {\n\t\tconst frmSlider = element.querySelector( '.frm-slider' );\n\t\tconst customEvent = new Event( 'change', {\n\t\t\t'bubbles': true,\n\t\t\t'cancelable': true\n\t\t});\n\n\t\tfrmSlider.addEventListener( 'click', ( event ) => {\n\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\n\t\t\tif ( ! event.target.classList.contains( 'frm-slider' ) && ! event.target.classList.contains( 'frm-slider-active-track' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst sliderWidth = frmSlider.offsetWidth - this.sliderBulletWidth;\n\t\t\tconst sliderRect = frmSlider.getBoundingClientRect();\n\t\t\tconst deltaX = event.clientX - sliderRect.left - this.sliderBulletWidth;\n\t\t\tconst unit = element.querySelector( 'select' ).value;\n\t\t\tconst value = this.calculateValue( sliderWidth, deltaX, this.getMaxValue( unit, index ) );\n\n\t\t\tif ( value < 0 ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.options[ index ].fullValue = this.updateValue( element, value + unit );\n\t\t\tthis.initChildSlidersWidth( element, deltaX, index, value + unit );\n\n\t\t\tvalueInput.value = value;\n\t\t\tvalueInput.dispatchEvent( customEvent );\n\n\t\t});\n\t}\n\n\t/**\n\t * Retrieves an array of slider group items based on the provided element.\n\t *\n\t * @param {HTMLElement} element - The element to retrieve slider group items from.\n\t * @return {NodeList} - An array-like object containing the slider group items.\n\t */\n\tgetSliderGroupItems( element ) {\n\t\tif ( 'undefined' === typeof element.dataset.displaySliders ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst slidersGroup = element.dataset.displaySliders.split( ',' );\n\t\tconst query = slidersGroup.map( ( item ) => {\n\t\t\treturn `.frm-slider-component[data-type=\"${item}\"]`;\n\t\t}).join( ', ' );\n\n\t\treturn element.closest( '.frm-style-component' ).querySelectorAll( query )\n\t}\n\n\t/**\n\t * Initializes the position of sliders when a accordion section is opened.\n\t */\n\tinitSlidersPosition() {\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\tconst quickSettings = document.querySelector( '.frm-quick-settings' );\n\t\tconst openedAccordion = document.querySelector( '.accordion-section.open' );\n\n\t\t// Detect if upload background image upload has triggered and initialize the \"Image Opacity\" slider width.\n\t\twp.hooks.addAction( 'frm_pro_on_bg_image_upload', 'formidable', ( event ) => {\n\t\t\tconst imageBackgroundOpacitySlider = event.closest( '.accordion-section-content' ).querySelector( '#frm-bg-image-opacity-slider' );\n\t\t\tthis.initSlidersWidth( imageBackgroundOpacitySlider );\n\t\t});\n\n\t\t// init the sliders width from \"Quick Settings\" page.\n\t\tif ( null !== quickSettings ) {\n\t\t\tthis.initSlidersWidth( quickSettings );\n\t\t}\n\n\t\t// Init the sliders width in opened accordion section from \"Advanced Settings\" page.\n\t\tif ( null !== openedAccordion ) {\n\t\t\tthis.initSlidersWidth( openedAccordion );\n\t\t}\n\n\t\t// init the sliders width everytime when an accordion section is opened from \"Advanced Settings\" page.\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', ( event ) => {\n\t\t\t\tthis.initSlidersWidth( event.target.closest( '.accordion-section' ) );\n\t\t\t});\n\t\t});\n\n\t\tthis.initSliderPositionOnFieldShapeChange();\n\t}\n\n\t/**\n\t * Initializes the width of \"Corner Radius\" slider that is dynamically is displayed on \"Field Shape\" option change from \"Quick Settings\".\n\t *\n\t * @return {void}\n\t */\n\tinitSliderPositionOnFieldShapeChange() {\n\t\tconst fieldShapeType = document.querySelector( '.frm-style-component.frm-field-shape' );\n\n\t\tif ( null === fieldShapeType ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst radioButtons = fieldShapeType.querySelectorAll( 'input[type=\"radio\"]' );\n\t\tradioButtons.forEach( ( radio ) => {\n\t\t\tradio.addEventListener( 'change', ( event ) => {\n\t\t\t\tif ( event.target.checked && 'rounded-corner' === event.target.value ) {\n\t\t\t\t\tconst slider = document.querySelector( 'div[data-frm-element=\"field-shape-corner-radius\"] .frm-slider-component' );\n\t\t\t\t\tthis.initSliderWidth( slider );\n\t\t\t\t}\n\t\t\t})\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the width of sliders within a given section.\n\t *\n\t * @param {HTMLElement} section - The section containing the sliders.\n\t * @return {void}\n\t */\n\tinitSlidersWidth( section ) {\n\t\tconst sliders = section.querySelectorAll( '.frm-slider-component' );\n\t\tsliders.forEach( ( slider ) => {\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.initSliderWidth( slider );\n\t\t\t}, 100 );\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the width of a slider.\n\t *\n\t * @param {HTMLElement} slider - The slider element.\n\t * @return {void}\n\t */\n\tinitSliderWidth( slider ) {\n\t\tif ( slider.classList.contains( 'frm-disabled' ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst index = this.getSliderIndex( slider );\n\t\tconst sliderWidth = slider.querySelector( '.frm-slider' ).offsetWidth - this.sliderBulletWidth;\n\t\tconst value = parseInt( slider.querySelector( '.frm-slider-value input[type=\"text\"]' ).value, 10 );\n\t\tconst unit = slider.querySelector( 'select' ).value;\n\t\tconst deltaX = '%' === unit ? Math.round( sliderWidth * value / 100 ) : Math.ceil( ( value / this.options[ index ].maxValue ) * sliderWidth );\n\n\t\tslider.querySelector( '.frm-slider-active-track' ).style.width = `${deltaX}px`;\n\t\tthis.options[ index ].translateX = deltaX;\n\t\tthis.options[ index ].value = value + unit;\n\t}\n\n\t/**\n\t * Initializes the width of child sliders.\n\t *\n\t * @param {HTMLElement} slider - The parent slider element.\n\t * @param {number} width - The width to set for the child sliders.\n\t * @param {number} index - The starting index for the child sliders.\n\t * @param {number} value - The value to set for the child sliders.\n\t */\n\tinitChildSlidersWidth( slider, width, index, value ) {\n\t\tif ( ! slider.classList.contains( 'frm-has-independent-fields' ) && ! slider.classList.contains( 'frm-has-multiple-values' ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst childSliders = slider.classList.contains( 'frm-has-independent-fields' ) ? slider.querySelectorAll( '.frm-independent-slider-field' ) : this.getSliderGroupItems( slider );\n\n\t\tchildSliders.forEach( ( item, childIndex ) => {\n\t\t\titem.querySelector( '.frm-slider-active-track' ).style.width = `${width}px`;\n\t\t\tthis.options[ index + childIndex + 1 ].translateX = width;\n\t\t\tthis.options[ index + childIndex + 1 ].value = value;\n\t\t});\n\t}\n\n\t/**\n\t * Returns the index of the specified slider element.\n\t *\n\t * @param {HTMLElement} slider - The slider element.\n\t * @return {number} The index of the slider element.\n\t */\n\tgetSliderIndex( slider ) {\n\t\treturn this.options.filter( ( option ) => {\n\t\t\treturn option.element === slider;\n\t\t})[0].index;\n\t};\n\n\t/**\n\t * Handles the movement of the slider tracker.\n\t *\n\t * @param {Event} event - The event object representing the mouse movement.\n\t * @param {number} index - The index of the slider element.\n\t * @return {void}\n\t */\n\tmoveTracker( event, index ) {\n\t\tif ( ! this.options[ index ].dragging ) {\n\t\t\treturn;\n\t\t}\n\t\tlet deltaX = event.clientX - this.options[ index ].startX;\n\t\tconst element = this.sliderElements[ index ];\n\t\tconst sliderWidth = element.querySelector( '.frm-slider' ).offsetWidth;\n\n\t\t// Ensure deltaX does not go below 0\n\t\tdeltaX = Math.max( deltaX, 0 );\n\n\t\tif ( deltaX + this.sliderBulletWidth / 2 + this.sliderMarginRight >= sliderWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tconst unit = element.querySelector( 'select' ).value;\n\t\tconst value = this.calculateValue( sliderWidth, deltaX, this.getMaxValue( unit, index ) );\n\n\t\telement.querySelector( '.frm-slider-value input[type=\"text\"]' ).value = value;\n\t\telement.querySelector( '.frm-slider-bullet .frm-slider-value-label' ).innerText = value;\n\t\telement.querySelector( '.frm-slider-active-track' ).style.width = `${deltaX}px`;\n\t\tthis.initChildSlidersWidth( element, deltaX, index, value + unit );\n\n\t\tthis.options[ index ].translateX = deltaX;\n\t\tthis.options[ index ].value = value + unit;\n\t\tthis.options[ index ].fullValue = this.updateValue( element, this.options[ index ].value );\n\t\tthis.valueChangeDebouncer( index );\n\t}\n\n\t/**\n\t * Get the maximum value based on the unit and index.\n\t *\n\t * @param {string} unit - The unit of measurement.\n\t * @param {number} index - The index of the option.\n\t * @return {number} The maximum value.\n\t */\n\tgetMaxValue( unit, index ) {\n\t\treturn '%' === unit ? 100 : this.options[ index ].maxValue;\n\t}\n\n\t/**\n\t * Enables dragging for the slider component.\n\t *\n\t * @param {Event} event - The event object.\n\t * @param {number} index - The index of the option being dragged.\n\t */\n\tenableDragging( event, index ) {\n\t\tevent.target.classList.add( 'frm-dragging' );\n\t\tthis.options[ index ].dragging = true;\n\t\tthis.options[ index ].startX = event.clientX - this.options[ index ].translateX;\n\t}\n\n\t/**\n\t * Disables dragging for a specific index.\n\t *\n\t * @param {number} index - The index of the option to disable dragging for.\n\t * @param {Event} event - The event object triggered by the dragging action.\n\t */\n\tdisableDragging( index, event ) {\n\t\tif ( false === this.options[ index ].dragging ) {\n\t\t\treturn;\n\t\t}\n\t\tevent.target.classList.remove( 'frm-dragging' );\n\t\tthis.options[ index ].dragging = false;\n\t\tthis.triggerValueChange( index );\n\t}\n\n\t/**\n\t * Triggers a value change for the specified index.\n\t *\n\t * @param {number} index - The index of the value to be changed.\n\t */\n\ttriggerValueChange( index ) {\n\t\tif ( null !== this.options[ index ].dependentUpdater ) {\n\t\t\tthis.options[ index ].dependentUpdater.updateAllDependentElements( this.options[ index ].fullValue );\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = this.sliderElements[ index ].classList.contains( 'frm-has-multiple-values' ) ? this.sliderElements[ index ].closest('.frm-style-component').querySelector( 'input[type=\"hidden\"]' ) : this.sliderElements[ index ].querySelectorAll( '.frm-slider-value input[type=\"hidden\"]' );\n\t\tif ( input instanceof NodeList ) {\n\t\t\tinput.forEach( ( item ) => {\n\t\t\t\titem.dispatchEvent( this.eventsChange[ index ] );\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tinput.dispatchEvent( this.eventsChange[ index ] );\n\t}\n\n\t/**\n\t * Calculates the value based on the width, deltaX, and maxValue.\n\t *\n\t * @param {number} width - The width of the slider.\n\t * @param {number} deltaX - The change in x-coordinate.\n\t * @param {number} maxValue - The maximum value.\n\t * @return {number} - The calculated value.\n\t */\n\tcalculateValue( width, deltaX, maxValue ) {\n\n\t\t// Indicates the additional value generated by the slider's drag progress (up to 100%) and the width of the slider bullet.\n\t\t// Generates a more accurate value for the slider's start (0) and end (maximum value) positions, taking into account the slider's position and bullet width.\n\t\tconst delta = Math.ceil( this.sliderBulletWidth * ( deltaX / width ) );\n\n\t\tconst value = Math.ceil( ( ( deltaX + delta ) / width ) * maxValue );\n\n\t\treturn Math.min( value, maxValue )\n\t}\n\n\t/**\n\t * Updates the value of a slider component.\n\t *\n\t * @param {HTMLElement} element - The slider component element.\n\t * @param {string} value - The new value to be set.\n\t * @return {string} - The updated value.\n\t */\n\tupdateValue( element, value ) {\n\t\t// When the slider component is used for \"Base Font Size\", we need to update a hidden input field when change happens to indicate that the \"Base Font Size\" has been adjusted.\n\t\t// Used to avoid conflicts with other possible font sizes adjustemnts in \"Advanced Settings\" when moving from \"Quick Settings\" when \"Base Font Size\" is not changed.\n\t\tif ( element.classList.contains( 'frm-base-font-size' ) ) {\n\t\t\tconst userBaseFontSizeInput = document.querySelector( 'input[name=\"frm_style_setting[post_content][use_base_font_size]\"]' );\n\t\t\tif ( null !== userBaseFontSizeInput ) {\n\t\t\t\tuserBaseFontSizeInput.value = 'true';\n\t\t\t}\n\t\t}\n\t\tif ( element.classList.contains( 'frm-has-multiple-values' ) ) {\n\t\t\tconst input = element.closest( '.frm-style-component' ).querySelector( 'input[type=\"hidden\"]' );\n\t\t\tconst inputValue = input.value.split( ' ' );\n\t\t\tconst type = element.dataset.type;\n\n\t\t\tif ( ! inputValue[2] ) {\n\t\t\t\tinputValue[2] = '0px';\n\t\t\t}\n\n\t\t\tif ( ! inputValue[3] ) {\n\t\t\t\tinputValue[3] = '0px';\n\t\t\t}\n\n\t\t\tswitch ( type ) {\n\t\t\t\tcase 'vertical':\n\t\t\t\t\tinputValue[0] = value;\n\t\t\t\t\tinputValue[2] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'horizontal':\n\t\t\t\t\tinputValue[1] = value;\n\t\t\t\t\tinputValue[3] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'top':\n\t\t\t\t\tinputValue[0] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'bottom':\n\t\t\t\t\tinputValue[2] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'left':\n\t\t\t\t\tinputValue[3] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'right':\n\t\t\t\t\tinputValue[1] = value;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst newValue = inputValue.join( ' ' );\n\t\t\tinput.value = newValue;\n\n\t\t\tconst childSlidersGroup = this.getSliderGroupItems( element );\n\t\t\tchildSlidersGroup.forEach( ( slider ) => {\n\t\t\t\tconst unitMeasure = this.getUnitMeasureFromValue( value );\n\t\t\t\tslider.querySelector( '.frm-slider-value input[type=\"text\"]' ).value = parseInt( value, 10 );\n\t\t\t\tslider.querySelector( 'select' ).value = unitMeasure;\n\t\t\t});\n\n\t\t\treturn newValue;\n\t\t}\n\n\t\tif ( element.classList.contains( 'frm-has-independent-fields' ) ) {\n\t\t\tconst inputValues = element.querySelectorAll( '.frm-slider-value input[type=\"hidden\"]' );\n\t\t\tconst visibleValues = element.querySelectorAll( '.frm-slider-value input[type=\"text\"]' );\n\t\t\tinputValues.forEach( ( input, index ) => {\n\t\t\t\tinput.value = value;\n\t\t\t\tvisibleValues[ index + 1 ].value = parseInt( value, 10 );\n\t\t\t});\n\n\t\t\treturn value;\n\t\t}\n\n\t\telement.querySelector( '.frm-slider-value input[type=\"hidden\"]' ).value = value;\n\t\treturn value;\n\t}\n\n\t/**\n\t * Returns the unit of measurement used in the given value.\n\t *\n\t * @param {string} value - The value to check for the unit of measurement.\n\t * @return {string} The unit of measurement ('%', 'px', 'em') found in the value, or an empty string if none is found.\n\t */\n\tgetUnitMeasureFromValue( value ) {\n\t\treturn [ '%', 'px', 'em' ].find( unit => value.includes( unit ) ) || '';\n\t}\n}\n","import { frmTabsNavigator } from '../../components/class-tabs-navigator';\n/**\n * Represents a Tabs Component.\n * @class\n */\nexport default class frmTabsComponent {\n\n\tconstructor() {\n\t\tthis.elements = document.querySelectorAll( '.frm-style-tabs-wrapper' );\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.init();\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the Tabs Component.\n\t */\n\tinit() {\n\t\tthis.elements.forEach( ( element ) => {\n\t\t\tnew frmTabsNavigator( element );\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the component on tab click.\n\t * @param {Element} wrapper - The wrapper element.\n\t */\n\tinitOnTabClick( wrapper ) {\n\t\tthis.initActiveBackgroundWidth( wrapper );\n\t\twrapper.querySelectorAll( '.frm-tab-item' ).forEach( ( tab ) => {\n\t\t\ttab.addEventListener( 'click', ( event ) => {\n\t\t\t\tthis.onTabClick( event.target.closest( '.frm-tabs-wrapper' ) );\n\t\t\t});\n\t\t});\n\t}\n}\n","/**\n * Memize options object.\n *\n * @typedef MemizeOptions\n *\n * @property {number} [maxSize] Maximum size of the cache.\n */\n\n/**\n * Internal cache entry.\n *\n * @typedef MemizeCacheNode\n *\n * @property {?MemizeCacheNode|undefined} [prev] Previous node.\n * @property {?MemizeCacheNode|undefined} [next] Next node.\n * @property {Array<*>} args Function arguments for cache\n * entry.\n * @property {*} val Function result.\n */\n\n/**\n * Properties of the enhanced function for controlling cache.\n *\n * @typedef MemizeMemoizedFunction\n *\n * @property {()=>void} clear Clear the cache.\n */\n\n/**\n * Accepts a function to be memoized, and returns a new memoized function, with\n * optional options.\n *\n * @template {Function} F\n *\n * @param {F} fn Function to memoize.\n * @param {MemizeOptions} [options] Options object.\n *\n * @return {F & MemizeMemoizedFunction} Memoized function.\n */\nfunction memize( fn, options ) {\n\tvar size = 0;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar head;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar tail;\n\n\toptions = options || {};\n\n\tfunction memoized( /* ...args */ ) {\n\t\tvar node = head,\n\t\t\tlen = arguments.length,\n\t\t\targs, i;\n\n\t\tsearchCache: while ( node ) {\n\t\t\t// Perform a shallow equality test to confirm that whether the node\n\t\t\t// under test is a candidate for the arguments passed. Two arrays\n\t\t\t// are shallowly equal if their length matches and each entry is\n\t\t\t// strictly equal between the two sets. Avoid abstracting to a\n\t\t\t// function which could incur an arguments leaking deoptimization.\n\n\t\t\t// Check whether node arguments match arguments length\n\t\t\tif ( node.args.length !== arguments.length ) {\n\t\t\t\tnode = node.next;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Check whether node arguments match arguments values\n\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\tif ( node.args[ i ] !== arguments[ i ] ) {\n\t\t\t\t\tnode = node.next;\n\t\t\t\t\tcontinue searchCache;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// At this point we can assume we've found a match\n\n\t\t\t// Surface matched node to head if not already\n\t\t\tif ( node !== head ) {\n\t\t\t\t// As tail, shift to previous. Must only shift if not also\n\t\t\t\t// head, since if both head and tail, there is no previous.\n\t\t\t\tif ( node === tail ) {\n\t\t\t\t\ttail = node.prev;\n\t\t\t\t}\n\n\t\t\t\t// Adjust siblings to point to each other. If node was tail,\n\t\t\t\t// this also handles new tail's empty `next` assignment.\n\t\t\t\t/** @type {MemizeCacheNode} */ ( node.prev ).next = node.next;\n\t\t\t\tif ( node.next ) {\n\t\t\t\t\tnode.next.prev = node.prev;\n\t\t\t\t}\n\n\t\t\t\tnode.next = head;\n\t\t\t\tnode.prev = null;\n\t\t\t\t/** @type {MemizeCacheNode} */ ( head ).prev = node;\n\t\t\t\thead = node;\n\t\t\t}\n\n\t\t\t// Return immediately\n\t\t\treturn node.val;\n\t\t}\n\n\t\t// No cached value found. Continue to insertion phase:\n\n\t\t// Create a copy of arguments (avoid leaking deoptimization)\n\t\targs = new Array( len );\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\targs[ i ] = arguments[ i ];\n\t\t}\n\n\t\tnode = {\n\t\t\targs: args,\n\n\t\t\t// Generate the result from original function\n\t\t\tval: fn.apply( null, args ),\n\t\t};\n\n\t\t// Don't need to check whether node is already head, since it would\n\t\t// have been returned above already if it was\n\n\t\t// Shift existing head down list\n\t\tif ( head ) {\n\t\t\thead.prev = node;\n\t\t\tnode.next = head;\n\t\t} else {\n\t\t\t// If no head, follows that there's no tail (at initial or reset)\n\t\t\ttail = node;\n\t\t}\n\n\t\t// Trim tail if we're reached max size and are pending cache insertion\n\t\tif ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) {\n\t\t\ttail = /** @type {MemizeCacheNode} */ ( tail ).prev;\n\t\t\t/** @type {MemizeCacheNode} */ ( tail ).next = null;\n\t\t} else {\n\t\t\tsize++;\n\t\t}\n\n\t\thead = node;\n\n\t\treturn node.val;\n\t}\n\n\tmemoized.clear = function() {\n\t\thead = null;\n\t\ttail = null;\n\t\tsize = 0;\n\t};\n\n\tif ( process.env.NODE_ENV === 'test' ) {\n\t\t// Cache is not exposed in the public API, but used in tests to ensure\n\t\t// expected list progression\n\t\tmemoized.getCache = function() {\n\t\t\treturn [ head, tail, size ];\n\t\t};\n\t}\n\n\t// Ignore reason: There's not a clear solution to create an intersection of\n\t// the function with additional properties, where the goal is to retain the\n\t// function signature of the incoming argument and add control properties\n\t// on the return value.\n\n\t// @ts-ignore\n\treturn memoized;\n}\n\nmodule.exports = memize;\n","/* global window, exports, define */\n\n!function() {\n 'use strict'\n\n var re = {\n not_string: /[^s]/,\n not_bool: /[^t]/,\n not_type: /[^T]/,\n not_primitive: /[^v]/,\n number: /[diefg]/,\n numeric_arg: /[bcdiefguxX]/,\n json: /[j]/,\n not_json: /[^j]/,\n text: /^[^\\x25]+/,\n modulo: /^\\x25{2}/,\n placeholder: /^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,\n key: /^([a-z_][a-z_\\d]*)/i,\n key_access: /^\\.([a-z_][a-z_\\d]*)/i,\n index_access: /^\\[(\\d+)\\]/,\n sign: /^[+-]/\n }\n\n function sprintf(key) {\n // `arguments` is not an array, but should be fine for this call\n return sprintf_format(sprintf_parse(key), arguments)\n }\n\n function vsprintf(fmt, argv) {\n return sprintf.apply(null, [fmt].concat(argv || []))\n }\n\n function sprintf_format(parse_tree, argv) {\n var cursor = 1, tree_length = parse_tree.length, arg, output = '', i, k, ph, pad, pad_character, pad_length, is_positive, sign\n for (i = 0; i < tree_length; i++) {\n if (typeof parse_tree[i] === 'string') {\n output += parse_tree[i]\n }\n else if (typeof parse_tree[i] === 'object') {\n ph = parse_tree[i] // convenience purposes only\n if (ph.keys) { // keyword argument\n arg = argv[cursor]\n for (k = 0; k < ph.keys.length; k++) {\n if (arg == undefined) {\n throw new Error(sprintf('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"', ph.keys[k], ph.keys[k-1]))\n }\n arg = arg[ph.keys[k]]\n }\n }\n else if (ph.param_no) { // positional argument (explicit)\n arg = argv[ph.param_no]\n }\n else { // positional argument (implicit)\n arg = argv[cursor++]\n }\n\n if (re.not_type.test(ph.type) && re.not_primitive.test(ph.type) && arg instanceof Function) {\n arg = arg()\n }\n\n if (re.numeric_arg.test(ph.type) && (typeof arg !== 'number' && isNaN(arg))) {\n throw new TypeError(sprintf('[sprintf] expecting number but found %T', arg))\n }\n\n if (re.number.test(ph.type)) {\n is_positive = arg >= 0\n }\n\n switch (ph.type) {\n case 'b':\n arg = parseInt(arg, 10).toString(2)\n break\n case 'c':\n arg = String.fromCharCode(parseInt(arg, 10))\n break\n case 'd':\n case 'i':\n arg = parseInt(arg, 10)\n break\n case 'j':\n arg = JSON.stringify(arg, null, ph.width ? parseInt(ph.width) : 0)\n break\n case 'e':\n arg = ph.precision ? parseFloat(arg).toExponential(ph.precision) : parseFloat(arg).toExponential()\n break\n case 'f':\n arg = ph.precision ? parseFloat(arg).toFixed(ph.precision) : parseFloat(arg)\n break\n case 'g':\n arg = ph.precision ? String(Number(arg.toPrecision(ph.precision))) : parseFloat(arg)\n break\n case 'o':\n arg = (parseInt(arg, 10) >>> 0).toString(8)\n break\n case 's':\n arg = String(arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 't':\n arg = String(!!arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'T':\n arg = Object.prototype.toString.call(arg).slice(8, -1).toLowerCase()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'u':\n arg = parseInt(arg, 10) >>> 0\n break\n case 'v':\n arg = arg.valueOf()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'x':\n arg = (parseInt(arg, 10) >>> 0).toString(16)\n break\n case 'X':\n arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase()\n break\n }\n if (re.json.test(ph.type)) {\n output += arg\n }\n else {\n if (re.number.test(ph.type) && (!is_positive || ph.sign)) {\n sign = is_positive ? '+' : '-'\n arg = arg.toString().replace(re.sign, '')\n }\n else {\n sign = ''\n }\n pad_character = ph.pad_char ? ph.pad_char === '0' ? '0' : ph.pad_char.charAt(1) : ' '\n pad_length = ph.width - (sign + arg).length\n pad = ph.width ? (pad_length > 0 ? pad_character.repeat(pad_length) : '') : ''\n output += ph.align ? sign + arg + pad : (pad_character === '0' ? sign + pad + arg : pad + sign + arg)\n }\n }\n }\n return output\n }\n\n var sprintf_cache = Object.create(null)\n\n function sprintf_parse(fmt) {\n if (sprintf_cache[fmt]) {\n return sprintf_cache[fmt]\n }\n\n var _fmt = fmt, match, parse_tree = [], arg_names = 0\n while (_fmt) {\n if ((match = re.text.exec(_fmt)) !== null) {\n parse_tree.push(match[0])\n }\n else if ((match = re.modulo.exec(_fmt)) !== null) {\n parse_tree.push('%')\n }\n else if ((match = re.placeholder.exec(_fmt)) !== null) {\n if (match[2]) {\n arg_names |= 1\n var field_list = [], replacement_field = match[2], field_match = []\n if ((field_match = re.key.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n while ((replacement_field = replacement_field.substring(field_match[0].length)) !== '') {\n if ((field_match = re.key_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else if ((field_match = re.index_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n }\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n match[2] = field_list\n }\n else {\n arg_names |= 2\n }\n if (arg_names === 3) {\n throw new Error('[sprintf] mixing positional and named placeholders is not (yet) supported')\n }\n\n parse_tree.push(\n {\n placeholder: match[0],\n param_no: match[1],\n keys: match[2],\n sign: match[3],\n pad_char: match[4],\n align: match[5],\n width: match[6],\n precision: match[7],\n type: match[8]\n }\n )\n }\n else {\n throw new SyntaxError('[sprintf] unexpected placeholder')\n }\n _fmt = _fmt.substring(match[0].length)\n }\n return sprintf_cache[fmt] = parse_tree\n }\n\n /**\n * export to either browser or node.js\n */\n /* eslint-disable quote-props */\n if (typeof exports !== 'undefined') {\n exports['sprintf'] = sprintf\n exports['vsprintf'] = vsprintf\n }\n if (typeof window !== 'undefined') {\n window['sprintf'] = sprintf\n window['vsprintf'] = vsprintf\n\n if (typeof define === 'function' && define['amd']) {\n define(function() {\n return {\n 'sprintf': sprintf,\n 'vsprintf': vsprintf\n }\n })\n }\n }\n /* eslint-enable quote-props */\n}(); // eslint-disable-line\n","import pluralForms from '@tannin/plural-forms';\n\n/**\n * Tannin constructor options.\n *\n * @typedef {Object} TanninOptions\n *\n * @property {string} [contextDelimiter] Joiner in string lookup with context.\n * @property {Function} [onMissingKey] Callback to invoke when key missing.\n */\n\n/**\n * Domain metadata.\n *\n * @typedef {Object} TanninDomainMetadata\n *\n * @property {string} [domain] Domain name.\n * @property {string} [lang] Language code.\n * @property {(string|Function)} [plural_forms] Plural forms expression or\n * function evaluator.\n */\n\n/**\n * Domain translation pair respectively representing the singular and plural\n * translation.\n *\n * @typedef {[string,string]} TanninTranslation\n */\n\n/**\n * Locale data domain. The key is used as reference for lookup, the value an\n * array of two string entries respectively representing the singular and plural\n * translation.\n *\n * @typedef {{[key:string]:TanninDomainMetadata|TanninTranslation,'':TanninDomainMetadata|TanninTranslation}} TanninLocaleDomain\n */\n\n/**\n * Jed-formatted locale data.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @typedef {{[domain:string]:TanninLocaleDomain}} TanninLocaleData\n */\n\n/**\n * Default Tannin constructor options.\n *\n * @type {TanninOptions}\n */\nvar DEFAULT_OPTIONS = {\n\tcontextDelimiter: '\\u0004',\n\tonMissingKey: null,\n};\n\n/**\n * Given a specific locale data's config `plural_forms` value, returns the\n * expression.\n *\n * @example\n *\n * ```\n * getPluralExpression( 'nplurals=2; plural=(n != 1);' ) === '(n != 1)'\n * ```\n *\n * @param {string} pf Locale data plural forms.\n *\n * @return {string} Plural forms expression.\n */\nfunction getPluralExpression( pf ) {\n\tvar parts, i, part;\n\n\tparts = pf.split( ';' );\n\n\tfor ( i = 0; i < parts.length; i++ ) {\n\t\tpart = parts[ i ].trim();\n\t\tif ( part.indexOf( 'plural=' ) === 0 ) {\n\t\t\treturn part.substr( 7 );\n\t\t}\n\t}\n}\n\n/**\n * Tannin constructor.\n *\n * @class\n *\n * @param {TanninLocaleData} data Jed-formatted locale data.\n * @param {TanninOptions} [options] Tannin options.\n */\nexport default function Tannin( data, options ) {\n\tvar key;\n\n\t/**\n\t * Jed-formatted locale data.\n\t *\n\t * @name Tannin#data\n\t * @type {TanninLocaleData}\n\t */\n\tthis.data = data;\n\n\t/**\n\t * Plural forms function cache, keyed by plural forms string.\n\t *\n\t * @name Tannin#pluralForms\n\t * @type {Object}\n\t */\n\tthis.pluralForms = {};\n\n\t/**\n\t * Effective options for instance, including defaults.\n\t *\n\t * @name Tannin#options\n\t * @type {TanninOptions}\n\t */\n\tthis.options = {};\n\n\tfor ( key in DEFAULT_OPTIONS ) {\n\t\tthis.options[ key ] = options !== undefined && key in options\n\t\t\t? options[ key ]\n\t\t\t: DEFAULT_OPTIONS[ key ];\n\t}\n}\n\n/**\n * Returns the plural form index for the given domain and value.\n *\n * @param {string} domain Domain on which to calculate plural form.\n * @param {number} n Value for which plural form is to be calculated.\n *\n * @return {number} Plural form index.\n */\nTannin.prototype.getPluralForm = function( domain, n ) {\n\tvar getPluralForm = this.pluralForms[ domain ],\n\t\tconfig, plural, pf;\n\n\tif ( ! getPluralForm ) {\n\t\tconfig = this.data[ domain ][ '' ];\n\n\t\tpf = (\n\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t// @ts-ignore\n\t\t\tconfig.plural_forms\n\t\t);\n\n\t\tif ( typeof pf !== 'function' ) {\n\t\t\tplural = getPluralExpression(\n\t\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t\t// @ts-ignore\n\t\t\t\tconfig.plural_forms\n\t\t\t);\n\n\t\t\tpf = pluralForms( plural );\n\t\t}\n\n\t\tgetPluralForm = this.pluralForms[ domain ] = pf;\n\t}\n\n\treturn getPluralForm( n );\n};\n\n/**\n * Translate a string.\n *\n * @param {string} domain Translation domain.\n * @param {string|void} context Context distinguishing terms of the same name.\n * @param {string} singular Primary key for translation lookup.\n * @param {string=} plural Fallback value used for non-zero plural\n * form index.\n * @param {number=} n Value to use in calculating plural form.\n *\n * @return {string} Translated string.\n */\nTannin.prototype.dcnpgettext = function( domain, context, singular, plural, n ) {\n\tvar index, key, entry;\n\n\tif ( n === undefined ) {\n\t\t// Default to singular.\n\t\tindex = 0;\n\t} else {\n\t\t// Find index by evaluating plural form for value.\n\t\tindex = this.getPluralForm( domain, n );\n\t}\n\n\tkey = singular;\n\n\t// If provided, context is prepended to key with delimiter.\n\tif ( context ) {\n\t\tkey = context + this.options.contextDelimiter + singular;\n\t}\n\n\tentry = this.data[ domain ][ key ];\n\n\t// Verify not only that entry exists, but that the intended index is within\n\t// range and non-empty.\n\tif ( entry && entry[ index ] ) {\n\t\treturn entry[ index ];\n\t}\n\n\tif ( this.options.onMissingKey ) {\n\t\tthis.options.onMissingKey( singular, domain );\n\t}\n\n\t// If entry not found, fall back to singular vs. plural with zero index\n\t// representing the singular value.\n\treturn index === 0 ? singular : plural;\n};\n","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { __ } from '@wordpress/i18n';\nimport frmRadioComponent from './components/radio-component.js';\nimport frmSliderComponent from './components/slider-component.js';\nimport frmTabsComponent from './components/tabs-component.js';\nimport frmDependentUpdaterComponent from './components/dependent-updater-component.js';\n\n/**\n * Represents the frmSettingsComponents class.\n * @class\n */\nclass frmSettingsComponents {\n\n\tconstructor() {\n\t\tthis.success = frmDom.success;\n\t\tthis.init();\n\t\tthis.initHover();\n\t}\n\n\t/**\n\t * Initializes the components: frmRadioComponent, frmSliderComponent, and frmTabsComponent.\n\t * Init the dependent\n\t */\n\tinit() {\n\t\tnew frmRadioComponent();\n\t\tnew frmSliderComponent();\n\t\tnew frmTabsComponent();\n\n\t\tthis.initColorPickerDependentUpdaterComponents();\n\t\tthis.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) );\n\t}\n\n\t/**\n\t * Initializes the color picker dependent updater components.\n\t * Retrieves the components and elements, and adds them to the elements array.\n\t * Adds an action hook for the frm_style_options_color_change event.\n\t */\n\tinitColorPickerDependentUpdaterComponents() {\n\t\tconst components = document.querySelectorAll( '.frm-style-dependent-updater-component.frm-colorpicker' );\n\t\tconst elements = [];\n\n\t\tcomponents.forEach( ( component ) => {\n\t\t\tconst element = component.querySelector( 'input.hex' );\n\t\t\tconst id = 'undefined' !== typeof element ? element.getAttribute( 'id' ) : null;\n\n\t\t\tif ( null !== id ) {\n\t\t\t\telements.push({\n\t\t\t\t\tid: id,\n\t\t\t\t\tdependentUpdaterClass: new frmDependentUpdaterComponent( component, 'colorpicker' )\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\twp.hooks.addAction( 'frm_style_options_color_change', 'formidable', ( { event, value } ) => {\n\t\t\tconst container = event.target.closest( '.wp-picker-container' );\n\t\t\tconst id = event.target.getAttribute( 'id' );\n\n\t\t\tcontainer.querySelector( '.wp-color-result-text' ).innerText = value;\n\n\t\t\telements.forEach( ( element ) => {\n\t\t\t\tif ( element.id === id ) {\n\t\t\t\t\telement.dependentUpdaterClass.updateAllDependentElements( value );\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the hover functionality for the options.\n\t * Creates a hover element and appends it to the settingsWrapper.\n\t * Adds event listeners for mouseover and click events.\n\t */\n\tinitHover() {\n\t\tconst settingsWrapper = document.querySelector( '.frm-right-panel .styling_settings .accordion-container' );\n\t\tif ( null === settingsWrapper ) {\n\t\t\treturn;\n\t\t}\n\t\tconst hoverElement = document.createElement( 'div' );\n\t\thoverElement.classList.add( 'frm_hidden' );\n\t\thoverElement.classList.add( 'frm-style-settings-hover' );\n\t\tsettingsWrapper.appendChild( hoverElement );\n\n\t\tconst styleOptionsMenu = settingsWrapper.querySelector( ':scope > ul' );\n\n\t\tstyleOptionsMenu.querySelectorAll( ':scope > li' ).forEach( ( item ) => {\n\t\t\titem.querySelector('h3').addEventListener( 'mouseover', ( event ) => {\n\t\t\t\thoverElement.style.transform = `translateY(${event.target.closest('li').offsetTop}px)`;\n\t\t\t\thoverElement.classList.add( 'frm-animating' );\n\t\t\t\thoverElement.classList.remove( 'frm_hidden' );\n\t\t\t\tsetTimeout( () => { hoverElement.classList.remove( 'frm-animating' ); }, 250 );\n\t\t\t});\n\t\t});\n\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', () => {\n\t\t\t\thoverElement.classList.add( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the copy to clipboard functionality for classes.\n\t * Adds a click event listener to the copyLabel element.\n\t * Copies the class name to the clipboard and displays a success message.\n\t * @param {string} successMessage - The success message to display.\n\t */\n\tinitStyleClassCopyToClipboard( successMessage ) {\n\t\tconst copyLabel = document.querySelector( '.frm-copy-text' );\n\t\tif ( ! copyLabel ) {\n\t\t\treturn;\n\t\t}\n\n\t\tcopyLabel.addEventListener( 'click', ( event ) => {\n\t\t\tconst className = event.currentTarget.innerText;\n\t\t\tnavigator.clipboard.writeText( className ).then( () => {\n\t\t\t\tthis.success( successMessage );\n\t\t\t});\n\t\t})\n\t}\n}\n\nnew frmSettingsComponents();\n"],"names":["frmTabsNavigator","wrapper","_classCallCheck","Element","document","querySelector","flexboxSlidesGap","navs","querySelectorAll","slideTrackLine","slideTrack","slides","init","_createClass","key","value","_this","length","trackLine","initDefaultSlideTrackerWidth","forEach","nav","index","addEventListener","event","onNavClick","removeActiveClassnameFromNavs","target","classList","add","initSlideTrackUnderline","changeSlide","dataset","initialWidth","style","width","concat","remove","activeNav","filter","contains","transform","offsetLeft","clientWidth","removeActiveClassnameFromSlides","translate","parseInt","slide","_window$frmGlobal","window","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","frmAnimate","elements","type","arguments","undefined","prepareElements","fadeIn","applyStyleToElements","element","resetOpacity","once","cascadeFadeIn","_this2","delay","setTimeout","transitionDelay","_this3","opacity","callback","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","textContent","setAttribute","onClickPreventDefault","frmDom","util","URL","location","href","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","frmDependentUpdaterComponent","component","willChangeData","JSON","parse","willChange","data","propagateInputs","initPropagationList","changeEvent","Event","bubbles","error","inputNames","list","name","input","push","updateAllDependentElements","dispatchEvent","default","frmRadioComponent","radioElements","initOnRadioChange","initTrackerOnAccordionClick","accordionitems","accordionitem","closest","radioButtons","radio","onRadioChange","radioElement","checked","activeItem","moveTracker","hideExtraElements","maybeShowExtraElements","elementAttr","getAttribute","offset","offsetWidth","tracker","left","frmSliderComponent","sliderElements","sliderBulletWidth","sliderMarginRight","eventsChange","debounce","valueChangeDebouncer","triggerValueChange","initOptions","options","parentWrapper","dragging","startX","translateX","maxValue","dependentUpdater","initSlidersPosition","initDraggable","cancelable","draggableBullet","valueInput","unit","getMaxValue","initSliderWidth","fullValue","updateValue","expandSliderGroup","updateOnUnitChange","changeSliderPositionOnClick","preventDefault","stopPropagation","enableDragging","disableDragging","svgIcon","displaySliders","sliderGroupItems","getSliderGroupItems","item","toggle","_this4","toLowerCase","_this5","frmSlider","customEvent","sliderWidth","sliderRect","getBoundingClientRect","deltaX","clientX","calculateValue","initChildSlidersWidth","slidersGroup","split","query","map","join","_this6","quickSettings","openedAccordion","wp","hooks","addAction","imageBackgroundOpacitySlider","initSlidersWidth","initSliderPositionOnFieldShapeChange","_this7","fieldShapeType","slider","section","_this8","sliders","getSliderIndex","Math","round","ceil","_this9","childSliders","childIndex","option","max","innerText","_this10","NodeList","delta","min","_this11","userBaseFontSizeInput","inputValue","newValue","childSlidersGroup","unitMeasure","getUnitMeasureFromValue","inputValues","visibleValues","find","frmTabsComponent","initOnTabClick","initActiveBackgroundWidth","tab","onTabClick","__","frmSettingsComponents","success","initHover","initColorPickerDependentUpdaterComponents","initStyleClassCopyToClipboard","components","id","dependentUpdaterClass","_ref","container","settingsWrapper","hoverElement","createElement","appendChild","styleOptionsMenu","offsetTop","successMessage","copyLabel","className","currentTarget","navigator","clipboard","writeText"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"formidable-settings-components.js","mappings":"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","sources":["webpack://formidable/./node_modules/@wordpress/dom-ready/build-module/index.js","webpack://formidable/./js/src/admin/styles/dependent-updater-component.js","webpack://formidable/./js/src/components/class-tabs-navigator.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/./js/src/settings-components/components/radio-component.js","webpack://formidable/./js/src/settings-components/components/slider-component.js","webpack://formidable/./js/src/settings-components/components/tabs-component.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/settings-components/index.js"],"sourcesContent":["/**\n * @typedef {() => void} Callback\n *\n * TODO: Remove this typedef and inline `() => void` type.\n *\n * This typedef is used so that a descriptive type is provided in our\n * automatically generated documentation.\n *\n * An in-line type `() => void` would be preferable, but the generated\n * documentation is `null` in that case.\n *\n * @see https://github.com/WordPress/gutenberg/issues/18045\n */\n\n/**\n * Specify a function to execute when the DOM is fully loaded.\n *\n * @param {Callback} callback A function to execute after the DOM is ready.\n *\n * @example\n * ```js\n * import domReady from '@wordpress/dom-ready';\n *\n * domReady( function() {\n * \t//do something after DOM loads.\n * } );\n * ```\n *\n * @return {void}\n */\nexport default function domReady(callback) {\n if (typeof document === 'undefined') {\n return;\n }\n\n if (document.readyState === 'complete' || // DOMContentLoaded + Images/Styles/etc loaded, so we call directly.\n document.readyState === 'interactive' // DOMContentLoaded fires at this point, so we call directly.\n ) {\n return void callback();\n } // DOMContentLoaded has not fired yet, delay callback until then.\n\n\n document.addEventListener('DOMContentLoaded', callback);\n}\n//# sourceMappingURL=index.js.map","/**\n * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview.\n * The names of the elements that will be updated are specified using the \"will-change\" attribute.\n * It is primarily used in components from Style/Quick Settings.\n * For instance, when the \"FrmPrimaryColorStyleComponent\" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds.\n */\nexport default class frmStyleDependentUpdaterComponent {\n\n\t/**\n\t * Creates an instance of frmStyleDependentUpdaterComponent.\n\t * @param {HTMLElement} component - The component element.\n\t */\n\tconstructor( component ) {\n\t\tthis.component = component;\n\t\ttry {\n\t\t\tconst willChangeData = JSON.parse( this.component.dataset.willChange );\n\t\t\tthis.data = {\n\t\t\t\tpropagateInputs: this.initPropagationList( willChangeData ),\n\t\t\t\tchangeEvent: new Event( 'change', { bubbles: true } )\n\t\t\t};\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'Error parsing JSON data from \"will-change\" attribute.', error );\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the list of inputs to propagate changes to.\n\t * The selection is made by provided input's names list in \"will-change\" attribute.\n\t * @param {string[]} inputNames - The names of the inputs to propagate changes to.\n\t * @return {HTMLElement[]} - The list of inputs to propagate changes to.\n\t */\n\tinitPropagationList( inputNames ) {\n\t\tconst list = [];\n\t\tinputNames.forEach( ( name ) => {\n\t\t\tconst input = document.querySelector( `input[name=\"${name}\"]` );\n\t\t\tif ( null !== input ) {\n\t\t\t\tlist.push( input );\n\t\t\t}\n\t\t});\n\t\treturn list;\n\t}\n\n\t/**\n\t * Updates all dependent elements with the given value.\n\t * @param {string} value - The value to update the dependent elements with.\n\t */\n\tupdateAllDependentElements( value ) {\n\t\tthis.data.propagateInputs.forEach( ( input ) => {\n\t\t\tinput.value = value;\n\t\t});\n\t\tthis.data.propagateInputs[0].dispatchEvent( this.data.changeEvent );\n\t}\n}\n","export class frmTabsNavigator {\n\n\tconstructor( wrapper ) {\n\t\tif ( 'undefined' === typeof wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrapper = wrapper instanceof Element ? wrapper : document.querySelector( wrapper );\n\n\t\tif ( null === this.wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.flexboxSlidesGap = '16px';\n\t\tthis.navs = this.wrapper.querySelectorAll( '.frm-tabs-navs ul > li' );\n\t\tthis.slideTrackLine = this.wrapper.querySelector( '.frm-tabs-active-underline' );\n\t\tthis.slideTrack = this.wrapper.querySelector( '.frm-tabs-slide-track' );\n\t\tthis.slides = this.wrapper.querySelectorAll( '.frm-tabs-slide-track > div' );\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\tif ( null === this.wrapper || ! this.navs.length || null === this.trackLine || null === this.slideTrack || ! this.slides.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initDefaultSlideTrackerWidth();\n\t\tthis.navs.forEach( ( nav, index ) => {\n\t\t\tnav.addEventListener( 'click', event => this.onNavClick( event, index ) );\n\t\t});\n\t}\n\n\tonNavClick( event, index ) {\n\t\tthis.removeActiveClassnameFromNavs();\n\t\tevent.target.classList.add( 'frm-active' );\n\t\tthis.initSlideTrackUnderline( event.target, index );\n\t\tthis.changeSlide( index );\n\t}\n\n\tinitDefaultSlideTrackerWidth() {\n\t\tif ( ! this.slideTrackLine.dataset.initialWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.slideTrackLine.style.width = `${this.slideTrackLine.dataset.initialWidth}px`;\n\t}\n\tinitSlideTrackUnderline( nav, index ) {\n\t\tthis.slideTrackLine.classList.remove( 'frm-first', 'frm-last' );\n\t\tconst activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) ) ;\n\t\tthis.slideTrackLine.style.transform = `translateX(${activeNav.offsetLeft}px)`;\n\t\tthis.slideTrackLine.style.width = activeNav.clientWidth + 'px';\n\n\t\tif ( this.navs.length === index + 1 ) { \n\t\t\tthis.slideTrackLine.classList.add( 'frm-last' );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 === index ) {\n\t\t\tthis.slideTrackLine.classList.add( 'frm-first' );\n\t\t}\n\t}\n\n\tchangeSlide( index ) {\n\t\tthis.removeActiveClassnameFromSlides();\n\t\tconst translate = index == 0 ? '0px' : `calc( ( ${( index * 100 )}% + ${parseInt( this.flexboxSlidesGap, 10 ) * index }px ) * -1 )`;\n\t\tthis.slideTrack.style.transform = `translateX(${translate})`;\n\t\tif ( index in this.slides ) {\n\t\t\tthis.slides[ index ].classList.add( 'frm-active' );\n\t\t}\n\t}\n\n\tremoveActiveClassnameFromSlides() {\n\t\tthis.slides.forEach( slide => slide.classList.remove( 'frm-active' ) );\n\t}\n\n\tremoveActiveClassnameFromNavs() {\n\t\tthis.navs.forEach( nav => nav.classList.remove( 'frm-active' ) );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\n","export class frmAnimate {\n\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements\n\t * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d\n\t *\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true });\n\t\t});\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay - The transition delay value.\n\t *\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( index + 1 ) * delay + 's';\n\t\t\t});\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t});\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${type}\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true });\n};\n","export const { onClickPreventDefault } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = ( paramName ) => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ([ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = {[paramName]: paramValue};\n\t\twindow.history[updateMethod]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","import { show, hide } from 'core/utils';\n\n/**\n * Represents a radio component.\n * @class\n */\nexport default class frmRadioComponent {\n\n\tconstructor() {\n\t\tthis.radioElements = document.querySelectorAll( '.frm-style-component.frm-radio-component' );\n\t\tif ( 0 < this.radioElements.length ) {\n\t\t\tthis.init();\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the radio component.\n\t */\n\tinit() {\n\t\tthis.radioElements.forEach( ( element ) => {\n\t\t\tthis.initOnRadioChange( element );\n\t\t});\n\t\tthis.initTrackerOnAccordionClick();\n\t}\n\n\tinitTrackerOnAccordionClick() {\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\n\t\taccordionitems.forEach( ( accordionitem ) => {\n\t\t\taccordionitem.addEventListener( 'click', ( event ) => {\n\t\t\t\tconst wrapper = event.target.closest( '.accordion-section' );\n\t\t\t\tconst radioButtons = wrapper.querySelectorAll( '.frm-style-component.frm-radio-component input[type=\"radio\"]:checked' );\n\n\t\t\t\tradioButtons.forEach( ( radio ) => {\n\t\t\t\t\tsetTimeout( () => this.onRadioChange( radio ), 200 );\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the onRadioChange event for the given wrapper.\n\t * @param {HTMLElement} radioElement - The radio element.\n\t */\n\tinitOnRadioChange( radioElement ) {\n\t\tradioElement.querySelectorAll( 'input[type=\"radio\"]' ).forEach( ( radio ) => {\n\t\t\tif ( radio.checked ) {\n\t\t\t\tthis.onRadioChange( radio );\n\t\t\t}\n\t\t\tradio.addEventListener( 'change', ( event ) => {\n\t\t\t\tthis.onRadioChange( event.target );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Handles the onRadioChange event for the given wrapper.\n\t * @param {HTMLElement} target - The active radio button.\n\t */\n\tonRadioChange( target ) {\n\t\tconst wrapper = target.closest( '.frm-style-component.frm-radio-component' );\n\t\tconst activeItem = wrapper.querySelector( 'input[type=\"radio\"]:checked + label' );\n\n\t\tif ( null === activeItem ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.moveTracker( activeItem, wrapper );\n\t\tthis.hideExtraElements( target );\n\t\tthis.maybeShowExtraElements( target );\n\t}\n\n\t/**\n\t * Display additional elements related to the selected radio option.\n\t * @param {HTMLElement} radio - The radio button element.\n\t */\n\tmaybeShowExtraElements( radio ) {\n\t\tconst elementAttr = radio.getAttribute( 'data-frm-show-element' );\n\t\tif ( null === elementAttr ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elements = document.querySelectorAll( `div[data-frm-element=\"${elementAttr}\"]` );\n\n\t\tif ( 0 === elements.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\telements.forEach( ( element ) => {\n\t\t\tshow( element );\n\t\t\telement.classList.add( 'frm-element-is-visible' );\n\t\t});\n\t}\n\n\t/**\n\t * Hide the possible opepend extra elements.\n\t */\n\thideExtraElements() {\n\t\tconst elements = document.querySelectorAll( '.frm-element-is-visible' );\n\t\tif ( 0 === elements.length ) {\n\t\t\treturn;\n\t\t}\n\t\telements.forEach( ( element ) => {\n\t\t\telement.classList.remove( 'frm-element-is-visible' );\n\t\t\telement.classList.add( 'frm_hidden' );\n\t\t\thide( element );\n\t\t});\n\t}\n\n\t/**\n\t * Moves the tracker to the active item.\n\t * @param {HTMLElement} activeItem - The active item element.\n\t * @param {HTMLElement} wrapper - The wrapper element.\n\t */\n\tmoveTracker( activeItem, wrapper ) {\n\t\tconst offset = activeItem.offsetLeft;\n\t\tconst width = activeItem.offsetWidth;\n\t\tconst tracker = wrapper.querySelector( '.frm-radio-active-tracker' );\n\n\t\ttracker.style.left = 0;\n\t\ttracker.style.width = `${width}px`;\n\t\ttracker.style.transform = `translateX(${ offset }px)`;\n\t}\n}\n","import frmDependentUpdaterComponent from '../../admin/styles/dependent-updater-component';\n/**\n * Represents a slider component.\n * @class frmSliderComponent\n */\nexport default class frmSliderComponent {\n\n\tconstructor() {\n\t\tthis.sliderElements = document.querySelectorAll( '.frm-slider-component' );\n\t\tif ( 0 === this.sliderElements.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// The slider bullet point width in pixels. Used in value calculation on drag event.\n\t\tthis.sliderBulletWidth = 16;\n\t\tthis.sliderMarginRight = 5;\n\t\tthis.eventsChange = [];\n\n\t\tconst { debounce } = frmDom.util;\n\t\tthis.valueChangeDebouncer = debounce( ( index ) => this.triggerValueChange( index ), 25 );\n\n\t\tthis.initOptions();\n\t\tthis.init();\n\t}\n\n\t/**\n\t * Initializes the options for the slider component.\n\t */\n\tinitOptions() {\n\t\tthis.options = [];\n\t\tthis.sliderElements.forEach( ( element, index ) => {\n\t\t\tconst parentWrapper = element.classList.contains( 'frm-has-multiple-values' ) ? element.closest( '.frm-style-component' ) : element;\n\t\t\tthis.options.push({\n\t\t\t\tdragging: false,\n\t\t\t\tstartX: 0,\n\t\t\t\ttranslateX: 0,\n\t\t\t\tmaxValue: parseInt( element.dataset.maxValue, 10 ),\n\t\t\t\telement: element,\n\t\t\t\tindex: index,\n\t\t\t\tvalue: 0,\n\t\t\t\tdependentUpdater: parentWrapper.classList.contains( 'frm-style-dependent-updater-component' ) ? new frmDependentUpdaterComponent( parentWrapper ) : null\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the slider component.\n\t */\n\tinit() {\n\t\tthis.initSlidersPosition();\n\t\tthis.initDraggable();\n\t}\n\n\t/**\n\t * Initializes the draggable functionality for the slider component.\n\t */\n\tinitDraggable() {\n\t\tthis.sliderElements.forEach( ( element, index ) => {\n\t\t\tthis.eventsChange[ index ] = new Event( 'change', {\n\t\t\t\tbubbles: true,\n\t\t\t\tcancelable: true\n\t\t\t});\n\t\t\tconst draggableBullet = element.querySelector( '.frm-slider-bullet' );\n\t\t\tconst valueInput = element.querySelector( '.frm-slider-value input[type=\"text\"]' );\n\n\t\t\tvalueInput.addEventListener( 'change', ( event ) => {\n\t\t\t\tconst unit = element.querySelector( 'select' ).value;\n\n\t\t\t\tif ( this.getMaxValue( unit, index ) < parseInt( event.target.value, 10 ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis.initSliderWidth( element );\n\t\t\t\tthis.options[ index ].fullValue = this.updateValue( element, valueInput.value + unit );\n\t\t\t\tthis.triggerValueChange( index );\n\t\t\t});\n\n\t\t\tthis.expandSliderGroup( element );\n\t\t\tthis.updateOnUnitChange( element, valueInput, index );\n\t\t\tthis.changeSliderPositionOnClick( element, valueInput, index );\n\n\t\t\tdraggableBullet.addEventListener( 'mousedown', ( event ) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.enableDragging( event, index );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mousemove', ( event ) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.moveTracker( event, index );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mouseup', ( event) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.disableDragging( index, event );\n\t\t\t});\n\n\t\t\tdraggableBullet.addEventListener( 'mouseleave', ( event ) => {\n\t\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.disableDragging( index, event );\n\t\t\t});\n\t\t});\n\t}\n\n\texpandSliderGroup( element ) {\n\t\tconst svgIcon = element.querySelector( '.frmsvg' );\n\n\t\tif ( 'undefined' === typeof element.dataset.displaySliders || null === svgIcon ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst sliderGroupItems = this.getSliderGroupItems( element );\n\t\tsvgIcon.addEventListener( 'click', ( ) => {\n\t\t\tsliderGroupItems.forEach( ( item ) => {\n\t\t\t\titem.classList.toggle( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\tupdateOnUnitChange( element, valueInput, index ) {\n\t\telement.querySelector( 'select' ).addEventListener( 'change', ( event ) => {\n\t\t\tconst unit = event.target.value.toLowerCase();\n\n\t\t\tif ( '' === unit ) {\n\t\t\t\telement.classList.add( 'frm-disabled', 'frm-empty' );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( 'auto' === unit ) {\n\t\t\t\telement.classList.add( 'frm-disabled' );\n\t\t\t\tthis.updateValue( element, 'auto' );\n\t\t\t\tthis.triggerValueChange( index );\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\telement.classList.remove( 'frm-disabled', 'frm-empty' );\n\t\t\tthis.options[ index ].fullValue = valueInput.value + unit;\n\t\t\tthis.updateValue( element, this.options[ index ].fullValue );\n\t\t\tthis.triggerValueChange( index );\n\t\t});\n\t}\n\n\tchangeSliderPositionOnClick( element, valueInput, index ) {\n\t\tconst frmSlider = element.querySelector( '.frm-slider' );\n\t\tconst customEvent = new Event( 'change', {\n\t\t\t'bubbles': true,\n\t\t\t'cancelable': true\n\t\t});\n\n\t\tfrmSlider.addEventListener( 'click', ( event ) => {\n\t\t\tif ( element.classList.contains( 'frm-disabled' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\n\t\t\tif ( ! event.target.classList.contains( 'frm-slider' ) && ! event.target.classList.contains( 'frm-slider-active-track' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst sliderWidth = frmSlider.offsetWidth - this.sliderBulletWidth;\n\t\t\tconst sliderRect = frmSlider.getBoundingClientRect();\n\t\t\tconst deltaX = event.clientX - sliderRect.left - this.sliderBulletWidth;\n\t\t\tconst unit = element.querySelector( 'select' ).value;\n\t\t\tconst value = this.calculateValue( sliderWidth, deltaX, this.getMaxValue( unit, index ) );\n\n\t\t\tif ( value < 0 ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.options[ index ].fullValue = this.updateValue( element, value + unit );\n\t\t\tthis.initChildSlidersWidth( element, deltaX, index, value + unit );\n\n\t\t\tvalueInput.value = value;\n\t\t\tvalueInput.dispatchEvent( customEvent );\n\n\t\t});\n\t}\n\n\t/**\n\t * Retrieves an array of slider group items based on the provided element.\n\t *\n\t * @param {HTMLElement} element - The element to retrieve slider group items from.\n\t * @return {NodeList} - An array-like object containing the slider group items.\n\t */\n\tgetSliderGroupItems( element ) {\n\t\tif ( 'undefined' === typeof element.dataset.displaySliders ) {\n\t\t\treturn [];\n\t\t}\n\t\tconst slidersGroup = element.dataset.displaySliders.split( ',' );\n\t\tconst query = slidersGroup.map( ( item ) => {\n\t\t\treturn `.frm-slider-component[data-type=\"${item}\"]`;\n\t\t}).join( ', ' );\n\n\t\treturn element.closest( '.frm-style-component' ).querySelectorAll( query )\n\t}\n\n\t/**\n\t * Initializes the position of sliders when a accordion section is opened.\n\t */\n\tinitSlidersPosition() {\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\tconst quickSettings = document.querySelector( '.frm-quick-settings' );\n\t\tconst openedAccordion = document.querySelector( '.accordion-section.open' );\n\n\t\t// Detect if upload background image upload has triggered and initialize the \"Image Opacity\" slider width.\n\t\twp.hooks.addAction( 'frm_pro_on_bg_image_upload', 'formidable', ( event ) => {\n\t\t\tconst imageBackgroundOpacitySlider = event.closest( '.accordion-section-content' ).querySelector( '#frm-bg-image-opacity-slider' );\n\t\t\tthis.initSlidersWidth( imageBackgroundOpacitySlider );\n\t\t});\n\n\t\t// init the sliders width from \"Quick Settings\" page.\n\t\tif ( null !== quickSettings ) {\n\t\t\tthis.initSlidersWidth( quickSettings );\n\t\t}\n\n\t\t// Init the sliders width in opened accordion section from \"Advanced Settings\" page.\n\t\tif ( null !== openedAccordion ) {\n\t\t\tthis.initSlidersWidth( openedAccordion );\n\t\t}\n\n\t\t// init the sliders width everytime when an accordion section is opened from \"Advanced Settings\" page.\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', ( event ) => {\n\t\t\t\tthis.initSlidersWidth( event.target.closest( '.accordion-section' ) );\n\t\t\t});\n\t\t});\n\n\t\tthis.initSliderPositionOnFieldShapeChange();\n\t}\n\n\t/**\n\t * Initializes the width of \"Corner Radius\" slider that is dynamically is displayed on \"Field Shape\" option change from \"Quick Settings\".\n\t *\n\t * @return {void}\n\t */\n\tinitSliderPositionOnFieldShapeChange() {\n\t\tconst fieldShapeType = document.querySelector( '.frm-style-component.frm-field-shape' );\n\n\t\tif ( null === fieldShapeType ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst radioButtons = fieldShapeType.querySelectorAll( 'input[type=\"radio\"]' );\n\t\tradioButtons.forEach( ( radio ) => {\n\t\t\tradio.addEventListener( 'change', ( event ) => {\n\t\t\t\tif ( event.target.checked && 'rounded-corner' === event.target.value ) {\n\t\t\t\t\tconst slider = document.querySelector( 'div[data-frm-element=\"field-shape-corner-radius\"] .frm-slider-component' );\n\t\t\t\t\tthis.initSliderWidth( slider );\n\t\t\t\t}\n\t\t\t})\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the width of sliders within a given section.\n\t *\n\t * @param {HTMLElement} section - The section containing the sliders.\n\t * @return {void}\n\t */\n\tinitSlidersWidth( section ) {\n\t\tconst sliders = section.querySelectorAll( '.frm-slider-component' );\n\t\tsliders.forEach( ( slider ) => {\n\t\t\tsetTimeout( () => {\n\t\t\t\tthis.initSliderWidth( slider );\n\t\t\t}, 100 );\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the width of a slider.\n\t *\n\t * @param {HTMLElement} slider - The slider element.\n\t * @return {void}\n\t */\n\tinitSliderWidth( slider ) {\n\t\tif ( slider.classList.contains( 'frm-disabled' ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst index = this.getSliderIndex( slider );\n\t\tconst sliderWidth = slider.querySelector( '.frm-slider' ).offsetWidth - this.sliderBulletWidth;\n\t\tconst value = parseInt( slider.querySelector( '.frm-slider-value input[type=\"text\"]' ).value, 10 );\n\t\tconst unit = slider.querySelector( 'select' ).value;\n\t\tconst deltaX = '%' === unit ? Math.round( sliderWidth * value / 100 ) : Math.ceil( ( value / this.options[ index ].maxValue ) * sliderWidth );\n\n\t\tslider.querySelector( '.frm-slider-active-track' ).style.width = `${deltaX}px`;\n\t\tthis.options[ index ].translateX = deltaX;\n\t\tthis.options[ index ].value = value + unit;\n\t}\n\n\t/**\n\t * Initializes the width of child sliders.\n\t *\n\t * @param {HTMLElement} slider - The parent slider element.\n\t * @param {number} width - The width to set for the child sliders.\n\t * @param {number} index - The starting index for the child sliders.\n\t * @param {number} value - The value to set for the child sliders.\n\t */\n\tinitChildSlidersWidth( slider, width, index, value ) {\n\t\tif ( ! slider.classList.contains( 'frm-has-independent-fields' ) && ! slider.classList.contains( 'frm-has-multiple-values' ) ) {\n\t\t\treturn;\n\t\t}\n\t\tconst childSliders = slider.classList.contains( 'frm-has-independent-fields' ) ? slider.querySelectorAll( '.frm-independent-slider-field' ) : this.getSliderGroupItems( slider );\n\n\t\tchildSliders.forEach( ( item, childIndex ) => {\n\t\t\titem.querySelector( '.frm-slider-active-track' ).style.width = `${width}px`;\n\t\t\tthis.options[ index + childIndex + 1 ].translateX = width;\n\t\t\tthis.options[ index + childIndex + 1 ].value = value;\n\t\t});\n\t}\n\n\t/**\n\t * Returns the index of the specified slider element.\n\t *\n\t * @param {HTMLElement} slider - The slider element.\n\t * @return {number} The index of the slider element.\n\t */\n\tgetSliderIndex( slider ) {\n\t\treturn this.options.filter( ( option ) => {\n\t\t\treturn option.element === slider;\n\t\t})[0].index;\n\t};\n\n\t/**\n\t * Handles the movement of the slider tracker.\n\t *\n\t * @param {Event} event - The event object representing the mouse movement.\n\t * @param {number} index - The index of the slider element.\n\t * @return {void}\n\t */\n\tmoveTracker( event, index ) {\n\t\tif ( ! this.options[ index ].dragging ) {\n\t\t\treturn;\n\t\t}\n\t\tlet deltaX = event.clientX - this.options[ index ].startX;\n\t\tconst element = this.sliderElements[ index ];\n\t\tconst sliderWidth = element.querySelector( '.frm-slider' ).offsetWidth;\n\n\t\t// Ensure deltaX does not go below 0\n\t\tdeltaX = Math.max( deltaX, 0 );\n\n\t\tif ( deltaX + this.sliderBulletWidth / 2 + this.sliderMarginRight >= sliderWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tconst unit = element.querySelector( 'select' ).value;\n\t\tconst value = this.calculateValue( sliderWidth, deltaX, this.getMaxValue( unit, index ) );\n\n\t\telement.querySelector( '.frm-slider-value input[type=\"text\"]' ).value = value;\n\t\telement.querySelector( '.frm-slider-bullet .frm-slider-value-label' ).innerText = value;\n\t\telement.querySelector( '.frm-slider-active-track' ).style.width = `${deltaX}px`;\n\t\tthis.initChildSlidersWidth( element, deltaX, index, value + unit );\n\n\t\tthis.options[ index ].translateX = deltaX;\n\t\tthis.options[ index ].value = value + unit;\n\t\tthis.options[ index ].fullValue = this.updateValue( element, this.options[ index ].value );\n\t\tthis.valueChangeDebouncer( index );\n\t}\n\n\t/**\n\t * Get the maximum value based on the unit and index.\n\t *\n\t * @param {string} unit - The unit of measurement.\n\t * @param {number} index - The index of the option.\n\t * @return {number} The maximum value.\n\t */\n\tgetMaxValue( unit, index ) {\n\t\treturn '%' === unit ? 100 : this.options[ index ].maxValue;\n\t}\n\n\t/**\n\t * Enables dragging for the slider component.\n\t *\n\t * @param {Event} event - The event object.\n\t * @param {number} index - The index of the option being dragged.\n\t */\n\tenableDragging( event, index ) {\n\t\tevent.target.classList.add( 'frm-dragging' );\n\t\tthis.options[ index ].dragging = true;\n\t\tthis.options[ index ].startX = event.clientX - this.options[ index ].translateX;\n\t}\n\n\t/**\n\t * Disables dragging for a specific index.\n\t *\n\t * @param {number} index - The index of the option to disable dragging for.\n\t * @param {Event} event - The event object triggered by the dragging action.\n\t */\n\tdisableDragging( index, event ) {\n\t\tif ( false === this.options[ index ].dragging ) {\n\t\t\treturn;\n\t\t}\n\t\tevent.target.classList.remove( 'frm-dragging' );\n\t\tthis.options[ index ].dragging = false;\n\t\tthis.triggerValueChange( index );\n\t}\n\n\t/**\n\t * Triggers a value change for the specified index.\n\t *\n\t * @param {number} index - The index of the value to be changed.\n\t */\n\ttriggerValueChange( index ) {\n\t\tif ( null !== this.options[ index ].dependentUpdater ) {\n\t\t\tthis.options[ index ].dependentUpdater.updateAllDependentElements( this.options[ index ].fullValue );\n\t\t\treturn;\n\t\t}\n\n\t\tconst input = this.sliderElements[ index ].classList.contains( 'frm-has-multiple-values' ) ? this.sliderElements[ index ].closest('.frm-style-component').querySelector( 'input[type=\"hidden\"]' ) : this.sliderElements[ index ].querySelectorAll( '.frm-slider-value input[type=\"hidden\"]' );\n\t\tif ( input instanceof NodeList ) {\n\t\t\tinput.forEach( ( item ) => {\n\t\t\t\titem.dispatchEvent( this.eventsChange[ index ] );\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tinput.dispatchEvent( this.eventsChange[ index ] );\n\t}\n\n\t/**\n\t * Calculates the value based on the width, deltaX, and maxValue.\n\t *\n\t * @param {number} width - The width of the slider.\n\t * @param {number} deltaX - The change in x-coordinate.\n\t * @param {number} maxValue - The maximum value.\n\t * @return {number} - The calculated value.\n\t */\n\tcalculateValue( width, deltaX, maxValue ) {\n\n\t\t// Indicates the additional value generated by the slider's drag progress (up to 100%) and the width of the slider bullet.\n\t\t// Generates a more accurate value for the slider's start (0) and end (maximum value) positions, taking into account the slider's position and bullet width.\n\t\tconst delta = Math.ceil( this.sliderBulletWidth * ( deltaX / width ) );\n\n\t\tconst value = Math.ceil( ( ( deltaX + delta ) / width ) * maxValue );\n\n\t\treturn Math.min( value, maxValue )\n\t}\n\n\t/**\n\t * Updates the value of a slider component.\n\t *\n\t * @param {HTMLElement} element - The slider component element.\n\t * @param {string} value - The new value to be set.\n\t * @return {string} - The updated value.\n\t */\n\tupdateValue( element, value ) {\n\t\t// When the slider component is used for \"Base Font Size\", we need to update a hidden input field when change happens to indicate that the \"Base Font Size\" has been adjusted.\n\t\t// Used to avoid conflicts with other possible font sizes adjustemnts in \"Advanced Settings\" when moving from \"Quick Settings\" when \"Base Font Size\" is not changed.\n\t\tif ( element.classList.contains( 'frm-base-font-size' ) ) {\n\t\t\tconst userBaseFontSizeInput = document.querySelector( 'input[name=\"frm_style_setting[post_content][use_base_font_size]\"]' );\n\t\t\tif ( null !== userBaseFontSizeInput ) {\n\t\t\t\tuserBaseFontSizeInput.value = 'true';\n\t\t\t}\n\t\t}\n\t\tif ( element.classList.contains( 'frm-has-multiple-values' ) ) {\n\t\t\tconst input = element.closest( '.frm-style-component' ).querySelector( 'input[type=\"hidden\"]' );\n\t\t\tconst inputValue = input.value.split( ' ' );\n\t\t\tconst type = element.dataset.type;\n\n\t\t\tif ( ! inputValue[2] ) {\n\t\t\t\tinputValue[2] = '0px';\n\t\t\t}\n\n\t\t\tif ( ! inputValue[3] ) {\n\t\t\t\tinputValue[3] = '0px';\n\t\t\t}\n\n\t\t\tswitch ( type ) {\n\t\t\t\tcase 'vertical':\n\t\t\t\t\tinputValue[0] = value;\n\t\t\t\t\tinputValue[2] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'horizontal':\n\t\t\t\t\tinputValue[1] = value;\n\t\t\t\t\tinputValue[3] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'top':\n\t\t\t\t\tinputValue[0] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'bottom':\n\t\t\t\t\tinputValue[2] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'left':\n\t\t\t\t\tinputValue[3] = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'right':\n\t\t\t\t\tinputValue[1] = value;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst newValue = inputValue.join( ' ' );\n\t\t\tinput.value = newValue;\n\n\t\t\tconst childSlidersGroup = this.getSliderGroupItems( element );\n\t\t\tchildSlidersGroup.forEach( ( slider ) => {\n\t\t\t\tconst unitMeasure = this.getUnitMeasureFromValue( value );\n\t\t\t\tslider.querySelector( '.frm-slider-value input[type=\"text\"]' ).value = parseInt( value, 10 );\n\t\t\t\tslider.querySelector( 'select' ).value = unitMeasure;\n\t\t\t});\n\n\t\t\treturn newValue;\n\t\t}\n\n\t\tif ( element.classList.contains( 'frm-has-independent-fields' ) ) {\n\t\t\tconst inputValues = element.querySelectorAll( '.frm-slider-value input[type=\"hidden\"]' );\n\t\t\tconst visibleValues = element.querySelectorAll( '.frm-slider-value input[type=\"text\"]' );\n\t\t\tinputValues.forEach( ( input, index ) => {\n\t\t\t\tinput.value = value;\n\t\t\t\tvisibleValues[ index + 1 ].value = parseInt( value, 10 );\n\t\t\t});\n\n\t\t\treturn value;\n\t\t}\n\n\t\telement.querySelector( '.frm-slider-value input[type=\"hidden\"]' ).value = value;\n\t\treturn value;\n\t}\n\n\t/**\n\t * Returns the unit of measurement used in the given value.\n\t *\n\t * @param {string} value - The value to check for the unit of measurement.\n\t * @return {string} The unit of measurement ('%', 'px', 'em') found in the value, or an empty string if none is found.\n\t */\n\tgetUnitMeasureFromValue( value ) {\n\t\treturn [ '%', 'px', 'em' ].find( unit => value.includes( unit ) ) || '';\n\t}\n}\n","import { frmTabsNavigator } from '../../components/class-tabs-navigator';\n/**\n * Represents a Tabs Component.\n * @class\n */\nexport default class frmTabsComponent {\n\n\tconstructor() {\n\t\tthis.elements = document.querySelectorAll( '.frm-style-tabs-wrapper' );\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.init();\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the Tabs Component.\n\t */\n\tinit() {\n\t\tthis.elements.forEach( ( element ) => {\n\t\t\tnew frmTabsNavigator( element );\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the component on tab click.\n\t * @param {Element} wrapper - The wrapper element.\n\t */\n\tinitOnTabClick( wrapper ) {\n\t\tthis.initActiveBackgroundWidth( wrapper );\n\t\twrapper.querySelectorAll( '.frm-tab-item' ).forEach( ( tab ) => {\n\t\t\ttab.addEventListener( 'click', ( event ) => {\n\t\t\t\tthis.onTabClick( event.target.closest( '.frm-tabs-wrapper' ) );\n\t\t\t});\n\t\t});\n\t}\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * WordPress dependencies\n */\nimport domReady from '@wordpress/dom-ready';\n\n/**\n * Internal dependencies\n */\nimport frmRadioComponent from './components/radio-component.js';\nimport frmSliderComponent from './components/slider-component.js';\nimport frmTabsComponent from './components/tabs-component.js';\n\ndomReady( () => {\n\tnew frmRadioComponent();\n\tnew frmSliderComponent();\n\tnew frmTabsComponent();\n} );\n\n"],"names":["frmStyleDependentUpdaterComponent","component","_classCallCheck","willChangeData","JSON","parse","dataset","willChange","data","propagateInputs","initPropagationList","changeEvent","Event","bubbles","error","console","_createClass","key","value","inputNames","list","forEach","name","input","document","querySelector","concat","push","updateAllDependentElements","dispatchEvent","default","frmTabsNavigator","wrapper","Element","flexboxSlidesGap","navs","querySelectorAll","slideTrackLine","slideTrack","slides","init","_this","length","trackLine","initDefaultSlideTrackerWidth","nav","index","addEventListener","event","onNavClick","removeActiveClassnameFromNavs","target","classList","add","initSlideTrackUnderline","changeSlide","initialWidth","style","width","remove","activeNav","filter","contains","transform","offsetLeft","clientWidth","removeActiveClassnameFromSlides","translate","parseInt","slide","_window$frmGlobal","window","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","frmAnimate","elements","type","arguments","undefined","prepareElements","fadeIn","applyStyleToElements","element","resetOpacity","once","cascadeFadeIn","_this2","delay","setTimeout","transitionDelay","_this3","opacity","callback","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","warn","span","textContent","setAttribute","onClickPreventDefault","frmDom","util","URL","location","href","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","frmRadioComponent","radioElements","initOnRadioChange","initTrackerOnAccordionClick","accordionitems","accordionitem","closest","radioButtons","radio","onRadioChange","radioElement","checked","activeItem","moveTracker","hideExtraElements","maybeShowExtraElements","elementAttr","getAttribute","offset","offsetWidth","tracker","left","frmDependentUpdaterComponent","frmSliderComponent","sliderElements","sliderBulletWidth","sliderMarginRight","eventsChange","debounce","valueChangeDebouncer","triggerValueChange","initOptions","options","parentWrapper","dragging","startX","translateX","maxValue","dependentUpdater","initSlidersPosition","initDraggable","cancelable","draggableBullet","valueInput","unit","getMaxValue","initSliderWidth","fullValue","updateValue","expandSliderGroup","updateOnUnitChange","changeSliderPositionOnClick","preventDefault","stopPropagation","enableDragging","disableDragging","svgIcon","displaySliders","sliderGroupItems","getSliderGroupItems","item","toggle","_this4","toLowerCase","_this5","frmSlider","customEvent","sliderWidth","sliderRect","getBoundingClientRect","deltaX","clientX","calculateValue","initChildSlidersWidth","slidersGroup","split","query","map","join","_this6","quickSettings","openedAccordion","wp","hooks","addAction","imageBackgroundOpacitySlider","initSlidersWidth","initSliderPositionOnFieldShapeChange","_this7","fieldShapeType","slider","section","_this8","sliders","getSliderIndex","Math","round","ceil","_this9","childSliders","childIndex","option","max","innerText","_this10","NodeList","delta","min","_this11","userBaseFontSizeInput","inputValue","newValue","childSlidersGroup","unitMeasure","getUnitMeasureFromValue","inputValues","visibleValues","find","frmTabsComponent","initOnTabClick","initActiveBackgroundWidth","tab","onTabClick","domReady"],"sourceRoot":""} \ No newline at end of file diff --git a/js/formidable_styles.js b/js/formidable_styles.js new file mode 100644 index 0000000000..617482a55e --- /dev/null +++ b/js/formidable_styles.js @@ -0,0 +1 @@ +!function(){var t={616:function(t){t.exports=function(t,e){var n,r,i=0;function o(){var o,a,s=n,c=arguments.length;t:for(;s;){if(s.args.length===arguments.length){for(a=0;a=0),s.type){case"b":n=parseInt(n,10).toString(2);break;case"c":n=String.fromCharCode(parseInt(n,10));break;case"d":case"i":n=parseInt(n,10);break;case"j":n=JSON.stringify(n,null,s.width?parseInt(s.width):0);break;case"e":n=s.precision?parseFloat(n).toExponential(s.precision):parseFloat(n).toExponential();break;case"f":n=s.precision?parseFloat(n).toFixed(s.precision):parseFloat(n);break;case"g":n=s.precision?String(Number(n.toPrecision(s.precision))):parseFloat(n);break;case"o":n=(parseInt(n,10)>>>0).toString(8);break;case"s":n=String(n),n=s.precision?n.substring(0,s.precision):n;break;case"t":n=String(!!n),n=s.precision?n.substring(0,s.precision):n;break;case"T":n=Object.prototype.toString.call(n).slice(8,-1).toLowerCase(),n=s.precision?n.substring(0,s.precision):n;break;case"u":n=parseInt(n,10)>>>0;break;case"v":n=n.valueOf(),n=s.precision?n.substring(0,s.precision):n;break;case"x":n=(parseInt(n,10)>>>0).toString(16);break;case"X":n=(parseInt(n,10)>>>0).toString(16).toUpperCase()}i.json.test(s.type)?v+=n:(!i.number.test(s.type)||f&&!s.sign?p="":(p=f?"+":"-",n=n.toString().replace(i.sign,"")),u=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",l=s.width-(p+n).length,c=s.width&&l>0?u.repeat(l):"",v+=s.align?p+n+c:"0"===u?p+c+n:c+p+n)}return v}(function(t){if(s[t])return s[t];for(var e,n=t,r=[],o=0;n;){if(null!==(e=i.text.exec(n)))r.push(e[0]);else if(null!==(e=i.modulo.exec(n)))r.push("%");else{if(null===(e=i.placeholder.exec(n)))throw new SyntaxError("[sprintf] unexpected placeholder");if(e[2]){o|=1;var a=[],c=e[2],u=[];if(null===(u=i.key.exec(c)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(a.push(u[1]);""!==(c=c.substring(u[0].length));)if(null!==(u=i.key_access.exec(c)))a.push(u[1]);else{if(null===(u=i.index_access.exec(c)))throw new SyntaxError("[sprintf] failed to parse named argument key");a.push(u[1])}e[2]=a}else o|=2;if(3===o)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");r.push({placeholder:e[0],param_no:e[1],keys:e[2],sign:e[3],pad_char:e[4],align:e[5],width:e[6],precision:e[7],type:e[8]})}n=n.substring(e[0].length)}return s[t]=r}(t),arguments)}function a(t,e){return o.apply(null,[t].concat(e||[]))}var s=Object.create(null);"undefined"!=typeof window&&(window.sprintf=o,window.vsprintf=a,void 0===(r=function(){return{sprintf:o,vsprintf:a}}.call(e,n,e,t))||(t.exports=r))}()}},e={};function n(r){var i=e[r];if(void 0!==i)return i.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,n),o.exports}n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,{a:e}),e},n.d=function(t,e){for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},function(){"use strict";var t,e,r,i,o=n(616),a=n.n(o);function s(t){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s(t)}function c(t){var e=function(t){if("object"!=s(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var n=e.call(t,"string");if("object"!=s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==s(e)?e:e+""}n(604),a()(console.error),t={"(":9,"!":8,"*":7,"/":7,"%":7,"+":6,"-":6,"<":5,"<=":5,">":5,">=":5,"==":4,"!=":4,"&&":3,"||":2,"?":1,"?:":1},e=["(","?"],r={")":["("],":":["?","?:"]},i=/<=|>=|==|!=|&&|\|\||\?:|\(|!|\*|\/|%|\+|-|<|>|\?|\)|:/;var u={"!":function(t){return!t},"*":function(t,e){return t*e},"/":function(t,e){return t/e},"%":function(t,e){return t%e},"+":function(t,e){return t+e},"-":function(t,e){return t-e},"<":function(t,e){return t":function(t,e){return t>e},">=":function(t,e){return t>=e},"==":function(t,e){return t===e},"!=":function(t,e){return t!==e},"&&":function(t,e){return t&&e},"||":function(t,e){return t||e},"?:":function(t,e,n){if(t)throw e;return n}};var l={contextDelimiter:"",onMissingKey:null};function f(t,e){var n;for(n in this.data=t,this.pluralForms={},this.options={},l)this.options[n]=void 0!==e&&n in e?e[n]:l[n]}function p(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function d(t){for(var e=1;e=0||t[c]3&&void 0!==arguments[3]?arguments[3]:10,a=t[e];if(m(n)&&y(r))if("function"==typeof i)if("number"==typeof o){var s={callback:i,priority:o,namespace:r};if(a[n]){var c,u=a[n].handlers;for(c=u.length;c>0&&!(o>=u[c-1].priority);c--);c===u.length?u[c]=s:u.splice(c,0,s),a.__current.forEach((function(t){t.name===n&&t.currentIndex>=c&&t.currentIndex++}))}else a[n]={handlers:[s],runs:0};"hookAdded"!==n&&t.doAction("hookAdded",n,r,i,o)}else console.error("If specified, the hook priority must be a number.");else console.error("The hook callback must be a function.")}},g=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return function(r,i){var o=t[e];if(m(r)&&(n||y(i))){if(!o[r])return 0;var a=0;if(n)a=o[r].handlers.length,o[r]={runs:o[r].runs,handlers:[]};else for(var s=o[r].handlers,c=function(t){s[t].namespace===i&&(s.splice(t,1),a++,o.__current.forEach((function(e){e.name===r&&e.currentIndex>=t&&e.currentIndex--})))},u=s.length-1;u>=0;u--)c(u);return"hookRemoved"!==r&&t.doAction("hookRemoved",r,i),a}}},_=function(t,e){return function(n,r){var i=t[e];return void 0!==r?n in i&&i[n].handlers.some((function(t){return t.namespace===r})):n in i}},x=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return function(r){var i=t[e];i[r]||(i[r]={handlers:[],runs:0}),i[r].runs++;for(var o=i[r].handlers,a=arguments.length,s=new Array(a>1?a-1:0),c=1;c1&&void 0!==arguments[1]?arguments[1]:"default";r.data[e]=d(d(d({},h),r.data[e]),t),r.data[e][""]=d(d({},h[""]),r.data[e][""])},s=function(t,e){a(t,e),o()},c=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default",e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0;return r.data[t]||a(void 0,t),r.dcnpgettext(t,e,n,i,o)},u=function(){return arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default"},l=function(t,e,r){var i=c(r,e,t);return n?(i=n.applyFilters("i18n.gettext_with_context",i,t,e,r),n.applyFilters("i18n.gettext_with_context_"+u(r),i,t,e,r)):i};if(n){var p=function(t){v.test(t)&&o()};n.addAction("hookAdded","core/i18n",p),n.addAction("hookRemoved","core/i18n",p)}return{getLocaleData:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default";return r.data[t]},setLocaleData:s,resetLocaleData:function(t,e){r.data={},r.pluralForms={},s(t,e)},subscribe:function(t){return i.add(t),function(){return i.delete(t)}},__:function(t,e){var r=c(e,void 0,t);return n?(r=n.applyFilters("i18n.gettext",r,t,e),n.applyFilters("i18n.gettext_"+u(e),r,t,e)):r},_x:l,_n:function(t,e,r,i){var o=c(i,void 0,t,e,r);return n?(o=n.applyFilters("i18n.ngettext",o,t,e,r,i),n.applyFilters("i18n.ngettext_"+u(i),o,t,e,r,i)):o},_nx:function(t,e,r,i,o){var a=c(o,i,t,e,r);return n?(a=n.applyFilters("i18n.ngettext_with_context",a,t,e,r,i,o),n.applyFilters("i18n.ngettext_with_context_"+u(o),a,t,e,r,i,o)):a},isRTL:function(){return"rtl"===l("ltr","text direction")},hasTranslation:function(t,e,i){var o,a,s=e?e+""+t:t,c=!(null===(o=r.data)||void 0===o||null===(a=o[null!=i?i:"default"])||void 0===a||!a[s]);return n&&(c=n.applyFilters("i18n.has_translation",c,t,e,i),c=n.applyFilters("i18n.has_translation_"+u(i),c,t,e,i)),c}}}(0,0,A)),j=(F.getLocaleData.bind(F),F.setLocaleData.bind(F),F.resetLocaleData.bind(F),F.subscribe.bind(F),F.__.bind(F));function E(t){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},E(t)}function O(t,e){for(var n=0;n ul").querySelectorAll(":scope > li").forEach((function(t){t.querySelector("h3").addEventListener("mouseover",(function(t){e.style.transform="translateY(".concat(t.target.closest("li").offsetTop,"px)"),e.classList.add("frm-animating"),e.classList.remove("frm_hidden"),setTimeout((function(){e.classList.remove("frm-animating")}),250)}))})),document.querySelectorAll("#frm_style_sidebar .accordion-section h3").forEach((function(t){t.addEventListener("click",(function(){e.classList.add("frm_hidden")}))}))}}},{key:"initStyleClassCopyToClipboard",value:function(t){var e=this;document.querySelector(".frm-copy-text").addEventListener("click",(function(n){var r=n.currentTarget.innerText;navigator.clipboard.writeText(r).then((function(){e.success(t)}))}))}}])&&I(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}())}()}(); \ No newline at end of file diff --git a/js/formidable_styles.js.map b/js/formidable_styles.js.map new file mode 100644 index 0000000000..eb17e4d178 --- /dev/null +++ b/js/formidable_styles.js.map @@ -0,0 +1 @@ +{"version":3,"file":"formidable_styles.js","mappings":";;;;;;;;;;;;;;;;AAAsC;AACE;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,aAAa,oBAAoB,MAAM;AACnD;AACe;AACf,aAAa,2DAAO;;AAEpB;AACA,SAAS,4DAAQ;AACjB;AACA;;;;;;;;;;;;;;;;AC5BA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA,EAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB;AACA,YAAY,GAAG;AACf;AACe;AACf;AACA;;AAEA,cAAc,oBAAoB;AAClC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;;AC7GsC;;AAEtC;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf,gBAAgB,2DAAO;;AAEvB;AACA,sBAAsB,OAAO;AAC7B;AACA;;;;;;;;;;;;;;;;ACjBA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;AC3HA;AACA;AACA;AACuD;AACF;AACrD;AACA;AACA;AACA;AACA;AACA,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC;;AAEA;AACA;AACA;AACA,YAAY,sBAAsB;AAClC,YAAY,sBAAsB;AAClC;AACA,YAAY,SAAS;AACrB;;AAEA;AACA;AACA;AACA;;AAEA,SAAS,gEAAgB;AACzB;AACA;;AAEA,SAAS,iEAAiB;AAC1B;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,QAAQ;;AAEzB;;AAEA,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA,kBAAkB;AAClB;;;AAGA;AACA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,+DAAe,aAAa,EAAC;AAC7B;;;;;;;;;;;;ACtGA;AACA;AACA;AACA;AACA;AACA,YAAY,sBA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CA;AACA;AAC4B;AAC5B;AACA,aAAa,oBAAoB;AACjC;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;;AAEA;AACA;AACA,gBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,iCAAiC;AAC9C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,YAAY;;AAE1B,cAAc,YAAY;;AAE1B;AACA,aAAa,sDAAsD;AACnE;AACA;AACA;;AAEA;AACA,aAAa,6BAA6B;AAC1C;AACA;;AAEA;AACA,aAAa,2CAA2C;AACxD;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,4DAA4D;AACzE;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,6EAA6E;AAC1F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8FAA8F;AAC3G;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,eAAe;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,gEAAgE;AAC7E;AACA;AACA;;AAEA,cAAc,kCAAkC;;AAEhD;AACA;AACA;AACA;AACA,cAAc,eAAe;AAC7B,cAAc,eAAe;AAC7B;AACA,cAAc,iBAAiB;AAC/B;AACA,cAAc,WAAW;AACzB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB;AACA,cAAc,KAAK;AACnB;AACA,cAAc,OAAO;AACrB,cAAc,gBAAgB;AAC9B;;AAEA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB,YAAY,4BAA4B;AACxC;;AAEO;AACP;AACA;AACA;AACA,YAAY;AACZ;AACA,mBAAmB,8CAAM,GAAG;AAC5B;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,aAAa,mBAAmB;AAChC,cAAc,qBAAqB;AACn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;AACA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;AACA,WAAW,eAAe;AAC1B,WAAW,eAAe;AAC1B;AACA,YAAY,4BAA4B;AACxC;AACA;AACA;;AAEA,YAAY,4BAA4B;AACxC;;AAEA,YAAY,4BAA4B;AACxC;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,eAAe,SAAS;AACxB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA,2BAA2B,eAAe;AAC1C,qBAAqB,iBAAiB;AACtC,cAAc,iBAAiB;AAC/B,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,KAA+B,GAAG,EAMtC;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;ACtKA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA,uBAAuB;AACvB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ,IAA8B;AACtC,QAAQ,eAAkB;AAC1B,QAAQ,gBAAmB;AAC3B;AACA;AACA;AACA;;AAEA,YAAY,IAA6C;AACzD,YAAY,mCAAO;AACnB;AACA;AACA;AACA;AACA,aAAa;AAAA,kGAAC;AACd;AACA;AACA;AACA,CAAC,IAAI;;;;;;;;;;;;;;;;;ACtO0C;;AAE/C;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,gGAAgG;AAC9G;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,qCAAqC;AACnD;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,gBAAgB;AACrD;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA,qBAAqB;;AAErB,cAAc,kBAAkB;AAChC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B,WAAW,kBAAkB;AAC7B;AACe;AACf;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,QAAQ,gEAAW;AACnB;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB;AACA,WAAW,aAAa;AACxB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACpNA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;;;;;;;;;;;;;;;;;ACJqD;AACrD;AACA,+BAA+B,gEAAgB;AAC/C;;;;;;;;;;;;;;;;ACHA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACFuD;AACJ;AACs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","sources":["webpack://formidable/./node_modules/@tannin/compile/index.js","webpack://formidable/./node_modules/@tannin/evaluate/index.js","webpack://formidable/./node_modules/@tannin/plural-forms/index.js","webpack://formidable/./node_modules/@tannin/postfix/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createAddHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createCurrentHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDidHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDoingHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHasHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHooks.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRemoveHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRunHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateHookName.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateNamespace.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/create-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/default-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/index.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/sprintf.js","webpack://formidable/./js/src/admin/styles/dependent-updater-component.js","webpack://formidable/./node_modules/memize/index.js","webpack://formidable/./node_modules/sprintf-js/src/sprintf.js","webpack://formidable/./node_modules/tannin/index.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/compat get default export","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/admin/styles.js"],"sourcesContent":["import postfix from '@tannin/postfix';\nimport evaluate from '@tannin/evaluate';\n\n/**\n * Given a C expression, returns a function which can be called to evaluate its\n * result.\n *\n * @example\n *\n * ```js\n * import compile from '@tannin/compile';\n *\n * const evaluate = compile( 'n > 1' );\n *\n * evaluate( { n: 2 } );\n * // ⇒ true\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {(variables?:{[variable:string]:*})=>*} Compiled evaluator.\n */\nexport default function compile( expression ) {\n\tvar terms = postfix( expression );\n\n\treturn function( variables ) {\n\t\treturn evaluate( terms, variables );\n\t};\n}\n","/**\n * Operator callback functions.\n *\n * @type {Object}\n */\nvar OPERATORS = {\n\t'!': function( a ) {\n\t\treturn ! a;\n\t},\n\t'*': function( a, b ) {\n\t\treturn a * b;\n\t},\n\t'/': function( a, b ) {\n\t\treturn a / b;\n\t},\n\t'%': function( a, b ) {\n\t\treturn a % b;\n\t},\n\t'+': function( a, b ) {\n\t\treturn a + b;\n\t},\n\t'-': function( a, b ) {\n\t\treturn a - b;\n\t},\n\t'<': function( a, b ) {\n\t\treturn a < b;\n\t},\n\t'<=': function( a, b ) {\n\t\treturn a <= b;\n\t},\n\t'>': function( a, b ) {\n\t\treturn a > b;\n\t},\n\t'>=': function( a, b ) {\n\t\treturn a >= b;\n\t},\n\t'==': function( a, b ) {\n\t\treturn a === b;\n\t},\n\t'!=': function( a, b ) {\n\t\treturn a !== b;\n\t},\n\t'&&': function( a, b ) {\n\t\treturn a && b;\n\t},\n\t'||': function( a, b ) {\n\t\treturn a || b;\n\t},\n\t'?:': function( a, b, c ) {\n\t\tif ( a ) {\n\t\t\tthrow b;\n\t\t}\n\n\t\treturn c;\n\t},\n};\n\n/**\n * Given an array of postfix terms and operand variables, returns the result of\n * the postfix evaluation.\n *\n * @example\n *\n * ```js\n * import evaluate from '@tannin/evaluate';\n *\n * // 3 + 4 * 5 / 6 ⇒ '3 4 5 * 6 / +'\n * const terms = [ '3', '4', '5', '*', '6', '/', '+' ];\n *\n * evaluate( terms, {} );\n * // ⇒ 6.333333333333334\n * ```\n *\n * @param {string[]} postfix Postfix terms.\n * @param {Object} variables Operand variables.\n *\n * @return {*} Result of evaluation.\n */\nexport default function evaluate( postfix, variables ) {\n\tvar stack = [],\n\t\ti, j, args, getOperatorResult, term, value;\n\n\tfor ( i = 0; i < postfix.length; i++ ) {\n\t\tterm = postfix[ i ];\n\n\t\tgetOperatorResult = OPERATORS[ term ];\n\t\tif ( getOperatorResult ) {\n\t\t\t// Pop from stack by number of function arguments.\n\t\t\tj = getOperatorResult.length;\n\t\t\targs = Array( j );\n\t\t\twhile ( j-- ) {\n\t\t\t\targs[ j ] = stack.pop();\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tvalue = getOperatorResult.apply( null, args );\n\t\t\t} catch ( earlyReturn ) {\n\t\t\t\treturn earlyReturn;\n\t\t\t}\n\t\t} else if ( variables.hasOwnProperty( term ) ) {\n\t\t\tvalue = variables[ term ];\n\t\t} else {\n\t\t\tvalue = +term;\n\t\t}\n\n\t\tstack.push( value );\n\t}\n\n\treturn stack[ 0 ];\n}\n","import compile from '@tannin/compile';\n\n/**\n * Given a C expression, returns a function which, when called with a value,\n * evaluates the result with the value assumed to be the \"n\" variable of the\n * expression. The result will be coerced to its numeric equivalent.\n *\n * @param {string} expression C expression.\n *\n * @return {Function} Evaluator function.\n */\nexport default function pluralForms( expression ) {\n\tvar evaluate = compile( expression );\n\n\treturn function( n ) {\n\t\treturn +evaluate( { n: n } );\n\t};\n}\n","var PRECEDENCE, OPENERS, TERMINATORS, PATTERN;\n\n/**\n * Operator precedence mapping.\n *\n * @type {Object}\n */\nPRECEDENCE = {\n\t'(': 9,\n\t'!': 8,\n\t'*': 7,\n\t'/': 7,\n\t'%': 7,\n\t'+': 6,\n\t'-': 6,\n\t'<': 5,\n\t'<=': 5,\n\t'>': 5,\n\t'>=': 5,\n\t'==': 4,\n\t'!=': 4,\n\t'&&': 3,\n\t'||': 2,\n\t'?': 1,\n\t'?:': 1,\n};\n\n/**\n * Characters which signal pair opening, to be terminated by terminators.\n *\n * @type {string[]}\n */\nOPENERS = [ '(', '?' ];\n\n/**\n * Characters which signal pair termination, the value an array with the\n * opener as its first member. The second member is an optional operator\n * replacement to push to the stack.\n *\n * @type {string[]}\n */\nTERMINATORS = {\n\t')': [ '(' ],\n\t':': [ '?', '?:' ],\n};\n\n/**\n * Pattern matching operators and openers.\n *\n * @type {RegExp}\n */\nPATTERN = /<=|>=|==|!=|&&|\\|\\||\\?:|\\(|!|\\*|\\/|%|\\+|-|<|>|\\?|\\)|:/;\n\n/**\n * Given a C expression, returns the equivalent postfix (Reverse Polish)\n * notation terms as an array.\n *\n * If a postfix string is desired, simply `.join( ' ' )` the result.\n *\n * @example\n *\n * ```js\n * import postfix from '@tannin/postfix';\n *\n * postfix( 'n > 1' );\n * // ⇒ [ 'n', '1', '>' ]\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {string[]} Postfix terms.\n */\nexport default function postfix( expression ) {\n\tvar terms = [],\n\t\tstack = [],\n\t\tmatch, operator, term, element;\n\n\twhile ( ( match = expression.match( PATTERN ) ) ) {\n\t\toperator = match[ 0 ];\n\n\t\t// Term is the string preceding the operator match. It may contain\n\t\t// whitespace, and may be empty (if operator is at beginning).\n\t\tterm = expression.substr( 0, match.index ).trim();\n\t\tif ( term ) {\n\t\t\tterms.push( term );\n\t\t}\n\n\t\twhile ( ( element = stack.pop() ) ) {\n\t\t\tif ( TERMINATORS[ operator ] ) {\n\t\t\t\tif ( TERMINATORS[ operator ][ 0 ] === element ) {\n\t\t\t\t\t// Substitution works here under assumption that because\n\t\t\t\t\t// the assigned operator will no longer be a terminator, it\n\t\t\t\t\t// will be pushed to the stack during the condition below.\n\t\t\t\t\toperator = TERMINATORS[ operator ][ 1 ] || operator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if ( OPENERS.indexOf( element ) >= 0 || PRECEDENCE[ element ] < PRECEDENCE[ operator ] ) {\n\t\t\t\t// Push to stack if either an opener or when pop reveals an\n\t\t\t\t// element of lower precedence.\n\t\t\t\tstack.push( element );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// For each popped from stack, push to terms.\n\t\t\tterms.push( element );\n\t\t}\n\n\t\tif ( ! TERMINATORS[ operator ] ) {\n\t\t\tstack.push( operator );\n\t\t}\n\n\t\t// Slice matched fragment from expression to continue match.\n\t\texpression = expression.substr( match.index + operator.length );\n\t}\n\n\t// Push remainder of operand, if exists, to terms.\n\texpression = expression.trim();\n\tif ( expression ) {\n\t\tterms.push( expression );\n\t}\n\n\t// Pop remaining items from stack into terms.\n\treturn terms.concat( stack.reverse() );\n}\n","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback AddHook\n *\n * Adds the hook to the appropriate hooks container.\n *\n * @param {string} hookName Name of hook to add\n * @param {string} namespace The unique namespace identifying the callback in the form `vendor/plugin/function`.\n * @param {import('.').Callback} callback Function to call when the hook is run\n * @param {number} [priority=10] Priority of this hook\n */\n\n/**\n * Returns a function which, when invoked, will add a hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {AddHook} Function that adds a new hook.\n */\n\nfunction createAddHook(hooks, storeKey) {\n return function addHook(hookName, namespace, callback) {\n var priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10;\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!validateNamespace(namespace)) {\n return;\n }\n\n if ('function' !== typeof callback) {\n // eslint-disable-next-line no-console\n console.error('The hook callback must be a function.');\n return;\n } // Validate numeric priority\n\n\n if ('number' !== typeof priority) {\n // eslint-disable-next-line no-console\n console.error('If specified, the hook priority must be a number.');\n return;\n }\n\n var handler = {\n callback: callback,\n priority: priority,\n namespace: namespace\n };\n\n if (hooksStore[hookName]) {\n // Find the correct insert index of the new hook.\n var handlers = hooksStore[hookName].handlers;\n /** @type {number} */\n\n var i;\n\n for (i = handlers.length; i > 0; i--) {\n if (priority >= handlers[i - 1].priority) {\n break;\n }\n }\n\n if (i === handlers.length) {\n // If append, operate via direct assignment.\n handlers[i] = handler;\n } else {\n // Otherwise, insert before index via splice.\n handlers.splice(i, 0, handler);\n } // We may also be currently executing this hook. If the callback\n // we're adding would come after the current callback, there's no\n // problem; otherwise we need to increase the execution index of\n // any other runs by 1 to account for the added element.\n\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex++;\n }\n });\n } else {\n // This is the first hook of its type.\n hooksStore[hookName] = {\n handlers: [handler],\n runs: 0\n };\n }\n\n if (hookName !== 'hookAdded') {\n hooks.doAction('hookAdded', hookName, namespace, callback, priority);\n }\n };\n}\n\nexport default createAddHook;\n//# sourceMappingURL=createAddHook.js.map","/**\n * Returns a function which, when invoked, will return the name of the\n * currently running hook, or `null` if no hook of the given type is currently\n * running.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {() => string | null} Function that returns the current hook name or null.\n */\nfunction createCurrentHook(hooks, storeKey) {\n return function currentHook() {\n var _hooksStore$__current, _hooksStore$__current2;\n\n var hooksStore = hooks[storeKey];\n return (_hooksStore$__current = (_hooksStore$__current2 = hooksStore.__current[hooksStore.__current.length - 1]) === null || _hooksStore$__current2 === void 0 ? void 0 : _hooksStore$__current2.name) !== null && _hooksStore$__current !== void 0 ? _hooksStore$__current : null;\n };\n}\n\nexport default createCurrentHook;\n//# sourceMappingURL=createCurrentHook.js.map","/**\n * Internal dependencies\n */\nimport validateHookName from './validateHookName.js';\n/**\n * @callback DidHook\n *\n * Returns the number of times an action has been fired.\n *\n * @param {string} hookName The hook name to check.\n *\n * @return {number | undefined} The number of times the hook has run.\n */\n\n/**\n * Returns a function which, when invoked, will return the number of times a\n * hook has been called.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DidHook} Function that returns a hook's call count.\n */\n\nfunction createDidHook(hooks, storeKey) {\n return function didHook(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0;\n };\n}\n\nexport default createDidHook;\n//# sourceMappingURL=createDidHook.js.map","/**\n * @callback DoingHook\n * Returns whether a hook is currently being executed.\n *\n * @param {string} [hookName] The name of the hook to check for. If\n * omitted, will check for any hook being executed.\n *\n * @return {boolean} Whether the hook is being executed.\n */\n\n/**\n * Returns a function which, when invoked, will return whether a hook is\n * currently being executed.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DoingHook} Function that returns whether a hook is currently\n * being executed.\n */\nfunction createDoingHook(hooks, storeKey) {\n return function doingHook(hookName) {\n var hooksStore = hooks[storeKey]; // If the hookName was not passed, check for any current hook.\n\n if ('undefined' === typeof hookName) {\n return 'undefined' !== typeof hooksStore.__current[0];\n } // Return the __current hook.\n\n\n return hooksStore.__current[0] ? hookName === hooksStore.__current[0].name : false;\n };\n}\n\nexport default createDoingHook;\n//# sourceMappingURL=createDoingHook.js.map","/**\n * @callback HasHook\n *\n * Returns whether any handlers are attached for the given hookName and optional namespace.\n *\n * @param {string} hookName The name of the hook to check for.\n * @param {string} [namespace] Optional. The unique namespace identifying the callback\n * in the form `vendor/plugin/function`.\n *\n * @return {boolean} Whether there are handlers that are attached to the given hook.\n */\n\n/**\n * Returns a function which, when invoked, will return whether any handlers are\n * attached to a particular hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {HasHook} Function that returns whether any handlers are\n * attached to a particular hook and optional namespace.\n */\nfunction createHasHook(hooks, storeKey) {\n return function hasHook(hookName, namespace) {\n var hooksStore = hooks[storeKey]; // Use the namespace if provided.\n\n if ('undefined' !== typeof namespace) {\n return hookName in hooksStore && hooksStore[hookName].handlers.some(function (hook) {\n return hook.namespace === namespace;\n });\n }\n\n return hookName in hooksStore;\n };\n}\n\nexport default createHasHook;\n//# sourceMappingURL=createHasHook.js.map","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\n\n/**\n * Internal dependencies\n */\nimport createAddHook from './createAddHook';\nimport createRemoveHook from './createRemoveHook';\nimport createHasHook from './createHasHook';\nimport createRunHook from './createRunHook';\nimport createCurrentHook from './createCurrentHook';\nimport createDoingHook from './createDoingHook';\nimport createDidHook from './createDidHook';\n/**\n * Internal class for constructing hooks. Use `createHooks()` function\n *\n * Note, it is necessary to expose this class to make its type public.\n *\n * @private\n */\n\nexport var _Hooks = function _Hooks() {\n _classCallCheck(this, _Hooks);\n\n /** @type {import('.').Store} actions */\n this.actions = Object.create(null);\n this.actions.__current = [];\n /** @type {import('.').Store} filters */\n\n this.filters = Object.create(null);\n this.filters.__current = [];\n this.addAction = createAddHook(this, 'actions');\n this.addFilter = createAddHook(this, 'filters');\n this.removeAction = createRemoveHook(this, 'actions');\n this.removeFilter = createRemoveHook(this, 'filters');\n this.hasAction = createHasHook(this, 'actions');\n this.hasFilter = createHasHook(this, 'filters');\n this.removeAllActions = createRemoveHook(this, 'actions', true);\n this.removeAllFilters = createRemoveHook(this, 'filters', true);\n this.doAction = createRunHook(this, 'actions');\n this.applyFilters = createRunHook(this, 'filters', true);\n this.currentAction = createCurrentHook(this, 'actions');\n this.currentFilter = createCurrentHook(this, 'filters');\n this.doingAction = createDoingHook(this, 'actions');\n this.doingFilter = createDoingHook(this, 'filters');\n this.didAction = createDidHook(this, 'actions');\n this.didFilter = createDidHook(this, 'filters');\n};\n/** @typedef {_Hooks} Hooks */\n\n/**\n * Returns an instance of the hooks object.\n *\n * @return {Hooks} A Hooks instance.\n */\n\nfunction createHooks() {\n return new _Hooks();\n}\n\nexport default createHooks;\n//# sourceMappingURL=createHooks.js.map","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback RemoveHook\n * Removes the specified callback (or all callbacks) from the hook with a given hookName\n * and namespace.\n *\n * @param {string} hookName The name of the hook to modify.\n * @param {string} namespace The unique namespace identifying the callback in the\n * form `vendor/plugin/function`.\n *\n * @return {number | undefined} The number of callbacks removed.\n */\n\n/**\n * Returns a function which, when invoked, will remove a specified hook or all\n * hooks by the given name.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [removeAll=false] Whether to remove all callbacks for a hookName,\n * without regard to namespace. Used to create\n * `removeAll*` functions.\n *\n * @return {RemoveHook} Function that removes hooks.\n */\n\nfunction createRemoveHook(hooks, storeKey) {\n var removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function removeHook(hookName, namespace) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!removeAll && !validateNamespace(namespace)) {\n return;\n } // Bail if no hooks exist by this name\n\n\n if (!hooksStore[hookName]) {\n return 0;\n }\n\n var handlersRemoved = 0;\n\n if (removeAll) {\n handlersRemoved = hooksStore[hookName].handlers.length;\n hooksStore[hookName] = {\n runs: hooksStore[hookName].runs,\n handlers: []\n };\n } else {\n // Try to find the specified callback to remove.\n var handlers = hooksStore[hookName].handlers;\n\n var _loop = function _loop(i) {\n if (handlers[i].namespace === namespace) {\n handlers.splice(i, 1);\n handlersRemoved++; // This callback may also be part of a hook that is\n // currently executing. If the callback we're removing\n // comes after the current callback, there's no problem;\n // otherwise we need to decrease the execution index of any\n // other runs by 1 to account for the removed element.\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex--;\n }\n });\n }\n };\n\n for (var i = handlers.length - 1; i >= 0; i--) {\n _loop(i);\n }\n }\n\n if (hookName !== 'hookRemoved') {\n hooks.doAction('hookRemoved', hookName, namespace);\n }\n\n return handlersRemoved;\n };\n}\n\nexport default createRemoveHook;\n//# sourceMappingURL=createRemoveHook.js.map","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\n\n/**\n * Returns a function which, when invoked, will execute all callbacks\n * registered to a hook of the specified type, optionally returning the final\n * value of the call chain.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [returnFirstArg=false] Whether each hook callback is expected to\n * return its first argument.\n *\n * @return {(hookName:string, ...args: unknown[]) => unknown} Function that runs hook callbacks.\n */\nfunction createRunHook(hooks, storeKey) {\n var returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function runHooks(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!hooksStore[hookName]) {\n hooksStore[hookName] = {\n handlers: [],\n runs: 0\n };\n }\n\n hooksStore[hookName].runs++;\n var handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds.\n\n if ('production' !== process.env.NODE_ENV) {\n // Handle any 'all' hooks registered.\n if ('hookAdded' !== hookName && hooksStore.all) {\n handlers.push.apply(handlers, _toConsumableArray(hooksStore.all.handlers));\n }\n }\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (!handlers || !handlers.length) {\n return returnFirstArg ? args[0] : undefined;\n }\n\n var hookInfo = {\n name: hookName,\n currentIndex: 0\n };\n\n hooksStore.__current.push(hookInfo);\n\n while (hookInfo.currentIndex < handlers.length) {\n var handler = handlers[hookInfo.currentIndex];\n var result = handler.callback.apply(null, args);\n\n if (returnFirstArg) {\n args[0] = result;\n }\n\n hookInfo.currentIndex++;\n }\n\n hooksStore.__current.pop();\n\n if (returnFirstArg) {\n return args[0];\n }\n };\n}\n\nexport default createRunHook;\n//# sourceMappingURL=createRunHook.js.map","/**\n * Internal dependencies\n */\nimport createHooks from './createHooks';\n/** @typedef {(...args: any[])=>any} Callback */\n\n/**\n * @typedef Handler\n * @property {Callback} callback The callback\n * @property {string} namespace The namespace\n * @property {number} priority The namespace\n */\n\n/**\n * @typedef Hook\n * @property {Handler[]} handlers Array of handlers\n * @property {number} runs Run counter\n */\n\n/**\n * @typedef Current\n * @property {string} name Hook name\n * @property {number} currentIndex The index\n */\n\n/**\n * @typedef {Record & {__current: Current[]}} Store\n */\n\n/**\n * @typedef {'actions' | 'filters'} StoreKey\n */\n\n/**\n * @typedef {import('./createHooks').Hooks} Hooks\n */\n\nexport var defaultHooks = createHooks();\nvar addAction = defaultHooks.addAction,\n addFilter = defaultHooks.addFilter,\n removeAction = defaultHooks.removeAction,\n removeFilter = defaultHooks.removeFilter,\n hasAction = defaultHooks.hasAction,\n hasFilter = defaultHooks.hasFilter,\n removeAllActions = defaultHooks.removeAllActions,\n removeAllFilters = defaultHooks.removeAllFilters,\n doAction = defaultHooks.doAction,\n applyFilters = defaultHooks.applyFilters,\n currentAction = defaultHooks.currentAction,\n currentFilter = defaultHooks.currentFilter,\n doingAction = defaultHooks.doingAction,\n doingFilter = defaultHooks.doingFilter,\n didAction = defaultHooks.didAction,\n didFilter = defaultHooks.didFilter,\n actions = defaultHooks.actions,\n filters = defaultHooks.filters;\nexport { createHooks, addAction, addFilter, removeAction, removeFilter, hasAction, hasFilter, removeAllActions, removeAllFilters, doAction, applyFilters, currentAction, currentFilter, doingAction, doingFilter, didAction, didFilter, actions, filters };\n//# sourceMappingURL=index.js.map","/**\n * Validate a hookName string.\n *\n * @param {string} hookName The hook name to validate. Should be a non empty string containing\n * only numbers, letters, dashes, periods and underscores. Also,\n * the hook name cannot begin with `__`.\n *\n * @return {boolean} Whether the hook name is valid.\n */\nfunction validateHookName(hookName) {\n if ('string' !== typeof hookName || '' === hookName) {\n // eslint-disable-next-line no-console\n console.error('The hook name must be a non-empty string.');\n return false;\n }\n\n if (/^__/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name cannot begin with `__`.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name can only contain numbers, letters, dashes, periods and underscores.');\n return false;\n }\n\n return true;\n}\n\nexport default validateHookName;\n//# sourceMappingURL=validateHookName.js.map","/**\n * Validate a namespace string.\n *\n * @param {string} namespace The namespace to validate - should take the form\n * `vendor/plugin/function`.\n *\n * @return {boolean} Whether the namespace is valid.\n */\nfunction validateNamespace(namespace) {\n if ('string' !== typeof namespace || '' === namespace) {\n // eslint-disable-next-line no-console\n console.error('The namespace must be a non-empty string.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.\\-\\/]*$/.test(namespace)) {\n // eslint-disable-next-line no-console\n console.error('The namespace can only contain numbers, letters, dashes, periods, underscores and slashes.');\n return false;\n }\n\n return true;\n}\n\nexport default validateNamespace;\n//# sourceMappingURL=validateNamespace.js.map","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n/**\n * External dependencies\n */\nimport Tannin from 'tannin';\n/**\n * @typedef {Record} LocaleData\n */\n\n/**\n * Default locale data to use for Tannin domain when not otherwise provided.\n * Assumes an English plural forms expression.\n *\n * @type {LocaleData}\n */\n\nvar DEFAULT_LOCALE_DATA = {\n '': {\n /** @param {number} n */\n plural_forms: function plural_forms(n) {\n return n === 1 ? 0 : 1;\n }\n }\n};\n/*\n * Regular expression that matches i18n hooks like `i18n.gettext`, `i18n.ngettext`,\n * `i18n.gettext_domain` or `i18n.ngettext_with_context` or `i18n.has_translation`.\n */\n\nvar I18N_HOOK_REGEXP = /^i18n\\.(n?gettext|has_translation)(_|$)/;\n/**\n * @typedef {(domain?: string) => LocaleData} GetLocaleData\n *\n * Returns locale data by domain in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} SetLocaleData\n *\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} ResetLocaleData\n *\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/** @typedef {() => void} SubscribeCallback */\n\n/** @typedef {() => void} UnsubscribeCallback */\n\n/**\n * @typedef {(callback: SubscribeCallback) => UnsubscribeCallback} Subscribe\n *\n * Subscribes to changes of locale data\n */\n\n/**\n * @typedef {(domain?: string) => string} GetFilterDomain\n * Retrieve the domain to use when calling domain-specific filters.\n */\n\n/**\n * @typedef {(text: string, domain?: string) => string} __\n *\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n */\n\n/**\n * @typedef {(text: string, context: string, domain?: string) => string} _x\n *\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, domain?: string) => string} _n\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, context: string, domain?: string) => string} _nx\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n */\n\n/**\n * @typedef {() => boolean} IsRtl\n *\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n */\n\n/**\n * @typedef {(single: string, context?: string, domain?: string) => boolean} HasTranslation\n *\n * Check if there is a translation for a given string in singular form.\n */\n\n/** @typedef {import('@wordpress/hooks').Hooks} Hooks */\n\n/**\n * An i18n instance\n *\n * @typedef I18n\n * @property {GetLocaleData} getLocaleData Returns locale data by domain in a Jed-formatted JSON object shape.\n * @property {SetLocaleData} setLocaleData Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n * @property {ResetLocaleData} resetLocaleData Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n * @property {Subscribe} subscribe Subscribes to changes of Tannin locale data.\n * @property {__} __ Retrieve the translation of text.\n * @property {_x} _x Retrieve translated string with gettext context.\n * @property {_n} _n Translates and retrieves the singular or plural form based on the supplied\n * number.\n * @property {_nx} _nx Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n * @property {IsRtl} isRTL Check if current locale is RTL.\n * @property {HasTranslation} hasTranslation Check if there is a translation for a given string.\n */\n\n/**\n * Create an i18n instance\n *\n * @param {LocaleData} [initialData] Locale data configuration.\n * @param {string} [initialDomain] Domain for which configuration applies.\n * @param {Hooks} [hooks] Hooks implementation.\n * @return {I18n} I18n instance\n */\n\nexport var createI18n = function createI18n(initialData, initialDomain, hooks) {\n /**\n * The underlying instance of Tannin to which exported functions interface.\n *\n * @type {Tannin}\n */\n var tannin = new Tannin({});\n var listeners = new Set();\n\n var notifyListeners = function notifyListeners() {\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n /**\n * Subscribe to changes of locale data.\n *\n * @param {SubscribeCallback} callback Subscription callback.\n * @return {UnsubscribeCallback} Unsubscribe callback.\n */\n\n\n var subscribe = function subscribe(callback) {\n listeners.add(callback);\n return function () {\n return listeners.delete(callback);\n };\n };\n /** @type {GetLocaleData} */\n\n\n var getLocaleData = function getLocaleData() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return tannin.data[domain];\n };\n /**\n * @param {LocaleData} [data]\n * @param {string} [domain]\n */\n\n\n var doSetLocaleData = function doSetLocaleData(data) {\n var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';\n tannin.data[domain] = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA), tannin.data[domain]), data); // Populate default domain configuration (supported locale date which omits\n // a plural forms expression).\n\n tannin.data[domain][''] = _objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA['']), tannin.data[domain]['']);\n };\n /** @type {SetLocaleData} */\n\n\n var setLocaleData = function setLocaleData(data, domain) {\n doSetLocaleData(data, domain);\n notifyListeners();\n };\n /** @type {ResetLocaleData} */\n\n\n var resetLocaleData = function resetLocaleData(data, domain) {\n // Reset all current Tannin locale data.\n tannin.data = {}; // Reset cached plural forms functions cache.\n\n tannin.pluralForms = {};\n setLocaleData(data, domain);\n };\n /**\n * Wrapper for Tannin's `dcnpgettext`. Populates default locale data if not\n * otherwise previously assigned.\n *\n * @param {string|undefined} domain Domain to retrieve the translated text.\n * @param {string|undefined} context Context information for the translators.\n * @param {string} single Text to translate if non-plural. Used as\n * fallback return value on a caught error.\n * @param {string} [plural] The text to be used if the number is\n * plural.\n * @param {number} [number] The number to compare against to use\n * either the singular or plural form.\n *\n * @return {string} The translated string.\n */\n\n\n var dcnpgettext = function dcnpgettext() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n var context = arguments.length > 1 ? arguments[1] : undefined;\n var single = arguments.length > 2 ? arguments[2] : undefined;\n var plural = arguments.length > 3 ? arguments[3] : undefined;\n var number = arguments.length > 4 ? arguments[4] : undefined;\n\n if (!tannin.data[domain]) {\n // use `doSetLocaleData` to set silently, without notifying listeners\n doSetLocaleData(undefined, domain);\n }\n\n return tannin.dcnpgettext(domain, context, single, plural, number);\n };\n /** @type {GetFilterDomain} */\n\n\n var getFilterDomain = function getFilterDomain() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return domain;\n };\n /** @type {__} */\n\n\n var __ = function __(text, domain) {\n var translation = dcnpgettext(domain, undefined, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext', translation, text, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_' + getFilterDomain(domain), translation, text, domain)\n );\n };\n /** @type {_x} */\n\n\n var _x = function _x(text, context, domain) {\n var translation = dcnpgettext(domain, context, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation based on context information.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context', translation, text, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context_' + getFilterDomain(domain), translation, text, context, domain)\n );\n };\n /** @type {_n} */\n\n\n var _n = function _n(single, plural, number, domain) {\n var translation = dcnpgettext(domain, undefined, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext', translation, single, plural, number, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_' + getFilterDomain(domain), translation, single, plural, number, domain)\n );\n };\n /** @type {_nx} */\n\n\n var _nx = function _nx(single, plural, number, context, domain) {\n var translation = dcnpgettext(domain, context, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string with gettext context.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context', translation, single, plural, number, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context_' + getFilterDomain(domain), translation, single, plural, number, context, domain)\n );\n };\n /** @type {IsRtl} */\n\n\n var isRTL = function isRTL() {\n return 'rtl' === _x('ltr', 'text direction');\n };\n /** @type {HasTranslation} */\n\n\n var hasTranslation = function hasTranslation(single, context, domain) {\n var _tannin$data, _tannin$data2;\n\n var key = context ? context + \"\\x04\" + single : single;\n var result = !!((_tannin$data = tannin.data) !== null && _tannin$data !== void 0 && (_tannin$data2 = _tannin$data[domain !== null && domain !== void 0 ? domain : 'default']) !== null && _tannin$data2 !== void 0 && _tannin$data2[key]);\n\n if (hooks) {\n /**\n * Filters the presence of a translation in the locale data.\n *\n * @param {boolean} hasTranslation Whether the translation is present or not..\n * @param {string} single The singular form of the translated text (used as key in locale data)\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation', result, single, context, domain);\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation_' + getFilterDomain(domain), result, single, context, domain);\n }\n\n return result;\n };\n\n if (initialData) {\n setLocaleData(initialData, initialDomain);\n }\n\n if (hooks) {\n /**\n * @param {string} hookName\n */\n var onHookAddedOrRemoved = function onHookAddedOrRemoved(hookName) {\n if (I18N_HOOK_REGEXP.test(hookName)) {\n notifyListeners();\n }\n };\n\n hooks.addAction('hookAdded', 'core/i18n', onHookAddedOrRemoved);\n hooks.addAction('hookRemoved', 'core/i18n', onHookAddedOrRemoved);\n }\n\n return {\n getLocaleData: getLocaleData,\n setLocaleData: setLocaleData,\n resetLocaleData: resetLocaleData,\n subscribe: subscribe,\n __: __,\n _x: _x,\n _n: _n,\n _nx: _nx,\n isRTL: isRTL,\n hasTranslation: hasTranslation\n };\n};\n//# sourceMappingURL=create-i18n.js.map","/**\n * Internal dependencies\n */\nimport { createI18n } from './create-i18n';\n/**\n * WordPress dependencies\n */\n\nimport { defaultHooks } from '@wordpress/hooks';\nvar i18n = createI18n(undefined, undefined, defaultHooks);\n/**\n * Default, singleton instance of `I18n`.\n */\n\nexport default i18n;\n/*\n * Comments in this file are duplicated from ./i18n due to\n * https://github.com/WordPress/gutenberg/pull/20318#issuecomment-590837722\n */\n\n/**\n * @typedef {import('./create-i18n').LocaleData} LocaleData\n * @typedef {import('./create-i18n').SubscribeCallback} SubscribeCallback\n * @typedef {import('./create-i18n').UnsubscribeCallback} UnsubscribeCallback\n */\n\n/**\n * Returns locale data by domain in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {string} [domain] Domain for which to get the data.\n * @return {LocaleData} Locale data.\n */\n\nexport var getLocaleData = i18n.getLocaleData.bind(i18n);\n/**\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var setLocaleData = i18n.setLocaleData.bind(i18n);\n/**\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var resetLocaleData = i18n.resetLocaleData.bind(i18n);\n/**\n * Subscribes to changes of locale data\n *\n * @param {SubscribeCallback} callback Subscription callback\n * @return {UnsubscribeCallback} Unsubscribe callback\n */\n\nexport var subscribe = i18n.subscribe.bind(i18n);\n/**\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n *\n * @param {string} text Text to translate.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated text.\n */\n\nexport var __ = i18n.__.bind(i18n);\n/**\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n *\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated context string without pipe.\n */\n\nexport var _x = i18n._x.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _n = i18n._n.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _nx = i18n._nx.bind(i18n);\n/**\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n *\n * @return {boolean} Whether locale is RTL.\n */\n\nexport var isRTL = i18n.isRTL.bind(i18n);\n/**\n * Check if there is a translation for a given string (in singular form).\n *\n * @param {string} single Singular form of the string to look up.\n * @param {string} [context] Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n * @return {boolean} Whether the translation exists or not.\n */\n\nexport var hasTranslation = i18n.hasTranslation.bind(i18n);\n//# sourceMappingURL=default-i18n.js.map","export { sprintf } from './sprintf';\nexport * from './create-i18n';\nexport { default as defaultI18n, setLocaleData, resetLocaleData, getLocaleData, subscribe, __, _x, _n, _nx, isRTL, hasTranslation } from './default-i18n';\n//# sourceMappingURL=index.js.map","/**\n * External dependencies\n */\nimport memoize from 'memize';\nimport sprintfjs from 'sprintf-js';\n/**\n * Log to console, once per message; or more precisely, per referentially equal\n * argument set. Because Jed throws errors, we log these to the console instead\n * to avoid crashing the application.\n *\n * @param {...*} args Arguments to pass to `console.error`\n */\n\nvar logErrorOnce = memoize(console.error); // eslint-disable-line no-console\n\n/**\n * Returns a formatted string. If an error occurs in applying the format, the\n * original format string is returned.\n *\n * @param {string} format The format of the string to generate.\n * @param {...*} args Arguments to apply to the format.\n *\n * @see https://www.npmjs.com/package/sprintf-js\n *\n * @return {string} The formatted string.\n */\n\nexport function sprintf(format) {\n try {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return sprintfjs.sprintf.apply(sprintfjs, [format].concat(args));\n } catch (error) {\n logErrorOnce('sprintf error: \\n\\n' + error.toString());\n return format;\n }\n}\n//# sourceMappingURL=sprintf.js.map","/**\n * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview.\n * The names of the elements that will be updated are specified using the \"will-change\" attribute.\n * It is primarily used in components from Style/Quick Settings.\n * For instance, when the \"FrmPrimaryColorStyleComponent\" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds.\n */\nexport default class frmStyleDependentUpdaterComponent {\n\n\t/**\n\t * Creates an instance of frmStyleDependentUpdaterComponent.\n\t * @param {HTMLElement} component - The component element.\n\t */\n\tconstructor( component ) {\n\t\tthis.component = component;\n\t\ttry {\n\t\t\tconst willChangeData = JSON.parse( this.component.dataset.willChange );\n\t\t\tthis.data = {\n\t\t\t\tpropagateInputs: this.initPropagationList( willChangeData ),\n\t\t\t\tchangeEvent: new Event( 'change', { bubbles: true } )\n\t\t\t};\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'Error parsing JSON data from \"will-change\" attribute.', error );\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the list of inputs to propagate changes to.\n\t * The selection is made by provided input's names list in \"will-change\" attribute.\n\t * @param {string[]} inputNames - The names of the inputs to propagate changes to.\n\t * @return {HTMLElement[]} - The list of inputs to propagate changes to.\n\t */\n\tinitPropagationList( inputNames ) {\n\t\tconst list = [];\n\t\tinputNames.forEach( ( name ) => {\n\t\t\tconst input = document.querySelector( `input[name=\"${name}\"]` );\n\t\t\tif ( null !== input ) {\n\t\t\t\tlist.push( input );\n\t\t\t}\n\t\t});\n\t\treturn list;\n\t}\n\n\t/**\n\t * Updates all dependent elements with the given value.\n\t * @param {string} value - The value to update the dependent elements with.\n\t */\n\tupdateAllDependentElements( value ) {\n\t\tthis.data.propagateInputs.forEach( ( input ) => {\n\t\t\tinput.value = value;\n\t\t});\n\t\tthis.data.propagateInputs[0].dispatchEvent( this.data.changeEvent );\n\t}\n}\n","/**\n * Memize options object.\n *\n * @typedef MemizeOptions\n *\n * @property {number} [maxSize] Maximum size of the cache.\n */\n\n/**\n * Internal cache entry.\n *\n * @typedef MemizeCacheNode\n *\n * @property {?MemizeCacheNode|undefined} [prev] Previous node.\n * @property {?MemizeCacheNode|undefined} [next] Next node.\n * @property {Array<*>} args Function arguments for cache\n * entry.\n * @property {*} val Function result.\n */\n\n/**\n * Properties of the enhanced function for controlling cache.\n *\n * @typedef MemizeMemoizedFunction\n *\n * @property {()=>void} clear Clear the cache.\n */\n\n/**\n * Accepts a function to be memoized, and returns a new memoized function, with\n * optional options.\n *\n * @template {Function} F\n *\n * @param {F} fn Function to memoize.\n * @param {MemizeOptions} [options] Options object.\n *\n * @return {F & MemizeMemoizedFunction} Memoized function.\n */\nfunction memize( fn, options ) {\n\tvar size = 0;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar head;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar tail;\n\n\toptions = options || {};\n\n\tfunction memoized( /* ...args */ ) {\n\t\tvar node = head,\n\t\t\tlen = arguments.length,\n\t\t\targs, i;\n\n\t\tsearchCache: while ( node ) {\n\t\t\t// Perform a shallow equality test to confirm that whether the node\n\t\t\t// under test is a candidate for the arguments passed. Two arrays\n\t\t\t// are shallowly equal if their length matches and each entry is\n\t\t\t// strictly equal between the two sets. Avoid abstracting to a\n\t\t\t// function which could incur an arguments leaking deoptimization.\n\n\t\t\t// Check whether node arguments match arguments length\n\t\t\tif ( node.args.length !== arguments.length ) {\n\t\t\t\tnode = node.next;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Check whether node arguments match arguments values\n\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\tif ( node.args[ i ] !== arguments[ i ] ) {\n\t\t\t\t\tnode = node.next;\n\t\t\t\t\tcontinue searchCache;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// At this point we can assume we've found a match\n\n\t\t\t// Surface matched node to head if not already\n\t\t\tif ( node !== head ) {\n\t\t\t\t// As tail, shift to previous. Must only shift if not also\n\t\t\t\t// head, since if both head and tail, there is no previous.\n\t\t\t\tif ( node === tail ) {\n\t\t\t\t\ttail = node.prev;\n\t\t\t\t}\n\n\t\t\t\t// Adjust siblings to point to each other. If node was tail,\n\t\t\t\t// this also handles new tail's empty `next` assignment.\n\t\t\t\t/** @type {MemizeCacheNode} */ ( node.prev ).next = node.next;\n\t\t\t\tif ( node.next ) {\n\t\t\t\t\tnode.next.prev = node.prev;\n\t\t\t\t}\n\n\t\t\t\tnode.next = head;\n\t\t\t\tnode.prev = null;\n\t\t\t\t/** @type {MemizeCacheNode} */ ( head ).prev = node;\n\t\t\t\thead = node;\n\t\t\t}\n\n\t\t\t// Return immediately\n\t\t\treturn node.val;\n\t\t}\n\n\t\t// No cached value found. Continue to insertion phase:\n\n\t\t// Create a copy of arguments (avoid leaking deoptimization)\n\t\targs = new Array( len );\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\targs[ i ] = arguments[ i ];\n\t\t}\n\n\t\tnode = {\n\t\t\targs: args,\n\n\t\t\t// Generate the result from original function\n\t\t\tval: fn.apply( null, args ),\n\t\t};\n\n\t\t// Don't need to check whether node is already head, since it would\n\t\t// have been returned above already if it was\n\n\t\t// Shift existing head down list\n\t\tif ( head ) {\n\t\t\thead.prev = node;\n\t\t\tnode.next = head;\n\t\t} else {\n\t\t\t// If no head, follows that there's no tail (at initial or reset)\n\t\t\ttail = node;\n\t\t}\n\n\t\t// Trim tail if we're reached max size and are pending cache insertion\n\t\tif ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) {\n\t\t\ttail = /** @type {MemizeCacheNode} */ ( tail ).prev;\n\t\t\t/** @type {MemizeCacheNode} */ ( tail ).next = null;\n\t\t} else {\n\t\t\tsize++;\n\t\t}\n\n\t\thead = node;\n\n\t\treturn node.val;\n\t}\n\n\tmemoized.clear = function() {\n\t\thead = null;\n\t\ttail = null;\n\t\tsize = 0;\n\t};\n\n\tif ( process.env.NODE_ENV === 'test' ) {\n\t\t// Cache is not exposed in the public API, but used in tests to ensure\n\t\t// expected list progression\n\t\tmemoized.getCache = function() {\n\t\t\treturn [ head, tail, size ];\n\t\t};\n\t}\n\n\t// Ignore reason: There's not a clear solution to create an intersection of\n\t// the function with additional properties, where the goal is to retain the\n\t// function signature of the incoming argument and add control properties\n\t// on the return value.\n\n\t// @ts-ignore\n\treturn memoized;\n}\n\nmodule.exports = memize;\n","/* global window, exports, define */\n\n!function() {\n 'use strict'\n\n var re = {\n not_string: /[^s]/,\n not_bool: /[^t]/,\n not_type: /[^T]/,\n not_primitive: /[^v]/,\n number: /[diefg]/,\n numeric_arg: /[bcdiefguxX]/,\n json: /[j]/,\n not_json: /[^j]/,\n text: /^[^\\x25]+/,\n modulo: /^\\x25{2}/,\n placeholder: /^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,\n key: /^([a-z_][a-z_\\d]*)/i,\n key_access: /^\\.([a-z_][a-z_\\d]*)/i,\n index_access: /^\\[(\\d+)\\]/,\n sign: /^[+-]/\n }\n\n function sprintf(key) {\n // `arguments` is not an array, but should be fine for this call\n return sprintf_format(sprintf_parse(key), arguments)\n }\n\n function vsprintf(fmt, argv) {\n return sprintf.apply(null, [fmt].concat(argv || []))\n }\n\n function sprintf_format(parse_tree, argv) {\n var cursor = 1, tree_length = parse_tree.length, arg, output = '', i, k, ph, pad, pad_character, pad_length, is_positive, sign\n for (i = 0; i < tree_length; i++) {\n if (typeof parse_tree[i] === 'string') {\n output += parse_tree[i]\n }\n else if (typeof parse_tree[i] === 'object') {\n ph = parse_tree[i] // convenience purposes only\n if (ph.keys) { // keyword argument\n arg = argv[cursor]\n for (k = 0; k < ph.keys.length; k++) {\n if (arg == undefined) {\n throw new Error(sprintf('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"', ph.keys[k], ph.keys[k-1]))\n }\n arg = arg[ph.keys[k]]\n }\n }\n else if (ph.param_no) { // positional argument (explicit)\n arg = argv[ph.param_no]\n }\n else { // positional argument (implicit)\n arg = argv[cursor++]\n }\n\n if (re.not_type.test(ph.type) && re.not_primitive.test(ph.type) && arg instanceof Function) {\n arg = arg()\n }\n\n if (re.numeric_arg.test(ph.type) && (typeof arg !== 'number' && isNaN(arg))) {\n throw new TypeError(sprintf('[sprintf] expecting number but found %T', arg))\n }\n\n if (re.number.test(ph.type)) {\n is_positive = arg >= 0\n }\n\n switch (ph.type) {\n case 'b':\n arg = parseInt(arg, 10).toString(2)\n break\n case 'c':\n arg = String.fromCharCode(parseInt(arg, 10))\n break\n case 'd':\n case 'i':\n arg = parseInt(arg, 10)\n break\n case 'j':\n arg = JSON.stringify(arg, null, ph.width ? parseInt(ph.width) : 0)\n break\n case 'e':\n arg = ph.precision ? parseFloat(arg).toExponential(ph.precision) : parseFloat(arg).toExponential()\n break\n case 'f':\n arg = ph.precision ? parseFloat(arg).toFixed(ph.precision) : parseFloat(arg)\n break\n case 'g':\n arg = ph.precision ? String(Number(arg.toPrecision(ph.precision))) : parseFloat(arg)\n break\n case 'o':\n arg = (parseInt(arg, 10) >>> 0).toString(8)\n break\n case 's':\n arg = String(arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 't':\n arg = String(!!arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'T':\n arg = Object.prototype.toString.call(arg).slice(8, -1).toLowerCase()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'u':\n arg = parseInt(arg, 10) >>> 0\n break\n case 'v':\n arg = arg.valueOf()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'x':\n arg = (parseInt(arg, 10) >>> 0).toString(16)\n break\n case 'X':\n arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase()\n break\n }\n if (re.json.test(ph.type)) {\n output += arg\n }\n else {\n if (re.number.test(ph.type) && (!is_positive || ph.sign)) {\n sign = is_positive ? '+' : '-'\n arg = arg.toString().replace(re.sign, '')\n }\n else {\n sign = ''\n }\n pad_character = ph.pad_char ? ph.pad_char === '0' ? '0' : ph.pad_char.charAt(1) : ' '\n pad_length = ph.width - (sign + arg).length\n pad = ph.width ? (pad_length > 0 ? pad_character.repeat(pad_length) : '') : ''\n output += ph.align ? sign + arg + pad : (pad_character === '0' ? sign + pad + arg : pad + sign + arg)\n }\n }\n }\n return output\n }\n\n var sprintf_cache = Object.create(null)\n\n function sprintf_parse(fmt) {\n if (sprintf_cache[fmt]) {\n return sprintf_cache[fmt]\n }\n\n var _fmt = fmt, match, parse_tree = [], arg_names = 0\n while (_fmt) {\n if ((match = re.text.exec(_fmt)) !== null) {\n parse_tree.push(match[0])\n }\n else if ((match = re.modulo.exec(_fmt)) !== null) {\n parse_tree.push('%')\n }\n else if ((match = re.placeholder.exec(_fmt)) !== null) {\n if (match[2]) {\n arg_names |= 1\n var field_list = [], replacement_field = match[2], field_match = []\n if ((field_match = re.key.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n while ((replacement_field = replacement_field.substring(field_match[0].length)) !== '') {\n if ((field_match = re.key_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else if ((field_match = re.index_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n }\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n match[2] = field_list\n }\n else {\n arg_names |= 2\n }\n if (arg_names === 3) {\n throw new Error('[sprintf] mixing positional and named placeholders is not (yet) supported')\n }\n\n parse_tree.push(\n {\n placeholder: match[0],\n param_no: match[1],\n keys: match[2],\n sign: match[3],\n pad_char: match[4],\n align: match[5],\n width: match[6],\n precision: match[7],\n type: match[8]\n }\n )\n }\n else {\n throw new SyntaxError('[sprintf] unexpected placeholder')\n }\n _fmt = _fmt.substring(match[0].length)\n }\n return sprintf_cache[fmt] = parse_tree\n }\n\n /**\n * export to either browser or node.js\n */\n /* eslint-disable quote-props */\n if (typeof exports !== 'undefined') {\n exports['sprintf'] = sprintf\n exports['vsprintf'] = vsprintf\n }\n if (typeof window !== 'undefined') {\n window['sprintf'] = sprintf\n window['vsprintf'] = vsprintf\n\n if (typeof define === 'function' && define['amd']) {\n define(function() {\n return {\n 'sprintf': sprintf,\n 'vsprintf': vsprintf\n }\n })\n }\n }\n /* eslint-enable quote-props */\n}(); // eslint-disable-line\n","import pluralForms from '@tannin/plural-forms';\n\n/**\n * Tannin constructor options.\n *\n * @typedef {Object} TanninOptions\n *\n * @property {string} [contextDelimiter] Joiner in string lookup with context.\n * @property {Function} [onMissingKey] Callback to invoke when key missing.\n */\n\n/**\n * Domain metadata.\n *\n * @typedef {Object} TanninDomainMetadata\n *\n * @property {string} [domain] Domain name.\n * @property {string} [lang] Language code.\n * @property {(string|Function)} [plural_forms] Plural forms expression or\n * function evaluator.\n */\n\n/**\n * Domain translation pair respectively representing the singular and plural\n * translation.\n *\n * @typedef {[string,string]} TanninTranslation\n */\n\n/**\n * Locale data domain. The key is used as reference for lookup, the value an\n * array of two string entries respectively representing the singular and plural\n * translation.\n *\n * @typedef {{[key:string]:TanninDomainMetadata|TanninTranslation,'':TanninDomainMetadata|TanninTranslation}} TanninLocaleDomain\n */\n\n/**\n * Jed-formatted locale data.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @typedef {{[domain:string]:TanninLocaleDomain}} TanninLocaleData\n */\n\n/**\n * Default Tannin constructor options.\n *\n * @type {TanninOptions}\n */\nvar DEFAULT_OPTIONS = {\n\tcontextDelimiter: '\\u0004',\n\tonMissingKey: null,\n};\n\n/**\n * Given a specific locale data's config `plural_forms` value, returns the\n * expression.\n *\n * @example\n *\n * ```\n * getPluralExpression( 'nplurals=2; plural=(n != 1);' ) === '(n != 1)'\n * ```\n *\n * @param {string} pf Locale data plural forms.\n *\n * @return {string} Plural forms expression.\n */\nfunction getPluralExpression( pf ) {\n\tvar parts, i, part;\n\n\tparts = pf.split( ';' );\n\n\tfor ( i = 0; i < parts.length; i++ ) {\n\t\tpart = parts[ i ].trim();\n\t\tif ( part.indexOf( 'plural=' ) === 0 ) {\n\t\t\treturn part.substr( 7 );\n\t\t}\n\t}\n}\n\n/**\n * Tannin constructor.\n *\n * @class\n *\n * @param {TanninLocaleData} data Jed-formatted locale data.\n * @param {TanninOptions} [options] Tannin options.\n */\nexport default function Tannin( data, options ) {\n\tvar key;\n\n\t/**\n\t * Jed-formatted locale data.\n\t *\n\t * @name Tannin#data\n\t * @type {TanninLocaleData}\n\t */\n\tthis.data = data;\n\n\t/**\n\t * Plural forms function cache, keyed by plural forms string.\n\t *\n\t * @name Tannin#pluralForms\n\t * @type {Object}\n\t */\n\tthis.pluralForms = {};\n\n\t/**\n\t * Effective options for instance, including defaults.\n\t *\n\t * @name Tannin#options\n\t * @type {TanninOptions}\n\t */\n\tthis.options = {};\n\n\tfor ( key in DEFAULT_OPTIONS ) {\n\t\tthis.options[ key ] = options !== undefined && key in options\n\t\t\t? options[ key ]\n\t\t\t: DEFAULT_OPTIONS[ key ];\n\t}\n}\n\n/**\n * Returns the plural form index for the given domain and value.\n *\n * @param {string} domain Domain on which to calculate plural form.\n * @param {number} n Value for which plural form is to be calculated.\n *\n * @return {number} Plural form index.\n */\nTannin.prototype.getPluralForm = function( domain, n ) {\n\tvar getPluralForm = this.pluralForms[ domain ],\n\t\tconfig, plural, pf;\n\n\tif ( ! getPluralForm ) {\n\t\tconfig = this.data[ domain ][ '' ];\n\n\t\tpf = (\n\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t// @ts-ignore\n\t\t\tconfig.plural_forms\n\t\t);\n\n\t\tif ( typeof pf !== 'function' ) {\n\t\t\tplural = getPluralExpression(\n\t\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t\t// @ts-ignore\n\t\t\t\tconfig.plural_forms\n\t\t\t);\n\n\t\t\tpf = pluralForms( plural );\n\t\t}\n\n\t\tgetPluralForm = this.pluralForms[ domain ] = pf;\n\t}\n\n\treturn getPluralForm( n );\n};\n\n/**\n * Translate a string.\n *\n * @param {string} domain Translation domain.\n * @param {string|void} context Context distinguishing terms of the same name.\n * @param {string} singular Primary key for translation lookup.\n * @param {string=} plural Fallback value used for non-zero plural\n * form index.\n * @param {number=} n Value to use in calculating plural form.\n *\n * @return {string} Translated string.\n */\nTannin.prototype.dcnpgettext = function( domain, context, singular, plural, n ) {\n\tvar index, key, entry;\n\n\tif ( n === undefined ) {\n\t\t// Default to singular.\n\t\tindex = 0;\n\t} else {\n\t\t// Find index by evaluating plural form for value.\n\t\tindex = this.getPluralForm( domain, n );\n\t}\n\n\tkey = singular;\n\n\t// If provided, context is prepended to key with delimiter.\n\tif ( context ) {\n\t\tkey = context + this.options.contextDelimiter + singular;\n\t}\n\n\tentry = this.data[ domain ][ key ];\n\n\t// Verify not only that entry exists, but that the intended index is within\n\t// range and non-empty.\n\tif ( entry && entry[ index ] ) {\n\t\treturn entry[ index ];\n\t}\n\n\tif ( this.options.onMissingKey ) {\n\t\tthis.options.onMissingKey( singular, domain );\n\t}\n\n\t// If entry not found, fall back to singular vs. plural with zero index\n\t// representing the singular value.\n\treturn index === 0 ? singular : plural;\n};\n","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { __ } from '@wordpress/i18n';\nimport frmStyleDependentUpdaterComponent from './styles/dependent-updater-component.js';\n\n/**\n * Represents the frmStyleOptions class.\n * @class\n */\nclass frmStyleOptions {\n\n\tconstructor() {\n\t\tthis.success = frmDom.success;\n\t\tthis.init();\n\t\tthis.initHover();\n\t}\n\n\t/**\n\t * Init the dependent\n\t */\n\tinit() {\n\t\tthis.initColorPickerDependentUpdaterComponents();\n\t\tthis.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) );\n\t}\n\n\t/**\n\t * Initializes the color picker dependent updater components.\n\t * Retrieves the components and elements, and adds them to the elements array.\n\t * Adds an action hook for the frm_style_options_color_change event.\n\t */\n\tinitColorPickerDependentUpdaterComponents() {\n\t\tconst components = document.querySelectorAll( '.frm-style-dependent-updater-component.frm-colorpicker' );\n\t\tconst elements = [];\n\n\t\tcomponents.forEach( ( component ) => {\n\t\t\tconst element = component.querySelector( 'input.hex' );\n\t\t\tconst id = 'undefined' !== typeof element ? element.getAttribute( 'id' ) : null;\n\n\t\t\tif ( null !== id ) {\n\t\t\t\telements.push({\n\t\t\t\t\tid: id,\n\t\t\t\t\tdependentUpdaterClass: new frmStyleDependentUpdaterComponent( component, 'colorpicker' )\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\twp.hooks.addAction( 'frm_style_options_color_change', 'formidable', ( { event, value } ) => {\n\t\t\tconst container = event.target.closest( '.wp-picker-container' );\n\t\t\tconst id = event.target.getAttribute( 'id' );\n\n\t\t\tcontainer.querySelector( '.wp-color-result-text' ).innerText = value;\n\n\t\t\telements.forEach( ( element ) => {\n\t\t\t\tif ( element.id === id ) {\n\t\t\t\t\telement.dependentUpdaterClass.updateAllDependentElements( value );\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the hover functionality for the style options.\n\t * Creates a hover element and appends it to the settingsWrapper.\n\t * Adds event listeners for mouseover and click events.\n\t */\n\tinitHover() {\n\t\tconst settingsWrapper = document.querySelector( '.frm-right-panel .styling_settings .accordion-container' );\n\t\tif ( null === settingsWrapper ) {\n\t\t\treturn;\n\t\t}\n\t\tconst hoverElement = document.createElement( 'div' );\n\t\thoverElement.classList.add( 'frm_hidden' );\n\t\thoverElement.classList.add( 'frm-style-settings-hover' );\n\t\tsettingsWrapper.appendChild( hoverElement );\n\n\t\tconst styleOptionsMenu = settingsWrapper.querySelector( ':scope > ul' );\n\n\t\tstyleOptionsMenu.querySelectorAll( ':scope > li' ).forEach( ( item ) => {\n\t\t\titem.querySelector('h3').addEventListener( 'mouseover', ( event ) => {\n\t\t\t\thoverElement.style.transform = `translateY(${event.target.closest('li').offsetTop}px)`;\n\t\t\t\thoverElement.classList.add( 'frm-animating' );\n\t\t\t\thoverElement.classList.remove( 'frm_hidden' );\n\t\t\t\tsetTimeout( () => { hoverElement.classList.remove( 'frm-animating' ); }, 250 );\n\t\t\t});\n\t\t});\n\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', () => {\n\t\t\t\thoverElement.classList.add( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the copy to clipboard functionality for style classes.\n\t * Adds a click event listener to the copyLabel element.\n\t * Copies the class name to the clipboard and displays a success message.\n\t * @param {string} successMessage - The success message to display.\n\t */\n\tinitStyleClassCopyToClipboard( successMessage ) {\n\t\tconst copyLabel = document.querySelector( '.frm-copy-text' );\n\t\tcopyLabel.addEventListener( 'click', ( event ) => {\n\t\t\tconst className = event.currentTarget.innerText;\n\t\t\tnavigator.clipboard.writeText( className ).then( () => {\n\t\t\t\tthis.success( successMessage );\n\t\t\t});\n\t\t})\n\t}\n}\n\nnew frmStyleOptions();\n"],"names":["frmStyleDependentUpdaterComponent","component","_classCallCheck","willChangeData","JSON","parse","dataset","willChange","data","propagateInputs","initPropagationList","changeEvent","Event","bubbles","error","console","_createClass","key","value","inputNames","list","forEach","name","input","document","querySelector","concat","push","updateAllDependentElements","dispatchEvent","default","__","frmStyleOptions","success","frmDom","init","initHover","initColorPickerDependentUpdaterComponents","initStyleClassCopyToClipboard","components","querySelectorAll","elements","element","id","getAttribute","dependentUpdaterClass","wp","hooks","addAction","_ref","event","container","target","closest","innerText","settingsWrapper","hoverElement","createElement","classList","add","appendChild","styleOptionsMenu","item","addEventListener","style","transform","offsetTop","remove","setTimeout","accordionitems","successMessage","_this","copyLabel","className","currentTarget","navigator","clipboard","writeText","then"],"sourceRoot":""} \ No newline at end of file diff --git a/webpack.config.js b/webpack.config.js index 0cb8975299..e8a08bfcf8 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -25,7 +25,8 @@ const config = { formidable_dashboard: './js/src/dashboard.js', 'onboarding-wizard': './js/src/onboarding-wizard/index.js', 'addons-page': './js/src/addons-page/index.js', - 'formidable-settings-components': './js/src/settings-components/settings-components.js', + formidable_styles: './js/src/admin/styles.js', + 'formidable-settings-components': './js/src/settings-components/index.js', }, output: { filename: '[name].js', From 2c1619ad58deff78c26ff6cc1e1925484a7eb18a Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 24 Mar 2025 14:02:26 +0300 Subject: [PATCH 008/230] Adjust and fix tabs navigator --- classes/views/frm-forms/add_field_links.php | 14 ++++++-- css/admin/frm-settings-components.css | 38 +++++++++++++-------- js/src/components/class-tabs-navigator.js | 16 ++++----- 3 files changed, 41 insertions(+), 27 deletions(-) diff --git a/classes/views/frm-forms/add_field_links.php b/classes/views/frm-forms/add_field_links.php index c3e8f8751f..defdf1fca0 100644 --- a/classes/views/frm-forms/add_field_links.php +++ b/classes/views/frm-forms/add_field_links.php @@ -7,13 +7,21 @@
- +
diff --git a/css/admin/frm-settings-components.css b/css/admin/frm-settings-components.css index fb69583e93..9cbcb4b849 100644 --- a/css/admin/frm-settings-components.css +++ b/css/admin/frm-settings-components.css @@ -432,31 +432,40 @@ justify-content: space-between; } -.frm-style-tabs-wrapper .frm-tabs-navs ul li { - flex: 1; +.frm-style-tabs-wrapper .frm-tabs-navs ul li, +.frm-style-tabs-wrapper .frm-tabs-navs ul li a { color: var( --grey-500 ); font-weight: 500; font-size: var(--text-sm); - cursor: pointer; - margin-bottom: 0px; - text-align: center; - height: 28px; line-height: 28px; - margin-top: 7px; } + +.frm-style-tabs-wrapper .frm-tabs-navs ul li { + flex: 1; + height: 28px; + text-align: center; + margin-top: var(--gap-xs); + margin-bottom: 0px; + cursor: pointer; +} + +.frm-style-tabs-wrapper .frm-tabs-navs ul li.frm-active, +.frm-style-tabs-wrapper .frm-tabs-navs ul li.frm-active a { + color: var(--grey-900); +} + .frm-style-tabs-wrapper .frm-tabs-navs ul li:first-child { - margin-left: var(--gap-2xs); + margin-left: var(--gap-xs); } + .frm-style-tabs-wrapper .frm-tabs-navs ul li:last-child { - margin-right: var(--gap-2xs); + margin-right: var(--gap-xs); } -.frm-style-tabs-wrapper .frm-tabs-navs ul li.frm-active { - color: var(--grey-900); -} .frm-style-tabs-wrapper { position: relative; } + .frm-style-tabs-wrapper .frm-tabs-delimiter { position: absolute; top: 0; @@ -480,10 +489,11 @@ } .frm-style-tabs-wrapper .frm-tabs-delimiter .frm-tabs-active-underline.frm-first { - left: var(--gap-2xs); + left: var(--gap-xs); } + .frm-style-tabs-wrapper .frm-tabs-delimiter .frm-tabs-active-underline.frm-last { - left: calc( -1 * var(--gap-2xs) ); + left: calc( -1 * var(--gap-xs) ); } .frm-tabs-container { diff --git a/js/src/components/class-tabs-navigator.js b/js/src/components/class-tabs-navigator.js index 5d63af5855..089efdccbc 100644 --- a/js/src/components/class-tabs-navigator.js +++ b/js/src/components/class-tabs-navigator.js @@ -32,9 +32,13 @@ export class frmTabsNavigator { } onNavClick( event, index ) { + const navItem = event.currentTarget; + + event.preventDefault(); + this.removeActiveClassnameFromNavs(); - event.target.classList.add( 'frm-active' ); - this.initSlideTrackUnderline( event.target, index ); + navItem.classList.add( 'frm-active' ); + this.initSlideTrackUnderline( navItem, index ); this.changeSlide( index ); } @@ -49,14 +53,6 @@ export class frmTabsNavigator { const activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) ) ; this.slideTrackLine.style.transform = `translateX(${activeNav.offsetLeft}px)`; this.slideTrackLine.style.width = activeNav.clientWidth + 'px'; - - if ( this.navs.length === index + 1 ) { - this.slideTrackLine.classList.add( 'frm-last' ); - return; - } - if ( 0 === index ) { - this.slideTrackLine.classList.add( 'frm-first' ); - } } changeSlide( index ) { From 89ba031e9508b48a8a0caaf4ccdbe2349d48634c Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 25 Mar 2025 13:57:18 +0300 Subject: [PATCH 009/230] Draft: settings.php --- .../views/frm-fields/back-end/settings.php | 23 +++---------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/classes/views/frm-fields/back-end/settings.php b/classes/views/frm-fields/back-end/settings.php index 68875e7b57..721994c5c7 100644 --- a/classes/views/frm-fields/back-end/settings.php +++ b/classes/views/frm-fields/back-end/settings.php @@ -178,32 +178,15 @@
- 1 ) { ?> - - - $data_value ) { ?> - data-="" - - - data-frmhide=".frm-inline-modal,.default-value-section-" - - > - - - - - show_default_value_setting( $field, $field_obj, $default_value_types, $display ); ?>
+ } - show_after_default( compact( 'field', 'display' ) ); ?> + $field_obj->show_after_default( compact( 'field', 'display' ) ); - + if ( $display['clear_on_focus'] ) { ?>

  • diff --git a/classes/models/fields/FrmFieldType.php b/classes/models/fields/FrmFieldType.php index e456180057..81d10405b7 100644 --- a/classes/models/fields/FrmFieldType.php +++ b/classes/models/fields/FrmFieldType.php @@ -639,7 +639,7 @@ protected function field_choices_heading( $args ) { esc_html__( '%s Options', 'formidable' ), esc_html( $all_field_types[ $args['display']['type'] ]['name'] ) ); - FrmAppHelper::icon_by_class( 'frmfont frm_arrowdown6_icon', array( 'aria-hidden' => 'true' ) ); + FrmAppHelper::icon_by_class( 'frmfont frm_arrowdown8_icon frm_svg13', array( 'aria-hidden' => 'true' ) ); ?>
    @@ -186,7 +186,8 @@ $field_obj->show_after_default( compact( 'field', 'display' ) ); - if ( $display['clear_on_focus'] ) { ?> + if ( $display['clear_on_focus'] ) { + ?>

    - + " aria-controls="collapsible-section"> 'true' ) ); + FrmAppHelper::icon_by_class( 'frmfont frm_arrowdown8_icon frm_svg13', array( 'aria-hidden' => 'true' ) ); ?> diff --git a/css/admin/frm-settings-components.css b/css/admin/frm-settings-components.css index 9cbcb4b849..7a15a69bf6 100644 --- a/css/admin/frm-settings-components.css +++ b/css/admin/frm-settings-components.css @@ -1,14 +1,7 @@ -.frm-settings-panel { - padding: var(--gap-md); -} - .formidable_page_formidable-styles.js .control-section .accordion-section-title:focus { background: none; } -.formidable_page_formidable-styles .frm-right-panel .accordion-section-title svg.frmsvg:nth-child(1) { - width: 24px; - height: 24px; -} + .formidable_page_formidable-styles .frm-right-panel h3.accordion-section-title:hover > svg:last-child, .formidable_page_formidable-styles .frm-right-panel .open h3.accordion-section-title > svg:first-child, .formidable_page_formidable-styles .frm-right-panel .open h3.accordion-section-title > svg:last-child { diff --git a/css/frm_admin.css b/css/frm_admin.css index a209e655ad..060161829f 100644 --- a/css/frm_admin.css +++ b/css/frm_admin.css @@ -1143,7 +1143,6 @@ p.frm_has_shortcodes { margin-left: 20px; } -.frm-right-panel a.frm_add_logic_link, .frm-right-panel h3 { color: var(--grey-700); font-size: var(--text-lg); @@ -1152,9 +1151,10 @@ p.frm_has_shortcodes { } .frm-single-settings > h3:first-of-type { - border-bottom: 2px solid var(--sidebar-hover); + border-bottom: 1px solid var(--sidebar-hover); border-top: none; - padding-top: 0 !important; + padding: 0 0 var(--gap-sm) !important; + margin-bottom: var(--gap-xs); } .frm-flex-justify, @@ -1164,6 +1164,26 @@ p.frm_has_shortcodes { align-items: center; } +.frm-right-panel .frm-single-settings h3:not(:first-of-type), +.frm-right-panel .frm_validation_msg h3, +.frm-right-panel a.frm_add_logic_link { + font-size: var(--text-md); + color: var(--grey-500); + padding: var(--gap-sm); +} + +.frm-right-panel .frm-single-settings h3:not(:first-of-type):not(.frm-collapsed), +.frm-right-panel .frm_validation_msg h3:not(.frm-collapsed) { + color: var(--grey-900); + background-color: #fff; + border-radius: var(--small-radius); + box-shadow: var(--box-shadow-sm); +} + +.frm-right-panel a.frm_add_logic_link:focus { + outline: auto; +} + .frm-right-panel h3 i { color: var(--grey-700); float: right; @@ -1171,6 +1191,14 @@ p.frm_has_shortcodes { cursor: pointer; } +#wpbody-content .frm-right-panel label { + margin-bottom: 6px; +} + +.frm-right-panel h3 .frm-sub-label { + color: var(--grey-400); +} + /* right sidebar */ #post-body-content + .frm-right-panel { flex: 0 0 var(--medium-sidebar); @@ -3330,7 +3358,6 @@ li[data-preview] .frm-hover-icons .frm-preview-form { margin-top: var(--gap-sm); } -.frm-collapsed .frmsvg, .caret.rotate-270, .frm-embed-modal-option .caret { align-self: center; @@ -4394,7 +4421,17 @@ label input[type="checkbox"], label input[type="radio"] { font-size: inherit; } -.frm-right-panel a.frm_add_logic_link { +.frm-settings-panel { + padding: var(--gap-sm); +} + +#frm-options-panel { + padding: 0 var(--gap-sm); + color: var(--grey-900); +} + +.frm-right-panel a.frm_add_logic_link, +#frm-options-panel h3 { padding: 15px 0; margin-top: -2px; } @@ -6105,11 +6142,6 @@ a.frm_add_logic_link.frm_hidden { display: none; } -.frm_add_logic_link .frmsvg, -.frm_add_logic_link i { - margin-right: 5px; -} - .frm_icon_font { color: #A0A0A0; color: var(--grey); @@ -6888,7 +6920,6 @@ li.selected .divider_section_only:before { .frm-collapsed + div { height: 0; padding: 0; - border-bottom: 2px solid var(--sidebar-hover); } .frm_sorting .divider_section_only > .frm_ipe_field_label { @@ -7870,6 +7901,11 @@ input[disabled], height: 40px; } +.frmsvg.frm_svg24 { + width: 24px; + height: 24px; +} + .frmsvg.frm_svg20 { width: 20px; height: 20px; @@ -8398,7 +8434,7 @@ button.frm_choose_image_box, .field-group select, .frm-fields .frm-input-field { outline: 0; - box-shadow: none; + box-shadow: var(--box-shadow-xs); border-radius: var(--small-radius); padding: 5px 14px; border-color: var(--grey-300); From 61a3feca7ecaeb79d9e45f5f31c412033ae76d57 Mon Sep 17 00:00:00 2001 From: Sherv Date: Fri, 25 Apr 2025 17:55:48 +0300 Subject: [PATCH 011/230] Merge remote-tracking branch 'origin/master' into rock/field-settings-refresh-lite --- .gitignore | 4 + .stylelintrc.json | 17 + changelog.txt | 12 + classes/controllers/FrmAppController.php | 14 + .../controllers/FrmFormActionsController.php | 2 +- classes/controllers/FrmFormsController.php | 22 +- classes/controllers/FrmHooksController.php | 2 + classes/controllers/FrmUsageController.php | 8 +- classes/helpers/FrmAppHelper.php | 122 +- classes/helpers/FrmEntriesListHelper.php | 16 +- classes/helpers/FrmFormsHelper.php | 8 +- .../FrmSerializedStringParserHelper.php | 4 +- classes/helpers/FrmStylesHelper.php | 4 +- classes/helpers/FrmTipsHelper.php | 47 +- classes/models/FrmEmail.php | 2 - classes/models/FrmEntryValidate.php | 4 +- classes/models/FrmFormTemplateApi.php | 6 +- classes/models/FrmUsage.php | 2 +- classes/models/fields/FrmFieldGdpr.php | 4 +- classes/models/fields/FrmFieldTextarea.php | 10 +- .../modals/code-from-email-modal.php | 2 +- classes/views/shared/small-device-message.php | 10 +- css/font_icons.css | 655 +----- css/frm_admin.css | 2 +- formidable.php | 2 +- js/admin/dom.js | 32 +- js/formidable.js | 2 +- js/formidable.min.js | 120 +- js/formidable_admin.js | 70 +- languages/formidable.pot | 713 ++++--- package-lock.json | 1856 +++++++++++++++-- package.json | 8 +- readme.txt | 19 +- resources/scss/admin/base/_variables.scss | 84 + .../scss/admin/base/typography/_font.scss | 27 + .../scss/admin/base/typography/_headings.scss | 34 + .../admin/base/typography/_howto-extends.scss | 12 + .../scss/admin/base/typography/_howto.scss | 9 + .../scss/admin/base/typography/_text.scss | 31 + .../scss/admin/components/_addon-compat.scss | 8 + .../scss/admin/components/_addon-tiles.scss | 92 + .../scss/admin/components/_admin_footer.scss | 41 + resources/scss/admin/components/_charts.scss | 11 + .../admin/components/_copied-frontend.scss | 43 + .../admin/components/_default-switcher.scss | 31 + .../scss/admin/components/_full-close.scss | 28 + .../scss/admin/components/_full-screen.scss | 33 + resources/scss/admin/components/_license.scss | 29 + .../scss/admin/components/_meta-tag.scss | 53 + .../scss/admin/components/_nav-tabs.scss | 80 + .../admin/components/_page-collapsed.scss | 83 + .../scss/admin/components/_pirate-forms.scss | 34 + .../admin/components/_publish-actions.scss | 18 + .../scss/admin/components/_scroll-box.scss | 17 + resources/scss/admin/components/_tooltip.scss | 200 ++ .../accordion/_accordion-title.scss | 8 + .../components/accordion/_accordion.scss | 73 + .../components/builder/_divider-icons.scss | 58 + .../components/builder/_divider-labels.scss | 23 + .../admin/components/builder/_dividers.scss | 124 ++ .../admin/components/builder/_field-box.scss | 9 + .../components/builder/_field-dragging.scss | 49 + .../builder/_field-group-message.scss | 33 + .../admin/components/builder/_form-rows.scss | 37 + .../components/builder/_insert-fields.scss | 166 ++ .../components/builder/_logic-fields.scss | 58 + .../components/builder/_submit-field.scss | 7 + .../builder/_ui-state-defaults.scss | 47 + .../components/builder/_where-options.scss | 40 + .../admin/components/button/_button-grey.scss | 12 + .../components/button/_button-group.scss | 7 + .../scss/admin/components/button/_button.scss | 304 +++ .../admin/components/button/_cb-button.scss | 10 + .../admin/components/button/_frm-button.scss | 27 + .../admin/components/button/_small-add.scss | 14 + .../admin/components/card/_card-item.scss | 20 + .../scss/admin/components/card/_card.scss | 77 + .../form-templates/_form-templates.scss | 11 + .../form-templates/_ready-made.scss | 25 + .../components/form/_editor-elements.scss | 18 + .../admin/components/form/_empty-fields.scss | 77 + .../form/_field-group-controls.scss | 46 + .../admin/components/form/_field-hover.scss | 14 + .../admin/components/form/_field-key.scss | 7 + .../admin/components/form/_field-labels.scss | 49 + .../admin/components/form/_fields-part2.scss | 124 ++ .../admin/components/form/_fields-part3.scss | 79 + .../scss/admin/components/form/_fields.scss | 207 ++ .../admin/components/form/_form-actions.scss | 312 +++ .../form/_form-editor-container.scss | 51 + .../admin/components/form/_form-editor.scss | 7 + .../admin/components/form/_form-error.scss | 29 + .../admin/components/form/_form-field.scss | 89 + .../admin/components/form/_form-inputs.scss | 11 + .../components/form/_general-form-styles.scss | 49 + .../admin/components/form/_html-field.scss | 27 + .../scss/admin/components/form/_html-tab.scss | 12 + .../admin/components/form/_input-icons.scss | 67 + .../components/form/_input-positioning.scss | 18 + .../scss/admin/components/form/_inputs.scss | 221 ++ .../scss/admin/components/form/_mce.scss | 14 + .../components/form/_not-set-fields.scss | 14 + .../admin/components/form/_option-box.scss | 44 + .../admin/components/form/_option-label.scss | 7 + .../components/form/_option-templates.scss | 27 + .../admin/components/form/_rte-textarea.scss | 18 + .../scss/admin/components/form/_rte.scss | 11 + .../components/form/_shortcode-select.scss | 25 + .../scss/admin/components/form/_subform.scss | 25 + .../components/form/_toggle-components.scss | 190 ++ .../components/form/_validation-error.scss | 25 + .../components/icons/_circled-icons.scss | 50 + .../admin/components/icons/_icon-font.scss | 138 ++ .../admin/components/image/_frm-help.scss | 9 + .../components/image/_image-components.scss | 65 + .../components/image/_image-from-url.scss | 12 + .../components/info/_advanced-info-panel.scss | 23 + .../components/links/_affiliate-link.scss | 7 + .../components/links/_external-links.scss | 16 + .../admin/components/links/_link-styles.scss | 22 + .../scss/admin/components/links/_links.scss | 31 + .../admin/components/list/_code-list.scss | 131 ++ .../admin/components/list/_short-list.scss | 8 + .../admin/components/list/_subsubsub.scss | 13 + .../admin/components/list/_tag-checklist.scss | 25 + .../admin/components/list/_template-list.scss | 208 ++ .../admin/components/list/_upgrade-list.scss | 56 + .../components/loading/_field-loading.scss | 19 + .../admin/components/loading/_loading.scss | 121 ++ .../admin/components/modal/_bulk-modal.scss | 15 + .../admin/components/modal/_bulk-options.scss | 40 + .../scss/admin/components/modal/_dialog.scss | 60 + .../admin/components/modal/_embed-modal.scss | 91 + .../admin/components/modal/_error-modal.scss | 29 + .../components/modal/_field-group-popup.scss | 103 + .../admin/components/modal/_field-popup.scss | 35 + .../components/modal/_form-templates.scss | 47 + .../admin/components/modal/_info-modals.scss | 46 + .../admin/components/modal/_inline-modal.scss | 23 + .../components/modal/_inline-modals.scss | 18 + .../components/modal/_modal-actions.scss | 12 + .../scss/admin/components/modal/_modal.scss | 103 + .../components/notifications/_banner.scss | 43 + .../notifications/_call-to-action.scss | 150 ++ .../notifications/_feature-banner.scss | 39 + .../notifications/_message-styles.scss | 167 ++ .../notifications/_notification-settings.scss | 115 + .../notifications/_review-request.scss | 122 ++ .../components/notifications/_update-msg.scss | 48 + .../admin/components/option/_indent-opt.scss | 7 + .../components/option/_single-option.scss | 67 + .../panel/_customization-panel.scss | 42 + .../components/panel/_options-panel.scss | 18 + .../panel/_settings-components.scss | 185 ++ .../admin/components/panel/_tabs-panel.scss | 9 + .../components/search/_admin-search.scss | 23 + .../components/search/_search-inputs.scss | 57 + .../admin/components/select/_dropdown.scss | 255 +++ .../components/select/_multiselect-popup.scss | 79 + .../admin/components/select/_multiselect.scss | 43 + .../admin/components/select/_select-box.scss | 32 + .../admin/components/settings/_adv-info.scss | 84 + .../components/settings/_category-tabs.scss | 40 + .../components/settings/_field-choices.scss | 29 + .../settings/_form-settings-widget.scss | 52 + .../components/settings/_form-settings.scss | 69 + .../components/settings/_global-settings.scss | 122 ++ .../components/settings/_has-shortcodes.scss | 29 + .../settings/_on-submit-action.scss | 37 + .../settings/_order-where-rows.scss | 14 + .../components/settings/_product-fields.scss | 22 + .../settings/_welcome-image-options.scss | 13 + .../components/sorting/_field-sorting.scss | 57 + .../sorting/_sortable-placeholder.scss | 44 + .../components/sorting/_sorting-display.scss | 40 + .../components/sorting/_sorting-form.scss | 11 + .../admin/components/sorting/_ui-icon.scss | 7 + .../components/sorting/_widget-sorting.scss | 50 + .../components/table/_admin-columns.scss | 17 + .../admin/components/table/_alt-table.scss | 47 + .../admin/components/table/_elements.scss | 19 + .../admin/components/table/_grid-table.scss | 10 + .../scss/admin/components/table/_row.scss | 11 + .../admin/components/table/_table-styles.scss | 7 + .../admin/components/table/_tablenav.scss | 17 + .../scss/admin/components/table/_widefat.scss | 27 + .../upgrade/_upgrade-bar-elements.scss | 29 + .../components/upgrade/_upgrade-bar.scss | 66 + .../components/upgrade/_upgrade-modal.scss | 12 + .../components/upgrade/_upgrade-pro.scss | 13 + resources/scss/admin/frm_admin.scss | 266 +++ .../scss/admin/layout/_page-skeleton.scss | 91 + resources/scss/admin/layout/_postbox.scss | 23 + .../layout/container/_columns-elements.scss | 60 + .../scss/admin/layout/container/_columns.scss | 11 + .../admin/layout/container/_container.scss | 48 + .../admin/layout/grid/_column-layout.scss | 26 + .../scss/admin/layout/page/_admin-page.scss | 27 + resources/scss/admin/layout/page/_body.scss | 30 + .../admin/layout/page/_editor-overrides.scss | 63 + .../scss/admin/layout/page/_entry-page.scss | 80 + .../admin/layout/page/_import-export.scss | 16 + .../admin/layout/page/_list-entry-page.scss | 11 + .../scss/admin/layout/page/_no-entries.scss | 20 + .../scss/admin/layout/page/_reports-info.scss | 50 + .../scss/admin/layout/page/_reports-page.scss | 45 + .../scss/admin/layout/page/_screen-meta.scss | 41 + .../admin/layout/page/_single-entry-page.scss | 11 + .../admin/layout/page/_views-admin-icons.scss | 20 + .../admin/layout/page/_views-admin-tabs.scss | 31 + .../admin/layout/page/_views-page-admin.scss | 70 + .../scss/admin/layout/page/_views-page.scss | 7 + resources/scss/admin/layout/page/_wrap.scss | 25 + .../layout/sidebar/_sidebar-elements.scss | 13 + .../scss/admin/layout/sidebar/_sidebar.scss | 102 + .../scss/admin/layout/top-bar/_elements.scss | 59 + .../admin/layout/top-bar/_navigation.scss | 93 + .../admin/layout/top-bar/_publishing.scss | 19 + .../scss/admin/layout/top-bar/_top-bar.scss | 25 + .../scss/admin/media-queries/_print.scss | 90 + .../admin/media-queries/_screen-desktop.scss | 32 + .../admin/media-queries/_screen-laptop.scss | 161 ++ .../admin/media-queries/_screen-mobile.scss | 153 ++ .../admin/media-queries/_screen-tablet.scss | 156 ++ .../utilities/Interactivity/_cursor.scss | 7 + .../scss/admin/utilities/_background.scss | 7 + resources/scss/admin/utilities/_clearfix.scss | 39 + .../utilities/_forced-generic-classes.scss | 37 + .../scss/admin/utilities/_helper-classes.scss | 28 + resources/scss/admin/utilities/_rtl.scss | 110 + .../scss/admin/utilities/_scrollbars.scss | 54 + .../admin/utilities/border/_border-light.scss | 7 + .../utilities/border/_border-radius.scss | 7 + .../scss/admin/utilities/border/_border.scss | 11 + .../admin/utilities/effects/_animate.scss | 7 + .../admin/utilities/effects/_box-shadow.scss | 7 + .../scss/admin/utilities/effects/_fade.scss | 8 + .../admin/utilities/effects/_opacity.scss | 7 + .../admin/utilities/effects/_transform.scss | 7 + .../admin/utilities/effects/_transition.scss | 7 + .../scss/admin/utilities/layout/_box.scss | 9 + .../scss/admin/utilities/layout/_display.scss | 16 + .../scss/admin/utilities/layout/_flex.scss | 85 + .../scss/admin/utilities/layout/_float.scss | 7 + .../scss/admin/utilities/layout/_grid.scss | 23 + .../admin/utilities/layout/_visibility.scss | 8 + .../utilities/layout/_z-index-helpers.scss | 7 + .../scss/admin/utilities/layout/_z-index.scss | 11 + .../scss/admin/utilities/sizing/_width.scss | 15 + .../scss/admin/utilities/spacing/_margin.scss | 110 + .../admin/utilities/spacing/_padding.scss | 79 + .../utilities/typography/_font-size.scss | 23 + .../utilities/typography/_font-weight.scss | 11 + .../typography/_text-align-part2.scss | 7 + .../utilities/typography/_text-align.scss | 8 + .../utilities/typography/_text-color.scss | 27 + .../utilities/typography/_text-overflow.scss | 19 + .../utilities/typography/_text-transform.scss | 7 + .../utilities/typography/_vertical-align.scss | 7 + resources/scss/font_icons.scss | 851 ++++++++ webpack.config.js | 224 +- 261 files changed, 14390 insertions(+), 1513 deletions(-) create mode 100644 .stylelintrc.json create mode 100644 resources/scss/admin/base/_variables.scss create mode 100644 resources/scss/admin/base/typography/_font.scss create mode 100644 resources/scss/admin/base/typography/_headings.scss create mode 100644 resources/scss/admin/base/typography/_howto-extends.scss create mode 100644 resources/scss/admin/base/typography/_howto.scss create mode 100644 resources/scss/admin/base/typography/_text.scss create mode 100644 resources/scss/admin/components/_addon-compat.scss create mode 100644 resources/scss/admin/components/_addon-tiles.scss create mode 100644 resources/scss/admin/components/_admin_footer.scss create mode 100644 resources/scss/admin/components/_charts.scss create mode 100644 resources/scss/admin/components/_copied-frontend.scss create mode 100644 resources/scss/admin/components/_default-switcher.scss create mode 100644 resources/scss/admin/components/_full-close.scss create mode 100644 resources/scss/admin/components/_full-screen.scss create mode 100644 resources/scss/admin/components/_license.scss create mode 100644 resources/scss/admin/components/_meta-tag.scss create mode 100644 resources/scss/admin/components/_nav-tabs.scss create mode 100644 resources/scss/admin/components/_page-collapsed.scss create mode 100644 resources/scss/admin/components/_pirate-forms.scss create mode 100644 resources/scss/admin/components/_publish-actions.scss create mode 100644 resources/scss/admin/components/_scroll-box.scss create mode 100644 resources/scss/admin/components/_tooltip.scss create mode 100644 resources/scss/admin/components/accordion/_accordion-title.scss create mode 100644 resources/scss/admin/components/accordion/_accordion.scss create mode 100644 resources/scss/admin/components/builder/_divider-icons.scss create mode 100644 resources/scss/admin/components/builder/_divider-labels.scss create mode 100644 resources/scss/admin/components/builder/_dividers.scss create mode 100644 resources/scss/admin/components/builder/_field-box.scss create mode 100644 resources/scss/admin/components/builder/_field-dragging.scss create mode 100644 resources/scss/admin/components/builder/_field-group-message.scss create mode 100644 resources/scss/admin/components/builder/_form-rows.scss create mode 100644 resources/scss/admin/components/builder/_insert-fields.scss create mode 100644 resources/scss/admin/components/builder/_logic-fields.scss create mode 100644 resources/scss/admin/components/builder/_submit-field.scss create mode 100644 resources/scss/admin/components/builder/_ui-state-defaults.scss create mode 100644 resources/scss/admin/components/builder/_where-options.scss create mode 100644 resources/scss/admin/components/button/_button-grey.scss create mode 100644 resources/scss/admin/components/button/_button-group.scss create mode 100644 resources/scss/admin/components/button/_button.scss create mode 100644 resources/scss/admin/components/button/_cb-button.scss create mode 100644 resources/scss/admin/components/button/_frm-button.scss create mode 100644 resources/scss/admin/components/button/_small-add.scss create mode 100644 resources/scss/admin/components/card/_card-item.scss create mode 100644 resources/scss/admin/components/card/_card.scss create mode 100644 resources/scss/admin/components/form-templates/_form-templates.scss create mode 100644 resources/scss/admin/components/form-templates/_ready-made.scss create mode 100644 resources/scss/admin/components/form/_editor-elements.scss create mode 100644 resources/scss/admin/components/form/_empty-fields.scss create mode 100644 resources/scss/admin/components/form/_field-group-controls.scss create mode 100644 resources/scss/admin/components/form/_field-hover.scss create mode 100644 resources/scss/admin/components/form/_field-key.scss create mode 100644 resources/scss/admin/components/form/_field-labels.scss create mode 100644 resources/scss/admin/components/form/_fields-part2.scss create mode 100644 resources/scss/admin/components/form/_fields-part3.scss create mode 100644 resources/scss/admin/components/form/_fields.scss create mode 100644 resources/scss/admin/components/form/_form-actions.scss create mode 100644 resources/scss/admin/components/form/_form-editor-container.scss create mode 100644 resources/scss/admin/components/form/_form-editor.scss create mode 100644 resources/scss/admin/components/form/_form-error.scss create mode 100644 resources/scss/admin/components/form/_form-field.scss create mode 100644 resources/scss/admin/components/form/_form-inputs.scss create mode 100644 resources/scss/admin/components/form/_general-form-styles.scss create mode 100644 resources/scss/admin/components/form/_html-field.scss create mode 100644 resources/scss/admin/components/form/_html-tab.scss create mode 100644 resources/scss/admin/components/form/_input-icons.scss create mode 100644 resources/scss/admin/components/form/_input-positioning.scss create mode 100644 resources/scss/admin/components/form/_inputs.scss create mode 100644 resources/scss/admin/components/form/_mce.scss create mode 100644 resources/scss/admin/components/form/_not-set-fields.scss create mode 100644 resources/scss/admin/components/form/_option-box.scss create mode 100644 resources/scss/admin/components/form/_option-label.scss create mode 100644 resources/scss/admin/components/form/_option-templates.scss create mode 100644 resources/scss/admin/components/form/_rte-textarea.scss create mode 100644 resources/scss/admin/components/form/_rte.scss create mode 100644 resources/scss/admin/components/form/_shortcode-select.scss create mode 100644 resources/scss/admin/components/form/_subform.scss create mode 100644 resources/scss/admin/components/form/_toggle-components.scss create mode 100644 resources/scss/admin/components/form/_validation-error.scss create mode 100644 resources/scss/admin/components/icons/_circled-icons.scss create mode 100644 resources/scss/admin/components/icons/_icon-font.scss create mode 100644 resources/scss/admin/components/image/_frm-help.scss create mode 100644 resources/scss/admin/components/image/_image-components.scss create mode 100644 resources/scss/admin/components/image/_image-from-url.scss create mode 100644 resources/scss/admin/components/info/_advanced-info-panel.scss create mode 100644 resources/scss/admin/components/links/_affiliate-link.scss create mode 100644 resources/scss/admin/components/links/_external-links.scss create mode 100644 resources/scss/admin/components/links/_link-styles.scss create mode 100644 resources/scss/admin/components/links/_links.scss create mode 100644 resources/scss/admin/components/list/_code-list.scss create mode 100644 resources/scss/admin/components/list/_short-list.scss create mode 100644 resources/scss/admin/components/list/_subsubsub.scss create mode 100644 resources/scss/admin/components/list/_tag-checklist.scss create mode 100644 resources/scss/admin/components/list/_template-list.scss create mode 100644 resources/scss/admin/components/list/_upgrade-list.scss create mode 100644 resources/scss/admin/components/loading/_field-loading.scss create mode 100644 resources/scss/admin/components/loading/_loading.scss create mode 100644 resources/scss/admin/components/modal/_bulk-modal.scss create mode 100644 resources/scss/admin/components/modal/_bulk-options.scss create mode 100644 resources/scss/admin/components/modal/_dialog.scss create mode 100644 resources/scss/admin/components/modal/_embed-modal.scss create mode 100644 resources/scss/admin/components/modal/_error-modal.scss create mode 100644 resources/scss/admin/components/modal/_field-group-popup.scss create mode 100644 resources/scss/admin/components/modal/_field-popup.scss create mode 100644 resources/scss/admin/components/modal/_form-templates.scss create mode 100644 resources/scss/admin/components/modal/_info-modals.scss create mode 100644 resources/scss/admin/components/modal/_inline-modal.scss create mode 100644 resources/scss/admin/components/modal/_inline-modals.scss create mode 100644 resources/scss/admin/components/modal/_modal-actions.scss create mode 100644 resources/scss/admin/components/modal/_modal.scss create mode 100644 resources/scss/admin/components/notifications/_banner.scss create mode 100644 resources/scss/admin/components/notifications/_call-to-action.scss create mode 100644 resources/scss/admin/components/notifications/_feature-banner.scss create mode 100644 resources/scss/admin/components/notifications/_message-styles.scss create mode 100644 resources/scss/admin/components/notifications/_notification-settings.scss create mode 100644 resources/scss/admin/components/notifications/_review-request.scss create mode 100644 resources/scss/admin/components/notifications/_update-msg.scss create mode 100644 resources/scss/admin/components/option/_indent-opt.scss create mode 100644 resources/scss/admin/components/option/_single-option.scss create mode 100644 resources/scss/admin/components/panel/_customization-panel.scss create mode 100644 resources/scss/admin/components/panel/_options-panel.scss create mode 100644 resources/scss/admin/components/panel/_settings-components.scss create mode 100644 resources/scss/admin/components/panel/_tabs-panel.scss create mode 100644 resources/scss/admin/components/search/_admin-search.scss create mode 100644 resources/scss/admin/components/search/_search-inputs.scss create mode 100644 resources/scss/admin/components/select/_dropdown.scss create mode 100644 resources/scss/admin/components/select/_multiselect-popup.scss create mode 100644 resources/scss/admin/components/select/_multiselect.scss create mode 100644 resources/scss/admin/components/select/_select-box.scss create mode 100644 resources/scss/admin/components/settings/_adv-info.scss create mode 100644 resources/scss/admin/components/settings/_category-tabs.scss create mode 100644 resources/scss/admin/components/settings/_field-choices.scss create mode 100644 resources/scss/admin/components/settings/_form-settings-widget.scss create mode 100644 resources/scss/admin/components/settings/_form-settings.scss create mode 100644 resources/scss/admin/components/settings/_global-settings.scss create mode 100644 resources/scss/admin/components/settings/_has-shortcodes.scss create mode 100644 resources/scss/admin/components/settings/_on-submit-action.scss create mode 100644 resources/scss/admin/components/settings/_order-where-rows.scss create mode 100644 resources/scss/admin/components/settings/_product-fields.scss create mode 100644 resources/scss/admin/components/settings/_welcome-image-options.scss create mode 100644 resources/scss/admin/components/sorting/_field-sorting.scss create mode 100644 resources/scss/admin/components/sorting/_sortable-placeholder.scss create mode 100644 resources/scss/admin/components/sorting/_sorting-display.scss create mode 100644 resources/scss/admin/components/sorting/_sorting-form.scss create mode 100644 resources/scss/admin/components/sorting/_ui-icon.scss create mode 100644 resources/scss/admin/components/sorting/_widget-sorting.scss create mode 100644 resources/scss/admin/components/table/_admin-columns.scss create mode 100644 resources/scss/admin/components/table/_alt-table.scss create mode 100644 resources/scss/admin/components/table/_elements.scss create mode 100644 resources/scss/admin/components/table/_grid-table.scss create mode 100644 resources/scss/admin/components/table/_row.scss create mode 100644 resources/scss/admin/components/table/_table-styles.scss create mode 100644 resources/scss/admin/components/table/_tablenav.scss create mode 100644 resources/scss/admin/components/table/_widefat.scss create mode 100644 resources/scss/admin/components/upgrade/_upgrade-bar-elements.scss create mode 100644 resources/scss/admin/components/upgrade/_upgrade-bar.scss create mode 100644 resources/scss/admin/components/upgrade/_upgrade-modal.scss create mode 100644 resources/scss/admin/components/upgrade/_upgrade-pro.scss create mode 100644 resources/scss/admin/frm_admin.scss create mode 100644 resources/scss/admin/layout/_page-skeleton.scss create mode 100644 resources/scss/admin/layout/_postbox.scss create mode 100644 resources/scss/admin/layout/container/_columns-elements.scss create mode 100644 resources/scss/admin/layout/container/_columns.scss create mode 100644 resources/scss/admin/layout/container/_container.scss create mode 100644 resources/scss/admin/layout/grid/_column-layout.scss create mode 100644 resources/scss/admin/layout/page/_admin-page.scss create mode 100644 resources/scss/admin/layout/page/_body.scss create mode 100644 resources/scss/admin/layout/page/_editor-overrides.scss create mode 100644 resources/scss/admin/layout/page/_entry-page.scss create mode 100644 resources/scss/admin/layout/page/_import-export.scss create mode 100644 resources/scss/admin/layout/page/_list-entry-page.scss create mode 100644 resources/scss/admin/layout/page/_no-entries.scss create mode 100644 resources/scss/admin/layout/page/_reports-info.scss create mode 100644 resources/scss/admin/layout/page/_reports-page.scss create mode 100644 resources/scss/admin/layout/page/_screen-meta.scss create mode 100644 resources/scss/admin/layout/page/_single-entry-page.scss create mode 100644 resources/scss/admin/layout/page/_views-admin-icons.scss create mode 100644 resources/scss/admin/layout/page/_views-admin-tabs.scss create mode 100644 resources/scss/admin/layout/page/_views-page-admin.scss create mode 100644 resources/scss/admin/layout/page/_views-page.scss create mode 100644 resources/scss/admin/layout/page/_wrap.scss create mode 100644 resources/scss/admin/layout/sidebar/_sidebar-elements.scss create mode 100644 resources/scss/admin/layout/sidebar/_sidebar.scss create mode 100644 resources/scss/admin/layout/top-bar/_elements.scss create mode 100644 resources/scss/admin/layout/top-bar/_navigation.scss create mode 100644 resources/scss/admin/layout/top-bar/_publishing.scss create mode 100644 resources/scss/admin/layout/top-bar/_top-bar.scss create mode 100644 resources/scss/admin/media-queries/_print.scss create mode 100644 resources/scss/admin/media-queries/_screen-desktop.scss create mode 100644 resources/scss/admin/media-queries/_screen-laptop.scss create mode 100644 resources/scss/admin/media-queries/_screen-mobile.scss create mode 100644 resources/scss/admin/media-queries/_screen-tablet.scss create mode 100644 resources/scss/admin/utilities/Interactivity/_cursor.scss create mode 100644 resources/scss/admin/utilities/_background.scss create mode 100644 resources/scss/admin/utilities/_clearfix.scss create mode 100644 resources/scss/admin/utilities/_forced-generic-classes.scss create mode 100644 resources/scss/admin/utilities/_helper-classes.scss create mode 100644 resources/scss/admin/utilities/_rtl.scss create mode 100644 resources/scss/admin/utilities/_scrollbars.scss create mode 100644 resources/scss/admin/utilities/border/_border-light.scss create mode 100644 resources/scss/admin/utilities/border/_border-radius.scss create mode 100644 resources/scss/admin/utilities/border/_border.scss create mode 100644 resources/scss/admin/utilities/effects/_animate.scss create mode 100644 resources/scss/admin/utilities/effects/_box-shadow.scss create mode 100644 resources/scss/admin/utilities/effects/_fade.scss create mode 100644 resources/scss/admin/utilities/effects/_opacity.scss create mode 100644 resources/scss/admin/utilities/effects/_transform.scss create mode 100644 resources/scss/admin/utilities/effects/_transition.scss create mode 100644 resources/scss/admin/utilities/layout/_box.scss create mode 100644 resources/scss/admin/utilities/layout/_display.scss create mode 100644 resources/scss/admin/utilities/layout/_flex.scss create mode 100644 resources/scss/admin/utilities/layout/_float.scss create mode 100644 resources/scss/admin/utilities/layout/_grid.scss create mode 100644 resources/scss/admin/utilities/layout/_visibility.scss create mode 100644 resources/scss/admin/utilities/layout/_z-index-helpers.scss create mode 100644 resources/scss/admin/utilities/layout/_z-index.scss create mode 100644 resources/scss/admin/utilities/sizing/_width.scss create mode 100644 resources/scss/admin/utilities/spacing/_margin.scss create mode 100644 resources/scss/admin/utilities/spacing/_padding.scss create mode 100644 resources/scss/admin/utilities/typography/_font-size.scss create mode 100644 resources/scss/admin/utilities/typography/_font-weight.scss create mode 100644 resources/scss/admin/utilities/typography/_text-align-part2.scss create mode 100644 resources/scss/admin/utilities/typography/_text-align.scss create mode 100644 resources/scss/admin/utilities/typography/_text-color.scss create mode 100644 resources/scss/admin/utilities/typography/_text-overflow.scss create mode 100644 resources/scss/admin/utilities/typography/_text-transform.scss create mode 100644 resources/scss/admin/utilities/typography/_vertical-align.scss create mode 100644 resources/scss/font_icons.scss diff --git a/.gitignore b/.gitignore index e5e24d57a4..eeb1e6cc24 100755 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,9 @@ languages/formidable-js.pot languages/formidable-js-strings.php js/*.js.LICENSE.txt +# Ignore map files +**/*.css.map + # Node node_modules node_modules/* @@ -30,3 +33,4 @@ composer.lock sonar-project.properties .sonar_lock report-task.txt + diff --git a/.stylelintrc.json b/.stylelintrc.json new file mode 100644 index 0000000000..bc653169a6 --- /dev/null +++ b/.stylelintrc.json @@ -0,0 +1,17 @@ +{ + "extends": "@wordpress/stylelint-config/scss", + "rules": { + "no-descending-specificity": null, + "selector-class-pattern": null, + "selector-id-pattern": null, + "font-family-name-quotes": null, + "function-url-quotes": null, + "value-keyword-case": [ + "lower", + { + "camelCaseSvgKeywords": true, + "ignoreFunctions": ["currentColor"] + } + ] + } +} diff --git a/changelog.txt b/changelog.txt index 50864ddca2..486b7cb2df 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,4 +1,16 @@ == Changelog == += 6.20 = +* Security: Shortcodes in emails would process more than once. +* New: Over 30 free form templates are now available automatically for all users that would previously require a code sent through email. +* New: Admin pages have been modified to work better on smaller screen sizes. +* New: The GDPR field agreement text now supports links. +* Fix: Additional checks have been added to ensure that a GDPR field is always required. +* Fix: A Passing null to parameter deprecated message when viewing GDPR field settings has been fixed. +* Fix: A conflict with WPML would cause querying issues resulting in empty results when checking for form actions. This would cause the fallback confirmation action to appear even when there were valid confirmation actions in a form. +* Additional validation has been checked when outputting CSS variables when generating a stylesheet to help make sure the generated CSS is valid. +* Some additional validation has been added to help prevent issues where invalid serialized data would cause partial serialized strings to appear in setting values. +* The preview page for the contact form that gets installed automatically on every site is now automatically blocked from anyone without access to view the forms list. In addition, the preview page will no longer display a form when an incorrect key is used. This is to help prevent spam that targets the default form. A new frm_block_preview filter has been added which can be used to unblock the default form, and to block additional forms. + = 6.19 = * New: A new Enable GDPR related features and enhancements setting has been added to Global Settings. When enabled, a new GDPR field is available in the form builder. The GDPR field is a special required checkbox field that must be checked in order for the form to be submitted. * New: Sorting preferences are now remembered on the Forms and Entries list admin pages. Forms are now also automatically sorted with the newest forms at the top. diff --git a/classes/controllers/FrmAppController.php b/classes/controllers/FrmAppController.php index ea4b28eeca..afcd3207ce 100644 --- a/classes/controllers/FrmAppController.php +++ b/classes/controllers/FrmAppController.php @@ -1513,4 +1513,18 @@ private static function add_missing_tables() { wp_safe_redirect( admin_url( 'admin.php?page=formidable' ) ); exit; } + + /** + * Handles the small screen proceed action. + * + * @since x.x + * + * @return void + */ + public static function small_screen_proceed() { + FrmAppHelper::permission_check( 'frm_view_forms' ); + check_ajax_referer( 'frm_ajax', 'nonce' ); + update_user_option( get_current_user_id(), 'frm_ignore_small_screen_warning', true ); + wp_send_json_success(); + } } diff --git a/classes/controllers/FrmFormActionsController.php b/classes/controllers/FrmFormActionsController.php index de3487aa05..b5657ae30d 100644 --- a/classes/controllers/FrmFormActionsController.php +++ b/classes/controllers/FrmFormActionsController.php @@ -671,7 +671,7 @@ public static function limit_by_type( $where ) { /** * Prevent WPML from filtering form actions based on the active language. * - * @since x.x + * @since 6.20 * * @param bool|null $null * @param string $post_type diff --git a/classes/controllers/FrmFormsController.php b/classes/controllers/FrmFormsController.php index 0af2d5414f..8279b62dc8 100644 --- a/classes/controllers/FrmFormsController.php +++ b/classes/controllers/FrmFormsController.php @@ -683,7 +683,7 @@ private static function load_direct_preview() { * Since this form is added by default and every site uses the same key, it is too easy * to guess this form. * - * @since x.x + * @since 6.20 * * @param string $form_key Form key. * @return void @@ -1140,12 +1140,14 @@ public static function display_forms_list( $params = array(), $message = '', $er * @return array */ public static function get_columns( $columns ) { - $columns['cb'] = ''; - $columns['name'] = esc_html__( 'Form Title', 'formidable' ); - $columns['entries'] = esc_html__( 'Entries', 'formidable' ); - $columns['id'] = 'ID'; - $columns['form_key'] = esc_html__( 'Key', 'formidable' ); - $columns['shortcode'] = esc_html__( 'Actions', 'formidable' ); + $columns['cb'] = ''; + $columns['name'] = esc_html__( 'Form Title', 'formidable' ); + $columns['entries'] = esc_html__( 'Entries', 'formidable' ); + $columns['id'] = 'ID'; + $columns['form_key'] = esc_html__( 'Key', 'formidable' ); + if ( 'trash' !== FrmAppHelper::simple_get( 'form_type' ) ) { + $columns['shortcode'] = esc_html__( 'Actions', 'formidable' ); + } $columns['created_at'] = esc_html__( 'Date', 'formidable' ); add_screen_option( @@ -1924,10 +1926,14 @@ public static function process_bulk_form_actions( $errors ) { /** * Includes html that shows a message when the device is too small to use Formidable Forms admin pages. * - * @since x.x + * @since 6.20 * @return void */ public static function include_device_too_small_message() { + if ( ! FrmAppHelper::is_formidable_admin() ) { + return; + } + include FrmAppHelper::plugin_path() . '/classes/views/shared/small-device-message.php'; } diff --git a/classes/controllers/FrmHooksController.php b/classes/controllers/FrmHooksController.php index 81ab03dc34..4cde742d79 100644 --- a/classes/controllers/FrmHooksController.php +++ b/classes/controllers/FrmHooksController.php @@ -301,6 +301,8 @@ public static function load_ajax_hooks() { // Reviews. add_action( 'wp_ajax_frm_dismiss_review', 'FrmAppController::dismiss_review' ); + + add_action( 'wp_ajax_frm_small_screen_proceed', 'FrmAppController::small_screen_proceed' ); } /** diff --git a/classes/controllers/FrmUsageController.php b/classes/controllers/FrmUsageController.php index cc1e76eb5f..e1f34f09a8 100644 --- a/classes/controllers/FrmUsageController.php +++ b/classes/controllers/FrmUsageController.php @@ -106,7 +106,13 @@ public static function load_scripts() { * @return bool */ private static function is_forms_list_page() { - return FrmAppHelper::is_admin_list_page(); + if ( ! FrmAppHelper::on_form_listing_page() ) { + return false; + } + + // Exclude Trash page. + $form_type = FrmAppHelper::simple_get( 'form_type' ); + return $form_type && 'published' === $form_type; } /** diff --git a/classes/helpers/FrmAppHelper.php b/classes/helpers/FrmAppHelper.php index 4c62fe6e24..59ff0dfb2f 100644 --- a/classes/helpers/FrmAppHelper.php +++ b/classes/helpers/FrmAppHelper.php @@ -29,7 +29,7 @@ class FrmAppHelper { * * @var string */ - public static $plug_version = '6.19'; + public static $plug_version = '6.20'; /** * @var bool @@ -340,20 +340,34 @@ public static function is_formidable_admin() { * @return bool */ public static function is_admin_list_page( $page = 'formidable' ) { + if ( 'formidable' === $page ) { + return self::on_form_listing_page(); + } + if ( ! self::is_admin_page( $page ) ) { return false; } - // Check Trash page. - $form_type = self::simple_get( 'form_type' ); - if ( $form_type && 'published' !== $form_type ) { - return false; + if ( 'formidable-entries' === $page ) { + $action = self::simple_get( 'frm_action' ); + if ( ! $action || in_array( $action, self::get_entries_listing_page_form_actions(), true ) ) { + return true; + } } // Check edit or settings page. return ! self::simple_get( 'frm_action' ); } + /** + * @since 6.20 + * + * @return array + */ + private static function get_entries_listing_page_form_actions() { + return array( 'list', 'destroy' ); + } + /** * Check for certain page in Formidable settings * @@ -1677,7 +1691,7 @@ public static function maybe_autocomplete_pages_options( $args ) { $pages_count = wp_count_posts( $args['post_type'] ); - if ( $pages_count->publish <= 50 ) { + if ( ! isset( $pages_count->publish ) || $pages_count->publish <= 50 ) { self::wp_pages_dropdown( $args ); return; } @@ -1702,6 +1716,101 @@ class="frm_autocomplete_value_input" false, + 'placeholder' => ' ', + 'name' => '', + 'id' => '', + 'selected' => '', + 'source' => array(), + 'dropdown_limit' => 50, + 'autocomplete_placeholder' => __( 'Select an option', 'formidable' ), + 'value_key' => 'value', + 'label_key' => 'label', + ); + + $args = wp_parse_args( $args, $defaults ); + + $html_attrs = array(); + if ( ! empty( $args['name'] ) ) { + $html_attrs['name'] = $args['name']; + } + + if ( ! empty( $args['id'] ) ) { + $html_attrs['id'] = $args['id']; + } + + if ( count( $args['source'] ) <= $args['dropdown_limit'] ) { + ?> + + $source ) { + $value_label = self::get_dropdown_value_and_label_from_option( $source, $key, $args ); + + if ( $value_label['value'] === $args['selected'] ) { + $autocomplete_value = $value_label['label']; + } + + $options[] = $value_label; + } + + $html_attrs['type'] = 'hidden'; + $html_attrs['class'] = 'frm_autocomplete_value_input'; + $html_attrs['value'] = $args['selected']; + ?> + + /> +

    diff --git a/classes/views/frm-fields/back-end/settings.php b/classes/views/frm-fields/back-end/settings.php index 59b8368122..5a8f376b06 100644 --- a/classes/views/frm-fields/back-end/settings.php +++ b/classes/views/frm-fields/back-end/settings.php @@ -263,7 +263,7 @@ - -

    Date: Tue, 8 Jul 2025 19:50:06 +0300 Subject: [PATCH 111/230] Refactor number range and update styles - Update number range field in PHP for better accessibility and styling. - Remove redundant styles in SCSS for number range inputs. - Add new utility classes for layout and typography in SCSS. --- .../frm-fields/back-end/number-range.php | 18 ++++++++---- .../scss/admin/components/form/_fields.scss | 28 +------------------ .../scss/admin/utilities/layout/_grid.scss | 4 +++ .../utilities/typography/_text-color.scss | 4 +++ 4 files changed, 21 insertions(+), 33 deletions(-) diff --git a/classes/views/frm-fields/back-end/number-range.php b/classes/views/frm-fields/back-end/number-range.php index ed700091f8..3187474b5a 100644 --- a/classes/views/frm-fields/back-end/number-range.php +++ b/classes/views/frm-fields/back-end/number-range.php @@ -4,19 +4,25 @@ } ?>

    -

    -

    +

    diff --git a/resources/scss/admin/components/form/_fields.scss b/resources/scss/admin/components/form/_fields.scss index b36f388221..02376dde97 100644 --- a/resources/scss/admin/components/form/_fields.scss +++ b/resources/scss/admin/components/form/_fields.scss @@ -131,32 +131,6 @@ input[type="checkbox"] { padding: 0; } -.frm_wrap .frm-number-range + .frm_last input, -.frm_wrap .frm-number-range input { - text-align: center; - font-weight: 600; -} - -.frm_wrap .frm-number-range input[type="number"], -.frm_wrap .frm-number-range input[type="text"] { - color: var(--primary-700); -} - -.frm-range-min { - position: relative; -} - -.frm-range-min::after { - content: ''; - height: 3px; - width: 10px; - border-radius: 30%; - background: var(--primary-700); - position: absolute; - top: 17px; - right: -28%; -} - .frm_grid_container > p, .frm_grid_container > p.frm_form_field, .frm_grid_container > div.frm_form_field, @@ -204,4 +178,4 @@ input[type="checkbox"] { .frm_form_builder .frm_radio label, .frm_form_builder .frm_checkbox label { font-size: var(--text-sm); -} \ No newline at end of file +} diff --git a/resources/scss/admin/utilities/layout/_grid.scss b/resources/scss/admin/utilities/layout/_grid.scss index c9c1643d57..81e5e7ed9c 100644 --- a/resources/scss/admin/utilities/layout/_grid.scss +++ b/resources/scss/admin/utilities/layout/_grid.scss @@ -42,3 +42,7 @@ .frm-content-center { align-content: center; } + +.frm-self-end { + align-self: end; +} diff --git a/resources/scss/admin/utilities/typography/_text-color.scss b/resources/scss/admin/utilities/typography/_text-color.scss index 98e8462472..e45cffe1df 100644 --- a/resources/scss/admin/utilities/typography/_text-color.scss +++ b/resources/scss/admin/utilities/typography/_text-color.scss @@ -14,6 +14,10 @@ color: var(--grey-500); } +.frm-text-grey-600 { + color: var(--grey-600); +} + .frm-text-grey-700 { color: var(--grey-700); } From 5d074e4e7eb3895cd3eeade2a290a872138301e8 Mon Sep 17 00:00:00 2001 From: Sherv Date: Wed, 9 Jul 2025 09:53:32 +0300 Subject: [PATCH 112/230] Enhance form admin JS and input icon styles - Add event listener for `frm_added_field` to hide empty elements dynamically. - Adjust bottom positioning of icons in input fields for consistent styling. --- js/formidable_admin.js | 1 + resources/scss/admin/components/form/_input-icons.scss | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/js/formidable_admin.js b/js/formidable_admin.js index 77a3c34f17..1b558b576e 100644 --- a/js/formidable_admin.js +++ b/js/formidable_admin.js @@ -10624,6 +10624,7 @@ function frmAdminBuildJS() { initBulkOptionsOverlay(); hideEmptyEle(); + document.addEventListener( 'frm_added_field', hideEmptyEle ); maybeHideQuantityProductFieldOption(); handleNameFieldOnFormBuilder(); toggleSectionHolder(); diff --git a/resources/scss/admin/components/form/_input-icons.scss b/resources/scss/admin/components/form/_input-icons.scss index 3f6376f9fe..68feb1b797 100644 --- a/resources/scss/admin/components/form/_input-icons.scss +++ b/resources/scss/admin/components/form/_input-icons.scss @@ -47,9 +47,10 @@ i.frm-show-inline-modal, top: 0; } -.frm_form_settings .wp-editor-container .frm-with-right-icon .frmsvg, #frm_builder_page .wp-editor-container .frm-with-right-icon .frmsvg { +.frm_form_settings .wp-editor-container .frm-with-right-icon .frmsvg, +#frm_builder_page .wp-editor-container .frm-with-right-icon .frmsvg { top: auto; - bottom: 0; + bottom: var(--gap-xs); } .frm_form_settings .frm_has_textarea .frm-with-right-icon .frmsvg { From 398a8ea2add643c08d6d1bbe5c8d40c5dfb5e7d5 Mon Sep 17 00:00:00 2001 From: Sherv Date: Thu, 10 Jul 2025 18:25:56 +0300 Subject: [PATCH 113/230] Refactor admin UI for improved logic builder functionality and styling consistency - Updated conditionals layout for better UX - Adjusted CSS for spacing and alignment - Refined JavaScript logic for condition handling --- classes/views/shared/mb_adv_info.php | 85 +++++++++++++--------------- js/formidable_admin.js | 8 +-- 2 files changed, 44 insertions(+), 49 deletions(-) diff --git a/classes/views/shared/mb_adv_info.php b/classes/views/shared/mb_adv_info.php index c83fa7dc13..57e225c008 100644 --- a/classes/views/shared/mb_adv_info.php +++ b/classes/views/shared/mb_adv_info.php @@ -47,7 +47,10 @@ ?>

      -
    • |
    • +
    • + + +
      @@ -88,32 +91,26 @@ $show_logic = ! empty( $cond_shortcodes ) && ! empty( $fields ); if ( $show_logic ) { ?> -
      -
      - true, - 'on_label' => __( 'Use IDs', 'formidable' ), - 'off_label' => __( 'Use Keys', 'formidable' ), - 'value' => 'id', - 'show_labels' => true, - 'echo' => true, - ) - ); - ?> +
      +
      + +
      -
      -
      +
      +
      -
      +
      -
      +
      -
      -
      +
      -
      -
      +
      -

      - : -

      - + +

      :

      +
      -
        + +
          $sname ) { diff --git a/js/formidable_admin.js b/js/formidable_admin.js index 1b558b576e..532cf9d528 100644 --- a/js/formidable_admin.js +++ b/js/formidable_admin.js @@ -5397,7 +5397,7 @@ function frmAdminBuildJS() { if ( height > 0 ) { height += 250; element.style.setProperty( '--slide-height', `${height}px` ); - element.style.setProperty( '--slide-time', `${height * 0.8}ms` ); + element.style.setProperty( '--slide-time', `${Math.ceil( height * 0.8 )}ms` ); } } } @@ -8256,7 +8256,7 @@ function frmAdminBuildJS() { const id = document.getElementById( 'frm-id-condition' ), key = document.getElementById( 'frm-key-condition' ); - if ( this.checked ) { + if ( this.value === 'id' ) { id.classList.remove( 'frm_hidden' ); key.classList.add( 'frm_hidden' ); triggerEvent( key, 'change' ); @@ -8269,7 +8269,7 @@ function frmAdminBuildJS() { function setLogicExample() { let field, code, - idKey = document.getElementById( 'frm-id-key-condition' ).checked ? 'frm-id-condition' : 'frm-key-condition', + idKey = document.getElementById( 'frm-id-key-condition-id' ).checked ? 'frm-id-condition' : 'frm-key-condition', is = document.getElementById( 'frm-is-condition' ).value, text = document.getElementById( 'frm-text-condition' ).value, result = document.getElementById( 'frm-insert-condition' ); @@ -10805,7 +10805,7 @@ function frmAdminBuildJS() { jQuery( this ).val( '' ); }); - jQuery( document ).on( 'click change', '#frm-id-key-condition', resetLogicBuilder ); + jQuery( document ).on( 'click change', '[name="frm-id-key-condition"]', resetLogicBuilder ); jQuery( document ).on( 'keyup change', '.frm-build-logic', setLogicExample ); showInputIcon(); From 13ecad26b88a0c8c8e1bbb046eb40ef424c71466 Mon Sep 17 00:00:00 2001 From: Sherv Date: Thu, 10 Jul 2025 18:30:08 +0300 Subject: [PATCH 114/230] Enhance SCSS styles for admin adv-info components - Refine hover effects and spacing in `frm_code_list` - Adjust margin in `_customization-panel.scss` - Improve layout and styling in `_adv-info.scss` - Update scrollbar and flex utility styles --- .../admin/components/list/_code-list.scss | 36 +++++-- .../panel/_customization-panel.scss | 2 +- .../admin/components/settings/_adv-info.scss | 99 ++++++++++++++++++- .../scss/admin/utilities/_scrollbars.scss | 2 + .../scss/admin/utilities/layout/_flex.scss | 2 +- 5 files changed, 129 insertions(+), 12 deletions(-) diff --git a/resources/scss/admin/components/list/_code-list.scss b/resources/scss/admin/components/list/_code-list.scss index e6b4b89085..1e76cf771f 100644 --- a/resources/scss/admin/components/list/_code-list.scss +++ b/resources/scss/admin/components/list/_code-list.scss @@ -45,11 +45,15 @@ margin-left: auto; } -.frm_code_list.frm-full-hover a, -.frm_code_list.frm-full-hover a span { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; +.frm_code_list.frm-full-hover a { + border-radius: var(--small-radius); + + &:not(#frm-insert-condition), + span { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } } .frm_code_list.frm-full-hover.frmcenter a { @@ -71,7 +75,6 @@ .frm_code_list.frm-full-hover a:hover { background: var(--primary-25); color: var(--primary-500); - border-radius: var(--small-radius); } .frm-select-list-item .frmsvg, @@ -129,14 +132,16 @@ color: #fff; } -.frm-single-settings { +.frm-single-settings, +#frm_builder_page #frm_adv_info { .frm_code_list.frm-full-hover { padding: 0; margin: var(--gap-xs) -10px 0; > li > a { - justify-content: space-between; + $self: &; + font-size: var(--text-md); color: var(--grey-900); padding: var(--gap-xs) 12px; @@ -144,11 +149,17 @@ span { margin: 0; max-width: 50%; + + &:last-child { + margin-left: auto; + } } &:hover { font-weight: 500; + &, + .frmsvg, span { color: var(--primary-500); } @@ -156,3 +167,12 @@ } } } + +#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover { + margin: var(--gap-xs) 0 0; + + a .frmsvg { + width: 20px; + height: 20px; + } +} diff --git a/resources/scss/admin/components/panel/_customization-panel.scss b/resources/scss/admin/components/panel/_customization-panel.scss index 76ec3e5a92..04c15f3701 100644 --- a/resources/scss/admin/components/panel/_customization-panel.scss +++ b/resources/scss/admin/components/panel/_customization-panel.scss @@ -20,7 +20,7 @@ #frm-insert-fields-box ul.alignleft, #frm-conditionals ul.alignleft { - margin: 5px 0 0; + margin: 4px 0 0; } #frm_adv_info ul.frm_code_list.frm-full-hover { diff --git a/resources/scss/admin/components/settings/_adv-info.scss b/resources/scss/admin/components/settings/_adv-info.scss index d0893a2de4..e37efbbd6c 100644 --- a/resources/scss/admin/components/settings/_adv-info.scss +++ b/resources/scss/admin/components/settings/_adv-info.scss @@ -79,6 +79,101 @@ margin: 0; } -#frm_adv_info > .inside { - padding: 0; +#frm_adv_info { + + > .inside { + padding: 0; + } + + ul.subsubsub { + padding-bottom: var(--gap-xs) !important; + + a { + font-weight: 500; + } + + .frm-vertical-separator { + display: inline-block; + width: 1px; + height: 8px; + background-color: var(--grey-300); + } + } + + #frm-insert-condition { + background-color: var(--primary-50); + + &:hover { + background-color: var(--primary-25); + } + } +} + +#frm_builder_page #frm_adv_info { + width: 322px; + max-height: 356px; + border-radius: var(--small-radius); + overflow: hidden; + + #taxonomy-linkcategory { + height: 356px; + overflow: hidden; + + > div { + max-height: 286px; + padding: 0; + + > * { + padding-bottom: var(--gap-sm); + max-height: unset; // Prevent double scroll + + &:last-child { + padding-bottom: var(--gap-xs); + } + } + } + } + + #frm-nav-tabs { + display: flex; + gap: var(--gap-xs); + background-color: var(--grey-100); + border-radius: var(--small-radius); + border: 0; + padding: var(--gap-xs); + margin: var(--gap-xs) var(--gap-2xs) var(--gap-sm); + + > li { + flex: 1; + text-align: center; + + a { + font-weight: 500; + line-height: 1; + color: var(--grey-500); + border-radius: var(--small-radius); + border: 0; + padding: var(--gap-xs); + margin: 0; + + &:hover { + background-color: rgb(234, 236, 240); + color: var(--grey-500) !important; + box-shadow: var(--box-shadow-sm); + } + } + + &.frm-tabs a { + background-color: #fff; + color: var(--grey-900) !important; + box-shadow: var(--box-shadow-sm); + } + } + } + + .frm-search, + .frm-with-search { + padding-top: 0; + margin: 0; + } } diff --git a/resources/scss/admin/utilities/_scrollbars.scss b/resources/scss/admin/utilities/_scrollbars.scss index cd293104f4..274912af8c 100644 --- a/resources/scss/admin/utilities/_scrollbars.scss +++ b/resources/scss/admin/utilities/_scrollbars.scss @@ -25,6 +25,8 @@ .frm-scrollbar-wrapper, .frm-single-settings .frm_code_list.frm-full-hover.frm-short-list, +#frm_builder_page #frm_adv_info .frm_code_list, +#frm_builder_page #frm_adv_info #taxonomy-linkcategory > div, .frm-single-settings .frm_field_opts_list { overflow-x: hidden; overflow-y: auto !important; /* Enable scrolling */ diff --git a/resources/scss/admin/utilities/layout/_flex.scss b/resources/scss/admin/utilities/layout/_flex.scss index dd08f6a0e1..27b0ec3d61 100644 --- a/resources/scss/admin/utilities/layout/_flex.scss +++ b/resources/scss/admin/utilities/layout/_flex.scss @@ -149,5 +149,5 @@ .frm-h-stack-sm { @extend %h-stack-base; - gap: var(--gap-xs); + gap: var(--gap-sm); } From ae44bf14f3ade67bba9e32c8fb0f214cb9d44694 Mon Sep 17 00:00:00 2001 From: Sherv Date: Thu, 10 Jul 2025 18:33:53 +0300 Subject: [PATCH 115/230] Fix calculation toggle behavior and improve CSS styling - Fix toggle behavior: set calcTypeField.checked to false in onCalculateValueSettingOff - Increase bottom spacing for editor container icons from xs to lg gap - Add new frm-pb-xs utility class for extra-small bottom padding - Enforce text color with !important for frm-text-grey-600 class --- .../components/toggle-group/custom-toggle-group-behaviors.js | 2 +- resources/scss/admin/components/form/_input-icons.scss | 2 +- resources/scss/admin/utilities/spacing/_padding.scss | 4 ++++ resources/scss/admin/utilities/typography/_text-color.scss | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/js/src/settings-components/components/toggle-group/custom-toggle-group-behaviors.js b/js/src/settings-components/components/toggle-group/custom-toggle-group-behaviors.js index 75b31fb00f..26e732ca88 100644 --- a/js/src/settings-components/components/toggle-group/custom-toggle-group-behaviors.js +++ b/js/src/settings-components/components/toggle-group/custom-toggle-group-behaviors.js @@ -34,7 +34,7 @@ function onCalculateValueSettingOff( event ) { const calcTypeField = document.querySelector( `[name^="field_options[calc_type_${ fieldId }]"]` ); if ( calcTypeField ) { - calcTypeField.checked = true; + calcTypeField.checked = false; } } diff --git a/resources/scss/admin/components/form/_input-icons.scss b/resources/scss/admin/components/form/_input-icons.scss index 68feb1b797..81acda8832 100644 --- a/resources/scss/admin/components/form/_input-icons.scss +++ b/resources/scss/admin/components/form/_input-icons.scss @@ -50,7 +50,7 @@ i.frm-show-inline-modal, .frm_form_settings .wp-editor-container .frm-with-right-icon .frmsvg, #frm_builder_page .wp-editor-container .frm-with-right-icon .frmsvg { top: auto; - bottom: var(--gap-xs); + bottom: var(--gap-lg); } .frm_form_settings .frm_has_textarea .frm-with-right-icon .frmsvg { diff --git a/resources/scss/admin/utilities/spacing/_padding.scss b/resources/scss/admin/utilities/spacing/_padding.scss index e3e5d732ea..5097b28dcf 100644 --- a/resources/scss/admin/utilities/spacing/_padding.scss +++ b/resources/scss/admin/utilities/spacing/_padding.scss @@ -77,6 +77,10 @@ padding-bottom: var(--gap-sm) !important; } +.frm-pb-xs { + padding-bottom: var(--gap-xs) !important; +} + .frm-px-sm { padding-right: var(--gap-sm) !important; padding-left: var(--gap-sm) !important; diff --git a/resources/scss/admin/utilities/typography/_text-color.scss b/resources/scss/admin/utilities/typography/_text-color.scss index e45cffe1df..b69d6b2e63 100644 --- a/resources/scss/admin/utilities/typography/_text-color.scss +++ b/resources/scss/admin/utilities/typography/_text-color.scss @@ -15,7 +15,7 @@ } .frm-text-grey-600 { - color: var(--grey-600); + color: var(--grey-600) !important; } .frm-text-grey-700 { From 7ab1c481d9740ea59dc833a28d5c304ceda1cbf2 Mon Sep 17 00:00:00 2001 From: Sherv Date: Fri, 11 Jul 2025 12:20:37 +0300 Subject: [PATCH 116/230] Standardize checkbox and radio input margins in h-stack layouts - Remove redundant margin classes from PHP templates - Add CSS rules to reset margins for inputs within h-stack layouts - Add negative margin utility class - Fix label margin issues within field containers --- classes/views/frm-fields/back-end/radio-images.php | 4 ++-- classes/views/shared/mb_adv_info.php | 4 ++-- resources/scss/admin/components/form/_fields.scss | 4 ++++ resources/scss/admin/utilities/layout/_flex.scss | 5 +++++ resources/scss/admin/utilities/spacing/_margin.scss | 4 ++++ 5 files changed, 17 insertions(+), 4 deletions(-) diff --git a/classes/views/frm-fields/back-end/radio-images.php b/classes/views/frm-fields/back-end/radio-images.php index fc7dbb9b58..7949ddc7ee 100644 --- a/classes/views/frm-fields/back-end/radio-images.php +++ b/classes/views/frm-fields/back-end/radio-images.php @@ -14,8 +14,8 @@ FrmFieldsHelper::show_radio_display_format( $args['field'] ); ?>

          -

          diff --git a/classes/views/shared/mb_adv_info.php b/classes/views/shared/mb_adv_info.php index 57e225c008..56af86f3fe 100644 --- a/classes/views/shared/mb_adv_info.php +++ b/classes/views/shared/mb_adv_info.php @@ -94,11 +94,11 @@
          diff --git a/resources/scss/admin/components/form/_fields.scss b/resources/scss/admin/components/form/_fields.scss index 02376dde97..dd8e9a86ed 100644 --- a/resources/scss/admin/components/form/_fields.scss +++ b/resources/scss/admin/components/form/_fields.scss @@ -138,6 +138,10 @@ input[type="checkbox"] { margin-top: 8px; margin-bottom: 8px; margin-right: 0; + + > label:only-child { + margin-bottom: 0; + } } #new_fields div.frm_grid_container > .frm_primary_label { diff --git a/resources/scss/admin/utilities/layout/_flex.scss b/resources/scss/admin/utilities/layout/_flex.scss index 27b0ec3d61..0d4c958014 100644 --- a/resources/scss/admin/utilities/layout/_flex.scss +++ b/resources/scss/admin/utilities/layout/_flex.scss @@ -132,6 +132,11 @@ %h-stack-base { display: flex !important; align-items: center; + + > input[type="checkbox"], + > input[type="radio"] { + margin: 0 !important; + } } .frm-h-stack { diff --git a/resources/scss/admin/utilities/spacing/_margin.scss b/resources/scss/admin/utilities/spacing/_margin.scss index 6e2c386853..c17059dd56 100644 --- a/resources/scss/admin/utilities/spacing/_margin.scss +++ b/resources/scss/admin/utilities/spacing/_margin.scss @@ -28,6 +28,10 @@ margin-top: var(--gap-xs) !important; } +.-frm-mt-xs { + margin-top: calc(-1 * var(--gap-xs)) !important; +} + .frm-mt-sm { margin-top: var(--gap-sm) !important; } From 4fc774c1b15853e51355477c9325b9d1da16f222 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 15 Jul 2025 20:56:24 +0300 Subject: [PATCH 117/230] Enhance field settings UI with improved spacing and typography - Add vertical spacing with `frm-mt-xs` and consistent margins - Change sub-field labels from `
          "),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file diff --git a/js/formidable_blocks.js.map b/js/formidable_blocks.js.map index 75f5f2ca44..f768cf2ebf 100644 --- a/js/formidable_blocks.js.map +++ b/js/formidable_blocks.js.map @@ -1 +1 @@ -{"version":3,"file":"formidable_blocks.js","mappings":"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ACA,uDAAuD,cAAc;AACrE;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;;AAEa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;ACzFA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA,IAAI,IAAqC;AACzC,6BAA6B,mBAAO,CAAC,yFAA4B;AACjE;AACA,YAAY,mBAAO,CAAC,uDAAW;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,YAAY;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,WAAW;AACtB;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6GAA6G;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;;AAEA;;;;;;;;;;;;ACtGA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,cAAc,mBAAO,CAAC,0EAAU;AAChC,aAAa,mBAAO,CAAC,4DAAe;;AAEpC,2BAA2B,mBAAO,CAAC,yFAA4B;AAC/D,UAAU,mBAAO,CAAC,uDAAW;AAC7B,qBAAqB,mBAAO,CAAC,qEAAkB;;AAE/C;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,2CAA2C;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,8BAA8B;AAC9B,QAAQ;AACR;AACA;AACA;AACA;AACA,+BAA+B,KAAK;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,4BAA4B;AAC5B,OAAO;AACP;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,SAAS,KAAqC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,sBAAsB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAsB,2BAA2B;AACjD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM,KAAqC,4FAA4F,CAAM;AAC7I;AACA;;AAEA,oBAAoB,gCAAgC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAsB,gCAAgC;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iHAAiH;AACjH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACjmBA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAI,IAAqC;AACzC,gBAAgB,mBAAO,CAAC,0EAAU;;AAElC;AACA;AACA;AACA,mBAAmB,mBAAO,CAAC,uFAA2B;AACtD,EAAE,KAAK,EAIN;;;;;;;;;;;;AClBD;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA;;;;;;;;;;;ACXA;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;;;;AAIb,IAAI,IAAqC;AACzC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2EAA2E;AAC3E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;;AAEjD;AACA;AACA;AACA,kDAAkD;;AAElD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB;AACjB,sBAAsB;AACtB,uBAAuB;AACvB,uBAAuB;AACvB,eAAe;AACf,kBAAkB;AAClB,gBAAgB;AAChB,YAAY;AACZ,YAAY;AACZ,cAAc;AACd,gBAAgB;AAChB,kBAAkB;AAClB,gBAAgB;AAChB,mBAAmB;AACnB,wBAAwB;AACxB,yBAAyB;AACzB,yBAAyB;AACzB,iBAAiB;AACjB,oBAAoB;AACpB,kBAAkB;AAClB,cAAc;AACd,cAAc;AACd,gBAAgB;AAChB,kBAAkB;AAClB,oBAAoB;AACpB,kBAAkB;AAClB,0BAA0B;AAC1B,cAAc;AACd,GAAG;AACH;;;;;;;;;;;;ACpLa;;AAEb,IAAI,KAAqC,EAAE,EAE1C,CAAC;AACF,EAAE,wJAAyD;AAC3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACLA,MAAwG;AACxG,MAA8F;AAC9F,MAAqG;AACrG,MAAwH;AACxH,MAAiH;AACjH,MAAiH;AACjH,MAAoH;AACpH;AACA;;AAEA;;AAEA,4BAA4B,qGAAmB;AAC/C,wBAAwB,kHAAa;;AAErC,uBAAuB,uGAAa;AACpC;AACA,iBAAiB,+FAAM;AACvB,6BAA6B,sGAAkB;;AAE/C,aAAa,0GAAG,CAAC,8FAAO;;;;AAI8D;AACtF,OAAO,+DAAe,8FAAO,IAAI,8FAAO,UAAU,8FAAO,mBAAmB,EAAC;;;;;;;;;;;;AC1BhE;;AAEb;AACA;AACA;AACA,kBAAkB,wBAAwB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,iBAAiB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,4BAA4B;AAChD;AACA;AACA;AACA;AACA;AACA,qBAAqB,6BAA6B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnFa;;AAEb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjCa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACTa;;AAEb;AACA;AACA,cAAc,KAAwC,GAAG,sBAAiB,GAAG,CAAI;AACjF;AACA;AACA;AACA;AACA;;;;;;;;;;;ACTa;;AAEb;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA,iFAAiF;AACjF;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,yDAAyD;AACzD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC5Da;;AAEb;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;UCbA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA,eAAe,4BAA4B;WAC3C,eAAe;WACf,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA,8CAA8C;;;;;WCA9C;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;WCNA;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;;AAEsB;AACK;AACL;AACA","sources":["webpack://formidable/./js/src/api/class-addon-api.js","webpack://formidable/./js/src/api/index.js","webpack://formidable/./js/src/common/components/icon.js","webpack://formidable/./js/src/common/components/itemselect.js","webpack://formidable/./js/src/common/utilities/values.js","webpack://formidable/./js/src/form/block.js","webpack://formidable/./js/src/form/calculator.js","webpack://formidable/./js/src/form/formselect.js","webpack://formidable/./js/src/form/formshortcode.js","webpack://formidable/./js/src/form/graph.js","webpack://formidable/./js/src/form/inspector.js","webpack://formidable/./js/src/form/modal.js","webpack://formidable/./js/src/form/views.js","webpack://formidable/./js/src/form/css/button.module.css","webpack://formidable/./node_modules/css-loader/dist/runtime/api.js","webpack://formidable/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://formidable/./node_modules/object-assign/index.js","webpack://formidable/./node_modules/prop-types/checkPropTypes.js","webpack://formidable/./node_modules/prop-types/factoryWithTypeCheckers.js","webpack://formidable/./node_modules/prop-types/index.js","webpack://formidable/./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack://formidable/./node_modules/prop-types/lib/has.js","webpack://formidable/./node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js","webpack://formidable/./node_modules/prop-types/node_modules/react-is/index.js","webpack://formidable/./js/src/form/css/button.module.css?6e55","webpack://formidable/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://formidable/./node_modules/style-loader/dist/runtime/insertBySelector.js","webpack://formidable/./node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack://formidable/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack://formidable/./node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack://formidable/./node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/compat get default export","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/webpack/runtime/nonce","webpack://formidable/./js/src/blocks.js"],"sourcesContent":["export class frmAddonAPI {\n\t/**\n\t * A function designed to toggle different addon states.\n\t *\n\t * @param {'frm_install_addon'|'frm_activate_addon'|'frm_multiple_addons'} action The addon state action type.\n\t * @param {string} addon The addon path. Ex: formidable-views/formidable-views.php\n\t *\n\t * @return {Promise}\n\t */\n\tstatic toggleAddonState( action, addon ) {\n\t\treturn fetch( ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams({\n\t\t\t\taction: action,\n\t\t\t\tnonce: frmGlobal.nonce,\n\t\t\t\tplugin: addon\n\t\t\t})\n\t\t}).then( response => response.json() );\n\t}\n}\n","export { frmAddonAPI } from './class-addon-api';\n","/**\n * Formidable Forms icon\n */\nconst { Component } = wp.element;\nconst { Dashicon } = wp.components;\n\nexport default class FormidableIcon extends Component {\n\n\tloadCustomSvgIcon( ) {\n\t\tconst icon = formidable_form_selector.icon;\n\t\tif ( icon.match( /frm_white_label_icon/ ) ) {\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t)\n\t\t}\n\t\treturn false;\n\t}\n\n\trender() {\n\n\t\tif ( false !== this.loadCustomSvgIcon() ) {\n\t\t\treturn this.loadCustomSvgIcon();\n\t\t}\n\n\t\tif ( formidable_form_selector.icon !== 'svg' ) {\n\t\t\treturn ;\n\t\t}\n\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t);\n\t}\n}\n","const { __, sprintf } = wp.i18n;\nimport PropTypes from 'prop-types';\n\nconst {\n\tComponent,\n} = wp.element;\nconst {\n\tSelectControl,\n} = wp.components;\n\n/**\n * Displays a Select control with the specified items as options\n *\n */\nexport default class ItemSelect extends Component {\n\tcreateOptions( items, itemName ) {\n\t\tconst options = items.map( item => {\n\t\t\treturn {\n\t\t\t\tlabel: item.label,\n\t\t\t\tvalue: item.value,\n\t\t\t};\n\t\t} );\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tlabel: sprintf( __( 'Select a %s', 'formidable' ), itemName ),\n\t\t\t\tvalue: '',\n\t\t\t},\n\t\t\t...options,\n\t\t];\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tselected,\n\t\t\titems,\n\t\t\tonChange,\n\t\t\titemName,\n\t\t\titemNamePlural,\n\t\t\tlabel,\n\t\t\thelp,\n\t\t} = this.props;\n\n\t\tif ( ( ! items || items.length === 0 ) ) {\n\t\t\treturn (\n\t\t\t\t

          \n\t\t\t\t\t{ sprintf( __( 'Currently, there are no %s', 'formidable' ), itemNamePlural ) }\n\t\t\t\t

          \n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t\n\t\t);\n\t}\n}\n\nItemSelect.defaultProps = {\n\titemName: 'item',\n\titemNamePlural: 'items',\n};\n\nItemSelect.propTypes = {\n\tselected: PropTypes.oneOfType( [\n\t\tPropTypes.string,\n\t\tPropTypes.number,\n\t] ), //selected item\n\titems: PropTypes.array, //list of possible items\n\tonChange: PropTypes.func,\n\titemName: PropTypes.string, //name for item in select label\n\titemNamePlural: PropTypes.string, //plural of items, used in some labels\n\tlabel: PropTypes.string,\n\thelp: PropTypes.string,\n};\n","/**\n * Updates an attribute with the specified new value\n *\n * @param {string} attributeName Name of block attribute to be updated\n * @param {mixed} attributeValue Value of block attribute to be updated\n * @param {function} setAttributes Function to set the block attribute to be updated\n */\nexport function updateAttribute( attributeName, attributeValue, setAttributes ) {\n\tsetAttributes({\n\t\t[ attributeName ]: attributeValue\n\t});\n}\n\n/**\n * Sets text attribute for a shortcode from a key value pair\n *\n * @param {mixed} value Value of text attribute to be set\n * @param {string} attributeName Name of text attribute to be set\n * @returns {string} String of the text attribute in the format \" id=10\"\n */\nexport function setTextAttribute( value, attributeName ) {\n\tif ( value ) {\n\t\treturn ` ${ attributeName }=\"${ value }\"`;\n\t}\n\treturn '';\n}\n\n/**\n * Gets subdirectory of current site, if the site isn't on the top level of the domain\n *\n * @returns {string} The subdirectory of the current site\n */\nexport function getSubDir() {\n\tconst page = window.location.pathname;\n\tconst index = page.indexOf( 'wp-admin' );\n\n\tlet subDir = '/';\n\n\tif ( index > -1 ) {\n\t\tsubDir = page.substr( 0, index );\n\t}\n\n\treturn subDir;\n}\n\nexport const cssHideAdvancedSettings = `\n .components-panel__body.editor-block-inspector__advanced {\n display:none;\n }\n`;\n","/**\n * BLOCK: formidable/simple-form\n *\n * Block to display selected Formidable form with limited setting options\n */\nimport FormShortcode from './formshortcode';\nimport Inspector from './inspector';\nimport FormidableIcon from '../common/components/icon';\nimport FormSelect from './formselect';\nimport { cssHideAdvancedSettings } from '../common/utilities/values';\n\nconst { Fragment } = wp.element;\nconst { __ } = wp.i18n;\nconst { registerBlockType } = wp.blocks;\nconst { Notice } = wp.components;\nconst { serverSideRender: ServerSideRender } = wp;\n\nregisterBlockType( 'formidable/simple-form', {\n\ttitle: formidable_form_selector.name,\n\tdescription: __( 'Display a Form', 'formidable' ),\n\ticon: FormidableIcon,\n\tcategory: 'widgets',\n\tkeywords: [\n\t\t__( 'contact forms', 'formidable' ),\n\t\t'formidable',\n\t],\n\n\tedit: function( { setAttributes, attributes, isSelected } ) {\n\t\tconst { formId } = attributes;\n\n\t\tconst forms = formidable_form_selector.forms;\n\n\t\tif ( forms.length === 0 ) {\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t{ __( 'This site does not have any forms.', 'formidable' ) }\n\t\t\t\t\n\t\t\t);\n\t\t}\n\n\t\tif ( ! formId ) {\n\t\t\treturn (\n\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t\n\t\t\t\t\t\t
          { formidable_form_selector.name }
          \n\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t{ isSelected && }\n\t\t\t\t\n\t\t\t\n\t\t);\n\t},\n\n\tsave: function( props ) {\n\t\tconst {\n\t\t\tattributes,\n\t\t} = props;\n\t\tconst { formId } = attributes;\n\t\treturn (\n\t\t\t( formId === undefined ) ?\n\t\t\t\t'' :\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t);\n\t},\n} );\n","/**\n * BLOCK: formidable/calculator\n *\n * Block to display selected Formidable calculator form\n */\nimport FormidableIcon from '../common/components/icon';\n\nconst { __ } = wp.i18n;\nconst { registerBlockType } = wp.blocks;\nconst { Notice } = wp.components;\n\nconst FrmCalcIcon = wp.element.createElement(\n\t'svg',\n\t{\n\t\twidth: 20,\n\t\theight: 20\n\t},\n\twp.element.createElement( 'path',\n\t\t{\n\t\t\td: 'M16.9 0H3a2 2 0 0 0-1.9 1.9V18a2 2 0 0 0 2 1.9h13.7a2 2 0 0 0 1.9-1.9V2a2 2 0 0 0-2-1.9zm0 18.1H3v-10H17v10zm0-11.9H3V2H17v4.3zM5.5 12.6H7c.3 0 .5-.3.5-.5v-1.5c0-.3-.3-.5-.5-.5H5.5c-.3 0-.5.3-.5.5V12c0 .3.3.5.5.5zm7.5 3.8h1.5c.3 0 .5-.3.5-.6v-5.2c0-.3-.3-.5-.5-.5H13c-.3 0-.5.3-.5.5v5.3c0 .2.3.4.5.4zm-7.5 0H7c.3 0 .5-.3.5-.6v-1.4c0-.3-.3-.6-.5-.6H5.5c-.3 0-.5.3-.5.6v1.4c0 .3.3.6.5.6zm3.8-3.8h1.4c.3 0 .6-.3.6-.5v-1.5c0-.3-.3-.5-.6-.5H9.3c-.3 0-.6.3-.6.5V12c0 .3.3.5.6.5zm0 3.8h1.4c.3 0 .6-.3.6-.6v-1.4c0-.3-.3-.6-.6-.6H9.3c-.3 0-.6.3-.6.6v1.4c0 .3.3.6.6.6z',\n\t\t}\n\t)\n);\n\nregisterBlockType( 'formidable/calculator', {\n\ttitle: __( 'Calculator Form', 'formidable' ),\n\tdescription: __( 'Display a Calculator Form', 'formidable' ),\n\ticon: FrmCalcIcon,\n\tcategory: 'widgets',\n\tkeywords: [\n\t\t'calculation',\n\t\t'formidable',\n\t],\n\n\tedit: function( { setAttributes, attributes } ) {\n\t\tconst { formId } = attributes;\n\n\t\tconst forms = formidable_form_selector.forms;\n\n\t\tif ( forms.length === 0 ) {\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t{ __( 'This site does not have any forms.', 'formidable' ) }\n\t\t\t\t\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t
          \n\t\t\t\t
          \n\t\t\t\t\t\n\t\t\t\t\t
          { __( 'Calculator Form', 'formidable' ) }
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{ __( 'This site does not have any calculator forms.', 'formidable' ) }\n\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{ __( 'Upgrade Formidable Forms.', 'formidable' ) }\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
          \n\t\t\t\t\t\t{\n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t
          \n\t\t);\n\t},\n} );\n","/**\n * Form selector\n */\nimport ItemSelect from '../common/components/itemselect';\nimport PropTypes from 'prop-types';\n\nconst { __ } = wp.i18n;\nconst {\n\tComponent,\n} = wp.element;\n\nexport default class FormSelect extends Component {\n\trender() {\n\t\tconst {\n\t\t\tformId,\n\t\t\tsetAttributes,\n\t\t\tforms,\n\t\t} = this.props;\n\n\t\treturn (\n\t\t\t {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tformId: newFormId,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\n\t\t);\n\t}\n}\n\nFormSelect.propTypes = {\n\tformId: PropTypes.string, //current formId\n\tsetAttributes: PropTypes.func.isRequired, //setAttributes of block\n};\n","/**\n * Form shortcode of current form\n */\nconst { Component } = wp.element;\n\nimport {\n\tsetTextAttribute,\n} from '../common/utilities/values';\n\nfunction createParamsText( atts ) {\n\tconst {\n\t\tformId,\n\t\ttitle,\n\t\tdescription,\n\t\tminimize,\n\t} = atts;\n\n\tlet paramsText = '';\n\n\tparamsText += setTextAttribute( formId, 'id' );\n\tparamsText += setTextAttribute( title, 'title' );\n\tparamsText += setTextAttribute( description, 'description' );\n\tparamsText += setTextAttribute( minimize, 'minimize' );\n\n\treturn paramsText;\n}\n\nexport default class FormShortcode extends Component {\n\trender() {\n\t\treturn (\n\t\t\t
          \n\t\t\t\t[formidable\n\t\t\t\t{ createParamsText( this.props ) }\n\t\t\t\t]\n\t\t\t
          \n\t\t);\n\t}\n}\n","/* global formidable_form_selector */\n\nimport FormidableIcon from '../common/components/icon';\n\n( function() {\n\t'use strict';\n\n\tif ( formidable_form_selector.chartsAddon.installed ) {\n\t\treturn;\n\t}\n\n\tconst { __ } = wp.i18n;\n\tconst { registerBlockType } = wp.blocks;\n\tconst { Notice } = wp.components;\n\n\tconst UpgradeNotice = ( { text, buttonText, link } ) => (\n\t\t\n\t\t\t{ text }\n\t\t\t
          \n\t\t\t\n\t\t\t\t{ buttonText }\n\t\t\t\n\t\t
          \n\t);\n\n\tconst blockName = __( 'Formidable Chart', 'formidable' );\n\n\tregisterBlockType( 'frm-charts/graph', {\n\t\ttitle: blockName,\n\t\tdescription: __( 'Display a chart or graph', 'formidable' ),\n\t\ticon: (\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t),\n\t\tcategory: 'design',\n\n\t\tedit: () => {\n\t\t\tconst imageWrapperStyles = {\n\t\t\t\tpadding: '38px',\n\t\t\t\tmargin: '0 auto',\n\t\t\t\tmaxWidth: '600px'\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t\n\t\t\t\t\t\t
          { blockName }
          \n\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t{ formidable_form_selector.chartsAddon.hasAccess ? (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t);\n\t\t}\n\t} );\n}() );\n","/**\n * Inspector controls for Formidable Simple Form block\n */\n\nconst { __ } = wp.i18n;\nconst { Component } = wp.element;\nconst {\n\tInspectorControls,\n} = wp.blockEditor;\nconst {\n\tPanelBody,\n\tPanelRow,\n\tToggleControl,\n\tExternalLink,\n} = wp.components;\n\nimport PropTypes from 'prop-types';\nimport FormSelect from './formselect';\nimport FormShortcode from './formshortcode';\nimport {\n\tupdateAttribute,\n\tgetSubDir,\n} from '../common/utilities/values';\n\nexport default class Inspector extends Component {\n\trender() {\n\t\tconst {\n\t\t\tsetAttributes,\n\t\t\tattributes,\n\t\t\tforms,\n\t\t} = this.props;\n\n\t\tconst {\n\t\t\tformId,\n\t\t\ttitle,\n\t\t\tdescription,\n\t\t\tminimize,\n\t\t} = attributes;\n\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{ formId &&\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{ __( 'Go to form', 'formidable' ) }\n\t\t\t\t\t\t\n\t\t\t\t\t }\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tupdateAttribute( 'title', response ? '1' : '', setAttributes );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t {\n\t\t\t\t\t\t\tupdateAttribute( 'description', response ? '1' : '', setAttributes );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t {\n\t\t\t\t\t\t\tupdateAttribute( 'minimize', response ? '1' : '', setAttributes );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t);\n\t}\n}\n\nInspector.propTypes = {\n\tattributes: PropTypes.object, //block attributes\n\tsetAttributes: PropTypes.func, //setAttributes of block\n};\n","/* global formidable_form_selector */\n\nimport FormidableIcon from '../common/components/icon';\n\nconst { __ } = wp.i18n;\nconst { registerBlockType } = wp.blocks;\nconst { Notice } = wp.components;\n\nconst UpgradeNotice = ( { text, buttonText, link } ) => (\n\t\n\t\t{ text }\n\t\t
          \n\t\t\n\t\t\t{ buttonText }\n\t\t\n\t
          \n);\n\nregisterBlockType( 'frm-modal/modal', {\n\ttitle: formidable_form_selector.name + ' ' + __( 'Modal', 'formidable' ),\n\tdescription: __( 'Display a modal', 'formidable' ),\n\ticon: FormidableIcon,\n\tcategory: 'widgets',\n\tkeywords: [\n\t\t'modal',\n\t\t'formidable',\n\t],\n\n\tedit: ( { setAttributes, attributes } ) => {\n\t\tconst blockName = __( 'Bootstrap modal popup', 'formidable' );\n\t\tconst imageStyles = {\n\t\t\tmaxWidth: '504px',\n\t\t\theight: 'auto',\n\t\t\tborderRadius: '12px',\n\t\t};\n\t\tconst imageWrapperStyles = {\n\t\t\tpadding: '38px',\n\t\t\ttextAlign: 'center',\n\t\t\tbackgroundColor: '#f2f4f7',\n\t\t\tmarginTop: '24px',\n\t\t};\n\n\t\treturn (\n\t\t\t
          \n\t\t\t\t
          \n\t\t\t\t\t\n\t\t\t\t\t
          { blockName }
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t{ formidable_form_selector.modalAddon.hasAccess ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t
          \n\t\t);\n\t},\n} );\n","/* global formidable_form_selector */\nimport FormidableIcon from '../common/components/icon';\nimport { frmAddonAPI } from '../api/index';\n\nimport buttonStyles from './css/button.module.css';\n\nconst { __ } = wp.i18n;\nconst { registerBlockType } = wp.blocks;\nconst { Notice } = wp.components;\nconst { useState, useEffect } = wp.element;\n\nconst blockData = formidable_form_selector; // eslint-disable-line camelcase\nconst upgradeLink = blockData.viewsAddon.hasAccess ? blockData.viewsAddon.link : blockData.link;\n\nregisterBlockType( 'formidable/simple-view', {\n\n\ttitle: __( 'Formidable Views', 'formidable' ),\n\tdescription: __( 'Display a Visual View', 'formidable' ),\n\ticon: FormidableIcon,\n\tcategory: 'widgets',\n\tkeywords: [\n\t\t'views',\n\t\t'formidable'\n\t],\n\n\tedit: () => {\n\n\t\tconst [ addonActivateButton, updateAddonActivateButton ] = useState({\n\t\t\tdefaultClassname: 'frm-activate-addon frm-button-primary button button-primary',\n\t\t\tloadingClassname: buttonStyles['frm-loading'],\n\t\t\tclassnames: 'frm-activate-addon frm-button-primary button button-primary',\n\t\t\tlabel: ! blockData.viewsAddon.installed && blockData.viewsAddon.hasAccess ? __( 'Install', 'formidable' ) : __( 'Activate', 'formidable' ),\n\t\t\tisLoading: false\n\t\t});\n\n\t\tconst activateViewsAddon = () => {\n\t\t\tif ( true === addonActivateButton.isLoading ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tupdateAddonActivateButton({ ...addonActivateButton, isLoading: true, classnames: addonActivateButton.defaultClassname + ' ' + addonActivateButton.loadingClassname });\n\t\t\tif ( ! blockData.viewsAddon.installed && blockData.viewsAddon.hasAccess ) {\n\t\t\t\tfrmAddonAPI.toggleAddonState( 'frm_install_addon', blockData.viewsAddon.url ).then( () => {\n\t\t\t\t\twindow.location.reload();\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tfrmAddonAPI.toggleAddonState( 'frm_activate_addon', 'formidable-views/formidable-views.php' ).then( () => {\n\t\t\t\twindow.location.reload();\n\t\t\t});\n\t\t};\n\n\t\tconst blockName = __( 'Formidable Views', 'formidable' );\n\t\tconst imageStyles = {\n\t\t\tmaxWidth: '504px',\n\t\t\theight: 'auto',\n\t\t\tborderRadius: '12px'\n\t\t};\n\t\tconst imageWrapperStyles = {\n\t\t\tpadding: '38px',\n\t\t\ttextAlign: 'center',\n\t\t\tbackgroundColor: '#f2f4f7',\n\t\t\tmarginTop: '24px'\n\t\t};\n\n\t\treturn (\n\t\t\t
          \n\t\t\t\t
          \n\t\t\t\t\t\n\t\t\t\t\t
          { blockName }
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t{ ! blockData.viewsAddon.hasAccess &&\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t\t{ __( 'Effortlessly transform form data into webpages with Views, the only integrated form & application builder.', 'formidable' ) }\n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{ __( 'Upgrade Formidable Forms', 'formidable' ) }\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
          \n\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ blockData.viewsAddon.hasAccess &&\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t\t{ __( 'Effortlessly transform form data into webpages with Views, the only integrated form & application builder.', 'formidable' ) }\n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t}\n\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t
          \n\t\t);\n\t}\n});\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"button.t3RQZV1ZQbHGYyQUnhIY {\\n\\tcursor: progress;\\n\\topacity: 0.7;\\n\\tposition: relative;\\n\\ttext-indent: -999px;\\n\\tmin-width: 70px;\\n\\toverflow: hidden;\\n}\\nbutton.t3RQZV1ZQbHGYyQUnhIY:before {\\n\\tcontent: '';\\n\\tdisplay: inline-block;\\n\\tposition: absolute;\\n\\tbackground: transparent;\\n\\tborder: 1px solid #fff;\\n\\tborder-top-color: transparent;\\n\\tborder-left-color: transparent;\\n\\tborder-radius: 50%;\\n\\n\\tbox-sizing: border-box;\\n\\ttop: 50%;\\n\\tleft: 50%;\\n\\tmargin-top: -10px;\\n\\tmargin-left: -10px;\\n\\twidth: 20px;\\n\\theight: 20px;\\n\\n\\tanimation: Ts7haRQUDk0YMfLiQW00 2s linear infinite;\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./js/src/form/css/button.module.css\"],\"names\":[],\"mappings\":\"AAAA;CACC,gBAAgB;CAChB,YAAY;CACZ,kBAAkB;CAClB,mBAAmB;CACnB,eAAe;CACf,gBAAgB;AACjB;AACA;CACC,WAAW;CACX,qBAAqB;CACrB,kBAAkB;CAClB,uBAAuB;CACvB,sBAAsB;CACtB,6BAA6B;CAC7B,8BAA8B;CAC9B,kBAAkB;;CAElB,sBAAsB;CACtB,QAAQ;CACR,SAAS;CACT,iBAAiB;CACjB,kBAAkB;CAClB,WAAW;CACX,YAAY;;CAEZ,kDAAkC;AACnC\",\"sourcesContent\":[\"button.frm-loading {\\n\\tcursor: progress;\\n\\topacity: 0.7;\\n\\tposition: relative;\\n\\ttext-indent: -999px;\\n\\tmin-width: 70px;\\n\\toverflow: hidden;\\n}\\nbutton.frm-loading:before {\\n\\tcontent: '';\\n\\tdisplay: inline-block;\\n\\tposition: absolute;\\n\\tbackground: transparent;\\n\\tborder: 1px solid #fff;\\n\\tborder-top-color: transparent;\\n\\tborder-left-color: transparent;\\n\\tborder-radius: 50%;\\n\\n\\tbox-sizing: border-box;\\n\\ttop: 50%;\\n\\tleft: 50%;\\n\\tmargin-top: -10px;\\n\\tmargin-left: -10px;\\n\\twidth: 20px;\\n\\theight: 20px;\\n\\n\\tanimation: spin 2s linear infinite;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nvar _1 = \"t3RQZV1ZQbHGYyQUnhIY\";\nexport { _1 as \"frm-loading\" };\nexport var spin = \"Ts7haRQUDk0YMfLiQW00\";\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = require('./lib/has');\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) { /**/ }\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar has = require('./lib/has');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bigint: createPrimitiveTypeChecker('bigint'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message, data) {\n this.message = message;\n this.data = data && typeof data === 'object' ? data: {};\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n {expectedType: expectedType}\n );\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var expectedTypes = [];\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n if (checkerResult == null) {\n return null;\n }\n if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n expectedTypes.push(checkerResult.data.expectedType);\n }\n }\n var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function invalidValidatorError(componentName, location, propFullName, key, type) {\n return new PropTypeError(\n (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n );\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (has(shapeTypes, key) && typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!./button.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!./button.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nc = undefined;","/**\n * Formidable Simple Blocks\n *\n */\n\nimport './form/block';\nimport './form/calculator';\nimport './form/modal';\nimport './form/graph';\nimport './form/views';\n"],"names":["frmAddonAPI","_classCallCheck","_createClass","key","value","toggleAddonState","action","addon","fetch","ajaxurl","method","headers","body","URLSearchParams","nonce","frmGlobal","plugin","then","response","json","Component","wp","element","Dashicon","components","FormidableIcon","_Component","_callSuper","arguments","_inherits","loadCustomSvgIcon","icon","formidable_form_selector","match","createElement","xmlns","viewBox","width","height","d","render","className","default","_wp$i18n","i18n","__","sprintf","PropTypes","SelectControl","ItemSelect","createOptions","items","itemName","options","map","item","label","concat","_toConsumableArray","_this$props","props","selected","onChange","itemNamePlural","help","length","defaultProps","propTypes","oneOfType","string","number","array","func","updateAttribute","attributeName","attributeValue","setAttributes","_defineProperty","setTextAttribute","getSubDir","page","window","location","pathname","index","indexOf","subDir","substr","cssHideAdvancedSettings","FormShortcode","Inspector","FormSelect","Fragment","registerBlockType","blocks","Notice","_wp","ServerSideRender","serverSideRender","title","name","description","category","keywords","edit","_ref","attributes","isSelected","formId","forms","status","isDismissible","block","save","undefined","FrmCalcIcon","href","link","target","src","url","alt","newFormId","isRequired","createParamsText","atts","minimize","paramsText","chartsAddon","installed","UpgradeNotice","text","buttonText","blockName","fill","stroke","strokeLinecap","strokeWidth","imageWrapperStyles","padding","margin","maxWidth","style","alignSelf","hasAccess","InspectorControls","blockEditor","_wp$components","PanelBody","PanelRow","ToggleControl","ExternalLink","initialOpen","checked","object","_ref2","imageStyles","borderRadius","textAlign","backgroundColor","marginTop","modalAddon","buttonStyles","_wp$element","useState","useEffect","blockData","upgradeLink","viewsAddon","_useState","defaultClassname","loadingClassname","classnames","isLoading","_useState2","_slicedToArray","addonActivateButton","updateAddonActivateButton","activateViewsAddon","_objectSpread","reload","rel","onClick","type"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"formidable_blocks.js","mappings":"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;AACmH;AACjB;AAClG,8BAA8B,mFAA2B,CAAC,4FAAqC;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,CAAC,OAAO,oGAAoG,YAAY,WAAW,YAAY,aAAa,WAAW,YAAY,MAAM,KAAK,UAAU,YAAY,aAAa,aAAa,aAAa,aAAa,aAAa,cAAc,aAAa,WAAW,UAAU,YAAY,aAAa,WAAW,WAAW,YAAY,8CAA8C,qBAAqB,iBAAiB,uBAAuB,wBAAwB,oBAAoB,qBAAqB,GAAG,6BAA6B,gBAAgB,0BAA0B,uBAAuB,4BAA4B,2BAA2B,kCAAkC,mCAAmC,uBAAuB,6BAA6B,aAAa,cAAc,sBAAsB,uBAAuB,gBAAgB,iBAAiB,yCAAyC,GAAG,mBAAmB;AACr+B;AACA;AAC+B;AACxB;AACP,iEAAe,uBAAuB,EAAC;;;;;;;;;;;;ACrC1B;;AAEb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD;AACrD;AACA;AACA,gDAAgD;AAChD;AACA;AACA,qFAAqF;AACrF;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,iBAAiB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,qBAAqB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,sFAAsF,qBAAqB;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,iDAAiD,qBAAqB;AACtE;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,sDAAsD,qBAAqB;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACpFa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,cAAc;AACrE;AACA;AACA;AACA;AACA;;;;;;;;;;;ACfA;AACA;AACA;AACA;AACA;;AAEa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;ACzFA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA,IAAI,IAAqC;AACzC,6BAA6B,mBAAO,CAAC,yFAA4B;AACjE;AACA,YAAY,mBAAO,CAAC,uDAAW;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,YAAY;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,WAAW;AACtB;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6GAA6G;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;;AAEA;;;;;;;;;;;;ACtGA;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb,cAAc,mBAAO,CAAC,0EAAU;AAChC,aAAa,mBAAO,CAAC,4DAAe;;AAEpC,2BAA2B,mBAAO,CAAC,yFAA4B;AAC/D,UAAU,mBAAO,CAAC,uDAAW;AAC7B,qBAAqB,mBAAO,CAAC,qEAAkB;;AAE/C;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,2CAA2C;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,8BAA8B;AAC9B,QAAQ;AACR;AACA;AACA;AACA;AACA,+BAA+B,KAAK;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,4BAA4B;AAC5B,OAAO;AACP;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,SAAS,KAAqC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,sBAAsB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAsB,2BAA2B;AACjD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,MAAM,KAAqC,4FAA4F,CAAM;AAC7I;AACA;;AAEA,oBAAoB,gCAAgC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sBAAsB,gCAAgC;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iHAAiH;AACjH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACjmBA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAI,IAAqC;AACzC,gBAAgB,mBAAO,CAAC,0EAAU;;AAElC;AACA;AACA;AACA,mBAAmB,mBAAO,CAAC,uFAA2B;AACtD,EAAE,KAAK,EAIN;;;;;;;;;;;;AClBD;AACA;AACA;AACA;AACA;AACA;;AAEa;;AAEb;;AAEA;;;;;;;;;;;ACXA;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;;;;AAIb,IAAI,IAAqC;AACzC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2EAA2E;AAC3E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;;AAEjD;AACA;AACA;AACA,kDAAkD;;AAElD;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB;AACjB,sBAAsB;AACtB,uBAAuB;AACvB,uBAAuB;AACvB,eAAe;AACf,kBAAkB;AAClB,gBAAgB;AAChB,YAAY;AACZ,YAAY;AACZ,cAAc;AACd,gBAAgB;AAChB,kBAAkB;AAClB,gBAAgB;AAChB,mBAAmB;AACnB,wBAAwB;AACxB,yBAAyB;AACzB,yBAAyB;AACzB,iBAAiB;AACjB,oBAAoB;AACpB,kBAAkB;AAClB,cAAc;AACd,cAAc;AACd,gBAAgB;AAChB,kBAAkB;AAClB,oBAAoB;AACpB,kBAAkB;AAClB,0BAA0B;AAC1B,cAAc;AACd,GAAG;AACH;;;;;;;;;;;;ACpLa;;AAEb,IAAI,KAAqC,EAAE,EAE1C,CAAC;AACF,EAAE,wJAAyD;AAC3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACLA,MAAwG;AACxG,MAA8F;AAC9F,MAAqG;AACrG,MAAwH;AACxH,MAAiH;AACjH,MAAiH;AACjH,MAAoH;AACpH;AACA;;AAEA;;AAEA,4BAA4B,qGAAmB;AAC/C,wBAAwB,kHAAa;;AAErC,uBAAuB,uGAAa;AACpC;AACA,iBAAiB,+FAAM;AACvB,6BAA6B,sGAAkB;;AAE/C,aAAa,0GAAG,CAAC,8FAAO;;;;AAI8D;AACtF,OAAO,iEAAe,8FAAO,IAAI,8FAAO,UAAU,8FAAO,mBAAmB,EAAC;;;;;;;;;;;;AC1BhE;;AAEb;AACA;AACA;AACA,kBAAkB,wBAAwB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,iBAAiB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,4BAA4B;AAChD;AACA;AACA;AACA;AACA;AACA,qBAAqB,6BAA6B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnFa;;AAEb;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACjCa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACTa;;AAEb;AACA;AACA,cAAc,KAAwC,GAAG,sBAAiB,GAAG,CAAI;AACjF;AACA;AACA;AACA;AACA;;;;;;;;;;;ACTa;;AAEb;AACA;AACA;AACA;AACA,kDAAkD;AAClD;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA,iFAAiF;AACjF;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,yDAAyD;AACzD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC5Da;;AAEb;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;UCbA;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA;WACA,iCAAiC,WAAW;WAC5C;WACA;;;;;WCPA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;WCNA;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;;AAEsB;AACK;AACL;AACA","sources":["webpack://formidable/./js/src/api/class-addon-api.js","webpack://formidable/./js/src/api/index.js","webpack://formidable/./js/src/common/components/icon.js","webpack://formidable/./js/src/common/components/itemselect.js","webpack://formidable/./js/src/common/utilities/values.js","webpack://formidable/./js/src/form/block.js","webpack://formidable/./js/src/form/calculator.js","webpack://formidable/./js/src/form/formselect.js","webpack://formidable/./js/src/form/formshortcode.js","webpack://formidable/./js/src/form/graph.js","webpack://formidable/./js/src/form/inspector.js","webpack://formidable/./js/src/form/modal.js","webpack://formidable/./js/src/form/views.js","webpack://formidable/./js/src/form/css/button.module.css","webpack://formidable/./node_modules/css-loader/dist/runtime/api.js","webpack://formidable/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://formidable/./node_modules/object-assign/index.js","webpack://formidable/./node_modules/prop-types/checkPropTypes.js","webpack://formidable/./node_modules/prop-types/factoryWithTypeCheckers.js","webpack://formidable/./node_modules/prop-types/index.js","webpack://formidable/./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack://formidable/./node_modules/prop-types/lib/has.js","webpack://formidable/./node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js","webpack://formidable/./node_modules/prop-types/node_modules/react-is/index.js","webpack://formidable/./js/src/form/css/button.module.css?6e55","webpack://formidable/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://formidable/./node_modules/style-loader/dist/runtime/insertBySelector.js","webpack://formidable/./node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack://formidable/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack://formidable/./node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack://formidable/./node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/compat get default export","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/webpack/runtime/nonce","webpack://formidable/./js/src/blocks.js"],"sourcesContent":["export class frmAddonAPI {\n\t/**\n\t * A function designed to toggle different addon states.\n\t *\n\t * @param {'frm_install_addon'|'frm_activate_addon'|'frm_multiple_addons'} action The addon state action type.\n\t * @param {string} addon The addon path. Ex: formidable-views/formidable-views.php\n\t *\n\t * @return {Promise} The response from the server.\n\t */\n\tstatic toggleAddonState( action, addon ) {\n\t\treturn fetch( ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams( {\n\t\t\t\taction: action,\n\t\t\t\tnonce: frmGlobal.nonce,\n\t\t\t\tplugin: addon\n\t\t\t} )\n\t\t} ).then( response => response.json() );\n\t}\n}\n","export { frmAddonAPI } from './class-addon-api';\n","/**\n * Formidable Forms icon\n */\nconst { Component } = wp.element;\nconst { Dashicon } = wp.components;\n\nexport default class FormidableIcon extends Component {\n\tloadCustomSvgIcon( ) {\n\t\tconst icon = formidable_form_selector.icon;\n\t\tif ( icon.match( /frm_white_label_icon/ ) ) {\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t);\n\t\t}\n\t\treturn false;\n\t}\n\n\trender() {\n\t\tif ( false !== this.loadCustomSvgIcon() ) {\n\t\t\treturn this.loadCustomSvgIcon();\n\t\t}\n\n\t\tif ( formidable_form_selector.icon !== 'svg' ) {\n\t\t\treturn ;\n\t\t}\n\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t);\n\t}\n}\n","const { __, sprintf } = wp.i18n;\nimport PropTypes from 'prop-types';\n\nconst {\n\tComponent,\n} = wp.element;\nconst {\n\tSelectControl,\n} = wp.components;\n\n/**\n * Displays a Select control with the specified items as options\n *\n */\nexport default class ItemSelect extends Component {\n\tcreateOptions( items, itemName ) {\n\t\tconst options = items.map( item => {\n\t\t\treturn {\n\t\t\t\tlabel: item.label,\n\t\t\t\tvalue: item.value,\n\t\t\t};\n\t\t} );\n\n\t\treturn [\n\t\t\t{\n\t\t\t\t// translators: %s is the name of the item\n\t\t\t\tlabel: sprintf( __( 'Select a %s', 'formidable' ), itemName ),\n\t\t\t\tvalue: '',\n\t\t\t},\n\t\t\t...options,\n\t\t];\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tselected,\n\t\t\titems,\n\t\t\tonChange,\n\t\t\titemName,\n\t\t\titemNamePlural,\n\t\t\tlabel,\n\t\t\thelp,\n\t\t} = this.props;\n\n\t\tif ( ( ! items || items.length === 0 ) ) {\n\t\t\treturn (\n\t\t\t\t

          \n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s is the name of the item\n\t\t\t\t\t\t__( 'Currently, there are no %s', 'formidable' ),\n\t\t\t\t\t\titemNamePlural\n\t\t\t\t\t) }\n\t\t\t\t

          \n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t\n\t\t);\n\t}\n}\n\nItemSelect.defaultProps = {\n\titemName: 'item',\n\titemNamePlural: 'items',\n};\n\nItemSelect.propTypes = {\n\tselected: PropTypes.oneOfType( [\n\t\tPropTypes.string,\n\t\tPropTypes.number,\n\t] ), //selected item\n\titems: PropTypes.array, //list of possible items\n\tonChange: PropTypes.func,\n\titemName: PropTypes.string, //name for item in select label\n\titemNamePlural: PropTypes.string, //plural of items, used in some labels\n\tlabel: PropTypes.string,\n\thelp: PropTypes.string,\n};\n","/**\n * Updates an attribute with the specified new value\n *\n * @param {string} attributeName Name of block attribute to be updated\n * @param {*} attributeValue Value of block attribute to be updated\n * @param {Function} setAttributes Function to set the block attribute to be updated\n */\nexport function updateAttribute( attributeName, attributeValue, setAttributes ) {\n\tsetAttributes( {\n\t\t[ attributeName ]: attributeValue\n\t} );\n}\n\n/**\n * Sets text attribute for a shortcode from a key value pair\n *\n * @param {*} value Value of text attribute to be set\n * @param {string} attributeName Name of text attribute to be set\n * @return {string} String of the text attribute in the format \" id=10\"\n */\nexport function setTextAttribute( value, attributeName ) {\n\tif ( value ) {\n\t\treturn ` ${ attributeName }=\"${ value }\"`;\n\t}\n\treturn '';\n}\n\n/**\n * Gets subdirectory of current site, if the site isn't on the top level of the domain\n *\n * @return {string} The subdirectory of the current site\n */\nexport function getSubDir() {\n\tconst page = window.location.pathname;\n\tconst index = page.indexOf( 'wp-admin' );\n\n\tlet subDir = '/';\n\n\tif ( index > -1 ) {\n\t\tsubDir = page.substr( 0, index );\n\t}\n\n\treturn subDir;\n}\n\nexport const cssHideAdvancedSettings = `\n .components-panel__body.editor-block-inspector__advanced {\n display:none;\n }\n`;\n","/**\n * BLOCK: formidable/simple-form\n *\n * Block to display selected Formidable form with limited setting options\n */\nimport FormShortcode from './formshortcode';\nimport Inspector from './inspector';\nimport FormidableIcon from '../common/components/icon';\nimport FormSelect from './formselect';\nimport { cssHideAdvancedSettings } from '../common/utilities/values';\n\nconst { Fragment } = wp.element;\nconst { __ } = wp.i18n;\nconst { registerBlockType } = wp.blocks;\nconst { Notice } = wp.components;\nconst { serverSideRender: ServerSideRender } = wp;\n\nregisterBlockType( 'formidable/simple-form', {\n\ttitle: formidable_form_selector.name,\n\tdescription: __( 'Display a Form', 'formidable' ),\n\ticon: FormidableIcon,\n\tcategory: 'widgets',\n\tkeywords: [\n\t\t__( 'contact forms', 'formidable' ),\n\t\t'formidable',\n\t],\n\n\tedit: function( { setAttributes, attributes, isSelected } ) {\n\t\tconst { formId } = attributes;\n\n\t\tconst forms = formidable_form_selector.forms;\n\n\t\tif ( forms.length === 0 ) {\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t{ __( 'This site does not have any forms.', 'formidable' ) }\n\t\t\t\t\n\t\t\t);\n\t\t}\n\n\t\tif ( ! formId ) {\n\t\t\treturn (\n\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t\n\t\t\t\t\t\t
          { formidable_form_selector.name }
          \n\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t{ isSelected && }\n\t\t\t\t\n\t\t\t\n\t\t);\n\t},\n\n\tsave: function( props ) {\n\t\tconst {\n\t\t\tattributes,\n\t\t} = props;\n\t\tconst { formId } = attributes;\n\t\treturn (\n\t\t\t( formId === undefined )\n\t\t\t\t? ''\n\t\t\t\t: \n\t\t\t\t\t\n\t\t\t\t\n\t\t);\n\t},\n} );\n","/**\n * BLOCK: formidable/calculator\n *\n * Block to display selected Formidable calculator form\n */\nimport FormidableIcon from '../common/components/icon';\n\nconst { __ } = wp.i18n;\nconst { registerBlockType } = wp.blocks;\nconst { Notice } = wp.components;\n\nconst FrmCalcIcon = wp.element.createElement(\n\t'svg',\n\t{\n\t\twidth: 20,\n\t\theight: 20\n\t},\n\twp.element.createElement( 'path',\n\t\t{\n\t\t\td: 'M16.9 0H3a2 2 0 0 0-1.9 1.9V18a2 2 0 0 0 2 1.9h13.7a2 2 0 0 0 1.9-1.9V2a2 2 0 0 0-2-1.9zm0 18.1H3v-10H17v10zm0-11.9H3V2H17v4.3zM5.5 12.6H7c.3 0 .5-.3.5-.5v-1.5c0-.3-.3-.5-.5-.5H5.5c-.3 0-.5.3-.5.5V12c0 .3.3.5.5.5zm7.5 3.8h1.5c.3 0 .5-.3.5-.6v-5.2c0-.3-.3-.5-.5-.5H13c-.3 0-.5.3-.5.5v5.3c0 .2.3.4.5.4zm-7.5 0H7c.3 0 .5-.3.5-.6v-1.4c0-.3-.3-.6-.5-.6H5.5c-.3 0-.5.3-.5.6v1.4c0 .3.3.6.5.6zm3.8-3.8h1.4c.3 0 .6-.3.6-.5v-1.5c0-.3-.3-.5-.6-.5H9.3c-.3 0-.6.3-.6.5V12c0 .3.3.5.6.5zm0 3.8h1.4c.3 0 .6-.3.6-.6v-1.4c0-.3-.3-.6-.6-.6H9.3c-.3 0-.6.3-.6.6v1.4c0 .3.3.6.6.6z',\n\t\t}\n\t)\n);\n\nregisterBlockType( 'formidable/calculator', {\n\ttitle: __( 'Calculator Form', 'formidable' ),\n\tdescription: __( 'Display a Calculator Form', 'formidable' ),\n\ticon: FrmCalcIcon,\n\tcategory: 'widgets',\n\tkeywords: [\n\t\t'calculation',\n\t\t'formidable',\n\t],\n\n\tedit: function( { setAttributes, attributes } ) {\n\t\tconst { formId } = attributes;\n\n\t\tconst forms = formidable_form_selector.forms;\n\n\t\tif ( forms.length === 0 ) {\n\t\t\treturn (\n\t\t\t\t\n\t\t\t\t\t{ __( 'This site does not have any forms.', 'formidable' ) }\n\t\t\t\t\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t
          \n\t\t\t\t
          \n\t\t\t\t\t\n\t\t\t\t\t
          { __( 'Calculator Form', 'formidable' ) }
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{ __( 'This site does not have any calculator forms.', 'formidable' ) }\n\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{ __( 'Upgrade Formidable Forms.', 'formidable' ) }\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
          \n\t\t\t\t\t\t{\n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t
          \n\t\t);\n\t},\n} );\n","/**\n * Form selector\n */\nimport ItemSelect from '../common/components/itemselect';\nimport PropTypes from 'prop-types';\n\nconst { __ } = wp.i18n;\nconst {\n\tComponent,\n} = wp.element;\n\nexport default class FormSelect extends Component {\n\trender() {\n\t\tconst {\n\t\t\tformId,\n\t\t\tsetAttributes,\n\t\t\tforms,\n\t\t} = this.props;\n\n\t\treturn (\n\t\t\t {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tformId: newFormId,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\n\t\t);\n\t}\n}\n\nFormSelect.propTypes = {\n\tformId: PropTypes.string, //current formId\n\tsetAttributes: PropTypes.func.isRequired, //setAttributes of block\n};\n","/**\n * Form shortcode of current form\n */\nconst { Component } = wp.element;\n\nimport {\n\tsetTextAttribute,\n} from '../common/utilities/values';\n\nfunction createParamsText( atts ) {\n\tconst {\n\t\tformId,\n\t\ttitle,\n\t\tdescription,\n\t\tminimize,\n\t} = atts;\n\n\tlet paramsText = '';\n\n\tparamsText += setTextAttribute( formId, 'id' );\n\tparamsText += setTextAttribute( title, 'title' );\n\tparamsText += setTextAttribute( description, 'description' );\n\tparamsText += setTextAttribute( minimize, 'minimize' );\n\n\treturn paramsText;\n}\n\nexport default class FormShortcode extends Component {\n\trender() {\n\t\treturn (\n\t\t\t
          \n\t\t\t\t[formidable\n\t\t\t\t{ createParamsText( this.props ) }\n\t\t\t\t]\n\t\t\t
          \n\t\t);\n\t}\n}\n","/* global formidable_form_selector */\n\nimport FormidableIcon from '../common/components/icon';\n\n( function() {\n\t'use strict';\n\n\tif ( formidable_form_selector.chartsAddon.installed ) {\n\t\treturn;\n\t}\n\n\tconst { __ } = wp.i18n;\n\tconst { registerBlockType } = wp.blocks;\n\tconst { Notice } = wp.components;\n\n\tconst UpgradeNotice = ( { text, buttonText, link } ) => (\n\t\t\n\t\t\t{ text }\n\t\t\t
          \n\t\t\t\n\t\t\t\t{ buttonText }\n\t\t\t\n\t\t
          \n\t);\n\n\tconst blockName = __( 'Formidable Chart', 'formidable' );\n\n\tregisterBlockType( 'frm-charts/graph', {\n\t\ttitle: blockName,\n\t\tdescription: __( 'Display a chart or graph', 'formidable' ),\n\t\ticon: (\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t),\n\t\tcategory: 'design',\n\n\t\tedit: () => {\n\t\t\tconst imageWrapperStyles = {\n\t\t\t\tpadding: '38px',\n\t\t\t\tmargin: '0 auto',\n\t\t\t\tmaxWidth: '600px'\n\t\t\t};\n\n\t\t\treturn (\n\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t\n\t\t\t\t\t\t
          { blockName }
          \n\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t{ formidable_form_selector.chartsAddon.hasAccess ? (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t);\n\t\t}\n\t} );\n}() );\n","/**\n * Inspector controls for Formidable Simple Form block\n */\n\nconst { __ } = wp.i18n;\nconst { Component } = wp.element;\nconst {\n\tInspectorControls,\n} = wp.blockEditor;\nconst {\n\tPanelBody,\n\tPanelRow,\n\tToggleControl,\n\tExternalLink,\n} = wp.components;\n\nimport PropTypes from 'prop-types';\nimport FormSelect from './formselect';\nimport FormShortcode from './formshortcode';\nimport {\n\tupdateAttribute,\n\tgetSubDir,\n} from '../common/utilities/values';\n\nexport default class Inspector extends Component {\n\trender() {\n\t\tconst {\n\t\t\tsetAttributes,\n\t\t\tattributes,\n\t\t\tforms,\n\t\t} = this.props;\n\n\t\tconst {\n\t\t\tformId,\n\t\t\ttitle,\n\t\t\tdescription,\n\t\t\tminimize,\n\t\t} = attributes;\n\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{ formId &&\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{ __( 'Go to form', 'formidable' ) }\n\t\t\t\t\t\t\n\t\t\t\t\t }\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tupdateAttribute( 'title', response ? '1' : '', setAttributes );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t {\n\t\t\t\t\t\t\tupdateAttribute( 'description', response ? '1' : '', setAttributes );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t {\n\t\t\t\t\t\t\tupdateAttribute( 'minimize', response ? '1' : '', setAttributes );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t);\n\t}\n}\n\nInspector.propTypes = {\n\tattributes: PropTypes.object, //block attributes\n\tsetAttributes: PropTypes.func, //setAttributes of block\n};\n","/* global formidable_form_selector */\n\nimport FormidableIcon from '../common/components/icon';\n\nconst { __ } = wp.i18n;\nconst { registerBlockType } = wp.blocks;\nconst { Notice } = wp.components;\n\nconst UpgradeNotice = ( { text, buttonText, link } ) => (\n\t\n\t\t{ text }\n\t\t
          \n\t\t\n\t\t\t{ buttonText }\n\t\t\n\t
          \n);\n\nregisterBlockType( 'frm-modal/modal', {\n\ttitle: formidable_form_selector.name + ' ' + __( 'Modal', 'formidable' ),\n\tdescription: __( 'Display a modal', 'formidable' ),\n\ticon: FormidableIcon,\n\tcategory: 'widgets',\n\tkeywords: [\n\t\t'modal',\n\t\t'formidable',\n\t],\n\n\tedit: ( { setAttributes, attributes } ) => {\n\t\tconst blockName = __( 'Bootstrap modal popup', 'formidable' );\n\t\tconst imageStyles = {\n\t\t\tmaxWidth: '504px',\n\t\t\theight: 'auto',\n\t\t\tborderRadius: '12px',\n\t\t};\n\t\tconst imageWrapperStyles = {\n\t\t\tpadding: '38px',\n\t\t\ttextAlign: 'center',\n\t\t\tbackgroundColor: '#f2f4f7',\n\t\t\tmarginTop: '24px',\n\t\t};\n\n\t\treturn (\n\t\t\t
          \n\t\t\t\t
          \n\t\t\t\t\t\n\t\t\t\t\t
          { blockName }
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t{ formidable_form_selector.modalAddon.hasAccess ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t
          \n\t\t);\n\t},\n} );\n","/* global formidable_form_selector */\nimport FormidableIcon from '../common/components/icon';\nimport { frmAddonAPI } from '../api/index';\n\nimport buttonStyles from './css/button.module.css';\n\nconst { __ } = wp.i18n;\nconst { registerBlockType } = wp.blocks;\nconst { Notice } = wp.components;\nconst { useState, useEffect } = wp.element;\n\nconst blockData = formidable_form_selector; // eslint-disable-line camelcase\nconst upgradeLink = blockData.viewsAddon.hasAccess ? blockData.viewsAddon.link : blockData.link;\n\nregisterBlockType( 'formidable/simple-view', {\n\n\ttitle: __( 'Formidable Views', 'formidable' ),\n\tdescription: __( 'Display a Visual View', 'formidable' ),\n\ticon: FormidableIcon,\n\tcategory: 'widgets',\n\tkeywords: [\n\t\t'views',\n\t\t'formidable'\n\t],\n\n\tedit: () => {\n\t\tconst [ addonActivateButton, updateAddonActivateButton ] = useState( { // eslint-disable-line react-hooks/rules-of-hooks\n\t\t\tdefaultClassname: 'frm-activate-addon frm-button-primary button button-primary',\n\t\t\tloadingClassname: buttonStyles[ 'frm-loading' ],\n\t\t\tclassnames: 'frm-activate-addon frm-button-primary button button-primary',\n\t\t\tlabel: ! blockData.viewsAddon.installed && blockData.viewsAddon.hasAccess ? __( 'Install', 'formidable' ) : __( 'Activate', 'formidable' ),\n\t\t\tisLoading: false\n\t\t} );\n\n\t\tconst activateViewsAddon = () => {\n\t\t\tif ( true === addonActivateButton.isLoading ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tupdateAddonActivateButton( { ...addonActivateButton, isLoading: true, classnames: addonActivateButton.defaultClassname + ' ' + addonActivateButton.loadingClassname } );\n\t\t\tif ( ! blockData.viewsAddon.installed && blockData.viewsAddon.hasAccess ) {\n\t\t\t\tfrmAddonAPI.toggleAddonState( 'frm_install_addon', blockData.viewsAddon.url ).then( () => {\n\t\t\t\t\twindow.location.reload();\n\t\t\t\t} );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tfrmAddonAPI.toggleAddonState( 'frm_activate_addon', 'formidable-views/formidable-views.php' ).then( () => {\n\t\t\t\twindow.location.reload();\n\t\t\t} );\n\t\t};\n\n\t\tconst blockName = __( 'Formidable Views', 'formidable' );\n\t\tconst imageStyles = {\n\t\t\tmaxWidth: '504px',\n\t\t\theight: 'auto',\n\t\t\tborderRadius: '12px'\n\t\t};\n\t\tconst imageWrapperStyles = {\n\t\t\tpadding: '38px',\n\t\t\ttextAlign: 'center',\n\t\t\tbackgroundColor: '#f2f4f7',\n\t\t\tmarginTop: '24px'\n\t\t};\n\n\t\treturn (\n\t\t\t
          \n\t\t\t\t
          \n\t\t\t\t\t\n\t\t\t\t\t
          { blockName }
          \n\t\t\t\t\t
          \n\t\t\t\t\t\t{ ! blockData.viewsAddon.hasAccess &&\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t\t{ __( 'Effortlessly transform form data into webpages with Views, the only integrated form & application builder.', 'formidable' ) }\n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{ __( 'Upgrade Formidable Forms', 'formidable' ) }\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
          \n\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ blockData.viewsAddon.hasAccess &&\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t\t{ __( 'Effortlessly transform form data into webpages with Views, the only integrated form & application builder.', 'formidable' ) }\n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
          \n\t\t\t\t\t\t}\n\t\t\t\t\t\t
          \n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t
          \n\t\t\t\t\t
          \n\t\t\t\t
          \n\t\t\t
          \n\t\t);\n\t}\n} );\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `button.t3RQZV1ZQbHGYyQUnhIY {\n\tcursor: progress;\n\topacity: 0.7;\n\tposition: relative;\n\ttext-indent: -999px;\n\tmin-width: 70px;\n\toverflow: hidden;\n}\nbutton.t3RQZV1ZQbHGYyQUnhIY:before {\n\tcontent: '';\n\tdisplay: inline-block;\n\tposition: absolute;\n\tbackground: transparent;\n\tborder: 1px solid #fff;\n\tborder-top-color: transparent;\n\tborder-left-color: transparent;\n\tborder-radius: 50%;\n\n\tbox-sizing: border-box;\n\ttop: 50%;\n\tleft: 50%;\n\tmargin-top: -10px;\n\tmargin-left: -10px;\n\twidth: 20px;\n\theight: 20px;\n\n\tanimation: Ts7haRQUDk0YMfLiQW00 2s linear infinite;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./js/src/form/css/button.module.css\"],\"names\":[],\"mappings\":\"AAAA;CACC,gBAAgB;CAChB,YAAY;CACZ,kBAAkB;CAClB,mBAAmB;CACnB,eAAe;CACf,gBAAgB;AACjB;AACA;CACC,WAAW;CACX,qBAAqB;CACrB,kBAAkB;CAClB,uBAAuB;CACvB,sBAAsB;CACtB,6BAA6B;CAC7B,8BAA8B;CAC9B,kBAAkB;;CAElB,sBAAsB;CACtB,QAAQ;CACR,SAAS;CACT,iBAAiB;CACjB,kBAAkB;CAClB,WAAW;CACX,YAAY;;CAEZ,kDAAkC;AACnC\",\"sourcesContent\":[\"button.frm-loading {\\n\\tcursor: progress;\\n\\topacity: 0.7;\\n\\tposition: relative;\\n\\ttext-indent: -999px;\\n\\tmin-width: 70px;\\n\\toverflow: hidden;\\n}\\nbutton.frm-loading:before {\\n\\tcontent: '';\\n\\tdisplay: inline-block;\\n\\tposition: absolute;\\n\\tbackground: transparent;\\n\\tborder: 1px solid #fff;\\n\\tborder-top-color: transparent;\\n\\tborder-left-color: transparent;\\n\\tborder-radius: 50%;\\n\\n\\tbox-sizing: border-box;\\n\\ttop: 50%;\\n\\tleft: 50%;\\n\\tmargin-top: -10px;\\n\\tmargin-left: -10px;\\n\\twidth: 20px;\\n\\theight: 20px;\\n\\n\\tanimation: spin 2s linear infinite;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nvar _1 = `t3RQZV1ZQbHGYyQUnhIY`;\nexport { _1 as \"frm-loading\" };\nexport var spin = `Ts7haRQUDk0YMfLiQW00`;\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = require('./lib/has');\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) { /**/ }\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar has = require('./lib/has');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bigint: createPrimitiveTypeChecker('bigint'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message, data) {\n this.message = message;\n this.data = data && typeof data === 'object' ? data: {};\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n {expectedType: expectedType}\n );\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var expectedTypes = [];\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n if (checkerResult == null) {\n return null;\n }\n if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n expectedTypes.push(checkerResult.data.expectedType);\n }\n }\n var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function invalidValidatorError(componentName, location, propFullName, key, type) {\n return new PropTypeError(\n (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n );\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (has(shapeTypes, key) && typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!./button.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!./button.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nc = undefined;","/**\n * Formidable Simple Blocks\n *\n */\n\nimport './form/block';\nimport './form/calculator';\nimport './form/modal';\nimport './form/graph';\nimport './form/views';\n"],"names":["frmAddonAPI","_classCallCheck","_createClass","key","value","toggleAddonState","action","addon","fetch","ajaxurl","method","headers","body","URLSearchParams","nonce","frmGlobal","plugin","then","response","json","Component","wp","element","Dashicon","components","FormidableIcon","_Component","_callSuper","arguments","_inherits","loadCustomSvgIcon","icon","formidable_form_selector","match","createElement","xmlns","viewBox","width","height","d","render","className","default","_wp$i18n","i18n","__","sprintf","PropTypes","SelectControl","ItemSelect","createOptions","items","itemName","options","map","item","label","concat","_toConsumableArray","_this$props","props","selected","onChange","itemNamePlural","help","length","defaultProps","propTypes","oneOfType","string","number","array","func","updateAttribute","attributeName","attributeValue","setAttributes","_defineProperty","setTextAttribute","getSubDir","page","window","location","pathname","index","indexOf","subDir","substr","cssHideAdvancedSettings","FormShortcode","Inspector","FormSelect","Fragment","registerBlockType","blocks","Notice","_wp","ServerSideRender","serverSideRender","title","name","description","category","keywords","edit","_ref","attributes","isSelected","formId","forms","status","isDismissible","block","save","undefined","FrmCalcIcon","href","link","target","src","url","alt","newFormId","isRequired","createParamsText","atts","minimize","paramsText","chartsAddon","installed","UpgradeNotice","text","buttonText","blockName","fill","stroke","strokeLinecap","strokeWidth","imageWrapperStyles","padding","margin","maxWidth","style","alignSelf","hasAccess","InspectorControls","blockEditor","_wp$components","PanelBody","PanelRow","ToggleControl","ExternalLink","initialOpen","checked","object","_ref2","imageStyles","borderRadius","textAlign","backgroundColor","marginTop","modalAddon","buttonStyles","_wp$element","useState","useEffect","blockData","upgradeLink","viewsAddon","_useState","defaultClassname","loadingClassname","classnames","isLoading","_useState2","_slicedToArray","addonActivateButton","updateAddonActivateButton","activateViewsAddon","_objectSpread","reload","rel","onClick","type"],"sourceRoot":""} \ No newline at end of file diff --git a/js/formidable_dashboard.js.map b/js/formidable_dashboard.js.map index 1adf4d81ae..1bacfb78e1 100644 --- a/js/formidable_dashboard.js.map +++ b/js/formidable_dashboard.js.map @@ -1 +1 @@ -{"version":3,"file":"formidable_dashboard.js","mappings":"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","sources":["webpack://formidable/./js/src/components/class-counter.js","webpack://formidable/./js/src/components/class-tabs-navigator.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/dashboard.js"],"sourcesContent":["export class frmCounter {\n\n\t/**\n\t * Init frmCounter\n\t *\n\t * @param {Element} element\n\t * @param {object} options\n\t * @param {integer} options.timetoFinish - Max time in mileseconds for counter to complete the animation.\n\t */\n\tconstructor( element, options ) {\n\t\tif ( ! element instanceof Element || ! element.dataset.counter ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.template = element.dataset.type || 'default';\n\t\tthis.element = element;\n\t\tthis.value = parseInt( element.dataset.counter, 10 );\n\t\tthis.activeCounter = 0;\n\t\tthis.locale = element.dataset.locale ? element.dataset.locale.replace( '_', '-' ) : 'en-US';\n\t\tthis.timeoutInterval = 50;\n\t\tthis.timeToFinish = 'undefined' !== typeof options && 'undefined' !== typeof options.timetoFinish ? options.timetoFinish : 1400;\n\t\tthis.valueStep = this.value / Math.ceil( this.timeToFinish / this.timeoutInterval );\n\n\t\tif ( 0 === this.value ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.animate();\n\t}\n\n\tformatNumber( number ) {\n\t\tif ( 'currency' === this.template ) {\n\t\t\treturn number.toLocaleString( this.locale, { minimumFractionDigits: 2 });\n\t\t}\n\t\treturn number;\n\t}\n\n\tanimate() {\n\t\tif ( Math.round( this.activeCounter ) < this.value ) {\n\t\t\tthis.activeCounter += this.valueStep;\n\t\t\tthis.element.innerText = this.formatNumber( Math.round( this.activeCounter ) );\n\t\t\tsetTimeout( this.animate.bind( this ), this.timeoutInterval );\n\t\t} else {\n\t\t\tthis.element.innerText = this.formatNumber( this.value );\n\t\t}\n\n\t}\n\n}\n","export class frmTabsNavigator {\n\n\tconstructor( wrapper ) {\n\t\tif ( 'undefined' === typeof wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrapper = wrapper instanceof Element ? wrapper : document.querySelector( wrapper );\n\n\t\tif ( null === this.wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.flexboxSlidesGap = '16px';\n\t\tthis.navs = this.wrapper.querySelectorAll( '.frm-tabs-navs ul > li' );\n\t\tthis.slideTrackLine = this.wrapper.querySelector( '.frm-tabs-active-underline' );\n\t\tthis.slideTrack = this.wrapper.querySelector( '.frm-tabs-slide-track' );\n\t\tthis.slides = this.wrapper.querySelectorAll( '.frm-tabs-slide-track > div' );\n\t\tthis.isRTL = document.documentElement.dir === 'rtl' || document.body.dir === 'rtl';\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\tif ( null === this.wrapper || ! this.navs.length || null === this.slideTrackLine || null === this.slideTrack || ! this.slides.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initDefaultSlideTrackerWidth();\n\t\tthis.navs.forEach( ( nav, index ) => {\n\t\t\tnav.addEventListener( 'click', event => this.onNavClick( event, index ) );\n\t\t});\n\t}\n\n\tonNavClick( event, index ) {\n\t\tconst navItem = event.currentTarget;\n\n\t\tevent.preventDefault();\n\n\t\tthis.removeActiveClassnameFromNavs();\n\t\tnavItem.classList.add( 'frm-active' );\n\t\tthis.initSlideTrackUnderline( navItem, index );\n\t\tthis.changeSlide( index );\n\n\t\t// Handle special case for frm_insert_fields_tab\n\t\tconst navLink = navItem.querySelector( 'a' );\n\t\tif ( navLink && navLink.id === 'frm_insert_fields_tab' && ! navLink.closest( '#frm_adv_info' ) ) {\n\t\t\twindow.frmAdminBuild?.clearSettingsBox?.();\n\t\t}\n\t}\n\n\tinitDefaultSlideTrackerWidth() {\n\t\tif ( ! this.slideTrackLine.dataset.initialWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.slideTrackLine.style.width = `${this.slideTrackLine.dataset.initialWidth}px`;\n\t}\n\tinitSlideTrackUnderline( nav, index ) {\n\t\tthis.slideTrackLine.classList.remove( 'frm-first', 'frm-last' );\n\t\tconst activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) ) ;\n\t\tconst position = this.isRTL\n\t\t\t? -( activeNav.parentElement.offsetWidth - activeNav.offsetLeft - activeNav.offsetWidth )\n\t\t\t: activeNav.offsetLeft;\n\n\t\tthis.slideTrackLine.style.transform = `translateX(${position}px)`;\n\t\tthis.slideTrackLine.style.width = activeNav.clientWidth + 'px';\n\t}\n\n\tchangeSlide( index ) {\n\t\tthis.removeActiveClassnameFromSlides();\n\t\tconst translate = index == 0 ? '0px' : `calc( ( ${( index * 100 )}% + ${parseInt( this.flexboxSlidesGap, 10 ) * index }px ) * ${this.isRTL ? 1 : -1} )`;\n\t\tif ( '0px' !== translate ) {\n\t\t\tthis.slideTrack.style.transform = `translateX(${translate})`;\n\t\t} else {\n\t\t\tthis.slideTrack.style.removeProperty( 'transform' );\n\t\t}\n\t\tif ( index in this.slides ) {\n\t\t\tthis.slides[ index ].classList.add( 'frm-active' );\n\t\t}\n\t}\n\n\tremoveActiveClassnameFromSlides() {\n\t\tthis.slides.forEach( slide => slide.classList.remove( 'frm-active' ) );\n\t}\n\n\tremoveActiveClassnameFromNavs() {\n\t\tthis.navs.forEach( nav => nav.classList.remove( 'frm-active' ) );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export class frmAnimate {\n\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements\n\t * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d\n\t *\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true });\n\t\t});\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay - The transition delay value.\n\t *\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( index + 1 ) * delay + 's';\n\t\t\t});\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t});\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${type}\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true });\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = ( paramName ) => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ([ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = {[paramName]: paramValue};\n\t\twindow.history[updateMethod]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * External dependencies\n */\nimport { frmAnimate } from 'core/utils';\n\nimport { frmTabsNavigator } from './components/class-tabs-navigator';\nimport { frmCounter } from './components/class-counter';\nclass frmDashboard {\n\n\tconstructor() {\n\n\t\tthis.options = {\n\t\t\tajax: {\n\t\t\t\taction: 'dashboard_ajax_action',\n\t\t\t\tdashboardActions: {\n\t\t\t\t\twelcomeBanner: 'welcome-banner-has-closed',\n\t\t\t\t\tcheckEmailIfSubscribed: 'email-has-subscribed',\n\t\t\t\t\tsaveSubscribedEmail: 'save-subscribed-email'\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tthis.widgetsAnimate = new frmAnimate( document.querySelectorAll( '.frm-dashboard-widget' ), 'cascade' );\n\t}\n\n\tinit() {\n\t\tthis.initInbox();\n\t\tthis.initCounters();\n\t\tthis.initCloseWelcomeBanner();\n\n\t\tthis.widgetsAnimate.cascadeFadeIn();\n\t}\n\n\tinitInbox() {\n\t\tnew frmTabsNavigator( '.frm-inbox-wrapper' );\n\t\tconst userEmailInput = document.querySelector( '#frm_leave_email' );\n\t\tconst subscribeButton = document.querySelector( '#frm-add-my-email-address' );\n\n\t\tsubscribeButton.addEventListener( 'click', () => {\n\t\t\tthis.saveSubscribedEmail( userEmailInput.value ).then();\n\t\t});\n\t}\n\n\tinitCounters() {\n\t\tconst counters = document.querySelectorAll( '.frm-counter' );\n\t\tcounters.forEach( counter => new frmCounter( counter ) );\n\t}\n\n\tinitCloseWelcomeBanner() {\n\t\tconst closeButton = document.querySelector( '.frm-dashboard-banner-close' );\n\t\tconst dashboardBanner = document.querySelector( '.frm-dashboard-banner' );\n\n\t\tif ( ! closeButton || ! dashboardBanner ) {\n\t\t\treturn;\n\t\t}\n\n\t\tcloseButton.addEventListener( 'click', () => {\n\t\t\tthis.closeWelcomeBannerSaveCookieRequest().then( data => {\n\t\t\t\tif ( true === data.success ) {\n\t\t\t\t\tdashboardBanner.remove();\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tsaveSubscribedEmail( email ) {\n\t\treturn fetch( window.ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams({\n\t\t\t\taction: this.options.ajax.action,\n\t\t\t\tdashboard_action: this.options.ajax.dashboardActions.saveSubscribedEmail,\n\t\t\t\temail: email\n\t\t\t})\n\t\t}).then( result => result.json() );\n\t}\n\n\tcloseWelcomeBannerSaveCookieRequest() {\n\t\treturn fetch( window.ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams({\n\t\t\t\taction: this.options.ajax.action,\n\t\t\t\tdashboard_action: this.options.ajax.dashboardActions.welcomeBanner,\n\t\t\t\tbanner_has_closed: 1\n\t\t\t})\n\t\t}).then( result => result.json() );\n\t}\n}\nconst frmDashboardClass = new frmDashboard();\ndocument.addEventListener( 'DOMContentLoaded', () => {\n\tfrmDashboardClass.init();\n});\n"],"names":["frmCounter","element","options","_classCallCheck","Element","dataset","counter","template","type","value","parseInt","activeCounter","locale","replace","timeoutInterval","timeToFinish","timetoFinish","valueStep","Math","ceil","animate","_createClass","key","formatNumber","number","toLocaleString","minimumFractionDigits","round","innerText","setTimeout","bind","frmTabsNavigator","wrapper","document","querySelector","flexboxSlidesGap","navs","querySelectorAll","slideTrackLine","slideTrack","slides","isRTL","documentElement","dir","body","init","_this","length","initDefaultSlideTrackerWidth","forEach","nav","index","addEventListener","event","onNavClick","navItem","currentTarget","preventDefault","removeActiveClassnameFromNavs","classList","add","initSlideTrackUnderline","changeSlide","navLink","id","closest","_window$frmAdminBuild","_window$frmAdminBuild2","window","frmAdminBuild","clearSettingsBox","call","initialWidth","style","width","concat","remove","activeNav","filter","contains","position","parentElement","offsetWidth","offsetLeft","transform","clientWidth","removeActiveClassnameFromSlides","translate","removeProperty","slide","_window$frmGlobal","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","frmAnimate","elements","arguments","undefined","prepareElements","fadeIn","applyStyleToElements","resetOpacity","once","cascadeFadeIn","_this2","delay","transitionDelay","_this3","opacity","callback","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","textContent","setAttribute","_window$frmDom$util","frmDom","util","onClickPreventDefault","documentOn","URL","location","href","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","frmDashboard","ajax","action","dashboardActions","welcomeBanner","checkEmailIfSubscribed","saveSubscribedEmail","widgetsAnimate","initInbox","initCounters","initCloseWelcomeBanner","userEmailInput","subscribeButton","counters","closeButton","dashboardBanner","closeWelcomeBannerSaveCookieRequest","data","success","fetch","ajaxurl","method","headers","URLSearchParams","dashboard_action","result","json","banner_has_closed","frmDashboardClass"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"formidable_dashboard.js","mappings":"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","sources":["webpack://formidable/./js/src/components/class-counter.js","webpack://formidable/./js/src/components/class-tabs-navigator.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/dashboard.js"],"sourcesContent":["export class frmCounter {\n\t/**\n\t * Init frmCounter\n\t *\n\t * @param {Element} element\n\t * @param {Object} options\n\t * @param {integer} options.timetoFinish - Max time in mileseconds for counter to complete the animation.\n\t */\n\tconstructor( element, options ) {\n\t\tif ( ! ( element instanceof Element ) || ! element.dataset.counter ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.template = element.dataset.type || 'default';\n\t\tthis.element = element;\n\t\tthis.value = parseInt( element.dataset.counter, 10 );\n\t\tthis.activeCounter = 0;\n\t\tthis.locale = element.dataset.locale ? element.dataset.locale.replace( '_', '-' ) : 'en-US';\n\t\tthis.timeoutInterval = 50;\n\t\tthis.timeToFinish = 'undefined' !== typeof options && 'undefined' !== typeof options.timetoFinish ? options.timetoFinish : 1400;\n\t\tthis.valueStep = this.value / Math.ceil( this.timeToFinish / this.timeoutInterval );\n\n\t\tif ( 0 === this.value ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.animate();\n\t}\n\n\tformatNumber( number ) {\n\t\tif ( 'currency' === this.template ) {\n\t\t\treturn number.toLocaleString( this.locale, { minimumFractionDigits: 2 } );\n\t\t}\n\t\treturn number;\n\t}\n\n\tanimate() {\n\t\tif ( Math.round( this.activeCounter ) < this.value ) {\n\t\t\tthis.activeCounter += this.valueStep;\n\t\t\tthis.element.innerText = this.formatNumber( Math.round( this.activeCounter ) );\n\t\t\tsetTimeout( this.animate.bind( this ), this.timeoutInterval );\n\t\t} else {\n\t\t\tthis.element.innerText = this.formatNumber( this.value );\n\t\t}\n\t}\n}\n","export class frmTabsNavigator {\n\tconstructor( wrapper ) {\n\t\tif ( 'undefined' === typeof wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrapper = wrapper instanceof Element ? wrapper : document.querySelector( wrapper );\n\n\t\tif ( null === this.wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.flexboxSlidesGap = '16px';\n\t\tthis.navs = this.wrapper.querySelectorAll( '.frm-tabs-navs ul > li' );\n\t\tthis.slideTrackLine = this.wrapper.querySelector( '.frm-tabs-active-underline' );\n\t\tthis.slideTrack = this.wrapper.querySelector( '.frm-tabs-slide-track' );\n\t\tthis.slides = this.wrapper.querySelectorAll( '.frm-tabs-slide-track > div' );\n\t\tthis.isRTL = document.documentElement.dir === 'rtl' || document.body.dir === 'rtl';\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\tif ( null === this.wrapper || ! this.navs.length || null === this.slideTrackLine || null === this.slideTrack || ! this.slides.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initDefaultSlideTrackerWidth();\n\t\tthis.navs.forEach( ( nav, index ) => {\n\t\t\tnav.addEventListener( 'click', event => this.onNavClick( event, index ) );\n\t\t} );\n\t}\n\n\tonNavClick( event, index ) {\n\t\tconst navItem = event.currentTarget;\n\n\t\tevent.preventDefault();\n\n\t\tthis.removeActiveClassnameFromNavs();\n\t\tnavItem.classList.add( 'frm-active' );\n\t\tthis.initSlideTrackUnderline( navItem, index );\n\t\tthis.changeSlide( index );\n\n\t\t// Handle special case for frm_insert_fields_tab\n\t\tconst navLink = navItem.querySelector( 'a' );\n\t\tif ( navLink && navLink.id === 'frm_insert_fields_tab' && ! navLink.closest( '#frm_adv_info' ) ) {\n\t\t\twindow.frmAdminBuild?.clearSettingsBox?.();\n\t\t}\n\t}\n\n\tinitDefaultSlideTrackerWidth() {\n\t\tif ( ! this.slideTrackLine.dataset.initialWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.slideTrackLine.style.width = `${ this.slideTrackLine.dataset.initialWidth }px`;\n\t}\n\tinitSlideTrackUnderline( nav, index ) {\n\t\tthis.slideTrackLine.classList.remove( 'frm-first', 'frm-last' );\n\t\tconst activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) );\n\t\tconst position = this.isRTL\n\t\t\t? -( activeNav.parentElement.offsetWidth - activeNav.offsetLeft - activeNav.offsetWidth )\n\t\t\t: activeNav.offsetLeft;\n\n\t\tthis.slideTrackLine.style.transform = `translateX(${ position }px)`;\n\t\tthis.slideTrackLine.style.width = activeNav.clientWidth + 'px';\n\t}\n\n\tchangeSlide( index ) {\n\t\tthis.removeActiveClassnameFromSlides();\n\t\tconst translate = index == 0 ? '0px' : `calc( ( ${ ( index * 100 ) }% + ${ parseInt( this.flexboxSlidesGap, 10 ) * index }px ) * ${ this.isRTL ? 1 : -1 } )`;\n\t\tif ( '0px' !== translate ) {\n\t\t\tthis.slideTrack.style.transform = `translateX(${ translate })`;\n\t\t} else {\n\t\t\tthis.slideTrack.style.removeProperty( 'transform' );\n\t\t}\n\t\tif ( index in this.slides ) {\n\t\t\tthis.slides[ index ].classList.add( 'frm-active' );\n\t\t}\n\t}\n\n\tremoveActiveClassnameFromSlides() {\n\t\tthis.slides.forEach( slide => slide.classList.remove( 'frm-active' ) );\n\t}\n\n\tremoveActiveClassnameFromNavs() {\n\t\tthis.navs.forEach( nav => nav.classList.remove( 'frm-active' ) );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * External dependencies\n */\nimport { frmAnimate } from 'core/utils';\n\nimport { frmTabsNavigator } from './components/class-tabs-navigator';\nimport { frmCounter } from './components/class-counter';\nclass frmDashboard {\n\tconstructor() {\n\t\tthis.options = {\n\t\t\tajax: {\n\t\t\t\taction: 'dashboard_ajax_action',\n\t\t\t\tdashboardActions: {\n\t\t\t\t\twelcomeBanner: 'welcome-banner-has-closed',\n\t\t\t\t\tcheckEmailIfSubscribed: 'email-has-subscribed',\n\t\t\t\t\tsaveSubscribedEmail: 'save-subscribed-email'\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tthis.widgetsAnimate = new frmAnimate( document.querySelectorAll( '.frm-dashboard-widget' ), 'cascade' );\n\t}\n\n\tinit() {\n\t\tthis.initInbox();\n\t\tthis.initCounters();\n\t\tthis.initCloseWelcomeBanner();\n\n\t\tthis.widgetsAnimate.cascadeFadeIn();\n\t}\n\n\tinitInbox() {\n\t\tnew frmTabsNavigator( '.frm-inbox-wrapper' );\n\t\tconst userEmailInput = document.querySelector( '#frm_leave_email' );\n\t\tconst subscribeButton = document.querySelector( '#frm-add-my-email-address' );\n\n\t\tsubscribeButton.addEventListener( 'click', () => {\n\t\t\tthis.saveSubscribedEmail( userEmailInput.value ).then();\n\t\t} );\n\t}\n\n\tinitCounters() {\n\t\tconst counters = document.querySelectorAll( '.frm-counter' );\n\t\tcounters.forEach( counter => new frmCounter( counter ) );\n\t}\n\n\tinitCloseWelcomeBanner() {\n\t\tconst closeButton = document.querySelector( '.frm-dashboard-banner-close' );\n\t\tconst dashboardBanner = document.querySelector( '.frm-dashboard-banner' );\n\n\t\tif ( ! closeButton || ! dashboardBanner ) {\n\t\t\treturn;\n\t\t}\n\n\t\tcloseButton.addEventListener( 'click', () => {\n\t\t\tthis.closeWelcomeBannerSaveCookieRequest().then( data => {\n\t\t\t\tif ( true === data.success ) {\n\t\t\t\t\tdashboardBanner.remove();\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\t}\n\n\tsaveSubscribedEmail( email ) {\n\t\treturn fetch( window.ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams( {\n\t\t\t\taction: this.options.ajax.action,\n\t\t\t\tdashboard_action: this.options.ajax.dashboardActions.saveSubscribedEmail,\n\t\t\t\temail: email\n\t\t\t} )\n\t\t} ).then( result => result.json() );\n\t}\n\n\tcloseWelcomeBannerSaveCookieRequest() {\n\t\treturn fetch( window.ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams( {\n\t\t\t\taction: this.options.ajax.action,\n\t\t\t\tdashboard_action: this.options.ajax.dashboardActions.welcomeBanner,\n\t\t\t\tbanner_has_closed: 1\n\t\t\t} )\n\t\t} ).then( result => result.json() );\n\t}\n}\nconst frmDashboardClass = new frmDashboard();\ndocument.addEventListener( 'DOMContentLoaded', () => {\n\tfrmDashboardClass.init();\n} );\n"],"names":["frmCounter","element","options","_classCallCheck","Element","dataset","counter","template","type","value","parseInt","activeCounter","locale","replace","timeoutInterval","timeToFinish","timetoFinish","valueStep","Math","ceil","animate","_createClass","key","formatNumber","number","toLocaleString","minimumFractionDigits","round","innerText","setTimeout","bind","frmTabsNavigator","wrapper","document","querySelector","flexboxSlidesGap","navs","querySelectorAll","slideTrackLine","slideTrack","slides","isRTL","documentElement","dir","body","init","_this","length","initDefaultSlideTrackerWidth","forEach","nav","index","addEventListener","event","onNavClick","navItem","currentTarget","preventDefault","removeActiveClassnameFromNavs","classList","add","initSlideTrackUnderline","changeSlide","navLink","id","closest","_window$frmAdminBuild","_window$frmAdminBuild2","window","frmAdminBuild","clearSettingsBox","call","initialWidth","style","width","concat","remove","activeNav","filter","contains","position","parentElement","offsetWidth","offsetLeft","transform","clientWidth","removeActiveClassnameFromSlides","translate","removeProperty","slide","_window$frmGlobal","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","frmAnimate","elements","arguments","undefined","prepareElements","fadeIn","applyStyleToElements","resetOpacity","once","cascadeFadeIn","_this2","delay","transitionDelay","_this3","opacity","callback","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","textContent","setAttribute","_window$frmDom$util","frmDom","util","onClickPreventDefault","documentOn","URL","location","href","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","frmDashboard","ajax","action","dashboardActions","welcomeBanner","checkEmailIfSubscribed","saveSubscribedEmail","widgetsAnimate","initInbox","initCounters","initCloseWelcomeBanner","userEmailInput","subscribeButton","counters","closeButton","dashboardBanner","closeWelcomeBannerSaveCookieRequest","data","success","fetch","ajaxurl","method","headers","URLSearchParams","dashboard_action","result","json","banner_has_closed","frmDashboardClass"],"sourceRoot":""} \ No newline at end of file diff --git a/js/formidable_overlay.js.map b/js/formidable_overlay.js.map index 4eabc92f19..b9dca8586b 100644 --- a/js/formidable_overlay.js.map +++ b/js/formidable_overlay.js.map @@ -1 +1 @@ -{"version":3,"file":"formidable_overlay.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACwC;AAEjC,IAAMC,UAAU;EAEtB,SAAAA,WAAA,EAAc;IAAAC,eAAA,OAAAD,UAAA;IACb,IAAI,CAACE,IAAI,GAAGC,QAAQ,CAACD,IAAI;EAC1B;;EAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EAXC,OAAAE,YAAA,CAAAJ,UAAA;IAAAK,GAAA;IAAAC,KAAA,EAYA,SAAAC,IAAIA,CAAEC,WAAW,EAAG;MACnB,IAAI,CAACA,WAAW,GAAG;QAClBC,UAAU,EAAE,IAAI;QAChBC,OAAO,EAAE,IAAI;QACbC,IAAI,EAAE,IAAI;QACVC,OAAO,EAAE;MACV,CAAC;MAED,IAAI,CAACJ,WAAW,GAAAK,aAAA,CAAAA,aAAA,KAAQ,IAAI,CAACL,WAAW,GAAKA,WAAW,CAAE;MAC1D,IAAI,CAACM,qBAAqB,CAAC,CAAC;MAC5B,IAAI,CAACZ,IAAI,CAACa,YAAY,CAAE,IAAI,CAACC,YAAY,CAAC,CAAC,EAAE,IAAI,CAACd,IAAI,CAACe,UAAW,CAAC;MACnE,IAAI,CAACC,eAAe,CAAC,CAAC;MACtB,IAAI,CAACC,yBAAyB,CAAE,GAAI,CAAC;IAEtC;EAAC;IAAAd,GAAA;IAAAC,KAAA,EAED,SAAAQ,qBAAqBA,CAAA,EAAG;MACvB,IAAI,CAACZ,IAAI,CAACkB,SAAS,CAACC,GAAG,CAAE,qBAAsB,CAAC;MAChDC,UAAU,CAAE,YAAM;QACjBnB,QAAQ,CAACD,IAAI,CAACqB,SAAS,GAAG,CAAC;QAC3BpB,QAAQ,CAACqB,eAAe,CAACD,SAAS,GAAG,CAAC;MACvC,CAAC,EAAE,EAAG,CAAC;IACR;EAAC;IAAAlB,GAAA;IAAAC,KAAA,EAED,SAAAmB,KAAKA,CAAA,EAAG;MACP,IAAMC,cAAc,GAAGvB,QAAQ,CAACwB,aAAa,CAAE,uBAAwB,CAAC;MACxE,IAAKD,cAAc,EAAG;QACrBvB,QAAQ,CAACD,IAAI,CAACkB,SAAS,CAACQ,MAAM,CAAE,qBAAsB,CAAC;QACvDF,cAAc,CAACE,MAAM,CAAC,CAAC;MACxB;IACD;EAAC;IAAAvB,GAAA;IAAAC,KAAA,EAED,SAAAY,eAAeA,CAAA,EAAG;MACjB,IAAMQ,cAAc,GAAGvB,QAAQ,CAACwB,aAAa,CAAE,uBAAwB,CAAC;MAExE,IAAKD,cAAc,EAAG;QACrB,IAAMG,WAAW,GAAG1B,QAAQ,CAAC2B,aAAa,CAAE,MAAO,CAAC;QACpDD,WAAW,CAACT,SAAS,CAACC,GAAG,CAAE,oBAAqB,CAAC;QACjDQ,WAAW,CAACE,gBAAgB,CAAE,OAAO,EAAE,IAAI,CAACN,KAAM,CAAC;QACnDC,cAAc,CAACM,OAAO,CAAEH,WAAY,CAAC;MACtC;IACD;EAAC;IAAAxB,GAAA;IAAAC,KAAA,EAED,SAAA2B,YAAYA,CAAA,EAAG;MACd,IAAK,IAAI,CAACzB,WAAW,CAACC,UAAU,EAAG;QAClC,OAAOyB,MAAM,CAACC,GAAG,CAAC;UAAEC,GAAG,EAAE,IAAI,CAAC5B,WAAW,CAACC;QAAW,CAAC,CAAC;MACxD;MACA,OAAO,EAAE;IACV;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAA+B,UAAUA,CAAA,EAAG;MACZ,IAAMzB,OAAO,GAAG,IAAI,CAACJ,WAAW,CAACI,OAAO,CAAC0B,GAAG,CAAE,UAAEC,MAAM,EAAEC,KAAK,EAAM;QAClE,IAAK,CAAED,MAAM,CAACE,GAAG,IAAI,EAAE,KAAKF,MAAM,CAACE,GAAG,EAAG;UACxC,OAAO,EAAE;QACV;QAAC;QACD,IAAMC,mBAAmB,GAAG,CAAC,KAAKF,KAAK,GAAG,oBAAoB,GAAG,sBAAsB;QACvF,IAAMG,OAAO,GAAG;UACfC,IAAI,EAAEL,MAAM,CAACE,GAAG;UAChBI,IAAI,EAAEN,MAAM,CAACO,KAAK;UAClBC,SAAS,EAAE,wBAAwB,GAAGL;QACvC,CAAC;QACD,IAAKH,MAAM,CAACS,MAAM,EAAG;UACpBL,OAAO,CAACK,MAAM,GAAGT,MAAM,CAACS,MAAM;QAC/B;QACA,OAAOd,MAAM,CAACe,CAAC,CAAEN,OAAQ,CAAC;MAC3B,CAAC,CAAC;MAEF,IAAK/B,OAAO,EAAG;QACd,IAAMsC,4BAA4B,GAAG;UAAEH,SAAS,EAAE,+BAA+B;UAAEI,QAAQ,EAAEvC;QAAQ,CAAC;QACtG,OAAOsB,MAAM,CAACkB,GAAG,CAAEF,4BAA6B,CAAC;MAClD;MAEA,OAAO,EAAE;IACV;EAAC;IAAA7C,GAAA;IAAAC,KAAA,EAED,SAAA+C,UAAUA,CAAA,EAAG;MACZ,IAAK,IAAI,CAAC7C,WAAW,CAACE,OAAO,EAAG;QAC/B,OAAOwB,MAAM,CAACoB,GAAG,CAAE,IAAI,EAAE;UAAEP,SAAS,EAAE,kCAAkC;UAAEF,IAAI,EAAE,IAAI,CAACrC,WAAW,CAACE;QAAQ,CAAC,CAAC;MAC5G;MACA,OAAO,EAAE;IACV;EAAC;IAAAL,GAAA;IAAAC,KAAA,EAED,SAAAiD,OAAOA,CAAA,EAAG;MACT,IAAK,IAAI,CAAC/C,WAAW,CAACG,IAAI,EAAG;QAC5B,IAAMA,IAAI,GAAGuB,MAAM,CAACoB,GAAG,CAAE,KAAM,CAAC;QAChC3C,IAAI,CAAC6C,SAAS,GAAG,IAAI,CAAChD,WAAW,CAACG,IAAI;QACtC,OAAOuB,MAAM,CAACkB,GAAG,CAAC;UAAEL,SAAS,EAAE,mBAAmB;UAAEU,KAAK,EAAE9C;QAAK,CAAC,CAAC;MACnE;MACA,OAAO,EAAE;IACV;EAAC;IAAAN,GAAA;IAAAC,KAAA,EAED,SAAAa,yBAAyBA,CAAEuC,KAAK,EAAG;MAClCpC,UAAU,CAAE,YAAM;QACjB,IAAMqC,QAAQ,GAAGxD,QAAQ,CAACyD,gBAAgB,CAAE,0FAA2F,CAAC;QACxI,IAAI7D,kDAAU,CAAE4D,QAAQ,EAAE,YAAa,CAAC,CAACE,aAAa,CAAE,IAAK,CAAC;MAC/D,CAAC,EAAEH,KAAM,CAAC;IACX;EAAC;IAAArD,GAAA;IAAAC,KAAA,EAED,SAAAU,YAAYA,CAAA,EAAG;MACd,IAAM8C,SAAS,GAAG5B,MAAM,CAACkB,GAAG,CAAC;QAC5BL,SAAS,EAAE,wBAAwB;QACnCI,QAAQ,EAAE,CACTjB,MAAM,CAACkB,GAAG,CAAC;UAACL,SAAS,EAAE,mCAAmC;UAAEI,QAAQ,EAAE,CAAE,IAAI,CAAClB,YAAY,CAAC,CAAC;QAAG,CAAC,CAAC,EAChG,IAAI,CAACoB,UAAU,CAAC,CAAC,EACjB,IAAI,CAACE,OAAO,CAAC,CAAC,EACd,IAAI,CAAClB,UAAU,CAAC,CAAC;MAEnB,CAAC,CAAC;MAEF,OAAQH,MAAM,CAACkB,GAAG,CAAC;QAAEL,SAAS,EAAE,+BAA+B;QAAEI,QAAQ,EAAE,CAAEW,SAAS;MAAG,CAAC,CAAC;IAC5F;EAAC;AAAA;;;;;;;;;;;;;;;;;;;;;;ACrIK,IAAAC,iBAAA,GAAmCC,MAAM,CAACC,SAAS;EAAtCC,UAAU,GAAAH,iBAAA,CAAftB,GAAG;EAAc0B,KAAK,GAAAJ,iBAAA,CAALI,KAAK;AAAsB;AACpD,IAAMC,YAAY,GAAG,YAAY;AACjC,IAAMC,cAAc,GAAG,cAAc;AACrC,IAAMC,aAAa,GAAG,aAAa;AACnC,IAAMC,aAAa,GAAG,aAAa;AACnC,IAAMC,aAAa,GAAG,aAAa;AACnC,IAAMC,qBAAqB,GAAG,qBAAqB;AAEnD,IAAMC,KAAK,GAAG;EACpBC,mBAAmB,EAAE;AACtB,CAAC;;;;;;;;;;;;;;;;;;;;ACVM,IAAM5E,UAAU;EAEtB;AACD;AACA;AACA;AACA;AACA;AACA;EACC,SAAAA,WAAa4D,QAAQ,EAAqB;IAAA,IAAnBiB,IAAI,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,SAAS;IAAA5E,eAAA,OAAAF,UAAA;IACtC,IAAI,CAAC4D,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACiB,IAAI,GAAOA,IAAI;IAEpB,IAAI,CAACI,eAAe,CAAC,CAAC;EACvB;;EAEA;AACD;AACA;AACA;AACA;EAJC,OAAA5E,YAAA,CAAAL,UAAA;IAAAM,GAAA;IAAAC,KAAA,EAKA,SAAA2E,MAAMA,CAAA,EAAG;MAAA,IAAAC,KAAA;MACR,IAAI,CAACC,oBAAoB,CAAE,UAAAC,OAAO,EAAI;QACrCA,OAAO,CAAChE,SAAS,CAACC,GAAG,CAAE,eAAgB,CAAC;QAExC+D,OAAO,CAACrD,gBAAgB,CAAE,cAAc,EAAE,YAAM;UAC/CmD,KAAI,CAACG,YAAY,CAAC,CAAC;UACnBD,OAAO,CAAChE,SAAS,CAACQ,MAAM,CAAE,eAAgB,CAAC;QAC5C,CAAC,EAAE;UAAE0D,IAAI,EAAE;QAAK,CAAC,CAAC;MACnB,CAAC,CAAC;IACH;;IAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EARC;IAAAjF,GAAA;IAAAC,KAAA,EASA,SAAAuD,aAAaA,CAAA,EAAiB;MAAA,IAAA0B,MAAA;MAAA,IAAf7B,KAAK,GAAAmB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;MAC1BvD,UAAU,CAAE,YAAM;QACjBiE,MAAI,CAACJ,oBAAoB,CAAE,UAAEC,OAAO,EAAE5C,KAAK,EAAM;UAChD4C,OAAO,CAAChE,SAAS,CAACQ,MAAM,CAAE,aAAc,CAAC;UACzCwD,OAAO,CAACI,KAAK,CAACC,eAAe,GAAG,CAAEjD,KAAK,GAAG,CAAC,IAAKkB,KAAK,GAAG,GAAG;QAC5D,CAAC,CAAC;MACH,CAAC,EAAE,GAAI,CAAC;IACT;EAAC;IAAArD,GAAA;IAAAC,KAAA,EAED,SAAA0E,eAAeA,CAAA,EAAG;MAAA,IAAAU,MAAA;MACjB,IAAI,CAACP,oBAAoB,CAAE,UAAAC,OAAO,EAAI;QACrC,IAAK,SAAS,KAAKM,MAAI,CAACd,IAAI,EAAG;UAC9BQ,OAAO,CAACI,KAAK,CAACG,OAAO,GAAG,KAAK;QAC9B;QACA,IAAK,SAAS,KAAKD,MAAI,CAACd,IAAI,EAAG;UAC9BQ,OAAO,CAAChE,SAAS,CAACC,GAAG,CAAE,4BAA6B,CAAC;QACtD;QACA,IAAK,YAAY,KAAKqE,MAAI,CAACd,IAAI,EAAG;UACjCQ,OAAO,CAAChE,SAAS,CAACC,GAAG,CAAE,oBAAqB,CAAC;QAC9C;QACA+D,OAAO,CAAChE,SAAS,CAACC,GAAG,CAAE,aAAc,CAAC;MACvC,CAAC,CAAC;IACH;EAAC;IAAAhB,GAAA;IAAAC,KAAA,EAED,SAAA+E,YAAYA,CAAA,EAAG;MACd,IAAI,CAACF,oBAAoB,CAAE,UAAAC,OAAO;QAAA,OAAIA,OAAO,CAACI,KAAK,CAACG,OAAO,GAAG,KAAK;MAAA,CAAC,CAAC;IACtE;EAAC;IAAAtF,GAAA;IAAAC,KAAA,EAED,SAAA6E,oBAAoBA,CAAES,QAAQ,EAAG;MAChC,IAAK,IAAI,CAACjC,QAAQ,YAAYkC,OAAO,EAAG;QACvCD,QAAQ,CAAE,IAAI,CAACjC,QAAQ,EAAE,CAAE,CAAC;QAC5B;MACD;MACA,IAAK,CAAC,GAAG,IAAI,CAACA,QAAQ,CAACmB,MAAM,EAAG;QAC/B,IAAI,CAACnB,QAAQ,CAACmC,OAAO,CAAE,UAAEV,OAAO,EAAE5C,KAAK;UAAA,OAAMoD,QAAQ,CAAER,OAAO,EAAE5C,KAAM,CAAC;QAAA,CAAC,CAAC;MAC1E;IACD;EAAC;AAAA;;;;;;;;;;;;;;AC7EF;AACA,IAAIuD,WAAW,GAAGC,OAAO,CAACC,OAAO,CAAC,CAAC;;AAEnC;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,IAAI;EAAA,OAAIJ,WAAW,GAAGA,WAAW,CAACK,IAAI,CAAED,IAAK,CAAC,CAACE,KAAK,CAAEF,IAAK,CAAC;AAAA;;;;;;;;;;;;;;;ACT7F;AACA;AACA;AAC+B;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMK,aAAa,GAAG,SAAhBA,aAAaA,CAAKC,OAAO,EAAEC,OAAO,EAAE9B,IAAI,EAAE+B,OAAO,EAAM;EACnE,IAAMC,YAAY,GAAGzG,QAAQ,CAACwB,aAAa,CAAE8E,OAAQ,CAAC;EACtD,IAAMI,YAAY,GAAG1G,QAAQ,CAACwB,aAAa,CAAE+E,OAAQ,CAAC;EAEtD,IAAK,CAAEE,YAAY,IAAI,CAAEC,YAAY,EAAG;IACvCC,OAAO,CAACC,IAAI,CAAE,uDAAwD,CAAC;IACvE;EACD;;EAEA;EACA,IAAKJ,OAAO,EAAG;IACd,IAAMK,IAAI,GAAGH,YAAY,CAAClF,aAAa,qBAAAsF,MAAA,CAAqBrC,IAAI,QAAK,CAAC;IACtE,IAAKoC,IAAI,EAAG;MACXA,IAAI,CAACE,WAAW,GAAGP,OAAO;IAC3B;EACD;;EAEA;EACAE,YAAY,CAACM,YAAY,CAAE,WAAW,EAAEvC,IAAK,CAAC;EAC9C2B,uCAAI,CAAEM,YAAa,CAAC;;EAEpB;EACAD,YAAY,CAAC7E,gBAAgB,CAAE,OAAO,EAAE,YAAM;IAC7CuE,uCAAI,CAAEO,YAAa,CAAC;EACrB,CAAC,EAAE;IAAEvB,IAAI,EAAE;EAAK,CAAC,CAAC;AACnB,CAAC;;;;;;;;;;;;;;;ACvCM,IAAA8B,mBAAA,GAA8CpD,MAAM,CAAC9B,MAAM,CAACmF,IAAI;EAAxDC,qBAAqB,GAAAF,mBAAA,CAArBE,qBAAqB;EAAEC,UAAU,GAAAH,mBAAA,CAAVG,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACApB;AACJ;AACA;AACA;AACF;AACO;;;;;;;;;;;;;;;;;;;;;;ACL7B;AACA;AACA;AACA,IAAM9E,GAAG,GAAG,IAAI+E,GAAG,CAAExD,MAAM,CAACyD,QAAQ,CAAC7E,IAAK,CAAC;AAC3C,IAAM8E,SAAS,GAAGjF,GAAG,CAACkF,YAAY;;AAElC;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,SAAS;EAAA,OAAIH,SAAS,CAACI,GAAG,CAAED,SAAU,CAAC;AAAA;;AAEpE;AACA;AACA;AACA;AACA;AACA;AACO,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAKF,SAAS,EAAM;EAChDH,SAAS,CAACM,MAAM,CAAEH,SAAU,CAAC;EAC7BpF,GAAG,CAACwF,MAAM,GAAGP,SAAS,CAACQ,QAAQ,CAAC,CAAC;EACjC,OAAOzF,GAAG,CAACyF,QAAQ,CAAC,CAAC;AACtB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAKN,SAAS,EAAEO,UAAU,EAAkC;EAAA,IAAhCC,YAAY,GAAAxD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,WAAW;EAC/E6C,SAAS,CAACY,GAAG,CAAET,SAAS,EAAEO,UAAW,CAAC;EACtC3F,GAAG,CAACwF,MAAM,GAAGP,SAAS,CAACQ,QAAQ,CAAC,CAAC;EAEjC,IAAI,CAAE,WAAW,EAAE,cAAc,CAAE,CAACK,QAAQ,CAAEF,YAAa,CAAC,EAAG;IAC9D,IAAMG,KAAK,GAAAC,eAAA,KAAKZ,SAAS,EAAGO,UAAU,CAAC;IACvCpE,MAAM,CAAC0E,OAAO,CAACL,YAAY,CAAC,CAAEG,KAAK,EAAE,EAAE,EAAE/F,GAAI,CAAC;EAC/C;EAEA,OAAOA,GAAG,CAACyF,QAAQ,CAAC,CAAC;AACtB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACO,IAAMS,aAAa,GAAG,SAAhBA,aAAaA,CAAGd,SAAS;EAAA,OAAIH,SAAS,CAACkB,GAAG,CAAEf,SAAU,CAAC;AAAA;;;;;;;;;;;;;;;;ACpDpE;AACA;AACA;AACA;AACA;AACA;AACO,IAAMgB,YAAY,GAAG,SAAfA,YAAYA,CAAGC,KAAK;EAAA,OAChC,OAAOA,KAAK,KAAK,QAAQ,GAAG,yJAAyJ,CAACC,IAAI,CAAED,KAAM,CAAC,GAAG,KAAK;AAAA;;AAE5M;AACA;AACA;AACA;AACA;AACA;AACO,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAG5D,OAAO;EAAA,OAAIA,OAAO,YAAY6D,WAAW,IAAInC,OAAO,CAACC,IAAI,CAAE,8DAA+D,CAAC,IAAI,KAAK;AAAA;;AAEjK;AACA;AACA;AACA;AACA;AACA;AACO,IAAMmC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,GAAG;EAAA,OAAIC,MAAM,CAACC,IAAI,CAAEF,GAAI,CAAC,CAACrE,MAAM,KAAK,CAAC,IAAIqE,GAAG,CAACG,WAAW,KAAKF,MAAM;AAAA;;;;;;;;;;;;;;;;;;;ACvBjG;AACA;AACA;AAC8C;;AAE9C;AACA;AACA;AACA;AACA;AACA;AACO,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAG5F,QAAQ;EAAA,IAAA6F,WAAA;EAAA,QAAAA,WAAA,GACnCC,KAAK,CAACC,IAAI,CAAE/F,QAAS,CAAC,cAAA6F,WAAA,uBAAtBA,WAAA,CAAwB1D,OAAO,CAAE,UAAAV,OAAO;IAAA,OAAImB,IAAI,CAAEnB,OAAQ,CAAC;EAAA,CAAC,CAAC;AAAA;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACO,IAAMuE,YAAY,GAAG,SAAfA,YAAYA,CAAGhG,QAAQ;EAAA,IAAAiG,YAAA;EAAA,QAAAA,YAAA,GACnCH,KAAK,CAACC,IAAI,CAAE/F,QAAS,CAAC,cAAAiG,YAAA,uBAAtBA,YAAA,CAAwB9D,OAAO,CAAE,UAAAV,OAAO;IAAA,OAAIkB,IAAI,CAAElB,OAAQ,CAAC;EAAA,CAAC,CAAC;AAAA;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACO,IAAMmB,IAAI,GAAG,SAAPA,IAAIA,CAAGnB,OAAO;EAAA,OAAIA,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEhE,SAAS,CAACQ,MAAM,CAAEwC,wDAAa,CAAC;AAAA;;AAExE;AACA;AACA;AACA;AACA;AACA;AACO,IAAMkC,IAAI,GAAG,SAAPA,IAAIA,CAAGlB,OAAO;EAAA,OAAIA,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEhE,SAAS,CAACC,GAAG,CAAE+C,wDAAa,CAAC;AAAA;;AAErE;AACA;AACA;AACA;AACA;AACA;AACO,IAAMyF,SAAS,GAAG,SAAZA,SAASA,CAAGzE,OAAO,EAAI;EACnC,IAAM0E,MAAM,GAAG9F,MAAM,CAAC+F,gBAAgB,CAAE3E,OAAQ,CAAC;EACjD,OAAO0E,MAAM,CAACE,gBAAgB,CAAE,SAAU,CAAC,KAAK,MAAM;AACvD,CAAC;;;;;;UChDD;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA,8CAA8C;;;;;WCA9C;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;;;;;;ACNwD;AAExDhG,MAAM,CAAChE,UAAU,GAAG,IAAIA,iEAAU,CAAC,CAAC,C","sources":["webpack://formidable/./js/src/components/class-overlay.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/overlay.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { frmAnimate } from 'core/utils';\n\nexport class frmOverlay {\n\n\tconstructor() {\n\t\tthis.body = document.body;\n\t}\n\n\t/**\n\t * Open overlay\n\t *\n\t * @param {Object} overlayData - An object containing data for the overlay.\n\t * @param {string} overlayData.hero_image - URL of the hero image.\n\t * @param {string} overlayData.heading - Heading of the overlay.\n\t * @param {string} overlayData.copy - Copy/content of the overlay.\n\t * @param {Array} overlayData.buttons - Array of button objects.\n\t * @param {string} overlayData.buttons[].url - URL for the button.\n\t * @param {string} overlayData.buttons[].target - Target attribute for the button link.\n\t * @param {string} overlayData.buttons[].label - Label/text of the button.\n\t */\n\topen( overlayData ) {\n\t\tthis.overlayData = {\n\t\t\thero_image: null,\n\t\t\theading: null,\n\t\t\tcopy: null,\n\t\t\tbuttons: []\n\t\t};\n\n\t\tthis.overlayData = { ...this.overlayData, ...overlayData };\n\t\tthis.bodyAddOverflowHidden();\n\t\tthis.body.insertBefore( this.buildOverlay(), this.body.firstChild );\n\t\tthis.initCloseButton();\n\t\tthis.initOverlayIntroAnimation( 200 );\n\n\t}\n\n\tbodyAddOverflowHidden() {\n\t\tthis.body.classList.add( 'frm-hidden-overflow' );\n\t\tsetTimeout( () => {\n\t\t\tdocument.body.scrollTop = 0;\n\t\t\tdocument.documentElement.scrollTop = 0;\n\t\t}, 80 );\n\t}\n\n\tclose() {\n\t\tconst overlayWrapper = document.querySelector( '.frm-overlay--wrapper' );\n\t\tif ( overlayWrapper ) {\n\t\t\tdocument.body.classList.remove( 'frm-hidden-overflow' );\n\t\t\toverlayWrapper.remove();\n\t\t}\n\t}\n\n\tinitCloseButton() {\n\t\tconst overlayWrapper = document.querySelector( '.frm-overlay--wrapper' );\n\n\t\tif ( overlayWrapper ) {\n\t\t\tconst closeButton = document.createElement( 'span' );\n\t\t\tcloseButton.classList.add( 'frm-overlay--close' );\n\t\t\tcloseButton.addEventListener( 'click', this.close );\n\t\t\toverlayWrapper.prepend( closeButton );\n\t\t}\n\t}\n\n\tgetHeroImage() {\n\t\tif ( this.overlayData.hero_image ) {\n\t\t\treturn frmDom.img({ src: this.overlayData.hero_image });\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetButtons() {\n\t\tconst buttons = this.overlayData.buttons.map( ( button, index ) => {\n\t\t\tif ( ! button.url || '' === button.url ) {\n\t\t\t\treturn '';\n\t\t\t};\n\t\t\tconst buttonTypeClassname = 1 === index ? 'frm-button-primary' : 'frm-button-secondary';\n\t\t\tconst options = {\n\t\t\t\thref: button.url,\n\t\t\t\ttext: button.label,\n\t\t\t\tclassName: 'button frm_animate_bg ' + buttonTypeClassname\n\t\t\t};\n\t\t\tif ( button.target ) {\n\t\t\t\toptions.target = button.target;\n\t\t\t}\n\t\t\treturn frmDom.a( options );\n\t\t});\n\n\t\tif ( buttons ) {\n\t\t\tconst buttonsWrapperElementOptions = { className: 'frm-overlay--cta frm-flex-box', children: buttons };\n\t\t\treturn frmDom.div( buttonsWrapperElementOptions );\n\t\t}\n\n\t\treturn '';\n\t}\n\n\tgetHeading() {\n\t\tif ( this.overlayData.heading )\t{\n\t\t\treturn frmDom.tag( 'h2', { className: 'frm-overlay--heading frm-text-xl', text: this.overlayData.heading });\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetCopy() {\n\t\tif ( this.overlayData.copy ) {\n\t\t\tconst copy = frmDom.tag( 'div' );\n\t\t\tcopy.innerHTML = this.overlayData.copy;\n\t\t\treturn frmDom.div({ className: 'frm-overlay--copy', child: copy });\n\t\t}\n\t\treturn '';\n\t}\n\n\tinitOverlayIntroAnimation( delay ) {\n\t\tsetTimeout( () => {\n\t\t\tconst elements = document.querySelectorAll( '.frm-overlay--hero-image, .frm-overlay--heading, .frm-overlay--copy, .frm-overlay--cta a' );\n\t\t\tnew frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn( 0.07 );\n\t\t}, delay );\n\t}\n\n\tbuildOverlay() {\n\t\tconst container = frmDom.div({\n\t\t\tclassName: 'frm-overlay--container',\n\t\t\tchildren: [\n\t\t\t\tfrmDom.div({className: 'frm-overlay--hero-image frm-mb-md', children: [ this.getHeroImage() ] }),\n\t\t\t\tthis.getHeading(),\n\t\t\t\tthis.getCopy(),\n\t\t\t\tthis.getButtons()\n\t\t\t]\n\t\t});\n\n\t\treturn frmDom.div({ className: 'frm-overlay--wrapper frm_wrap', children: [ container ] });\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export class frmAnimate {\n\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements\n\t * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d\n\t *\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true });\n\t\t});\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay - The transition delay value.\n\t *\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( index + 1 ) * delay + 's';\n\t\t\t});\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t});\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${type}\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true });\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = ( paramName ) => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ([ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = {[paramName]: paramValue};\n\t\twindow.history[updateMethod]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { frmOverlay } from './components/class-overlay';\n\nwindow.frmOverlay = new frmOverlay();\n"],"names":["frmAnimate","frmOverlay","_classCallCheck","body","document","_createClass","key","value","open","overlayData","hero_image","heading","copy","buttons","_objectSpread","bodyAddOverflowHidden","insertBefore","buildOverlay","firstChild","initCloseButton","initOverlayIntroAnimation","classList","add","setTimeout","scrollTop","documentElement","close","overlayWrapper","querySelector","remove","closeButton","createElement","addEventListener","prepend","getHeroImage","frmDom","img","src","getButtons","map","button","index","url","buttonTypeClassname","options","href","text","label","className","target","a","buttonsWrapperElementOptions","children","div","getHeading","tag","getCopy","innerHTML","child","delay","elements","querySelectorAll","cascadeFadeIn","container","_window$frmGlobal","window","frmGlobal","PLUGIN_URL","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","type","arguments","length","undefined","prepareElements","fadeIn","_this","applyStyleToElements","element","resetOpacity","once","_this2","style","transitionDelay","_this3","opacity","callback","Element","forEach","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","concat","textContent","setAttribute","_window$frmDom$util","util","onClickPreventDefault","documentOn","URL","location","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"formidable_overlay.js","mappings":"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","sources":["webpack://formidable/./js/src/components/class-overlay.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/overlay.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { frmAnimate } from 'core/utils';\n\nexport class frmOverlay {\n\tconstructor() {\n\t\tthis.body = document.body;\n\t}\n\n\t/**\n\t * Open overlay\n\t *\n\t * @param {Object} overlayData An object containing data for the overlay.\n\t * @param {string} overlayData.hero_image URL of the hero image.\n\t * @param {string} overlayData.heading Heading of the overlay.\n\t * @param {string} overlayData.copy Copy/content of the overlay.\n\t * @param {Array} overlayData.buttons Array of button objects.\n\t * @param {string} overlayData.buttons[].url URL for the button.\n\t * @param {string} overlayData.buttons[].target Target attribute for the button link.\n\t * @param {string} overlayData.buttons[].label Label/text of the button.\n\t */\n\topen( overlayData ) {\n\t\tthis.overlayData = {\n\t\t\thero_image: null,\n\t\t\theading: null,\n\t\t\tcopy: null,\n\t\t\tbuttons: []\n\t\t};\n\n\t\tthis.overlayData = { ...this.overlayData, ...overlayData };\n\t\tthis.bodyAddOverflowHidden();\n\t\tthis.body.insertBefore( this.buildOverlay(), this.body.firstChild );\n\t\tthis.initCloseButton();\n\t\tthis.initOverlayIntroAnimation( 200 );\n\t}\n\n\tbodyAddOverflowHidden() {\n\t\tthis.body.classList.add( 'frm-hidden-overflow' );\n\t\tsetTimeout( () => {\n\t\t\tdocument.body.scrollTop = 0;\n\t\t\tdocument.documentElement.scrollTop = 0;\n\t\t}, 80 );\n\t}\n\n\tclose() {\n\t\tconst overlayWrapper = document.querySelector( '.frm-overlay--wrapper' );\n\t\tif ( overlayWrapper ) {\n\t\t\tdocument.body.classList.remove( 'frm-hidden-overflow' );\n\t\t\toverlayWrapper.remove();\n\t\t}\n\t}\n\n\tinitCloseButton() {\n\t\tconst overlayWrapper = document.querySelector( '.frm-overlay--wrapper' );\n\n\t\tif ( overlayWrapper ) {\n\t\t\tconst closeButton = document.createElement( 'span' );\n\t\t\tcloseButton.classList.add( 'frm-overlay--close' );\n\t\t\tcloseButton.addEventListener( 'click', this.close );\n\t\t\toverlayWrapper.prepend( closeButton );\n\t\t}\n\t}\n\n\tgetHeroImage() {\n\t\tif ( this.overlayData.hero_image ) {\n\t\t\treturn frmDom.img( { src: this.overlayData.hero_image } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetButtons() {\n\t\tconst buttons = this.overlayData.buttons.map( ( button, index ) => {\n\t\t\tif ( ! button.url || '' === button.url ) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\tconst buttonTypeClassname = 1 === index ? 'frm-button-primary' : 'frm-button-secondary';\n\t\t\tconst options = {\n\t\t\t\thref: button.url,\n\t\t\t\ttext: button.label,\n\t\t\t\tclassName: 'button frm_animate_bg ' + buttonTypeClassname\n\t\t\t};\n\t\t\tif ( button.target ) {\n\t\t\t\toptions.target = button.target;\n\t\t\t}\n\t\t\treturn frmDom.a( options );\n\t\t} );\n\n\t\tif ( buttons ) {\n\t\t\tconst buttonsWrapperElementOptions = { className: 'frm-overlay--cta frm-flex-box', children: buttons };\n\t\t\treturn frmDom.div( buttonsWrapperElementOptions );\n\t\t}\n\n\t\treturn '';\n\t}\n\n\tgetHeading() {\n\t\tif ( this.overlayData.heading )\t{\n\t\t\treturn frmDom.tag( 'h2', { className: 'frm-overlay--heading frm-text-xl', text: this.overlayData.heading } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetCopy() {\n\t\tif ( this.overlayData.copy ) {\n\t\t\tconst copy = frmDom.tag( 'div' );\n\t\t\tcopy.innerHTML = this.overlayData.copy;\n\t\t\treturn frmDom.div( { className: 'frm-overlay--copy', child: copy } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tinitOverlayIntroAnimation( delay ) {\n\t\tsetTimeout( () => {\n\t\t\tconst elements = document.querySelectorAll( '.frm-overlay--hero-image, .frm-overlay--heading, .frm-overlay--copy, .frm-overlay--cta a' );\n\t\t\tnew frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn( 0.07 );\n\t\t}, delay );\n\t}\n\n\tbuildOverlay() {\n\t\tconst container = frmDom.div( {\n\t\t\tclassName: 'frm-overlay--container',\n\t\t\tchildren: [\n\t\t\t\tfrmDom.div( { className: 'frm-overlay--hero-image frm-mb-md', children: [ this.getHeroImage() ] } ),\n\t\t\t\tthis.getHeading(),\n\t\t\t\tthis.getCopy(),\n\t\t\t\tthis.getButtons()\n\t\t\t]\n\t\t} );\n\n\t\treturn frmDom.div( { className: 'frm-overlay--wrapper frm_wrap', children: [ container ] } );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { frmOverlay } from './components/class-overlay';\n\nwindow.frmOverlay = new frmOverlay();\n"],"names":["frmAnimate","frmOverlay","_classCallCheck","body","document","_createClass","key","value","open","overlayData","hero_image","heading","copy","buttons","_objectSpread","bodyAddOverflowHidden","insertBefore","buildOverlay","firstChild","initCloseButton","initOverlayIntroAnimation","classList","add","setTimeout","scrollTop","documentElement","close","overlayWrapper","querySelector","remove","closeButton","createElement","addEventListener","prepend","getHeroImage","frmDom","img","src","getButtons","map","button","index","url","buttonTypeClassname","options","href","text","label","className","target","a","buttonsWrapperElementOptions","children","div","getHeading","tag","getCopy","innerHTML","child","delay","elements","querySelectorAll","cascadeFadeIn","container","_window$frmGlobal","window","frmGlobal","PLUGIN_URL","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","type","arguments","length","undefined","prepareElements","fadeIn","_this","applyStyleToElements","element","resetOpacity","once","_this2","style","transitionDelay","_this3","opacity","callback","Element","forEach","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","concat","textContent","setAttribute","_window$frmDom$util","util","onClickPreventDefault","documentOn","URL","location","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue"],"sourceRoot":""} \ No newline at end of file diff --git a/js/formidable_styles.js.map b/js/formidable_styles.js.map index eb17e4d178..52627d0e52 100644 --- a/js/formidable_styles.js.map +++ b/js/formidable_styles.js.map @@ -1 +1 @@ -{"version":3,"file":"formidable_styles.js","mappings":";;;;;;;;;;;;;;;;AAAsC;AACE;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,aAAa,oBAAoB,MAAM;AACnD;AACe;AACf,aAAa,2DAAO;;AAEpB;AACA,SAAS,4DAAQ;AACjB;AACA;;;;;;;;;;;;;;;;AC5BA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA,EAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB;AACA,YAAY,GAAG;AACf;AACe;AACf;AACA;;AAEA,cAAc,oBAAoB;AAClC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;;AC7GsC;;AAEtC;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf,gBAAgB,2DAAO;;AAEvB;AACA,sBAAsB,OAAO;AAC7B;AACA;;;;;;;;;;;;;;;;ACjBA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;AC3HA;AACA;AACA;AACuD;AACF;AACrD;AACA;AACA;AACA;AACA;AACA,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC;;AAEA;AACA;AACA;AACA,YAAY,sBAAsB;AAClC,YAAY,sBAAsB;AAClC;AACA,YAAY,SAAS;AACrB;;AAEA;AACA;AACA;AACA;;AAEA,SAAS,gEAAgB;AACzB;AACA;;AAEA,SAAS,iEAAiB;AAC1B;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,QAAQ;;AAEzB;;AAEA,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA,kBAAkB;AAClB;;;AAGA;AACA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,+DAAe,aAAa,EAAC;AAC7B;;;;;;;;;;;;ACtGA;AACA;AACA;AACA;AACA;AACA,YAAY,sBA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CA;AACA;AAC4B;AAC5B;AACA,aAAa,oBAAoB;AACjC;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;;AAEA;AACA;AACA,gBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,iCAAiC;AAC9C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,YAAY;;AAE1B,cAAc,YAAY;;AAE1B;AACA,aAAa,sDAAsD;AACnE;AACA;AACA;;AAEA;AACA,aAAa,6BAA6B;AAC1C;AACA;;AAEA;AACA,aAAa,2CAA2C;AACxD;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,4DAA4D;AACzE;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,6EAA6E;AAC1F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8FAA8F;AAC3G;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,eAAe;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,gEAAgE;AAC7E;AACA;AACA;;AAEA,cAAc,kCAAkC;;AAEhD;AACA;AACA;AACA;AACA,cAAc,eAAe;AAC7B,cAAc,eAAe;AAC7B;AACA,cAAc,iBAAiB;AAC/B;AACA,cAAc,WAAW;AACzB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB;AACA,cAAc,KAAK;AACnB;AACA,cAAc,OAAO;AACrB,cAAc,gBAAgB;AAC9B;;AAEA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB,YAAY,4BAA4B;AACxC;;AAEO;AACP;AACA;AACA;AACA,YAAY;AACZ;AACA,mBAAmB,8CAAM,GAAG;AAC5B;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,aAAa,mBAAmB;AAChC,cAAc,qBAAqB;AACn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;AACA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;AACA,WAAW,eAAe;AAC1B,WAAW,eAAe;AAC1B;AACA,YAAY,4BAA4B;AACxC;AACA;AACA;;AAEA,YAAY,4BAA4B;AACxC;;AAEA,YAAY,4BAA4B;AACxC;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,eAAe,SAAS;AACxB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA,2BAA2B,eAAe;AAC1C,qBAAqB,iBAAiB;AACtC,cAAc,iBAAiB;AAC/B,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,KAA+B,GAAG,EAMtC;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;ACtKA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA,uBAAuB;AACvB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ,IAA8B;AACtC,QAAQ,eAAkB;AAC1B,QAAQ,gBAAmB;AAC3B;AACA;AACA;AACA;;AAEA,YAAY,IAA6C;AACzD,YAAY,mCAAO;AACnB;AACA;AACA;AACA;AACA,aAAa;AAAA,kGAAC;AACd;AACA;AACA;AACA,CAAC,IAAI;;;;;;;;;;;;;;;;;ACtO0C;;AAE/C;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,gGAAgG;AAC9G;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,qCAAqC;AACnD;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,gBAAgB;AACrD;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA,qBAAqB;;AAErB,cAAc,kBAAkB;AAChC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B,WAAW,kBAAkB;AAC7B;AACe;AACf;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,QAAQ,gEAAW;AACnB;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB;AACA,WAAW,aAAa;AACxB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACpNA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;;;;;;;;;;;;;;;;;ACJqD;AACrD;AACA,+BAA+B,gEAAgB;AAC/C;;;;;;;;;;;;;;;;ACHA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACFuD;AACJ;AACs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","sources":["webpack://formidable/./node_modules/@tannin/compile/index.js","webpack://formidable/./node_modules/@tannin/evaluate/index.js","webpack://formidable/./node_modules/@tannin/plural-forms/index.js","webpack://formidable/./node_modules/@tannin/postfix/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createAddHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createCurrentHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDidHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDoingHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHasHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHooks.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRemoveHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRunHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateHookName.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateNamespace.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/create-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/default-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/index.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/sprintf.js","webpack://formidable/./js/src/admin/styles/dependent-updater-component.js","webpack://formidable/./node_modules/memize/index.js","webpack://formidable/./node_modules/sprintf-js/src/sprintf.js","webpack://formidable/./node_modules/tannin/index.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/compat get default export","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/admin/styles.js"],"sourcesContent":["import postfix from '@tannin/postfix';\nimport evaluate from '@tannin/evaluate';\n\n/**\n * Given a C expression, returns a function which can be called to evaluate its\n * result.\n *\n * @example\n *\n * ```js\n * import compile from '@tannin/compile';\n *\n * const evaluate = compile( 'n > 1' );\n *\n * evaluate( { n: 2 } );\n * // ⇒ true\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {(variables?:{[variable:string]:*})=>*} Compiled evaluator.\n */\nexport default function compile( expression ) {\n\tvar terms = postfix( expression );\n\n\treturn function( variables ) {\n\t\treturn evaluate( terms, variables );\n\t};\n}\n","/**\n * Operator callback functions.\n *\n * @type {Object}\n */\nvar OPERATORS = {\n\t'!': function( a ) {\n\t\treturn ! a;\n\t},\n\t'*': function( a, b ) {\n\t\treturn a * b;\n\t},\n\t'/': function( a, b ) {\n\t\treturn a / b;\n\t},\n\t'%': function( a, b ) {\n\t\treturn a % b;\n\t},\n\t'+': function( a, b ) {\n\t\treturn a + b;\n\t},\n\t'-': function( a, b ) {\n\t\treturn a - b;\n\t},\n\t'<': function( a, b ) {\n\t\treturn a < b;\n\t},\n\t'<=': function( a, b ) {\n\t\treturn a <= b;\n\t},\n\t'>': function( a, b ) {\n\t\treturn a > b;\n\t},\n\t'>=': function( a, b ) {\n\t\treturn a >= b;\n\t},\n\t'==': function( a, b ) {\n\t\treturn a === b;\n\t},\n\t'!=': function( a, b ) {\n\t\treturn a !== b;\n\t},\n\t'&&': function( a, b ) {\n\t\treturn a && b;\n\t},\n\t'||': function( a, b ) {\n\t\treturn a || b;\n\t},\n\t'?:': function( a, b, c ) {\n\t\tif ( a ) {\n\t\t\tthrow b;\n\t\t}\n\n\t\treturn c;\n\t},\n};\n\n/**\n * Given an array of postfix terms and operand variables, returns the result of\n * the postfix evaluation.\n *\n * @example\n *\n * ```js\n * import evaluate from '@tannin/evaluate';\n *\n * // 3 + 4 * 5 / 6 ⇒ '3 4 5 * 6 / +'\n * const terms = [ '3', '4', '5', '*', '6', '/', '+' ];\n *\n * evaluate( terms, {} );\n * // ⇒ 6.333333333333334\n * ```\n *\n * @param {string[]} postfix Postfix terms.\n * @param {Object} variables Operand variables.\n *\n * @return {*} Result of evaluation.\n */\nexport default function evaluate( postfix, variables ) {\n\tvar stack = [],\n\t\ti, j, args, getOperatorResult, term, value;\n\n\tfor ( i = 0; i < postfix.length; i++ ) {\n\t\tterm = postfix[ i ];\n\n\t\tgetOperatorResult = OPERATORS[ term ];\n\t\tif ( getOperatorResult ) {\n\t\t\t// Pop from stack by number of function arguments.\n\t\t\tj = getOperatorResult.length;\n\t\t\targs = Array( j );\n\t\t\twhile ( j-- ) {\n\t\t\t\targs[ j ] = stack.pop();\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tvalue = getOperatorResult.apply( null, args );\n\t\t\t} catch ( earlyReturn ) {\n\t\t\t\treturn earlyReturn;\n\t\t\t}\n\t\t} else if ( variables.hasOwnProperty( term ) ) {\n\t\t\tvalue = variables[ term ];\n\t\t} else {\n\t\t\tvalue = +term;\n\t\t}\n\n\t\tstack.push( value );\n\t}\n\n\treturn stack[ 0 ];\n}\n","import compile from '@tannin/compile';\n\n/**\n * Given a C expression, returns a function which, when called with a value,\n * evaluates the result with the value assumed to be the \"n\" variable of the\n * expression. The result will be coerced to its numeric equivalent.\n *\n * @param {string} expression C expression.\n *\n * @return {Function} Evaluator function.\n */\nexport default function pluralForms( expression ) {\n\tvar evaluate = compile( expression );\n\n\treturn function( n ) {\n\t\treturn +evaluate( { n: n } );\n\t};\n}\n","var PRECEDENCE, OPENERS, TERMINATORS, PATTERN;\n\n/**\n * Operator precedence mapping.\n *\n * @type {Object}\n */\nPRECEDENCE = {\n\t'(': 9,\n\t'!': 8,\n\t'*': 7,\n\t'/': 7,\n\t'%': 7,\n\t'+': 6,\n\t'-': 6,\n\t'<': 5,\n\t'<=': 5,\n\t'>': 5,\n\t'>=': 5,\n\t'==': 4,\n\t'!=': 4,\n\t'&&': 3,\n\t'||': 2,\n\t'?': 1,\n\t'?:': 1,\n};\n\n/**\n * Characters which signal pair opening, to be terminated by terminators.\n *\n * @type {string[]}\n */\nOPENERS = [ '(', '?' ];\n\n/**\n * Characters which signal pair termination, the value an array with the\n * opener as its first member. The second member is an optional operator\n * replacement to push to the stack.\n *\n * @type {string[]}\n */\nTERMINATORS = {\n\t')': [ '(' ],\n\t':': [ '?', '?:' ],\n};\n\n/**\n * Pattern matching operators and openers.\n *\n * @type {RegExp}\n */\nPATTERN = /<=|>=|==|!=|&&|\\|\\||\\?:|\\(|!|\\*|\\/|%|\\+|-|<|>|\\?|\\)|:/;\n\n/**\n * Given a C expression, returns the equivalent postfix (Reverse Polish)\n * notation terms as an array.\n *\n * If a postfix string is desired, simply `.join( ' ' )` the result.\n *\n * @example\n *\n * ```js\n * import postfix from '@tannin/postfix';\n *\n * postfix( 'n > 1' );\n * // ⇒ [ 'n', '1', '>' ]\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {string[]} Postfix terms.\n */\nexport default function postfix( expression ) {\n\tvar terms = [],\n\t\tstack = [],\n\t\tmatch, operator, term, element;\n\n\twhile ( ( match = expression.match( PATTERN ) ) ) {\n\t\toperator = match[ 0 ];\n\n\t\t// Term is the string preceding the operator match. It may contain\n\t\t// whitespace, and may be empty (if operator is at beginning).\n\t\tterm = expression.substr( 0, match.index ).trim();\n\t\tif ( term ) {\n\t\t\tterms.push( term );\n\t\t}\n\n\t\twhile ( ( element = stack.pop() ) ) {\n\t\t\tif ( TERMINATORS[ operator ] ) {\n\t\t\t\tif ( TERMINATORS[ operator ][ 0 ] === element ) {\n\t\t\t\t\t// Substitution works here under assumption that because\n\t\t\t\t\t// the assigned operator will no longer be a terminator, it\n\t\t\t\t\t// will be pushed to the stack during the condition below.\n\t\t\t\t\toperator = TERMINATORS[ operator ][ 1 ] || operator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if ( OPENERS.indexOf( element ) >= 0 || PRECEDENCE[ element ] < PRECEDENCE[ operator ] ) {\n\t\t\t\t// Push to stack if either an opener or when pop reveals an\n\t\t\t\t// element of lower precedence.\n\t\t\t\tstack.push( element );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// For each popped from stack, push to terms.\n\t\t\tterms.push( element );\n\t\t}\n\n\t\tif ( ! TERMINATORS[ operator ] ) {\n\t\t\tstack.push( operator );\n\t\t}\n\n\t\t// Slice matched fragment from expression to continue match.\n\t\texpression = expression.substr( match.index + operator.length );\n\t}\n\n\t// Push remainder of operand, if exists, to terms.\n\texpression = expression.trim();\n\tif ( expression ) {\n\t\tterms.push( expression );\n\t}\n\n\t// Pop remaining items from stack into terms.\n\treturn terms.concat( stack.reverse() );\n}\n","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback AddHook\n *\n * Adds the hook to the appropriate hooks container.\n *\n * @param {string} hookName Name of hook to add\n * @param {string} namespace The unique namespace identifying the callback in the form `vendor/plugin/function`.\n * @param {import('.').Callback} callback Function to call when the hook is run\n * @param {number} [priority=10] Priority of this hook\n */\n\n/**\n * Returns a function which, when invoked, will add a hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {AddHook} Function that adds a new hook.\n */\n\nfunction createAddHook(hooks, storeKey) {\n return function addHook(hookName, namespace, callback) {\n var priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10;\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!validateNamespace(namespace)) {\n return;\n }\n\n if ('function' !== typeof callback) {\n // eslint-disable-next-line no-console\n console.error('The hook callback must be a function.');\n return;\n } // Validate numeric priority\n\n\n if ('number' !== typeof priority) {\n // eslint-disable-next-line no-console\n console.error('If specified, the hook priority must be a number.');\n return;\n }\n\n var handler = {\n callback: callback,\n priority: priority,\n namespace: namespace\n };\n\n if (hooksStore[hookName]) {\n // Find the correct insert index of the new hook.\n var handlers = hooksStore[hookName].handlers;\n /** @type {number} */\n\n var i;\n\n for (i = handlers.length; i > 0; i--) {\n if (priority >= handlers[i - 1].priority) {\n break;\n }\n }\n\n if (i === handlers.length) {\n // If append, operate via direct assignment.\n handlers[i] = handler;\n } else {\n // Otherwise, insert before index via splice.\n handlers.splice(i, 0, handler);\n } // We may also be currently executing this hook. If the callback\n // we're adding would come after the current callback, there's no\n // problem; otherwise we need to increase the execution index of\n // any other runs by 1 to account for the added element.\n\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex++;\n }\n });\n } else {\n // This is the first hook of its type.\n hooksStore[hookName] = {\n handlers: [handler],\n runs: 0\n };\n }\n\n if (hookName !== 'hookAdded') {\n hooks.doAction('hookAdded', hookName, namespace, callback, priority);\n }\n };\n}\n\nexport default createAddHook;\n//# sourceMappingURL=createAddHook.js.map","/**\n * Returns a function which, when invoked, will return the name of the\n * currently running hook, or `null` if no hook of the given type is currently\n * running.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {() => string | null} Function that returns the current hook name or null.\n */\nfunction createCurrentHook(hooks, storeKey) {\n return function currentHook() {\n var _hooksStore$__current, _hooksStore$__current2;\n\n var hooksStore = hooks[storeKey];\n return (_hooksStore$__current = (_hooksStore$__current2 = hooksStore.__current[hooksStore.__current.length - 1]) === null || _hooksStore$__current2 === void 0 ? void 0 : _hooksStore$__current2.name) !== null && _hooksStore$__current !== void 0 ? _hooksStore$__current : null;\n };\n}\n\nexport default createCurrentHook;\n//# sourceMappingURL=createCurrentHook.js.map","/**\n * Internal dependencies\n */\nimport validateHookName from './validateHookName.js';\n/**\n * @callback DidHook\n *\n * Returns the number of times an action has been fired.\n *\n * @param {string} hookName The hook name to check.\n *\n * @return {number | undefined} The number of times the hook has run.\n */\n\n/**\n * Returns a function which, when invoked, will return the number of times a\n * hook has been called.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DidHook} Function that returns a hook's call count.\n */\n\nfunction createDidHook(hooks, storeKey) {\n return function didHook(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0;\n };\n}\n\nexport default createDidHook;\n//# sourceMappingURL=createDidHook.js.map","/**\n * @callback DoingHook\n * Returns whether a hook is currently being executed.\n *\n * @param {string} [hookName] The name of the hook to check for. If\n * omitted, will check for any hook being executed.\n *\n * @return {boolean} Whether the hook is being executed.\n */\n\n/**\n * Returns a function which, when invoked, will return whether a hook is\n * currently being executed.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DoingHook} Function that returns whether a hook is currently\n * being executed.\n */\nfunction createDoingHook(hooks, storeKey) {\n return function doingHook(hookName) {\n var hooksStore = hooks[storeKey]; // If the hookName was not passed, check for any current hook.\n\n if ('undefined' === typeof hookName) {\n return 'undefined' !== typeof hooksStore.__current[0];\n } // Return the __current hook.\n\n\n return hooksStore.__current[0] ? hookName === hooksStore.__current[0].name : false;\n };\n}\n\nexport default createDoingHook;\n//# sourceMappingURL=createDoingHook.js.map","/**\n * @callback HasHook\n *\n * Returns whether any handlers are attached for the given hookName and optional namespace.\n *\n * @param {string} hookName The name of the hook to check for.\n * @param {string} [namespace] Optional. The unique namespace identifying the callback\n * in the form `vendor/plugin/function`.\n *\n * @return {boolean} Whether there are handlers that are attached to the given hook.\n */\n\n/**\n * Returns a function which, when invoked, will return whether any handlers are\n * attached to a particular hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {HasHook} Function that returns whether any handlers are\n * attached to a particular hook and optional namespace.\n */\nfunction createHasHook(hooks, storeKey) {\n return function hasHook(hookName, namespace) {\n var hooksStore = hooks[storeKey]; // Use the namespace if provided.\n\n if ('undefined' !== typeof namespace) {\n return hookName in hooksStore && hooksStore[hookName].handlers.some(function (hook) {\n return hook.namespace === namespace;\n });\n }\n\n return hookName in hooksStore;\n };\n}\n\nexport default createHasHook;\n//# sourceMappingURL=createHasHook.js.map","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\n\n/**\n * Internal dependencies\n */\nimport createAddHook from './createAddHook';\nimport createRemoveHook from './createRemoveHook';\nimport createHasHook from './createHasHook';\nimport createRunHook from './createRunHook';\nimport createCurrentHook from './createCurrentHook';\nimport createDoingHook from './createDoingHook';\nimport createDidHook from './createDidHook';\n/**\n * Internal class for constructing hooks. Use `createHooks()` function\n *\n * Note, it is necessary to expose this class to make its type public.\n *\n * @private\n */\n\nexport var _Hooks = function _Hooks() {\n _classCallCheck(this, _Hooks);\n\n /** @type {import('.').Store} actions */\n this.actions = Object.create(null);\n this.actions.__current = [];\n /** @type {import('.').Store} filters */\n\n this.filters = Object.create(null);\n this.filters.__current = [];\n this.addAction = createAddHook(this, 'actions');\n this.addFilter = createAddHook(this, 'filters');\n this.removeAction = createRemoveHook(this, 'actions');\n this.removeFilter = createRemoveHook(this, 'filters');\n this.hasAction = createHasHook(this, 'actions');\n this.hasFilter = createHasHook(this, 'filters');\n this.removeAllActions = createRemoveHook(this, 'actions', true);\n this.removeAllFilters = createRemoveHook(this, 'filters', true);\n this.doAction = createRunHook(this, 'actions');\n this.applyFilters = createRunHook(this, 'filters', true);\n this.currentAction = createCurrentHook(this, 'actions');\n this.currentFilter = createCurrentHook(this, 'filters');\n this.doingAction = createDoingHook(this, 'actions');\n this.doingFilter = createDoingHook(this, 'filters');\n this.didAction = createDidHook(this, 'actions');\n this.didFilter = createDidHook(this, 'filters');\n};\n/** @typedef {_Hooks} Hooks */\n\n/**\n * Returns an instance of the hooks object.\n *\n * @return {Hooks} A Hooks instance.\n */\n\nfunction createHooks() {\n return new _Hooks();\n}\n\nexport default createHooks;\n//# sourceMappingURL=createHooks.js.map","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback RemoveHook\n * Removes the specified callback (or all callbacks) from the hook with a given hookName\n * and namespace.\n *\n * @param {string} hookName The name of the hook to modify.\n * @param {string} namespace The unique namespace identifying the callback in the\n * form `vendor/plugin/function`.\n *\n * @return {number | undefined} The number of callbacks removed.\n */\n\n/**\n * Returns a function which, when invoked, will remove a specified hook or all\n * hooks by the given name.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [removeAll=false] Whether to remove all callbacks for a hookName,\n * without regard to namespace. Used to create\n * `removeAll*` functions.\n *\n * @return {RemoveHook} Function that removes hooks.\n */\n\nfunction createRemoveHook(hooks, storeKey) {\n var removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function removeHook(hookName, namespace) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!removeAll && !validateNamespace(namespace)) {\n return;\n } // Bail if no hooks exist by this name\n\n\n if (!hooksStore[hookName]) {\n return 0;\n }\n\n var handlersRemoved = 0;\n\n if (removeAll) {\n handlersRemoved = hooksStore[hookName].handlers.length;\n hooksStore[hookName] = {\n runs: hooksStore[hookName].runs,\n handlers: []\n };\n } else {\n // Try to find the specified callback to remove.\n var handlers = hooksStore[hookName].handlers;\n\n var _loop = function _loop(i) {\n if (handlers[i].namespace === namespace) {\n handlers.splice(i, 1);\n handlersRemoved++; // This callback may also be part of a hook that is\n // currently executing. If the callback we're removing\n // comes after the current callback, there's no problem;\n // otherwise we need to decrease the execution index of any\n // other runs by 1 to account for the removed element.\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex--;\n }\n });\n }\n };\n\n for (var i = handlers.length - 1; i >= 0; i--) {\n _loop(i);\n }\n }\n\n if (hookName !== 'hookRemoved') {\n hooks.doAction('hookRemoved', hookName, namespace);\n }\n\n return handlersRemoved;\n };\n}\n\nexport default createRemoveHook;\n//# sourceMappingURL=createRemoveHook.js.map","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\n\n/**\n * Returns a function which, when invoked, will execute all callbacks\n * registered to a hook of the specified type, optionally returning the final\n * value of the call chain.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [returnFirstArg=false] Whether each hook callback is expected to\n * return its first argument.\n *\n * @return {(hookName:string, ...args: unknown[]) => unknown} Function that runs hook callbacks.\n */\nfunction createRunHook(hooks, storeKey) {\n var returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function runHooks(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!hooksStore[hookName]) {\n hooksStore[hookName] = {\n handlers: [],\n runs: 0\n };\n }\n\n hooksStore[hookName].runs++;\n var handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds.\n\n if ('production' !== process.env.NODE_ENV) {\n // Handle any 'all' hooks registered.\n if ('hookAdded' !== hookName && hooksStore.all) {\n handlers.push.apply(handlers, _toConsumableArray(hooksStore.all.handlers));\n }\n }\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (!handlers || !handlers.length) {\n return returnFirstArg ? args[0] : undefined;\n }\n\n var hookInfo = {\n name: hookName,\n currentIndex: 0\n };\n\n hooksStore.__current.push(hookInfo);\n\n while (hookInfo.currentIndex < handlers.length) {\n var handler = handlers[hookInfo.currentIndex];\n var result = handler.callback.apply(null, args);\n\n if (returnFirstArg) {\n args[0] = result;\n }\n\n hookInfo.currentIndex++;\n }\n\n hooksStore.__current.pop();\n\n if (returnFirstArg) {\n return args[0];\n }\n };\n}\n\nexport default createRunHook;\n//# sourceMappingURL=createRunHook.js.map","/**\n * Internal dependencies\n */\nimport createHooks from './createHooks';\n/** @typedef {(...args: any[])=>any} Callback */\n\n/**\n * @typedef Handler\n * @property {Callback} callback The callback\n * @property {string} namespace The namespace\n * @property {number} priority The namespace\n */\n\n/**\n * @typedef Hook\n * @property {Handler[]} handlers Array of handlers\n * @property {number} runs Run counter\n */\n\n/**\n * @typedef Current\n * @property {string} name Hook name\n * @property {number} currentIndex The index\n */\n\n/**\n * @typedef {Record & {__current: Current[]}} Store\n */\n\n/**\n * @typedef {'actions' | 'filters'} StoreKey\n */\n\n/**\n * @typedef {import('./createHooks').Hooks} Hooks\n */\n\nexport var defaultHooks = createHooks();\nvar addAction = defaultHooks.addAction,\n addFilter = defaultHooks.addFilter,\n removeAction = defaultHooks.removeAction,\n removeFilter = defaultHooks.removeFilter,\n hasAction = defaultHooks.hasAction,\n hasFilter = defaultHooks.hasFilter,\n removeAllActions = defaultHooks.removeAllActions,\n removeAllFilters = defaultHooks.removeAllFilters,\n doAction = defaultHooks.doAction,\n applyFilters = defaultHooks.applyFilters,\n currentAction = defaultHooks.currentAction,\n currentFilter = defaultHooks.currentFilter,\n doingAction = defaultHooks.doingAction,\n doingFilter = defaultHooks.doingFilter,\n didAction = defaultHooks.didAction,\n didFilter = defaultHooks.didFilter,\n actions = defaultHooks.actions,\n filters = defaultHooks.filters;\nexport { createHooks, addAction, addFilter, removeAction, removeFilter, hasAction, hasFilter, removeAllActions, removeAllFilters, doAction, applyFilters, currentAction, currentFilter, doingAction, doingFilter, didAction, didFilter, actions, filters };\n//# sourceMappingURL=index.js.map","/**\n * Validate a hookName string.\n *\n * @param {string} hookName The hook name to validate. Should be a non empty string containing\n * only numbers, letters, dashes, periods and underscores. Also,\n * the hook name cannot begin with `__`.\n *\n * @return {boolean} Whether the hook name is valid.\n */\nfunction validateHookName(hookName) {\n if ('string' !== typeof hookName || '' === hookName) {\n // eslint-disable-next-line no-console\n console.error('The hook name must be a non-empty string.');\n return false;\n }\n\n if (/^__/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name cannot begin with `__`.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name can only contain numbers, letters, dashes, periods and underscores.');\n return false;\n }\n\n return true;\n}\n\nexport default validateHookName;\n//# sourceMappingURL=validateHookName.js.map","/**\n * Validate a namespace string.\n *\n * @param {string} namespace The namespace to validate - should take the form\n * `vendor/plugin/function`.\n *\n * @return {boolean} Whether the namespace is valid.\n */\nfunction validateNamespace(namespace) {\n if ('string' !== typeof namespace || '' === namespace) {\n // eslint-disable-next-line no-console\n console.error('The namespace must be a non-empty string.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.\\-\\/]*$/.test(namespace)) {\n // eslint-disable-next-line no-console\n console.error('The namespace can only contain numbers, letters, dashes, periods, underscores and slashes.');\n return false;\n }\n\n return true;\n}\n\nexport default validateNamespace;\n//# sourceMappingURL=validateNamespace.js.map","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n/**\n * External dependencies\n */\nimport Tannin from 'tannin';\n/**\n * @typedef {Record} LocaleData\n */\n\n/**\n * Default locale data to use for Tannin domain when not otherwise provided.\n * Assumes an English plural forms expression.\n *\n * @type {LocaleData}\n */\n\nvar DEFAULT_LOCALE_DATA = {\n '': {\n /** @param {number} n */\n plural_forms: function plural_forms(n) {\n return n === 1 ? 0 : 1;\n }\n }\n};\n/*\n * Regular expression that matches i18n hooks like `i18n.gettext`, `i18n.ngettext`,\n * `i18n.gettext_domain` or `i18n.ngettext_with_context` or `i18n.has_translation`.\n */\n\nvar I18N_HOOK_REGEXP = /^i18n\\.(n?gettext|has_translation)(_|$)/;\n/**\n * @typedef {(domain?: string) => LocaleData} GetLocaleData\n *\n * Returns locale data by domain in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} SetLocaleData\n *\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} ResetLocaleData\n *\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/** @typedef {() => void} SubscribeCallback */\n\n/** @typedef {() => void} UnsubscribeCallback */\n\n/**\n * @typedef {(callback: SubscribeCallback) => UnsubscribeCallback} Subscribe\n *\n * Subscribes to changes of locale data\n */\n\n/**\n * @typedef {(domain?: string) => string} GetFilterDomain\n * Retrieve the domain to use when calling domain-specific filters.\n */\n\n/**\n * @typedef {(text: string, domain?: string) => string} __\n *\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n */\n\n/**\n * @typedef {(text: string, context: string, domain?: string) => string} _x\n *\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, domain?: string) => string} _n\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, context: string, domain?: string) => string} _nx\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n */\n\n/**\n * @typedef {() => boolean} IsRtl\n *\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n */\n\n/**\n * @typedef {(single: string, context?: string, domain?: string) => boolean} HasTranslation\n *\n * Check if there is a translation for a given string in singular form.\n */\n\n/** @typedef {import('@wordpress/hooks').Hooks} Hooks */\n\n/**\n * An i18n instance\n *\n * @typedef I18n\n * @property {GetLocaleData} getLocaleData Returns locale data by domain in a Jed-formatted JSON object shape.\n * @property {SetLocaleData} setLocaleData Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n * @property {ResetLocaleData} resetLocaleData Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n * @property {Subscribe} subscribe Subscribes to changes of Tannin locale data.\n * @property {__} __ Retrieve the translation of text.\n * @property {_x} _x Retrieve translated string with gettext context.\n * @property {_n} _n Translates and retrieves the singular or plural form based on the supplied\n * number.\n * @property {_nx} _nx Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n * @property {IsRtl} isRTL Check if current locale is RTL.\n * @property {HasTranslation} hasTranslation Check if there is a translation for a given string.\n */\n\n/**\n * Create an i18n instance\n *\n * @param {LocaleData} [initialData] Locale data configuration.\n * @param {string} [initialDomain] Domain for which configuration applies.\n * @param {Hooks} [hooks] Hooks implementation.\n * @return {I18n} I18n instance\n */\n\nexport var createI18n = function createI18n(initialData, initialDomain, hooks) {\n /**\n * The underlying instance of Tannin to which exported functions interface.\n *\n * @type {Tannin}\n */\n var tannin = new Tannin({});\n var listeners = new Set();\n\n var notifyListeners = function notifyListeners() {\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n /**\n * Subscribe to changes of locale data.\n *\n * @param {SubscribeCallback} callback Subscription callback.\n * @return {UnsubscribeCallback} Unsubscribe callback.\n */\n\n\n var subscribe = function subscribe(callback) {\n listeners.add(callback);\n return function () {\n return listeners.delete(callback);\n };\n };\n /** @type {GetLocaleData} */\n\n\n var getLocaleData = function getLocaleData() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return tannin.data[domain];\n };\n /**\n * @param {LocaleData} [data]\n * @param {string} [domain]\n */\n\n\n var doSetLocaleData = function doSetLocaleData(data) {\n var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';\n tannin.data[domain] = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA), tannin.data[domain]), data); // Populate default domain configuration (supported locale date which omits\n // a plural forms expression).\n\n tannin.data[domain][''] = _objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA['']), tannin.data[domain]['']);\n };\n /** @type {SetLocaleData} */\n\n\n var setLocaleData = function setLocaleData(data, domain) {\n doSetLocaleData(data, domain);\n notifyListeners();\n };\n /** @type {ResetLocaleData} */\n\n\n var resetLocaleData = function resetLocaleData(data, domain) {\n // Reset all current Tannin locale data.\n tannin.data = {}; // Reset cached plural forms functions cache.\n\n tannin.pluralForms = {};\n setLocaleData(data, domain);\n };\n /**\n * Wrapper for Tannin's `dcnpgettext`. Populates default locale data if not\n * otherwise previously assigned.\n *\n * @param {string|undefined} domain Domain to retrieve the translated text.\n * @param {string|undefined} context Context information for the translators.\n * @param {string} single Text to translate if non-plural. Used as\n * fallback return value on a caught error.\n * @param {string} [plural] The text to be used if the number is\n * plural.\n * @param {number} [number] The number to compare against to use\n * either the singular or plural form.\n *\n * @return {string} The translated string.\n */\n\n\n var dcnpgettext = function dcnpgettext() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n var context = arguments.length > 1 ? arguments[1] : undefined;\n var single = arguments.length > 2 ? arguments[2] : undefined;\n var plural = arguments.length > 3 ? arguments[3] : undefined;\n var number = arguments.length > 4 ? arguments[4] : undefined;\n\n if (!tannin.data[domain]) {\n // use `doSetLocaleData` to set silently, without notifying listeners\n doSetLocaleData(undefined, domain);\n }\n\n return tannin.dcnpgettext(domain, context, single, plural, number);\n };\n /** @type {GetFilterDomain} */\n\n\n var getFilterDomain = function getFilterDomain() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return domain;\n };\n /** @type {__} */\n\n\n var __ = function __(text, domain) {\n var translation = dcnpgettext(domain, undefined, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext', translation, text, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_' + getFilterDomain(domain), translation, text, domain)\n );\n };\n /** @type {_x} */\n\n\n var _x = function _x(text, context, domain) {\n var translation = dcnpgettext(domain, context, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation based on context information.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context', translation, text, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context_' + getFilterDomain(domain), translation, text, context, domain)\n );\n };\n /** @type {_n} */\n\n\n var _n = function _n(single, plural, number, domain) {\n var translation = dcnpgettext(domain, undefined, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext', translation, single, plural, number, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_' + getFilterDomain(domain), translation, single, plural, number, domain)\n );\n };\n /** @type {_nx} */\n\n\n var _nx = function _nx(single, plural, number, context, domain) {\n var translation = dcnpgettext(domain, context, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string with gettext context.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context', translation, single, plural, number, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context_' + getFilterDomain(domain), translation, single, plural, number, context, domain)\n );\n };\n /** @type {IsRtl} */\n\n\n var isRTL = function isRTL() {\n return 'rtl' === _x('ltr', 'text direction');\n };\n /** @type {HasTranslation} */\n\n\n var hasTranslation = function hasTranslation(single, context, domain) {\n var _tannin$data, _tannin$data2;\n\n var key = context ? context + \"\\x04\" + single : single;\n var result = !!((_tannin$data = tannin.data) !== null && _tannin$data !== void 0 && (_tannin$data2 = _tannin$data[domain !== null && domain !== void 0 ? domain : 'default']) !== null && _tannin$data2 !== void 0 && _tannin$data2[key]);\n\n if (hooks) {\n /**\n * Filters the presence of a translation in the locale data.\n *\n * @param {boolean} hasTranslation Whether the translation is present or not..\n * @param {string} single The singular form of the translated text (used as key in locale data)\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation', result, single, context, domain);\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation_' + getFilterDomain(domain), result, single, context, domain);\n }\n\n return result;\n };\n\n if (initialData) {\n setLocaleData(initialData, initialDomain);\n }\n\n if (hooks) {\n /**\n * @param {string} hookName\n */\n var onHookAddedOrRemoved = function onHookAddedOrRemoved(hookName) {\n if (I18N_HOOK_REGEXP.test(hookName)) {\n notifyListeners();\n }\n };\n\n hooks.addAction('hookAdded', 'core/i18n', onHookAddedOrRemoved);\n hooks.addAction('hookRemoved', 'core/i18n', onHookAddedOrRemoved);\n }\n\n return {\n getLocaleData: getLocaleData,\n setLocaleData: setLocaleData,\n resetLocaleData: resetLocaleData,\n subscribe: subscribe,\n __: __,\n _x: _x,\n _n: _n,\n _nx: _nx,\n isRTL: isRTL,\n hasTranslation: hasTranslation\n };\n};\n//# sourceMappingURL=create-i18n.js.map","/**\n * Internal dependencies\n */\nimport { createI18n } from './create-i18n';\n/**\n * WordPress dependencies\n */\n\nimport { defaultHooks } from '@wordpress/hooks';\nvar i18n = createI18n(undefined, undefined, defaultHooks);\n/**\n * Default, singleton instance of `I18n`.\n */\n\nexport default i18n;\n/*\n * Comments in this file are duplicated from ./i18n due to\n * https://github.com/WordPress/gutenberg/pull/20318#issuecomment-590837722\n */\n\n/**\n * @typedef {import('./create-i18n').LocaleData} LocaleData\n * @typedef {import('./create-i18n').SubscribeCallback} SubscribeCallback\n * @typedef {import('./create-i18n').UnsubscribeCallback} UnsubscribeCallback\n */\n\n/**\n * Returns locale data by domain in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {string} [domain] Domain for which to get the data.\n * @return {LocaleData} Locale data.\n */\n\nexport var getLocaleData = i18n.getLocaleData.bind(i18n);\n/**\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var setLocaleData = i18n.setLocaleData.bind(i18n);\n/**\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var resetLocaleData = i18n.resetLocaleData.bind(i18n);\n/**\n * Subscribes to changes of locale data\n *\n * @param {SubscribeCallback} callback Subscription callback\n * @return {UnsubscribeCallback} Unsubscribe callback\n */\n\nexport var subscribe = i18n.subscribe.bind(i18n);\n/**\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n *\n * @param {string} text Text to translate.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated text.\n */\n\nexport var __ = i18n.__.bind(i18n);\n/**\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n *\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated context string without pipe.\n */\n\nexport var _x = i18n._x.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _n = i18n._n.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _nx = i18n._nx.bind(i18n);\n/**\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n *\n * @return {boolean} Whether locale is RTL.\n */\n\nexport var isRTL = i18n.isRTL.bind(i18n);\n/**\n * Check if there is a translation for a given string (in singular form).\n *\n * @param {string} single Singular form of the string to look up.\n * @param {string} [context] Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n * @return {boolean} Whether the translation exists or not.\n */\n\nexport var hasTranslation = i18n.hasTranslation.bind(i18n);\n//# sourceMappingURL=default-i18n.js.map","export { sprintf } from './sprintf';\nexport * from './create-i18n';\nexport { default as defaultI18n, setLocaleData, resetLocaleData, getLocaleData, subscribe, __, _x, _n, _nx, isRTL, hasTranslation } from './default-i18n';\n//# sourceMappingURL=index.js.map","/**\n * External dependencies\n */\nimport memoize from 'memize';\nimport sprintfjs from 'sprintf-js';\n/**\n * Log to console, once per message; or more precisely, per referentially equal\n * argument set. Because Jed throws errors, we log these to the console instead\n * to avoid crashing the application.\n *\n * @param {...*} args Arguments to pass to `console.error`\n */\n\nvar logErrorOnce = memoize(console.error); // eslint-disable-line no-console\n\n/**\n * Returns a formatted string. If an error occurs in applying the format, the\n * original format string is returned.\n *\n * @param {string} format The format of the string to generate.\n * @param {...*} args Arguments to apply to the format.\n *\n * @see https://www.npmjs.com/package/sprintf-js\n *\n * @return {string} The formatted string.\n */\n\nexport function sprintf(format) {\n try {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return sprintfjs.sprintf.apply(sprintfjs, [format].concat(args));\n } catch (error) {\n logErrorOnce('sprintf error: \\n\\n' + error.toString());\n return format;\n }\n}\n//# sourceMappingURL=sprintf.js.map","/**\n * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview.\n * The names of the elements that will be updated are specified using the \"will-change\" attribute.\n * It is primarily used in components from Style/Quick Settings.\n * For instance, when the \"FrmPrimaryColorStyleComponent\" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds.\n */\nexport default class frmStyleDependentUpdaterComponent {\n\n\t/**\n\t * Creates an instance of frmStyleDependentUpdaterComponent.\n\t * @param {HTMLElement} component - The component element.\n\t */\n\tconstructor( component ) {\n\t\tthis.component = component;\n\t\ttry {\n\t\t\tconst willChangeData = JSON.parse( this.component.dataset.willChange );\n\t\t\tthis.data = {\n\t\t\t\tpropagateInputs: this.initPropagationList( willChangeData ),\n\t\t\t\tchangeEvent: new Event( 'change', { bubbles: true } )\n\t\t\t};\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'Error parsing JSON data from \"will-change\" attribute.', error );\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the list of inputs to propagate changes to.\n\t * The selection is made by provided input's names list in \"will-change\" attribute.\n\t * @param {string[]} inputNames - The names of the inputs to propagate changes to.\n\t * @return {HTMLElement[]} - The list of inputs to propagate changes to.\n\t */\n\tinitPropagationList( inputNames ) {\n\t\tconst list = [];\n\t\tinputNames.forEach( ( name ) => {\n\t\t\tconst input = document.querySelector( `input[name=\"${name}\"]` );\n\t\t\tif ( null !== input ) {\n\t\t\t\tlist.push( input );\n\t\t\t}\n\t\t});\n\t\treturn list;\n\t}\n\n\t/**\n\t * Updates all dependent elements with the given value.\n\t * @param {string} value - The value to update the dependent elements with.\n\t */\n\tupdateAllDependentElements( value ) {\n\t\tthis.data.propagateInputs.forEach( ( input ) => {\n\t\t\tinput.value = value;\n\t\t});\n\t\tthis.data.propagateInputs[0].dispatchEvent( this.data.changeEvent );\n\t}\n}\n","/**\n * Memize options object.\n *\n * @typedef MemizeOptions\n *\n * @property {number} [maxSize] Maximum size of the cache.\n */\n\n/**\n * Internal cache entry.\n *\n * @typedef MemizeCacheNode\n *\n * @property {?MemizeCacheNode|undefined} [prev] Previous node.\n * @property {?MemizeCacheNode|undefined} [next] Next node.\n * @property {Array<*>} args Function arguments for cache\n * entry.\n * @property {*} val Function result.\n */\n\n/**\n * Properties of the enhanced function for controlling cache.\n *\n * @typedef MemizeMemoizedFunction\n *\n * @property {()=>void} clear Clear the cache.\n */\n\n/**\n * Accepts a function to be memoized, and returns a new memoized function, with\n * optional options.\n *\n * @template {Function} F\n *\n * @param {F} fn Function to memoize.\n * @param {MemizeOptions} [options] Options object.\n *\n * @return {F & MemizeMemoizedFunction} Memoized function.\n */\nfunction memize( fn, options ) {\n\tvar size = 0;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar head;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar tail;\n\n\toptions = options || {};\n\n\tfunction memoized( /* ...args */ ) {\n\t\tvar node = head,\n\t\t\tlen = arguments.length,\n\t\t\targs, i;\n\n\t\tsearchCache: while ( node ) {\n\t\t\t// Perform a shallow equality test to confirm that whether the node\n\t\t\t// under test is a candidate for the arguments passed. Two arrays\n\t\t\t// are shallowly equal if their length matches and each entry is\n\t\t\t// strictly equal between the two sets. Avoid abstracting to a\n\t\t\t// function which could incur an arguments leaking deoptimization.\n\n\t\t\t// Check whether node arguments match arguments length\n\t\t\tif ( node.args.length !== arguments.length ) {\n\t\t\t\tnode = node.next;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Check whether node arguments match arguments values\n\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\tif ( node.args[ i ] !== arguments[ i ] ) {\n\t\t\t\t\tnode = node.next;\n\t\t\t\t\tcontinue searchCache;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// At this point we can assume we've found a match\n\n\t\t\t// Surface matched node to head if not already\n\t\t\tif ( node !== head ) {\n\t\t\t\t// As tail, shift to previous. Must only shift if not also\n\t\t\t\t// head, since if both head and tail, there is no previous.\n\t\t\t\tif ( node === tail ) {\n\t\t\t\t\ttail = node.prev;\n\t\t\t\t}\n\n\t\t\t\t// Adjust siblings to point to each other. If node was tail,\n\t\t\t\t// this also handles new tail's empty `next` assignment.\n\t\t\t\t/** @type {MemizeCacheNode} */ ( node.prev ).next = node.next;\n\t\t\t\tif ( node.next ) {\n\t\t\t\t\tnode.next.prev = node.prev;\n\t\t\t\t}\n\n\t\t\t\tnode.next = head;\n\t\t\t\tnode.prev = null;\n\t\t\t\t/** @type {MemizeCacheNode} */ ( head ).prev = node;\n\t\t\t\thead = node;\n\t\t\t}\n\n\t\t\t// Return immediately\n\t\t\treturn node.val;\n\t\t}\n\n\t\t// No cached value found. Continue to insertion phase:\n\n\t\t// Create a copy of arguments (avoid leaking deoptimization)\n\t\targs = new Array( len );\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\targs[ i ] = arguments[ i ];\n\t\t}\n\n\t\tnode = {\n\t\t\targs: args,\n\n\t\t\t// Generate the result from original function\n\t\t\tval: fn.apply( null, args ),\n\t\t};\n\n\t\t// Don't need to check whether node is already head, since it would\n\t\t// have been returned above already if it was\n\n\t\t// Shift existing head down list\n\t\tif ( head ) {\n\t\t\thead.prev = node;\n\t\t\tnode.next = head;\n\t\t} else {\n\t\t\t// If no head, follows that there's no tail (at initial or reset)\n\t\t\ttail = node;\n\t\t}\n\n\t\t// Trim tail if we're reached max size and are pending cache insertion\n\t\tif ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) {\n\t\t\ttail = /** @type {MemizeCacheNode} */ ( tail ).prev;\n\t\t\t/** @type {MemizeCacheNode} */ ( tail ).next = null;\n\t\t} else {\n\t\t\tsize++;\n\t\t}\n\n\t\thead = node;\n\n\t\treturn node.val;\n\t}\n\n\tmemoized.clear = function() {\n\t\thead = null;\n\t\ttail = null;\n\t\tsize = 0;\n\t};\n\n\tif ( process.env.NODE_ENV === 'test' ) {\n\t\t// Cache is not exposed in the public API, but used in tests to ensure\n\t\t// expected list progression\n\t\tmemoized.getCache = function() {\n\t\t\treturn [ head, tail, size ];\n\t\t};\n\t}\n\n\t// Ignore reason: There's not a clear solution to create an intersection of\n\t// the function with additional properties, where the goal is to retain the\n\t// function signature of the incoming argument and add control properties\n\t// on the return value.\n\n\t// @ts-ignore\n\treturn memoized;\n}\n\nmodule.exports = memize;\n","/* global window, exports, define */\n\n!function() {\n 'use strict'\n\n var re = {\n not_string: /[^s]/,\n not_bool: /[^t]/,\n not_type: /[^T]/,\n not_primitive: /[^v]/,\n number: /[diefg]/,\n numeric_arg: /[bcdiefguxX]/,\n json: /[j]/,\n not_json: /[^j]/,\n text: /^[^\\x25]+/,\n modulo: /^\\x25{2}/,\n placeholder: /^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,\n key: /^([a-z_][a-z_\\d]*)/i,\n key_access: /^\\.([a-z_][a-z_\\d]*)/i,\n index_access: /^\\[(\\d+)\\]/,\n sign: /^[+-]/\n }\n\n function sprintf(key) {\n // `arguments` is not an array, but should be fine for this call\n return sprintf_format(sprintf_parse(key), arguments)\n }\n\n function vsprintf(fmt, argv) {\n return sprintf.apply(null, [fmt].concat(argv || []))\n }\n\n function sprintf_format(parse_tree, argv) {\n var cursor = 1, tree_length = parse_tree.length, arg, output = '', i, k, ph, pad, pad_character, pad_length, is_positive, sign\n for (i = 0; i < tree_length; i++) {\n if (typeof parse_tree[i] === 'string') {\n output += parse_tree[i]\n }\n else if (typeof parse_tree[i] === 'object') {\n ph = parse_tree[i] // convenience purposes only\n if (ph.keys) { // keyword argument\n arg = argv[cursor]\n for (k = 0; k < ph.keys.length; k++) {\n if (arg == undefined) {\n throw new Error(sprintf('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"', ph.keys[k], ph.keys[k-1]))\n }\n arg = arg[ph.keys[k]]\n }\n }\n else if (ph.param_no) { // positional argument (explicit)\n arg = argv[ph.param_no]\n }\n else { // positional argument (implicit)\n arg = argv[cursor++]\n }\n\n if (re.not_type.test(ph.type) && re.not_primitive.test(ph.type) && arg instanceof Function) {\n arg = arg()\n }\n\n if (re.numeric_arg.test(ph.type) && (typeof arg !== 'number' && isNaN(arg))) {\n throw new TypeError(sprintf('[sprintf] expecting number but found %T', arg))\n }\n\n if (re.number.test(ph.type)) {\n is_positive = arg >= 0\n }\n\n switch (ph.type) {\n case 'b':\n arg = parseInt(arg, 10).toString(2)\n break\n case 'c':\n arg = String.fromCharCode(parseInt(arg, 10))\n break\n case 'd':\n case 'i':\n arg = parseInt(arg, 10)\n break\n case 'j':\n arg = JSON.stringify(arg, null, ph.width ? parseInt(ph.width) : 0)\n break\n case 'e':\n arg = ph.precision ? parseFloat(arg).toExponential(ph.precision) : parseFloat(arg).toExponential()\n break\n case 'f':\n arg = ph.precision ? parseFloat(arg).toFixed(ph.precision) : parseFloat(arg)\n break\n case 'g':\n arg = ph.precision ? String(Number(arg.toPrecision(ph.precision))) : parseFloat(arg)\n break\n case 'o':\n arg = (parseInt(arg, 10) >>> 0).toString(8)\n break\n case 's':\n arg = String(arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 't':\n arg = String(!!arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'T':\n arg = Object.prototype.toString.call(arg).slice(8, -1).toLowerCase()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'u':\n arg = parseInt(arg, 10) >>> 0\n break\n case 'v':\n arg = arg.valueOf()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'x':\n arg = (parseInt(arg, 10) >>> 0).toString(16)\n break\n case 'X':\n arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase()\n break\n }\n if (re.json.test(ph.type)) {\n output += arg\n }\n else {\n if (re.number.test(ph.type) && (!is_positive || ph.sign)) {\n sign = is_positive ? '+' : '-'\n arg = arg.toString().replace(re.sign, '')\n }\n else {\n sign = ''\n }\n pad_character = ph.pad_char ? ph.pad_char === '0' ? '0' : ph.pad_char.charAt(1) : ' '\n pad_length = ph.width - (sign + arg).length\n pad = ph.width ? (pad_length > 0 ? pad_character.repeat(pad_length) : '') : ''\n output += ph.align ? sign + arg + pad : (pad_character === '0' ? sign + pad + arg : pad + sign + arg)\n }\n }\n }\n return output\n }\n\n var sprintf_cache = Object.create(null)\n\n function sprintf_parse(fmt) {\n if (sprintf_cache[fmt]) {\n return sprintf_cache[fmt]\n }\n\n var _fmt = fmt, match, parse_tree = [], arg_names = 0\n while (_fmt) {\n if ((match = re.text.exec(_fmt)) !== null) {\n parse_tree.push(match[0])\n }\n else if ((match = re.modulo.exec(_fmt)) !== null) {\n parse_tree.push('%')\n }\n else if ((match = re.placeholder.exec(_fmt)) !== null) {\n if (match[2]) {\n arg_names |= 1\n var field_list = [], replacement_field = match[2], field_match = []\n if ((field_match = re.key.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n while ((replacement_field = replacement_field.substring(field_match[0].length)) !== '') {\n if ((field_match = re.key_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else if ((field_match = re.index_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n }\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n match[2] = field_list\n }\n else {\n arg_names |= 2\n }\n if (arg_names === 3) {\n throw new Error('[sprintf] mixing positional and named placeholders is not (yet) supported')\n }\n\n parse_tree.push(\n {\n placeholder: match[0],\n param_no: match[1],\n keys: match[2],\n sign: match[3],\n pad_char: match[4],\n align: match[5],\n width: match[6],\n precision: match[7],\n type: match[8]\n }\n )\n }\n else {\n throw new SyntaxError('[sprintf] unexpected placeholder')\n }\n _fmt = _fmt.substring(match[0].length)\n }\n return sprintf_cache[fmt] = parse_tree\n }\n\n /**\n * export to either browser or node.js\n */\n /* eslint-disable quote-props */\n if (typeof exports !== 'undefined') {\n exports['sprintf'] = sprintf\n exports['vsprintf'] = vsprintf\n }\n if (typeof window !== 'undefined') {\n window['sprintf'] = sprintf\n window['vsprintf'] = vsprintf\n\n if (typeof define === 'function' && define['amd']) {\n define(function() {\n return {\n 'sprintf': sprintf,\n 'vsprintf': vsprintf\n }\n })\n }\n }\n /* eslint-enable quote-props */\n}(); // eslint-disable-line\n","import pluralForms from '@tannin/plural-forms';\n\n/**\n * Tannin constructor options.\n *\n * @typedef {Object} TanninOptions\n *\n * @property {string} [contextDelimiter] Joiner in string lookup with context.\n * @property {Function} [onMissingKey] Callback to invoke when key missing.\n */\n\n/**\n * Domain metadata.\n *\n * @typedef {Object} TanninDomainMetadata\n *\n * @property {string} [domain] Domain name.\n * @property {string} [lang] Language code.\n * @property {(string|Function)} [plural_forms] Plural forms expression or\n * function evaluator.\n */\n\n/**\n * Domain translation pair respectively representing the singular and plural\n * translation.\n *\n * @typedef {[string,string]} TanninTranslation\n */\n\n/**\n * Locale data domain. The key is used as reference for lookup, the value an\n * array of two string entries respectively representing the singular and plural\n * translation.\n *\n * @typedef {{[key:string]:TanninDomainMetadata|TanninTranslation,'':TanninDomainMetadata|TanninTranslation}} TanninLocaleDomain\n */\n\n/**\n * Jed-formatted locale data.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @typedef {{[domain:string]:TanninLocaleDomain}} TanninLocaleData\n */\n\n/**\n * Default Tannin constructor options.\n *\n * @type {TanninOptions}\n */\nvar DEFAULT_OPTIONS = {\n\tcontextDelimiter: '\\u0004',\n\tonMissingKey: null,\n};\n\n/**\n * Given a specific locale data's config `plural_forms` value, returns the\n * expression.\n *\n * @example\n *\n * ```\n * getPluralExpression( 'nplurals=2; plural=(n != 1);' ) === '(n != 1)'\n * ```\n *\n * @param {string} pf Locale data plural forms.\n *\n * @return {string} Plural forms expression.\n */\nfunction getPluralExpression( pf ) {\n\tvar parts, i, part;\n\n\tparts = pf.split( ';' );\n\n\tfor ( i = 0; i < parts.length; i++ ) {\n\t\tpart = parts[ i ].trim();\n\t\tif ( part.indexOf( 'plural=' ) === 0 ) {\n\t\t\treturn part.substr( 7 );\n\t\t}\n\t}\n}\n\n/**\n * Tannin constructor.\n *\n * @class\n *\n * @param {TanninLocaleData} data Jed-formatted locale data.\n * @param {TanninOptions} [options] Tannin options.\n */\nexport default function Tannin( data, options ) {\n\tvar key;\n\n\t/**\n\t * Jed-formatted locale data.\n\t *\n\t * @name Tannin#data\n\t * @type {TanninLocaleData}\n\t */\n\tthis.data = data;\n\n\t/**\n\t * Plural forms function cache, keyed by plural forms string.\n\t *\n\t * @name Tannin#pluralForms\n\t * @type {Object}\n\t */\n\tthis.pluralForms = {};\n\n\t/**\n\t * Effective options for instance, including defaults.\n\t *\n\t * @name Tannin#options\n\t * @type {TanninOptions}\n\t */\n\tthis.options = {};\n\n\tfor ( key in DEFAULT_OPTIONS ) {\n\t\tthis.options[ key ] = options !== undefined && key in options\n\t\t\t? options[ key ]\n\t\t\t: DEFAULT_OPTIONS[ key ];\n\t}\n}\n\n/**\n * Returns the plural form index for the given domain and value.\n *\n * @param {string} domain Domain on which to calculate plural form.\n * @param {number} n Value for which plural form is to be calculated.\n *\n * @return {number} Plural form index.\n */\nTannin.prototype.getPluralForm = function( domain, n ) {\n\tvar getPluralForm = this.pluralForms[ domain ],\n\t\tconfig, plural, pf;\n\n\tif ( ! getPluralForm ) {\n\t\tconfig = this.data[ domain ][ '' ];\n\n\t\tpf = (\n\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t// @ts-ignore\n\t\t\tconfig.plural_forms\n\t\t);\n\n\t\tif ( typeof pf !== 'function' ) {\n\t\t\tplural = getPluralExpression(\n\t\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t\t// @ts-ignore\n\t\t\t\tconfig.plural_forms\n\t\t\t);\n\n\t\t\tpf = pluralForms( plural );\n\t\t}\n\n\t\tgetPluralForm = this.pluralForms[ domain ] = pf;\n\t}\n\n\treturn getPluralForm( n );\n};\n\n/**\n * Translate a string.\n *\n * @param {string} domain Translation domain.\n * @param {string|void} context Context distinguishing terms of the same name.\n * @param {string} singular Primary key for translation lookup.\n * @param {string=} plural Fallback value used for non-zero plural\n * form index.\n * @param {number=} n Value to use in calculating plural form.\n *\n * @return {string} Translated string.\n */\nTannin.prototype.dcnpgettext = function( domain, context, singular, plural, n ) {\n\tvar index, key, entry;\n\n\tif ( n === undefined ) {\n\t\t// Default to singular.\n\t\tindex = 0;\n\t} else {\n\t\t// Find index by evaluating plural form for value.\n\t\tindex = this.getPluralForm( domain, n );\n\t}\n\n\tkey = singular;\n\n\t// If provided, context is prepended to key with delimiter.\n\tif ( context ) {\n\t\tkey = context + this.options.contextDelimiter + singular;\n\t}\n\n\tentry = this.data[ domain ][ key ];\n\n\t// Verify not only that entry exists, but that the intended index is within\n\t// range and non-empty.\n\tif ( entry && entry[ index ] ) {\n\t\treturn entry[ index ];\n\t}\n\n\tif ( this.options.onMissingKey ) {\n\t\tthis.options.onMissingKey( singular, domain );\n\t}\n\n\t// If entry not found, fall back to singular vs. plural with zero index\n\t// representing the singular value.\n\treturn index === 0 ? singular : plural;\n};\n","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { __ } from '@wordpress/i18n';\nimport frmStyleDependentUpdaterComponent from './styles/dependent-updater-component.js';\n\n/**\n * Represents the frmStyleOptions class.\n * @class\n */\nclass frmStyleOptions {\n\n\tconstructor() {\n\t\tthis.success = frmDom.success;\n\t\tthis.init();\n\t\tthis.initHover();\n\t}\n\n\t/**\n\t * Init the dependent\n\t */\n\tinit() {\n\t\tthis.initColorPickerDependentUpdaterComponents();\n\t\tthis.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) );\n\t}\n\n\t/**\n\t * Initializes the color picker dependent updater components.\n\t * Retrieves the components and elements, and adds them to the elements array.\n\t * Adds an action hook for the frm_style_options_color_change event.\n\t */\n\tinitColorPickerDependentUpdaterComponents() {\n\t\tconst components = document.querySelectorAll( '.frm-style-dependent-updater-component.frm-colorpicker' );\n\t\tconst elements = [];\n\n\t\tcomponents.forEach( ( component ) => {\n\t\t\tconst element = component.querySelector( 'input.hex' );\n\t\t\tconst id = 'undefined' !== typeof element ? element.getAttribute( 'id' ) : null;\n\n\t\t\tif ( null !== id ) {\n\t\t\t\telements.push({\n\t\t\t\t\tid: id,\n\t\t\t\t\tdependentUpdaterClass: new frmStyleDependentUpdaterComponent( component, 'colorpicker' )\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\twp.hooks.addAction( 'frm_style_options_color_change', 'formidable', ( { event, value } ) => {\n\t\t\tconst container = event.target.closest( '.wp-picker-container' );\n\t\t\tconst id = event.target.getAttribute( 'id' );\n\n\t\t\tcontainer.querySelector( '.wp-color-result-text' ).innerText = value;\n\n\t\t\telements.forEach( ( element ) => {\n\t\t\t\tif ( element.id === id ) {\n\t\t\t\t\telement.dependentUpdaterClass.updateAllDependentElements( value );\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the hover functionality for the style options.\n\t * Creates a hover element and appends it to the settingsWrapper.\n\t * Adds event listeners for mouseover and click events.\n\t */\n\tinitHover() {\n\t\tconst settingsWrapper = document.querySelector( '.frm-right-panel .styling_settings .accordion-container' );\n\t\tif ( null === settingsWrapper ) {\n\t\t\treturn;\n\t\t}\n\t\tconst hoverElement = document.createElement( 'div' );\n\t\thoverElement.classList.add( 'frm_hidden' );\n\t\thoverElement.classList.add( 'frm-style-settings-hover' );\n\t\tsettingsWrapper.appendChild( hoverElement );\n\n\t\tconst styleOptionsMenu = settingsWrapper.querySelector( ':scope > ul' );\n\n\t\tstyleOptionsMenu.querySelectorAll( ':scope > li' ).forEach( ( item ) => {\n\t\t\titem.querySelector('h3').addEventListener( 'mouseover', ( event ) => {\n\t\t\t\thoverElement.style.transform = `translateY(${event.target.closest('li').offsetTop}px)`;\n\t\t\t\thoverElement.classList.add( 'frm-animating' );\n\t\t\t\thoverElement.classList.remove( 'frm_hidden' );\n\t\t\t\tsetTimeout( () => { hoverElement.classList.remove( 'frm-animating' ); }, 250 );\n\t\t\t});\n\t\t});\n\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\taccordionitems.forEach( ( item ) => {\n\t\t\titem.addEventListener( 'click', () => {\n\t\t\t\thoverElement.classList.add( 'frm_hidden' );\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Initializes the copy to clipboard functionality for style classes.\n\t * Adds a click event listener to the copyLabel element.\n\t * Copies the class name to the clipboard and displays a success message.\n\t * @param {string} successMessage - The success message to display.\n\t */\n\tinitStyleClassCopyToClipboard( successMessage ) {\n\t\tconst copyLabel = document.querySelector( '.frm-copy-text' );\n\t\tcopyLabel.addEventListener( 'click', ( event ) => {\n\t\t\tconst className = event.currentTarget.innerText;\n\t\t\tnavigator.clipboard.writeText( className ).then( () => {\n\t\t\t\tthis.success( successMessage );\n\t\t\t});\n\t\t})\n\t}\n}\n\nnew frmStyleOptions();\n"],"names":["frmStyleDependentUpdaterComponent","component","_classCallCheck","willChangeData","JSON","parse","dataset","willChange","data","propagateInputs","initPropagationList","changeEvent","Event","bubbles","error","console","_createClass","key","value","inputNames","list","forEach","name","input","document","querySelector","concat","push","updateAllDependentElements","dispatchEvent","default","__","frmStyleOptions","success","frmDom","init","initHover","initColorPickerDependentUpdaterComponents","initStyleClassCopyToClipboard","components","querySelectorAll","elements","element","id","getAttribute","dependentUpdaterClass","wp","hooks","addAction","_ref","event","container","target","closest","innerText","settingsWrapper","hoverElement","createElement","classList","add","appendChild","styleOptionsMenu","item","addEventListener","style","transform","offsetTop","remove","setTimeout","accordionitems","successMessage","_this","copyLabel","className","currentTarget","navigator","clipboard","writeText","then"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"formidable_styles.js","mappings":";;;;;;;;;;;;;;;;AAAsC;AACE;;AAExC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,aAAa,oBAAoB,MAAM;AACnD;AACe;AACf,aAAa,2DAAO;;AAEpB;AACA,SAAS,4DAAQ;AACjB;AACA;;;;;;;;;;;;;;;;AC5BA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;;AAEA;AACA,EAAE;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA,WAAW,UAAU;AACrB,WAAW,UAAU;AACrB;AACA,YAAY,GAAG;AACf;AACe;AACf;AACA;;AAEA,cAAc,oBAAoB;AAClC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;;;AC7GsC;;AAEtC;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf,gBAAgB,2DAAO;;AAEvB;AACA,sBAAsB,OAAO;AAC7B;AACA;;;;;;;;;;;;;;;;ACjBA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,UAAU;AACtB;AACe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;AC3HA;AACA;AACA;AACuD;AACF;AACrD;AACA;AACA;AACA;AACA;AACA,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC,WAAW,sBAAsB;AACjC;;AAEA;AACA;AACA;AACA,YAAY,sBAAsB;AAClC,YAAY,sBAAsB;AAClC;AACA,YAAY,SAAS;AACrB;;AAEA;AACA;AACA;AACA;;AAEA,SAAS,gEAAgB;AACzB;AACA;;AAEA,SAAS,iEAAiB;AAC1B;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;;;AAGN;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,QAAQ;;AAEzB;;AAEA,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,QAAQ;AACR;AACA,kBAAkB;AAClB;;;AAGA;AACA;AACA;AACA;AACA,OAAO;AACP,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iEAAe,aAAa,EAAC;AAC7B;;;;;;;;;;;;;;;ACtGA;AACA;AACA;AACA;AACA;AACA,YA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DAAiD,mFAAmF,OAAO;;AAEtgB;AACA;AACA;AAC4B;AAC5B;AACA,aAAa,oBAAoB;AACjC;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;;AAEA;AACA;AACA,gBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,aAAa,iCAAiC;AAC9C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8CAA8C;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,YAAY;;AAE1B,cAAc,YAAY;;AAE1B;AACA,aAAa,sDAAsD;AACnE;AACA;AACA;;AAEA;AACA,aAAa,6BAA6B;AAC1C;AACA;;AAEA;AACA,aAAa,2CAA2C;AACxD;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,4DAA4D;AACzE;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,6EAA6E;AAC1F;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,8FAA8F;AAC3G;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,eAAe;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,aAAa,gEAAgE;AAC7E;AACA;AACA;;AAEA,cAAc,kCAAkC;;AAEhD;AACA;AACA;AACA;AACA,cAAc,eAAe;AAC7B,cAAc,eAAe;AAC7B;AACA,cAAc,iBAAiB;AAC/B;AACA,cAAc,WAAW;AACzB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB,cAAc,IAAI;AAClB;AACA,cAAc,KAAK;AACnB;AACA,cAAc,OAAO;AACrB,cAAc,gBAAgB;AAC9B;;AAEA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB,YAAY,4BAA4B;AACxC;;AAEO;AACP;AACA;AACA;AACA,YAAY;AACZ;AACA,mBAAmB,8CAAM,GAAG;AAC5B;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,aAAa,m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;AACA,cAAc,4BAA4B;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA;AACA,cAAc,UAAU;AACxB;AACA,WAAW,eAAe;AAC1B,WAAW,eAAe;AAC1B;AACA,YAAY,4BAA4B;AACxC;AACA;AACA;;AAEA,YAAY,4BAA4B;AACxC;;AAEA,YAAY,4BAA4B;AACxC;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;AACA;;AAEA;AACA;AACA,eAAe,iBAAiB;AAChC;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,eAAe,SAAS;AACxB;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA,2BAA2B,eAAe;AAC1C,qBAAqB,iBAAiB;AACtC,cAAc,iBAAiB;AAC/B,IAAI;AACJ;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,KAA+B,GAAG,EAMtC;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;ACtKA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,gCAAgC,oBAAoB;AACpD;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;AACA,uBAAuB;AACvB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,QAAQ,IAA8B;AACtC,QAAQ,eAAkB;AAC1B,QAAQ,gBAAmB;AAC3B;AACA;AACA;AACA;;AAEA,YAAY,IAA6C;AACzD,YAAY,mCAAO;AACnB;AACA;AACA;AACA;AACA,aAAa;AAAA,kGAAC;AACd;AACA;AACA;AACA,CAAC,IAAI;;;;;;;;;;;;;;;;;ACtO0C;;AAE/C;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB;;AAEA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,gGAAgG;AAC9G;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,qCAAqC;AACnD;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,gBAAgB;AACrD;AACA;AACA,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA,qBAAqB;;AAErB,cAAc,kBAAkB;AAChC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,kBAAkB;AAC7B,WAAW,kBAAkB;AAC7B;AACe;AACf;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,QAAQ,gEAAW;AACnB;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB,WAAW,aAAa;AACxB;AACA,WAAW,aAAa;AACxB;AACA,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACpNA;AACA;AACA,gCAAgC,OAAO;AACvC;AACA;;;;;;;;;;;;;;;;;ACJqD;AACrD;AACA,+BAA+B,gEAAgB;AAC/C;;;;;;;;;;;;;;;;ACHA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;;;;;;;;;;;;;;;;ACFA;AACA;AACA;;;;;;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","sources":["webpack://formidable/./node_modules/@tannin/compile/index.js","webpack://formidable/./node_modules/@tannin/evaluate/index.js","webpack://formidable/./node_modules/@tannin/plural-forms/index.js","webpack://formidable/./node_modules/@tannin/postfix/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createAddHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createCurrentHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDidHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createDoingHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHasHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createHooks.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRemoveHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/createRunHook.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/index.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateHookName.js","webpack://formidable/./node_modules/@wordpress/hooks/build-module/validateNamespace.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/create-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/default-i18n.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/index.js","webpack://formidable/./node_modules/@wordpress/i18n/build-module/sprintf.js","webpack://formidable/./js/src/admin/components/dependent-updater-component.js","webpack://formidable/./node_modules/memize/index.js","webpack://formidable/./node_modules/sprintf-js/src/sprintf.js","webpack://formidable/./node_modules/tannin/index.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://formidable/./node_modules/@wordpress/hooks/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://formidable/./node_modules/@wordpress/i18n/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/compat get default export","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/admin/styles.js"],"sourcesContent":["import postfix from '@tannin/postfix';\nimport evaluate from '@tannin/evaluate';\n\n/**\n * Given a C expression, returns a function which can be called to evaluate its\n * result.\n *\n * @example\n *\n * ```js\n * import compile from '@tannin/compile';\n *\n * const evaluate = compile( 'n > 1' );\n *\n * evaluate( { n: 2 } );\n * // ⇒ true\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {(variables?:{[variable:string]:*})=>*} Compiled evaluator.\n */\nexport default function compile( expression ) {\n\tvar terms = postfix( expression );\n\n\treturn function( variables ) {\n\t\treturn evaluate( terms, variables );\n\t};\n}\n","/**\n * Operator callback functions.\n *\n * @type {Object}\n */\nvar OPERATORS = {\n\t'!': function( a ) {\n\t\treturn ! a;\n\t},\n\t'*': function( a, b ) {\n\t\treturn a * b;\n\t},\n\t'/': function( a, b ) {\n\t\treturn a / b;\n\t},\n\t'%': function( a, b ) {\n\t\treturn a % b;\n\t},\n\t'+': function( a, b ) {\n\t\treturn a + b;\n\t},\n\t'-': function( a, b ) {\n\t\treturn a - b;\n\t},\n\t'<': function( a, b ) {\n\t\treturn a < b;\n\t},\n\t'<=': function( a, b ) {\n\t\treturn a <= b;\n\t},\n\t'>': function( a, b ) {\n\t\treturn a > b;\n\t},\n\t'>=': function( a, b ) {\n\t\treturn a >= b;\n\t},\n\t'==': function( a, b ) {\n\t\treturn a === b;\n\t},\n\t'!=': function( a, b ) {\n\t\treturn a !== b;\n\t},\n\t'&&': function( a, b ) {\n\t\treturn a && b;\n\t},\n\t'||': function( a, b ) {\n\t\treturn a || b;\n\t},\n\t'?:': function( a, b, c ) {\n\t\tif ( a ) {\n\t\t\tthrow b;\n\t\t}\n\n\t\treturn c;\n\t},\n};\n\n/**\n * Given an array of postfix terms and operand variables, returns the result of\n * the postfix evaluation.\n *\n * @example\n *\n * ```js\n * import evaluate from '@tannin/evaluate';\n *\n * // 3 + 4 * 5 / 6 ⇒ '3 4 5 * 6 / +'\n * const terms = [ '3', '4', '5', '*', '6', '/', '+' ];\n *\n * evaluate( terms, {} );\n * // ⇒ 6.333333333333334\n * ```\n *\n * @param {string[]} postfix Postfix terms.\n * @param {Object} variables Operand variables.\n *\n * @return {*} Result of evaluation.\n */\nexport default function evaluate( postfix, variables ) {\n\tvar stack = [],\n\t\ti, j, args, getOperatorResult, term, value;\n\n\tfor ( i = 0; i < postfix.length; i++ ) {\n\t\tterm = postfix[ i ];\n\n\t\tgetOperatorResult = OPERATORS[ term ];\n\t\tif ( getOperatorResult ) {\n\t\t\t// Pop from stack by number of function arguments.\n\t\t\tj = getOperatorResult.length;\n\t\t\targs = Array( j );\n\t\t\twhile ( j-- ) {\n\t\t\t\targs[ j ] = stack.pop();\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tvalue = getOperatorResult.apply( null, args );\n\t\t\t} catch ( earlyReturn ) {\n\t\t\t\treturn earlyReturn;\n\t\t\t}\n\t\t} else if ( variables.hasOwnProperty( term ) ) {\n\t\t\tvalue = variables[ term ];\n\t\t} else {\n\t\t\tvalue = +term;\n\t\t}\n\n\t\tstack.push( value );\n\t}\n\n\treturn stack[ 0 ];\n}\n","import compile from '@tannin/compile';\n\n/**\n * Given a C expression, returns a function which, when called with a value,\n * evaluates the result with the value assumed to be the \"n\" variable of the\n * expression. The result will be coerced to its numeric equivalent.\n *\n * @param {string} expression C expression.\n *\n * @return {Function} Evaluator function.\n */\nexport default function pluralForms( expression ) {\n\tvar evaluate = compile( expression );\n\n\treturn function( n ) {\n\t\treturn +evaluate( { n: n } );\n\t};\n}\n","var PRECEDENCE, OPENERS, TERMINATORS, PATTERN;\n\n/**\n * Operator precedence mapping.\n *\n * @type {Object}\n */\nPRECEDENCE = {\n\t'(': 9,\n\t'!': 8,\n\t'*': 7,\n\t'/': 7,\n\t'%': 7,\n\t'+': 6,\n\t'-': 6,\n\t'<': 5,\n\t'<=': 5,\n\t'>': 5,\n\t'>=': 5,\n\t'==': 4,\n\t'!=': 4,\n\t'&&': 3,\n\t'||': 2,\n\t'?': 1,\n\t'?:': 1,\n};\n\n/**\n * Characters which signal pair opening, to be terminated by terminators.\n *\n * @type {string[]}\n */\nOPENERS = [ '(', '?' ];\n\n/**\n * Characters which signal pair termination, the value an array with the\n * opener as its first member. The second member is an optional operator\n * replacement to push to the stack.\n *\n * @type {string[]}\n */\nTERMINATORS = {\n\t')': [ '(' ],\n\t':': [ '?', '?:' ],\n};\n\n/**\n * Pattern matching operators and openers.\n *\n * @type {RegExp}\n */\nPATTERN = /<=|>=|==|!=|&&|\\|\\||\\?:|\\(|!|\\*|\\/|%|\\+|-|<|>|\\?|\\)|:/;\n\n/**\n * Given a C expression, returns the equivalent postfix (Reverse Polish)\n * notation terms as an array.\n *\n * If a postfix string is desired, simply `.join( ' ' )` the result.\n *\n * @example\n *\n * ```js\n * import postfix from '@tannin/postfix';\n *\n * postfix( 'n > 1' );\n * // ⇒ [ 'n', '1', '>' ]\n * ```\n *\n * @param {string} expression C expression.\n *\n * @return {string[]} Postfix terms.\n */\nexport default function postfix( expression ) {\n\tvar terms = [],\n\t\tstack = [],\n\t\tmatch, operator, term, element;\n\n\twhile ( ( match = expression.match( PATTERN ) ) ) {\n\t\toperator = match[ 0 ];\n\n\t\t// Term is the string preceding the operator match. It may contain\n\t\t// whitespace, and may be empty (if operator is at beginning).\n\t\tterm = expression.substr( 0, match.index ).trim();\n\t\tif ( term ) {\n\t\t\tterms.push( term );\n\t\t}\n\n\t\twhile ( ( element = stack.pop() ) ) {\n\t\t\tif ( TERMINATORS[ operator ] ) {\n\t\t\t\tif ( TERMINATORS[ operator ][ 0 ] === element ) {\n\t\t\t\t\t// Substitution works here under assumption that because\n\t\t\t\t\t// the assigned operator will no longer be a terminator, it\n\t\t\t\t\t// will be pushed to the stack during the condition below.\n\t\t\t\t\toperator = TERMINATORS[ operator ][ 1 ] || operator;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if ( OPENERS.indexOf( element ) >= 0 || PRECEDENCE[ element ] < PRECEDENCE[ operator ] ) {\n\t\t\t\t// Push to stack if either an opener or when pop reveals an\n\t\t\t\t// element of lower precedence.\n\t\t\t\tstack.push( element );\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// For each popped from stack, push to terms.\n\t\t\tterms.push( element );\n\t\t}\n\n\t\tif ( ! TERMINATORS[ operator ] ) {\n\t\t\tstack.push( operator );\n\t\t}\n\n\t\t// Slice matched fragment from expression to continue match.\n\t\texpression = expression.substr( match.index + operator.length );\n\t}\n\n\t// Push remainder of operand, if exists, to terms.\n\texpression = expression.trim();\n\tif ( expression ) {\n\t\tterms.push( expression );\n\t}\n\n\t// Pop remaining items from stack into terms.\n\treturn terms.concat( stack.reverse() );\n}\n","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback AddHook\n *\n * Adds the hook to the appropriate hooks container.\n *\n * @param {string} hookName Name of hook to add\n * @param {string} namespace The unique namespace identifying the callback in the form `vendor/plugin/function`.\n * @param {import('.').Callback} callback Function to call when the hook is run\n * @param {number} [priority=10] Priority of this hook\n */\n\n/**\n * Returns a function which, when invoked, will add a hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {AddHook} Function that adds a new hook.\n */\n\nfunction createAddHook(hooks, storeKey) {\n return function addHook(hookName, namespace, callback) {\n var priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10;\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!validateNamespace(namespace)) {\n return;\n }\n\n if ('function' !== typeof callback) {\n // eslint-disable-next-line no-console\n console.error('The hook callback must be a function.');\n return;\n } // Validate numeric priority\n\n\n if ('number' !== typeof priority) {\n // eslint-disable-next-line no-console\n console.error('If specified, the hook priority must be a number.');\n return;\n }\n\n var handler = {\n callback: callback,\n priority: priority,\n namespace: namespace\n };\n\n if (hooksStore[hookName]) {\n // Find the correct insert index of the new hook.\n var handlers = hooksStore[hookName].handlers;\n /** @type {number} */\n\n var i;\n\n for (i = handlers.length; i > 0; i--) {\n if (priority >= handlers[i - 1].priority) {\n break;\n }\n }\n\n if (i === handlers.length) {\n // If append, operate via direct assignment.\n handlers[i] = handler;\n } else {\n // Otherwise, insert before index via splice.\n handlers.splice(i, 0, handler);\n } // We may also be currently executing this hook. If the callback\n // we're adding would come after the current callback, there's no\n // problem; otherwise we need to increase the execution index of\n // any other runs by 1 to account for the added element.\n\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex++;\n }\n });\n } else {\n // This is the first hook of its type.\n hooksStore[hookName] = {\n handlers: [handler],\n runs: 0\n };\n }\n\n if (hookName !== 'hookAdded') {\n hooks.doAction('hookAdded', hookName, namespace, callback, priority);\n }\n };\n}\n\nexport default createAddHook;\n//# sourceMappingURL=createAddHook.js.map","/**\n * Returns a function which, when invoked, will return the name of the\n * currently running hook, or `null` if no hook of the given type is currently\n * running.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {() => string | null} Function that returns the current hook name or null.\n */\nfunction createCurrentHook(hooks, storeKey) {\n return function currentHook() {\n var _hooksStore$__current, _hooksStore$__current2;\n\n var hooksStore = hooks[storeKey];\n return (_hooksStore$__current = (_hooksStore$__current2 = hooksStore.__current[hooksStore.__current.length - 1]) === null || _hooksStore$__current2 === void 0 ? void 0 : _hooksStore$__current2.name) !== null && _hooksStore$__current !== void 0 ? _hooksStore$__current : null;\n };\n}\n\nexport default createCurrentHook;\n//# sourceMappingURL=createCurrentHook.js.map","/**\n * Internal dependencies\n */\nimport validateHookName from './validateHookName.js';\n/**\n * @callback DidHook\n *\n * Returns the number of times an action has been fired.\n *\n * @param {string} hookName The hook name to check.\n *\n * @return {number | undefined} The number of times the hook has run.\n */\n\n/**\n * Returns a function which, when invoked, will return the number of times a\n * hook has been called.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DidHook} Function that returns a hook's call count.\n */\n\nfunction createDidHook(hooks, storeKey) {\n return function didHook(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0;\n };\n}\n\nexport default createDidHook;\n//# sourceMappingURL=createDidHook.js.map","/**\n * @callback DoingHook\n * Returns whether a hook is currently being executed.\n *\n * @param {string} [hookName] The name of the hook to check for. If\n * omitted, will check for any hook being executed.\n *\n * @return {boolean} Whether the hook is being executed.\n */\n\n/**\n * Returns a function which, when invoked, will return whether a hook is\n * currently being executed.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {DoingHook} Function that returns whether a hook is currently\n * being executed.\n */\nfunction createDoingHook(hooks, storeKey) {\n return function doingHook(hookName) {\n var hooksStore = hooks[storeKey]; // If the hookName was not passed, check for any current hook.\n\n if ('undefined' === typeof hookName) {\n return 'undefined' !== typeof hooksStore.__current[0];\n } // Return the __current hook.\n\n\n return hooksStore.__current[0] ? hookName === hooksStore.__current[0].name : false;\n };\n}\n\nexport default createDoingHook;\n//# sourceMappingURL=createDoingHook.js.map","/**\n * @callback HasHook\n *\n * Returns whether any handlers are attached for the given hookName and optional namespace.\n *\n * @param {string} hookName The name of the hook to check for.\n * @param {string} [namespace] Optional. The unique namespace identifying the callback\n * in the form `vendor/plugin/function`.\n *\n * @return {boolean} Whether there are handlers that are attached to the given hook.\n */\n\n/**\n * Returns a function which, when invoked, will return whether any handlers are\n * attached to a particular hook.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n *\n * @return {HasHook} Function that returns whether any handlers are\n * attached to a particular hook and optional namespace.\n */\nfunction createHasHook(hooks, storeKey) {\n return function hasHook(hookName, namespace) {\n var hooksStore = hooks[storeKey]; // Use the namespace if provided.\n\n if ('undefined' !== typeof namespace) {\n return hookName in hooksStore && hooksStore[hookName].handlers.some(function (hook) {\n return hook.namespace === namespace;\n });\n }\n\n return hookName in hooksStore;\n };\n}\n\nexport default createHasHook;\n//# sourceMappingURL=createHasHook.js.map","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\n\n/**\n * Internal dependencies\n */\nimport createAddHook from './createAddHook';\nimport createRemoveHook from './createRemoveHook';\nimport createHasHook from './createHasHook';\nimport createRunHook from './createRunHook';\nimport createCurrentHook from './createCurrentHook';\nimport createDoingHook from './createDoingHook';\nimport createDidHook from './createDidHook';\n/**\n * Internal class for constructing hooks. Use `createHooks()` function\n *\n * Note, it is necessary to expose this class to make its type public.\n *\n * @private\n */\n\nexport var _Hooks = function _Hooks() {\n _classCallCheck(this, _Hooks);\n\n /** @type {import('.').Store} actions */\n this.actions = Object.create(null);\n this.actions.__current = [];\n /** @type {import('.').Store} filters */\n\n this.filters = Object.create(null);\n this.filters.__current = [];\n this.addAction = createAddHook(this, 'actions');\n this.addFilter = createAddHook(this, 'filters');\n this.removeAction = createRemoveHook(this, 'actions');\n this.removeFilter = createRemoveHook(this, 'filters');\n this.hasAction = createHasHook(this, 'actions');\n this.hasFilter = createHasHook(this, 'filters');\n this.removeAllActions = createRemoveHook(this, 'actions', true);\n this.removeAllFilters = createRemoveHook(this, 'filters', true);\n this.doAction = createRunHook(this, 'actions');\n this.applyFilters = createRunHook(this, 'filters', true);\n this.currentAction = createCurrentHook(this, 'actions');\n this.currentFilter = createCurrentHook(this, 'filters');\n this.doingAction = createDoingHook(this, 'actions');\n this.doingFilter = createDoingHook(this, 'filters');\n this.didAction = createDidHook(this, 'actions');\n this.didFilter = createDidHook(this, 'filters');\n};\n/** @typedef {_Hooks} Hooks */\n\n/**\n * Returns an instance of the hooks object.\n *\n * @return {Hooks} A Hooks instance.\n */\n\nfunction createHooks() {\n return new _Hooks();\n}\n\nexport default createHooks;\n//# sourceMappingURL=createHooks.js.map","/**\n * Internal dependencies\n */\nimport validateNamespace from './validateNamespace.js';\nimport validateHookName from './validateHookName.js';\n/**\n * @callback RemoveHook\n * Removes the specified callback (or all callbacks) from the hook with a given hookName\n * and namespace.\n *\n * @param {string} hookName The name of the hook to modify.\n * @param {string} namespace The unique namespace identifying the callback in the\n * form `vendor/plugin/function`.\n *\n * @return {number | undefined} The number of callbacks removed.\n */\n\n/**\n * Returns a function which, when invoked, will remove a specified hook or all\n * hooks by the given name.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [removeAll=false] Whether to remove all callbacks for a hookName,\n * without regard to namespace. Used to create\n * `removeAll*` functions.\n *\n * @return {RemoveHook} Function that removes hooks.\n */\n\nfunction createRemoveHook(hooks, storeKey) {\n var removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function removeHook(hookName, namespace) {\n var hooksStore = hooks[storeKey];\n\n if (!validateHookName(hookName)) {\n return;\n }\n\n if (!removeAll && !validateNamespace(namespace)) {\n return;\n } // Bail if no hooks exist by this name\n\n\n if (!hooksStore[hookName]) {\n return 0;\n }\n\n var handlersRemoved = 0;\n\n if (removeAll) {\n handlersRemoved = hooksStore[hookName].handlers.length;\n hooksStore[hookName] = {\n runs: hooksStore[hookName].runs,\n handlers: []\n };\n } else {\n // Try to find the specified callback to remove.\n var handlers = hooksStore[hookName].handlers;\n\n var _loop = function _loop(i) {\n if (handlers[i].namespace === namespace) {\n handlers.splice(i, 1);\n handlersRemoved++; // This callback may also be part of a hook that is\n // currently executing. If the callback we're removing\n // comes after the current callback, there's no problem;\n // otherwise we need to decrease the execution index of any\n // other runs by 1 to account for the removed element.\n\n hooksStore.__current.forEach(function (hookInfo) {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex--;\n }\n });\n }\n };\n\n for (var i = handlers.length - 1; i >= 0; i--) {\n _loop(i);\n }\n }\n\n if (hookName !== 'hookRemoved') {\n hooks.doAction('hookRemoved', hookName, namespace);\n }\n\n return handlersRemoved;\n };\n}\n\nexport default createRemoveHook;\n//# sourceMappingURL=createRemoveHook.js.map","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\n\n/**\n * Returns a function which, when invoked, will execute all callbacks\n * registered to a hook of the specified type, optionally returning the final\n * value of the call chain.\n *\n * @param {import('.').Hooks} hooks Hooks instance.\n * @param {import('.').StoreKey} storeKey\n * @param {boolean} [returnFirstArg=false] Whether each hook callback is expected to\n * return its first argument.\n *\n * @return {(hookName:string, ...args: unknown[]) => unknown} Function that runs hook callbacks.\n */\nfunction createRunHook(hooks, storeKey) {\n var returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function runHooks(hookName) {\n var hooksStore = hooks[storeKey];\n\n if (!hooksStore[hookName]) {\n hooksStore[hookName] = {\n handlers: [],\n runs: 0\n };\n }\n\n hooksStore[hookName].runs++;\n var handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds.\n\n if ('production' !== process.env.NODE_ENV) {\n // Handle any 'all' hooks registered.\n if ('hookAdded' !== hookName && hooksStore.all) {\n handlers.push.apply(handlers, _toConsumableArray(hooksStore.all.handlers));\n }\n }\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (!handlers || !handlers.length) {\n return returnFirstArg ? args[0] : undefined;\n }\n\n var hookInfo = {\n name: hookName,\n currentIndex: 0\n };\n\n hooksStore.__current.push(hookInfo);\n\n while (hookInfo.currentIndex < handlers.length) {\n var handler = handlers[hookInfo.currentIndex];\n var result = handler.callback.apply(null, args);\n\n if (returnFirstArg) {\n args[0] = result;\n }\n\n hookInfo.currentIndex++;\n }\n\n hooksStore.__current.pop();\n\n if (returnFirstArg) {\n return args[0];\n }\n };\n}\n\nexport default createRunHook;\n//# sourceMappingURL=createRunHook.js.map","/**\n * Internal dependencies\n */\nimport createHooks from './createHooks';\n/** @typedef {(...args: any[])=>any} Callback */\n\n/**\n * @typedef Handler\n * @property {Callback} callback The callback\n * @property {string} namespace The namespace\n * @property {number} priority The namespace\n */\n\n/**\n * @typedef Hook\n * @property {Handler[]} handlers Array of handlers\n * @property {number} runs Run counter\n */\n\n/**\n * @typedef Current\n * @property {string} name Hook name\n * @property {number} currentIndex The index\n */\n\n/**\n * @typedef {Record & {__current: Current[]}} Store\n */\n\n/**\n * @typedef {'actions' | 'filters'} StoreKey\n */\n\n/**\n * @typedef {import('./createHooks').Hooks} Hooks\n */\n\nexport var defaultHooks = createHooks();\nvar addAction = defaultHooks.addAction,\n addFilter = defaultHooks.addFilter,\n removeAction = defaultHooks.removeAction,\n removeFilter = defaultHooks.removeFilter,\n hasAction = defaultHooks.hasAction,\n hasFilter = defaultHooks.hasFilter,\n removeAllActions = defaultHooks.removeAllActions,\n removeAllFilters = defaultHooks.removeAllFilters,\n doAction = defaultHooks.doAction,\n applyFilters = defaultHooks.applyFilters,\n currentAction = defaultHooks.currentAction,\n currentFilter = defaultHooks.currentFilter,\n doingAction = defaultHooks.doingAction,\n doingFilter = defaultHooks.doingFilter,\n didAction = defaultHooks.didAction,\n didFilter = defaultHooks.didFilter,\n actions = defaultHooks.actions,\n filters = defaultHooks.filters;\nexport { createHooks, addAction, addFilter, removeAction, removeFilter, hasAction, hasFilter, removeAllActions, removeAllFilters, doAction, applyFilters, currentAction, currentFilter, doingAction, doingFilter, didAction, didFilter, actions, filters };\n//# sourceMappingURL=index.js.map","/**\n * Validate a hookName string.\n *\n * @param {string} hookName The hook name to validate. Should be a non empty string containing\n * only numbers, letters, dashes, periods and underscores. Also,\n * the hook name cannot begin with `__`.\n *\n * @return {boolean} Whether the hook name is valid.\n */\nfunction validateHookName(hookName) {\n if ('string' !== typeof hookName || '' === hookName) {\n // eslint-disable-next-line no-console\n console.error('The hook name must be a non-empty string.');\n return false;\n }\n\n if (/^__/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name cannot begin with `__`.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(hookName)) {\n // eslint-disable-next-line no-console\n console.error('The hook name can only contain numbers, letters, dashes, periods and underscores.');\n return false;\n }\n\n return true;\n}\n\nexport default validateHookName;\n//# sourceMappingURL=validateHookName.js.map","/**\n * Validate a namespace string.\n *\n * @param {string} namespace The namespace to validate - should take the form\n * `vendor/plugin/function`.\n *\n * @return {boolean} Whether the namespace is valid.\n */\nfunction validateNamespace(namespace) {\n if ('string' !== typeof namespace || '' === namespace) {\n // eslint-disable-next-line no-console\n console.error('The namespace must be a non-empty string.');\n return false;\n }\n\n if (!/^[a-zA-Z][a-zA-Z0-9_.\\-\\/]*$/.test(namespace)) {\n // eslint-disable-next-line no-console\n console.error('The namespace can only contain numbers, letters, dashes, periods, underscores and slashes.');\n return false;\n }\n\n return true;\n}\n\nexport default validateNamespace;\n//# sourceMappingURL=validateNamespace.js.map","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\n/**\n * External dependencies\n */\nimport Tannin from 'tannin';\n/**\n * @typedef {Record} LocaleData\n */\n\n/**\n * Default locale data to use for Tannin domain when not otherwise provided.\n * Assumes an English plural forms expression.\n *\n * @type {LocaleData}\n */\n\nvar DEFAULT_LOCALE_DATA = {\n '': {\n /** @param {number} n */\n plural_forms: function plural_forms(n) {\n return n === 1 ? 0 : 1;\n }\n }\n};\n/*\n * Regular expression that matches i18n hooks like `i18n.gettext`, `i18n.ngettext`,\n * `i18n.gettext_domain` or `i18n.ngettext_with_context` or `i18n.has_translation`.\n */\n\nvar I18N_HOOK_REGEXP = /^i18n\\.(n?gettext|has_translation)(_|$)/;\n/**\n * @typedef {(domain?: string) => LocaleData} GetLocaleData\n *\n * Returns locale data by domain in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} SetLocaleData\n *\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/**\n * @typedef {(data?: LocaleData, domain?: string) => void} ResetLocaleData\n *\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n */\n\n/** @typedef {() => void} SubscribeCallback */\n\n/** @typedef {() => void} UnsubscribeCallback */\n\n/**\n * @typedef {(callback: SubscribeCallback) => UnsubscribeCallback} Subscribe\n *\n * Subscribes to changes of locale data\n */\n\n/**\n * @typedef {(domain?: string) => string} GetFilterDomain\n * Retrieve the domain to use when calling domain-specific filters.\n */\n\n/**\n * @typedef {(text: string, domain?: string) => string} __\n *\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n */\n\n/**\n * @typedef {(text: string, context: string, domain?: string) => string} _x\n *\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, domain?: string) => string} _n\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n */\n\n/**\n * @typedef {(single: string, plural: string, number: number, context: string, domain?: string) => string} _nx\n *\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n */\n\n/**\n * @typedef {() => boolean} IsRtl\n *\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n */\n\n/**\n * @typedef {(single: string, context?: string, domain?: string) => boolean} HasTranslation\n *\n * Check if there is a translation for a given string in singular form.\n */\n\n/** @typedef {import('@wordpress/hooks').Hooks} Hooks */\n\n/**\n * An i18n instance\n *\n * @typedef I18n\n * @property {GetLocaleData} getLocaleData Returns locale data by domain in a Jed-formatted JSON object shape.\n * @property {SetLocaleData} setLocaleData Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n * @property {ResetLocaleData} resetLocaleData Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n * @property {Subscribe} subscribe Subscribes to changes of Tannin locale data.\n * @property {__} __ Retrieve the translation of text.\n * @property {_x} _x Retrieve translated string with gettext context.\n * @property {_n} _n Translates and retrieves the singular or plural form based on the supplied\n * number.\n * @property {_nx} _nx Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n * @property {IsRtl} isRTL Check if current locale is RTL.\n * @property {HasTranslation} hasTranslation Check if there is a translation for a given string.\n */\n\n/**\n * Create an i18n instance\n *\n * @param {LocaleData} [initialData] Locale data configuration.\n * @param {string} [initialDomain] Domain for which configuration applies.\n * @param {Hooks} [hooks] Hooks implementation.\n * @return {I18n} I18n instance\n */\n\nexport var createI18n = function createI18n(initialData, initialDomain, hooks) {\n /**\n * The underlying instance of Tannin to which exported functions interface.\n *\n * @type {Tannin}\n */\n var tannin = new Tannin({});\n var listeners = new Set();\n\n var notifyListeners = function notifyListeners() {\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n /**\n * Subscribe to changes of locale data.\n *\n * @param {SubscribeCallback} callback Subscription callback.\n * @return {UnsubscribeCallback} Unsubscribe callback.\n */\n\n\n var subscribe = function subscribe(callback) {\n listeners.add(callback);\n return function () {\n return listeners.delete(callback);\n };\n };\n /** @type {GetLocaleData} */\n\n\n var getLocaleData = function getLocaleData() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return tannin.data[domain];\n };\n /**\n * @param {LocaleData} [data]\n * @param {string} [domain]\n */\n\n\n var doSetLocaleData = function doSetLocaleData(data) {\n var domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';\n tannin.data[domain] = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA), tannin.data[domain]), data); // Populate default domain configuration (supported locale date which omits\n // a plural forms expression).\n\n tannin.data[domain][''] = _objectSpread(_objectSpread({}, DEFAULT_LOCALE_DATA['']), tannin.data[domain]['']);\n };\n /** @type {SetLocaleData} */\n\n\n var setLocaleData = function setLocaleData(data, domain) {\n doSetLocaleData(data, domain);\n notifyListeners();\n };\n /** @type {ResetLocaleData} */\n\n\n var resetLocaleData = function resetLocaleData(data, domain) {\n // Reset all current Tannin locale data.\n tannin.data = {}; // Reset cached plural forms functions cache.\n\n tannin.pluralForms = {};\n setLocaleData(data, domain);\n };\n /**\n * Wrapper for Tannin's `dcnpgettext`. Populates default locale data if not\n * otherwise previously assigned.\n *\n * @param {string|undefined} domain Domain to retrieve the translated text.\n * @param {string|undefined} context Context information for the translators.\n * @param {string} single Text to translate if non-plural. Used as\n * fallback return value on a caught error.\n * @param {string} [plural] The text to be used if the number is\n * plural.\n * @param {number} [number] The number to compare against to use\n * either the singular or plural form.\n *\n * @return {string} The translated string.\n */\n\n\n var dcnpgettext = function dcnpgettext() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n var context = arguments.length > 1 ? arguments[1] : undefined;\n var single = arguments.length > 2 ? arguments[2] : undefined;\n var plural = arguments.length > 3 ? arguments[3] : undefined;\n var number = arguments.length > 4 ? arguments[4] : undefined;\n\n if (!tannin.data[domain]) {\n // use `doSetLocaleData` to set silently, without notifying listeners\n doSetLocaleData(undefined, domain);\n }\n\n return tannin.dcnpgettext(domain, context, single, plural, number);\n };\n /** @type {GetFilterDomain} */\n\n\n var getFilterDomain = function getFilterDomain() {\n var domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return domain;\n };\n /** @type {__} */\n\n\n var __ = function __(text, domain) {\n var translation = dcnpgettext(domain, undefined, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext', translation, text, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_' + getFilterDomain(domain), translation, text, domain)\n );\n };\n /** @type {_x} */\n\n\n var _x = function _x(text, context, domain) {\n var translation = dcnpgettext(domain, context, text);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters text with its translation based on context information.\n *\n * @param {string} translation Translated text.\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context', translation, text, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.gettext_with_context_' + getFilterDomain(domain), translation, text, context, domain)\n );\n };\n /** @type {_n} */\n\n\n var _n = function _n(single, plural, number, domain) {\n var translation = dcnpgettext(domain, undefined, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext', translation, single, plural, number, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_' + getFilterDomain(domain), translation, single, plural, number, domain)\n );\n };\n /** @type {_nx} */\n\n\n var _nx = function _nx(single, plural, number, context, domain) {\n var translation = dcnpgettext(domain, context, single, plural, number);\n\n if (!hooks) {\n return translation;\n }\n /**\n * Filters the singular or plural form of a string with gettext context.\n *\n * @param {string} translation Translated text.\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {string} number The number to compare against to use either the singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n\n\n translation =\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context', translation, single, plural, number, context, domain);\n return (\n /** @type {string} */\n\n /** @type {*} */\n hooks.applyFilters('i18n.ngettext_with_context_' + getFilterDomain(domain), translation, single, plural, number, context, domain)\n );\n };\n /** @type {IsRtl} */\n\n\n var isRTL = function isRTL() {\n return 'rtl' === _x('ltr', 'text direction');\n };\n /** @type {HasTranslation} */\n\n\n var hasTranslation = function hasTranslation(single, context, domain) {\n var _tannin$data, _tannin$data2;\n\n var key = context ? context + \"\\x04\" + single : single;\n var result = !!((_tannin$data = tannin.data) !== null && _tannin$data !== void 0 && (_tannin$data2 = _tannin$data[domain !== null && domain !== void 0 ? domain : 'default']) !== null && _tannin$data2 !== void 0 && _tannin$data2[key]);\n\n if (hooks) {\n /**\n * Filters the presence of a translation in the locale data.\n *\n * @param {boolean} hasTranslation Whether the translation is present or not..\n * @param {string} single The singular form of the translated text (used as key in locale data)\n * @param {string} context Context information for the translators.\n * @param {string} domain Text domain. Unique identifier for retrieving translated strings.\n */\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation', result, single, context, domain);\n result =\n /** @type { boolean } */\n\n /** @type {*} */\n hooks.applyFilters('i18n.has_translation_' + getFilterDomain(domain), result, single, context, domain);\n }\n\n return result;\n };\n\n if (initialData) {\n setLocaleData(initialData, initialDomain);\n }\n\n if (hooks) {\n /**\n * @param {string} hookName\n */\n var onHookAddedOrRemoved = function onHookAddedOrRemoved(hookName) {\n if (I18N_HOOK_REGEXP.test(hookName)) {\n notifyListeners();\n }\n };\n\n hooks.addAction('hookAdded', 'core/i18n', onHookAddedOrRemoved);\n hooks.addAction('hookRemoved', 'core/i18n', onHookAddedOrRemoved);\n }\n\n return {\n getLocaleData: getLocaleData,\n setLocaleData: setLocaleData,\n resetLocaleData: resetLocaleData,\n subscribe: subscribe,\n __: __,\n _x: _x,\n _n: _n,\n _nx: _nx,\n isRTL: isRTL,\n hasTranslation: hasTranslation\n };\n};\n//# sourceMappingURL=create-i18n.js.map","/**\n * Internal dependencies\n */\nimport { createI18n } from './create-i18n';\n/**\n * WordPress dependencies\n */\n\nimport { defaultHooks } from '@wordpress/hooks';\nvar i18n = createI18n(undefined, undefined, defaultHooks);\n/**\n * Default, singleton instance of `I18n`.\n */\n\nexport default i18n;\n/*\n * Comments in this file are duplicated from ./i18n due to\n * https://github.com/WordPress/gutenberg/pull/20318#issuecomment-590837722\n */\n\n/**\n * @typedef {import('./create-i18n').LocaleData} LocaleData\n * @typedef {import('./create-i18n').SubscribeCallback} SubscribeCallback\n * @typedef {import('./create-i18n').UnsubscribeCallback} UnsubscribeCallback\n */\n\n/**\n * Returns locale data by domain in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {string} [domain] Domain for which to get the data.\n * @return {LocaleData} Locale data.\n */\n\nexport var getLocaleData = i18n.getLocaleData.bind(i18n);\n/**\n * Merges locale data into the Tannin instance by domain. Accepts data in a\n * Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var setLocaleData = i18n.setLocaleData.bind(i18n);\n/**\n * Resets all current Tannin instance locale data and sets the specified\n * locale data for the domain. Accepts data in a Jed-formatted JSON object shape.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @param {LocaleData} [data] Locale data configuration.\n * @param {string} [domain] Domain for which configuration applies.\n */\n\nexport var resetLocaleData = i18n.resetLocaleData.bind(i18n);\n/**\n * Subscribes to changes of locale data\n *\n * @param {SubscribeCallback} callback Subscription callback\n * @return {UnsubscribeCallback} Unsubscribe callback\n */\n\nexport var subscribe = i18n.subscribe.bind(i18n);\n/**\n * Retrieve the translation of text.\n *\n * @see https://developer.wordpress.org/reference/functions/__/\n *\n * @param {string} text Text to translate.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated text.\n */\n\nexport var __ = i18n.__.bind(i18n);\n/**\n * Retrieve translated string with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_x/\n *\n * @param {string} text Text to translate.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} Translated context string without pipe.\n */\n\nexport var _x = i18n._x.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number.\n *\n * @see https://developer.wordpress.org/reference/functions/_n/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _n = i18n._n.bind(i18n);\n/**\n * Translates and retrieves the singular or plural form based on the supplied\n * number, with gettext context.\n *\n * @see https://developer.wordpress.org/reference/functions/_nx/\n *\n * @param {string} single The text to be used if the number is singular.\n * @param {string} plural The text to be used if the number is plural.\n * @param {number} number The number to compare against to use either the\n * singular or plural form.\n * @param {string} context Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n *\n * @return {string} The translated singular or plural form.\n */\n\nexport var _nx = i18n._nx.bind(i18n);\n/**\n * Check if current locale is RTL.\n *\n * **RTL (Right To Left)** is a locale property indicating that text is written from right to left.\n * For example, the `he` locale (for Hebrew) specifies right-to-left. Arabic (ar) is another common\n * language written RTL. The opposite of RTL, LTR (Left To Right) is used in other languages,\n * including English (`en`, `en-US`, `en-GB`, etc.), Spanish (`es`), and French (`fr`).\n *\n * @return {boolean} Whether locale is RTL.\n */\n\nexport var isRTL = i18n.isRTL.bind(i18n);\n/**\n * Check if there is a translation for a given string (in singular form).\n *\n * @param {string} single Singular form of the string to look up.\n * @param {string} [context] Context information for the translators.\n * @param {string} [domain] Domain to retrieve the translated text.\n * @return {boolean} Whether the translation exists or not.\n */\n\nexport var hasTranslation = i18n.hasTranslation.bind(i18n);\n//# sourceMappingURL=default-i18n.js.map","export { sprintf } from './sprintf';\nexport * from './create-i18n';\nexport { default as defaultI18n, setLocaleData, resetLocaleData, getLocaleData, subscribe, __, _x, _n, _nx, isRTL, hasTranslation } from './default-i18n';\n//# sourceMappingURL=index.js.map","/**\n * External dependencies\n */\nimport memoize from 'memize';\nimport sprintfjs from 'sprintf-js';\n/**\n * Log to console, once per message; or more precisely, per referentially equal\n * argument set. Because Jed throws errors, we log these to the console instead\n * to avoid crashing the application.\n *\n * @param {...*} args Arguments to pass to `console.error`\n */\n\nvar logErrorOnce = memoize(console.error); // eslint-disable-line no-console\n\n/**\n * Returns a formatted string. If an error occurs in applying the format, the\n * original format string is returned.\n *\n * @param {string} format The format of the string to generate.\n * @param {...*} args Arguments to apply to the format.\n *\n * @see https://www.npmjs.com/package/sprintf-js\n *\n * @return {string} The formatted string.\n */\n\nexport function sprintf(format) {\n try {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return sprintfjs.sprintf.apply(sprintfjs, [format].concat(args));\n } catch (error) {\n logErrorOnce('sprintf error: \\n\\n' + error.toString());\n return format;\n }\n}\n//# sourceMappingURL=sprintf.js.map","/**\n * This component updates the dependent style element's values and triggers a custom change event for each style element, initiating the style preview.\n * The names of the elements that will be updated are specified using the \"will-change\" attribute.\n * It is primarily used in components from Style/Quick Settings.\n * For instance, when the \"FrmPrimaryColorStyleComponent\" is changed, it simultaneously updates various style elements like border color, text color, and button backgrounds.\n */\nexport default class frmStyleDependentUpdaterComponent {\n\t/**\n\t * Creates an instance of frmStyleDependentUpdaterComponent.\n\t * @param {HTMLElement} component - The component element.\n\t */\n\tconstructor( component ) {\n\t\tthis.component = component;\n\t\ttry {\n\t\t\tconst willChangeData = JSON.parse( this.component.dataset.willChange );\n\t\t\tthis.data = {\n\t\t\t\tpropagateInputs: this.initPropagationList( willChangeData ),\n\t\t\t\tchangeEvent: new Event( 'change', { bubbles: true } )\n\t\t\t};\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'Error parsing JSON data from \"will-change\" attribute.', error );\n\t\t}\n\t}\n\n\t/**\n\t * Initializes the list of inputs to propagate changes to.\n\t * The selection is made by provided input's names list in \"will-change\" attribute.\n\t * @param {string[]} inputNames - The names of the inputs to propagate changes to.\n\t * @return {HTMLElement[]} - The list of inputs to propagate changes to.\n\t */\n\tinitPropagationList( inputNames ) {\n\t\tconst list = [];\n\t\tinputNames.forEach( name => {\n\t\t\tconst input = document.querySelector( `input[name=\"${ name }\"]` );\n\t\t\tif ( null !== input ) {\n\t\t\t\tlist.push( input );\n\t\t\t}\n\t\t} );\n\t\treturn list;\n\t}\n\n\t/**\n\t * Updates all dependent elements with the given value.\n\t * @param {string} value - The value to update the dependent elements with.\n\t */\n\tupdateAllDependentElements( value ) {\n\t\tthis.data.propagateInputs.forEach( input => {\n\t\t\tinput.value = value;\n\t\t} );\n\t\tthis.data.propagateInputs[ 0 ].dispatchEvent( this.data.changeEvent );\n\t}\n}\n","/**\n * Memize options object.\n *\n * @typedef MemizeOptions\n *\n * @property {number} [maxSize] Maximum size of the cache.\n */\n\n/**\n * Internal cache entry.\n *\n * @typedef MemizeCacheNode\n *\n * @property {?MemizeCacheNode|undefined} [prev] Previous node.\n * @property {?MemizeCacheNode|undefined} [next] Next node.\n * @property {Array<*>} args Function arguments for cache\n * entry.\n * @property {*} val Function result.\n */\n\n/**\n * Properties of the enhanced function for controlling cache.\n *\n * @typedef MemizeMemoizedFunction\n *\n * @property {()=>void} clear Clear the cache.\n */\n\n/**\n * Accepts a function to be memoized, and returns a new memoized function, with\n * optional options.\n *\n * @template {Function} F\n *\n * @param {F} fn Function to memoize.\n * @param {MemizeOptions} [options] Options object.\n *\n * @return {F & MemizeMemoizedFunction} Memoized function.\n */\nfunction memize( fn, options ) {\n\tvar size = 0;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar head;\n\n\t/** @type {?MemizeCacheNode|undefined} */\n\tvar tail;\n\n\toptions = options || {};\n\n\tfunction memoized( /* ...args */ ) {\n\t\tvar node = head,\n\t\t\tlen = arguments.length,\n\t\t\targs, i;\n\n\t\tsearchCache: while ( node ) {\n\t\t\t// Perform a shallow equality test to confirm that whether the node\n\t\t\t// under test is a candidate for the arguments passed. Two arrays\n\t\t\t// are shallowly equal if their length matches and each entry is\n\t\t\t// strictly equal between the two sets. Avoid abstracting to a\n\t\t\t// function which could incur an arguments leaking deoptimization.\n\n\t\t\t// Check whether node arguments match arguments length\n\t\t\tif ( node.args.length !== arguments.length ) {\n\t\t\t\tnode = node.next;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Check whether node arguments match arguments values\n\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\tif ( node.args[ i ] !== arguments[ i ] ) {\n\t\t\t\t\tnode = node.next;\n\t\t\t\t\tcontinue searchCache;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// At this point we can assume we've found a match\n\n\t\t\t// Surface matched node to head if not already\n\t\t\tif ( node !== head ) {\n\t\t\t\t// As tail, shift to previous. Must only shift if not also\n\t\t\t\t// head, since if both head and tail, there is no previous.\n\t\t\t\tif ( node === tail ) {\n\t\t\t\t\ttail = node.prev;\n\t\t\t\t}\n\n\t\t\t\t// Adjust siblings to point to each other. If node was tail,\n\t\t\t\t// this also handles new tail's empty `next` assignment.\n\t\t\t\t/** @type {MemizeCacheNode} */ ( node.prev ).next = node.next;\n\t\t\t\tif ( node.next ) {\n\t\t\t\t\tnode.next.prev = node.prev;\n\t\t\t\t}\n\n\t\t\t\tnode.next = head;\n\t\t\t\tnode.prev = null;\n\t\t\t\t/** @type {MemizeCacheNode} */ ( head ).prev = node;\n\t\t\t\thead = node;\n\t\t\t}\n\n\t\t\t// Return immediately\n\t\t\treturn node.val;\n\t\t}\n\n\t\t// No cached value found. Continue to insertion phase:\n\n\t\t// Create a copy of arguments (avoid leaking deoptimization)\n\t\targs = new Array( len );\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\targs[ i ] = arguments[ i ];\n\t\t}\n\n\t\tnode = {\n\t\t\targs: args,\n\n\t\t\t// Generate the result from original function\n\t\t\tval: fn.apply( null, args ),\n\t\t};\n\n\t\t// Don't need to check whether node is already head, since it would\n\t\t// have been returned above already if it was\n\n\t\t// Shift existing head down list\n\t\tif ( head ) {\n\t\t\thead.prev = node;\n\t\t\tnode.next = head;\n\t\t} else {\n\t\t\t// If no head, follows that there's no tail (at initial or reset)\n\t\t\ttail = node;\n\t\t}\n\n\t\t// Trim tail if we're reached max size and are pending cache insertion\n\t\tif ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) {\n\t\t\ttail = /** @type {MemizeCacheNode} */ ( tail ).prev;\n\t\t\t/** @type {MemizeCacheNode} */ ( tail ).next = null;\n\t\t} else {\n\t\t\tsize++;\n\t\t}\n\n\t\thead = node;\n\n\t\treturn node.val;\n\t}\n\n\tmemoized.clear = function() {\n\t\thead = null;\n\t\ttail = null;\n\t\tsize = 0;\n\t};\n\n\tif ( process.env.NODE_ENV === 'test' ) {\n\t\t// Cache is not exposed in the public API, but used in tests to ensure\n\t\t// expected list progression\n\t\tmemoized.getCache = function() {\n\t\t\treturn [ head, tail, size ];\n\t\t};\n\t}\n\n\t// Ignore reason: There's not a clear solution to create an intersection of\n\t// the function with additional properties, where the goal is to retain the\n\t// function signature of the incoming argument and add control properties\n\t// on the return value.\n\n\t// @ts-ignore\n\treturn memoized;\n}\n\nmodule.exports = memize;\n","/* global window, exports, define */\n\n!function() {\n 'use strict'\n\n var re = {\n not_string: /[^s]/,\n not_bool: /[^t]/,\n not_type: /[^T]/,\n not_primitive: /[^v]/,\n number: /[diefg]/,\n numeric_arg: /[bcdiefguxX]/,\n json: /[j]/,\n not_json: /[^j]/,\n text: /^[^\\x25]+/,\n modulo: /^\\x25{2}/,\n placeholder: /^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,\n key: /^([a-z_][a-z_\\d]*)/i,\n key_access: /^\\.([a-z_][a-z_\\d]*)/i,\n index_access: /^\\[(\\d+)\\]/,\n sign: /^[+-]/\n }\n\n function sprintf(key) {\n // `arguments` is not an array, but should be fine for this call\n return sprintf_format(sprintf_parse(key), arguments)\n }\n\n function vsprintf(fmt, argv) {\n return sprintf.apply(null, [fmt].concat(argv || []))\n }\n\n function sprintf_format(parse_tree, argv) {\n var cursor = 1, tree_length = parse_tree.length, arg, output = '', i, k, ph, pad, pad_character, pad_length, is_positive, sign\n for (i = 0; i < tree_length; i++) {\n if (typeof parse_tree[i] === 'string') {\n output += parse_tree[i]\n }\n else if (typeof parse_tree[i] === 'object') {\n ph = parse_tree[i] // convenience purposes only\n if (ph.keys) { // keyword argument\n arg = argv[cursor]\n for (k = 0; k < ph.keys.length; k++) {\n if (arg == undefined) {\n throw new Error(sprintf('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"', ph.keys[k], ph.keys[k-1]))\n }\n arg = arg[ph.keys[k]]\n }\n }\n else if (ph.param_no) { // positional argument (explicit)\n arg = argv[ph.param_no]\n }\n else { // positional argument (implicit)\n arg = argv[cursor++]\n }\n\n if (re.not_type.test(ph.type) && re.not_primitive.test(ph.type) && arg instanceof Function) {\n arg = arg()\n }\n\n if (re.numeric_arg.test(ph.type) && (typeof arg !== 'number' && isNaN(arg))) {\n throw new TypeError(sprintf('[sprintf] expecting number but found %T', arg))\n }\n\n if (re.number.test(ph.type)) {\n is_positive = arg >= 0\n }\n\n switch (ph.type) {\n case 'b':\n arg = parseInt(arg, 10).toString(2)\n break\n case 'c':\n arg = String.fromCharCode(parseInt(arg, 10))\n break\n case 'd':\n case 'i':\n arg = parseInt(arg, 10)\n break\n case 'j':\n arg = JSON.stringify(arg, null, ph.width ? parseInt(ph.width) : 0)\n break\n case 'e':\n arg = ph.precision ? parseFloat(arg).toExponential(ph.precision) : parseFloat(arg).toExponential()\n break\n case 'f':\n arg = ph.precision ? parseFloat(arg).toFixed(ph.precision) : parseFloat(arg)\n break\n case 'g':\n arg = ph.precision ? String(Number(arg.toPrecision(ph.precision))) : parseFloat(arg)\n break\n case 'o':\n arg = (parseInt(arg, 10) >>> 0).toString(8)\n break\n case 's':\n arg = String(arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 't':\n arg = String(!!arg)\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'T':\n arg = Object.prototype.toString.call(arg).slice(8, -1).toLowerCase()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'u':\n arg = parseInt(arg, 10) >>> 0\n break\n case 'v':\n arg = arg.valueOf()\n arg = (ph.precision ? arg.substring(0, ph.precision) : arg)\n break\n case 'x':\n arg = (parseInt(arg, 10) >>> 0).toString(16)\n break\n case 'X':\n arg = (parseInt(arg, 10) >>> 0).toString(16).toUpperCase()\n break\n }\n if (re.json.test(ph.type)) {\n output += arg\n }\n else {\n if (re.number.test(ph.type) && (!is_positive || ph.sign)) {\n sign = is_positive ? '+' : '-'\n arg = arg.toString().replace(re.sign, '')\n }\n else {\n sign = ''\n }\n pad_character = ph.pad_char ? ph.pad_char === '0' ? '0' : ph.pad_char.charAt(1) : ' '\n pad_length = ph.width - (sign + arg).length\n pad = ph.width ? (pad_length > 0 ? pad_character.repeat(pad_length) : '') : ''\n output += ph.align ? sign + arg + pad : (pad_character === '0' ? sign + pad + arg : pad + sign + arg)\n }\n }\n }\n return output\n }\n\n var sprintf_cache = Object.create(null)\n\n function sprintf_parse(fmt) {\n if (sprintf_cache[fmt]) {\n return sprintf_cache[fmt]\n }\n\n var _fmt = fmt, match, parse_tree = [], arg_names = 0\n while (_fmt) {\n if ((match = re.text.exec(_fmt)) !== null) {\n parse_tree.push(match[0])\n }\n else if ((match = re.modulo.exec(_fmt)) !== null) {\n parse_tree.push('%')\n }\n else if ((match = re.placeholder.exec(_fmt)) !== null) {\n if (match[2]) {\n arg_names |= 1\n var field_list = [], replacement_field = match[2], field_match = []\n if ((field_match = re.key.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n while ((replacement_field = replacement_field.substring(field_match[0].length)) !== '') {\n if ((field_match = re.key_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else if ((field_match = re.index_access.exec(replacement_field)) !== null) {\n field_list.push(field_match[1])\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n }\n }\n else {\n throw new SyntaxError('[sprintf] failed to parse named argument key')\n }\n match[2] = field_list\n }\n else {\n arg_names |= 2\n }\n if (arg_names === 3) {\n throw new Error('[sprintf] mixing positional and named placeholders is not (yet) supported')\n }\n\n parse_tree.push(\n {\n placeholder: match[0],\n param_no: match[1],\n keys: match[2],\n sign: match[3],\n pad_char: match[4],\n align: match[5],\n width: match[6],\n precision: match[7],\n type: match[8]\n }\n )\n }\n else {\n throw new SyntaxError('[sprintf] unexpected placeholder')\n }\n _fmt = _fmt.substring(match[0].length)\n }\n return sprintf_cache[fmt] = parse_tree\n }\n\n /**\n * export to either browser or node.js\n */\n /* eslint-disable quote-props */\n if (typeof exports !== 'undefined') {\n exports['sprintf'] = sprintf\n exports['vsprintf'] = vsprintf\n }\n if (typeof window !== 'undefined') {\n window['sprintf'] = sprintf\n window['vsprintf'] = vsprintf\n\n if (typeof define === 'function' && define['amd']) {\n define(function() {\n return {\n 'sprintf': sprintf,\n 'vsprintf': vsprintf\n }\n })\n }\n }\n /* eslint-enable quote-props */\n}(); // eslint-disable-line\n","import pluralForms from '@tannin/plural-forms';\n\n/**\n * Tannin constructor options.\n *\n * @typedef {Object} TanninOptions\n *\n * @property {string} [contextDelimiter] Joiner in string lookup with context.\n * @property {Function} [onMissingKey] Callback to invoke when key missing.\n */\n\n/**\n * Domain metadata.\n *\n * @typedef {Object} TanninDomainMetadata\n *\n * @property {string} [domain] Domain name.\n * @property {string} [lang] Language code.\n * @property {(string|Function)} [plural_forms] Plural forms expression or\n * function evaluator.\n */\n\n/**\n * Domain translation pair respectively representing the singular and plural\n * translation.\n *\n * @typedef {[string,string]} TanninTranslation\n */\n\n/**\n * Locale data domain. The key is used as reference for lookup, the value an\n * array of two string entries respectively representing the singular and plural\n * translation.\n *\n * @typedef {{[key:string]:TanninDomainMetadata|TanninTranslation,'':TanninDomainMetadata|TanninTranslation}} TanninLocaleDomain\n */\n\n/**\n * Jed-formatted locale data.\n *\n * @see http://messageformat.github.io/Jed/\n *\n * @typedef {{[domain:string]:TanninLocaleDomain}} TanninLocaleData\n */\n\n/**\n * Default Tannin constructor options.\n *\n * @type {TanninOptions}\n */\nvar DEFAULT_OPTIONS = {\n\tcontextDelimiter: '\\u0004',\n\tonMissingKey: null,\n};\n\n/**\n * Given a specific locale data's config `plural_forms` value, returns the\n * expression.\n *\n * @example\n *\n * ```\n * getPluralExpression( 'nplurals=2; plural=(n != 1);' ) === '(n != 1)'\n * ```\n *\n * @param {string} pf Locale data plural forms.\n *\n * @return {string} Plural forms expression.\n */\nfunction getPluralExpression( pf ) {\n\tvar parts, i, part;\n\n\tparts = pf.split( ';' );\n\n\tfor ( i = 0; i < parts.length; i++ ) {\n\t\tpart = parts[ i ].trim();\n\t\tif ( part.indexOf( 'plural=' ) === 0 ) {\n\t\t\treturn part.substr( 7 );\n\t\t}\n\t}\n}\n\n/**\n * Tannin constructor.\n *\n * @class\n *\n * @param {TanninLocaleData} data Jed-formatted locale data.\n * @param {TanninOptions} [options] Tannin options.\n */\nexport default function Tannin( data, options ) {\n\tvar key;\n\n\t/**\n\t * Jed-formatted locale data.\n\t *\n\t * @name Tannin#data\n\t * @type {TanninLocaleData}\n\t */\n\tthis.data = data;\n\n\t/**\n\t * Plural forms function cache, keyed by plural forms string.\n\t *\n\t * @name Tannin#pluralForms\n\t * @type {Object}\n\t */\n\tthis.pluralForms = {};\n\n\t/**\n\t * Effective options for instance, including defaults.\n\t *\n\t * @name Tannin#options\n\t * @type {TanninOptions}\n\t */\n\tthis.options = {};\n\n\tfor ( key in DEFAULT_OPTIONS ) {\n\t\tthis.options[ key ] = options !== undefined && key in options\n\t\t\t? options[ key ]\n\t\t\t: DEFAULT_OPTIONS[ key ];\n\t}\n}\n\n/**\n * Returns the plural form index for the given domain and value.\n *\n * @param {string} domain Domain on which to calculate plural form.\n * @param {number} n Value for which plural form is to be calculated.\n *\n * @return {number} Plural form index.\n */\nTannin.prototype.getPluralForm = function( domain, n ) {\n\tvar getPluralForm = this.pluralForms[ domain ],\n\t\tconfig, plural, pf;\n\n\tif ( ! getPluralForm ) {\n\t\tconfig = this.data[ domain ][ '' ];\n\n\t\tpf = (\n\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t// @ts-ignore\n\t\t\tconfig.plural_forms\n\t\t);\n\n\t\tif ( typeof pf !== 'function' ) {\n\t\t\tplural = getPluralExpression(\n\t\t\t\tconfig[ 'Plural-Forms' ] ||\n\t\t\t\tconfig[ 'plural-forms' ] ||\n\t\t\t\t// Ignore reason: As known, there's no way to document the empty\n\t\t\t\t// string property on a key to guarantee this as metadata.\n\t\t\t\t// @ts-ignore\n\t\t\t\tconfig.plural_forms\n\t\t\t);\n\n\t\t\tpf = pluralForms( plural );\n\t\t}\n\n\t\tgetPluralForm = this.pluralForms[ domain ] = pf;\n\t}\n\n\treturn getPluralForm( n );\n};\n\n/**\n * Translate a string.\n *\n * @param {string} domain Translation domain.\n * @param {string|void} context Context distinguishing terms of the same name.\n * @param {string} singular Primary key for translation lookup.\n * @param {string=} plural Fallback value used for non-zero plural\n * form index.\n * @param {number=} n Value to use in calculating plural form.\n *\n * @return {string} Translated string.\n */\nTannin.prototype.dcnpgettext = function( domain, context, singular, plural, n ) {\n\tvar index, key, entry;\n\n\tif ( n === undefined ) {\n\t\t// Default to singular.\n\t\tindex = 0;\n\t} else {\n\t\t// Find index by evaluating plural form for value.\n\t\tindex = this.getPluralForm( domain, n );\n\t}\n\n\tkey = singular;\n\n\t// If provided, context is prepended to key with delimiter.\n\tif ( context ) {\n\t\tkey = context + this.options.contextDelimiter + singular;\n\t}\n\n\tentry = this.data[ domain ][ key ];\n\n\t// Verify not only that entry exists, but that the intended index is within\n\t// range and non-empty.\n\tif ( entry && entry[ index ] ) {\n\t\treturn entry[ index ];\n\t}\n\n\tif ( this.options.onMissingKey ) {\n\t\tthis.options.onMissingKey( singular, domain );\n\t}\n\n\t// If entry not found, fall back to singular vs. plural with zero index\n\t// representing the singular value.\n\treturn index === 0 ? singular : plural;\n};\n","function _arrayLikeToArray(r, a) {\n (null == a || a > r.length) && (a = r.length);\n for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];\n return n;\n}\nexport { _arrayLikeToArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _arrayWithoutHoles(r) {\n if (Array.isArray(r)) return arrayLikeToArray(r);\n}\nexport { _arrayWithoutHoles as default };","function _classCallCheck(a, n) {\n if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _classCallCheck as default };","function _iterableToArray(r) {\n if (\"undefined\" != typeof Symbol && null != r[Symbol.iterator] || null != r[\"@@iterator\"]) return Array.from(r);\n}\nexport { _iterableToArray as default };","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nexport { _nonIterableSpread as default };","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nfunction _toConsumableArray(r) {\n return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();\n}\nexport { _toConsumableArray as default };","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nfunction _unsupportedIterableToArray(r, a) {\n if (r) {\n if (\"string\" == typeof r) return arrayLikeToArray(r, a);\n var t = {}.toString.call(r).slice(8, -1);\n return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;\n }\n}\nexport { _unsupportedIterableToArray as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { __ } from '@wordpress/i18n';\nimport frmStyleDependentUpdaterComponent from './components/dependent-updater-component';\n\n/**\n * Represents the frmStyleOptions class.\n * @class\n */\nclass frmStyleOptions {\n\tconstructor() {\n\t\tthis.success = frmDom.success;\n\t\tthis.init();\n\t\tthis.initHover();\n\t}\n\n\t/**\n\t * Init the dependent\n\t */\n\tinit() {\n\t\tthis.initColorPickerDependentUpdaterComponents();\n\t\tthis.initStyleClassCopyToClipboard( __( 'The class name has been copied.', 'formidable' ) );\n\t}\n\n\t/**\n\t * Initializes the color picker dependent updater components.\n\t * Retrieves the components and elements, and adds them to the elements array.\n\t * Adds an action hook for the frm_style_options_color_change event.\n\t */\n\tinitColorPickerDependentUpdaterComponents() {\n\t\tconst components = document.querySelectorAll( '.frm-style-dependent-updater-component.frm-colorpicker' );\n\t\tconst elements = [];\n\n\t\tcomponents.forEach( component => {\n\t\t\tconst element = component.querySelector( 'input.hex' );\n\t\t\tconst id = 'undefined' !== typeof element ? element.getAttribute( 'id' ) : null;\n\n\t\t\tif ( null !== id ) {\n\t\t\t\telements.push( {\n\t\t\t\t\tid: id,\n\t\t\t\t\tdependentUpdaterClass: new frmStyleDependentUpdaterComponent( component, 'colorpicker' )\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\n\t\twp.hooks.addAction( 'frm_style_options_color_change', 'formidable', ( { event, value } ) => {\n\t\t\tconst container = event.target.closest( '.wp-picker-container' );\n\t\t\tconst id = event.target.getAttribute( 'id' );\n\n\t\t\tcontainer.querySelector( '.wp-color-result-text' ).innerText = value;\n\n\t\t\telements.forEach( element => {\n\t\t\t\tif ( element.id === id ) {\n\t\t\t\t\telement.dependentUpdaterClass.updateAllDependentElements( value );\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\t}\n\n\t/**\n\t * Initializes the hover functionality for the style options.\n\t * Creates a hover element and appends it to the settingsWrapper.\n\t * Adds event listeners for mouseover and click events.\n\t */\n\tinitHover() {\n\t\tconst settingsWrapper = document.querySelector( '.frm-right-panel .styling_settings .accordion-container' );\n\t\tif ( null === settingsWrapper ) {\n\t\t\treturn;\n\t\t}\n\t\tconst hoverElement = document.createElement( 'div' );\n\t\thoverElement.classList.add( 'frm_hidden' );\n\t\thoverElement.classList.add( 'frm-style-settings-hover' );\n\t\tsettingsWrapper.appendChild( hoverElement );\n\n\t\tconst styleOptionsMenu = settingsWrapper.querySelector( ':scope > ul' );\n\n\t\tstyleOptionsMenu.querySelectorAll( ':scope > li' ).forEach( item => {\n\t\t\titem.querySelector( 'h3' ).addEventListener( 'mouseover', event => {\n\t\t\t\thoverElement.style.transform = `translateY(${ event.target.closest( 'li' ).offsetTop }px)`;\n\t\t\t\thoverElement.classList.add( 'frm-animating' );\n\t\t\t\thoverElement.classList.remove( 'frm_hidden' );\n\t\t\t\tsetTimeout( () => {\n\t\t\t\t\thoverElement.classList.remove( 'frm-animating' );\n\t\t\t\t}, 250 );\n\t\t\t} );\n\t\t} );\n\n\t\tconst accordionitems = document.querySelectorAll( '#frm_style_sidebar .accordion-section h3' );\n\t\taccordionitems.forEach( item => {\n\t\t\titem.addEventListener( 'click', () => {\n\t\t\t\thoverElement.classList.add( 'frm_hidden' );\n\t\t\t} );\n\t\t} );\n\t}\n\n\t/**\n\t * Initializes the copy to clipboard functionality for style classes.\n\t * Adds a click event listener to the copyLabel element.\n\t * Copies the class name to the clipboard and displays a success message.\n\t * @param {string} successMessage - The success message to display.\n\t */\n\tinitStyleClassCopyToClipboard( successMessage ) {\n\t\tconst copyLabel = document.querySelector( '.frm-copy-text' );\n\t\tcopyLabel.addEventListener( 'click', event => {\n\t\t\tconst className = event.currentTarget.innerText;\n\t\t\tnavigator.clipboard.writeText( className ).then( () => {\n\t\t\t\tthis.success( successMessage );\n\t\t\t} );\n\t\t} );\n\t}\n}\n\nnew frmStyleOptions();\n"],"names":["frmStyleDependentUpdaterComponent","component","_classCallCheck","willChangeData","JSON","parse","dataset","willChange","data","propagateInputs","initPropagationList","changeEvent","Event","bubbles","error","console","_createClass","key","value","inputNames","list","forEach","name","input","document","querySelector","concat","push","updateAllDependentElements","dispatchEvent","default","__","frmStyleOptions","success","frmDom","init","initHover","initColorPickerDependentUpdaterComponents","initStyleClassCopyToClipboard","components","querySelectorAll","elements","element","id","getAttribute","dependentUpdaterClass","wp","hooks","addAction","_ref","event","container","target","closest","innerText","settingsWrapper","hoverElement","createElement","classList","add","appendChild","styleOptionsMenu","item","addEventListener","style","transform","offsetTop","remove","setTimeout","accordionitems","successMessage","_this","copyLabel","className","currentTarget","navigator","clipboard","writeText","then"],"sourceRoot":""} \ No newline at end of file diff --git a/js/onboarding-wizard.js.map b/js/onboarding-wizard.js.map index e0f81f1a89..d17d1ee5d8 100644 --- a/js/onboarding-wizard.js.map +++ b/js/onboarding-wizard.js.map @@ -1 +1 @@ -{"version":3,"file":"onboarding-wizard.js","mappings":"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","sources":["webpack://formidable/./node_modules/@wordpress/dom-ready/build-module/index.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/events/index.js","webpack://formidable/./js/src/core/events/optionBoxListener.js","webpack://formidable/./js/src/core/factory/createPageElements.js","webpack://formidable/./js/src/core/factory/createPageState.js","webpack://formidable/./js/src/core/factory/index.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/./js/src/onboarding-wizard/dataUtils/index.js","webpack://formidable/./js/src/onboarding-wizard/dataUtils/setupUsageData.js","webpack://formidable/./js/src/onboarding-wizard/elements/elements.js","webpack://formidable/./js/src/onboarding-wizard/elements/index.js","webpack://formidable/./js/src/onboarding-wizard/events/backButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/consentTrackingButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/index.js","webpack://formidable/./js/src/onboarding-wizard/events/installAddonsButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/skipStepButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/initializeOnboardingWizard.js","webpack://formidable/./js/src/onboarding-wizard/shared/constants.js","webpack://formidable/./js/src/onboarding-wizard/shared/index.js","webpack://formidable/./js/src/onboarding-wizard/shared/pageState.js","webpack://formidable/./js/src/onboarding-wizard/ui/index.js","webpack://formidable/./js/src/onboarding-wizard/ui/rootline.js","webpack://formidable/./js/src/onboarding-wizard/ui/setupInitialView.js","webpack://formidable/./js/src/onboarding-wizard/utils/index.js","webpack://formidable/./js/src/onboarding-wizard/utils/navigateToStep.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/onboarding-wizard/index.js"],"sourcesContent":["/**\n * @typedef {() => void} Callback\n *\n * TODO: Remove this typedef and inline `() => void` type.\n *\n * This typedef is used so that a descriptive type is provided in our\n * automatically generated documentation.\n *\n * An in-line type `() => void` would be preferable, but the generated\n * documentation is `null` in that case.\n *\n * @see https://github.com/WordPress/gutenberg/issues/18045\n */\n\n/**\n * Specify a function to execute when the DOM is fully loaded.\n *\n * @param {Callback} callback A function to execute after the DOM is ready.\n *\n * @example\n * ```js\n * import domReady from '@wordpress/dom-ready';\n *\n * domReady( function() {\n * \t//do something after DOM loads.\n * } );\n * ```\n *\n * @return {void}\n */\nexport default function domReady(callback) {\n if (typeof document === 'undefined') {\n return;\n }\n\n if (document.readyState === 'complete' || // DOMContentLoaded + Images/Styles/etc loaded, so we call directly.\n document.readyState === 'interactive' // DOMContentLoaded fires at this point, so we call directly.\n ) {\n return void callback();\n } // DOMContentLoaded has not fired yet, delay callback until then.\n\n\n document.addEventListener('DOMContentLoaded', callback);\n}\n//# sourceMappingURL=index.js.map","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export * from './optionBoxListener';\n","/**\n * Internal dependencies\n */\nimport { CHECKED_CLASS } from 'core/constants';\n\nconst OPTION_BOX_CLASS = '.frm-option-box';\n\n/**\n * Manages event handling for an option-box.\n *\n * @return {void}\n */\nexport function addOptionBoxEvents() {\n\tconst optionBoxes = document.querySelectorAll( OPTION_BOX_CLASS );\n\n\toptionBoxes.forEach( ( optionBox ) => {\n\t\toptionBox.addEventListener( 'click', onOptionBoxClick );\n\t});\n}\n\n/**\n * Handles the click event on a option box item.\n *\n * @private\n * @param {Event} event The click event object.\n */\nfunction onOptionBoxClick( event ) {\n\tif ( event.target.tagName.toLowerCase() !== 'input' ) {\n\t\treturn;\n\t}\n\n\tconst optionBox = event.currentTarget.closest( OPTION_BOX_CLASS );\n\toptionBox.classList.toggle( CHECKED_CLASS );\n}\n","/**\n * Creates a page elements manager.\n *\n * @param {Object} [initialElements={}] An object containing initial DOM elements.\n * @throws {Error} Throws an error if the `initialElements` is not an object.\n * @return {Object} An object with methods to get and add elements.\n */\nexport function createPageElements( initialElements = {} ) {\n\tif ( typeof initialElements !== 'object' || initialElements === null ) {\n\t\tthrow new Error(\n\t\t\t'createPageElements: initialElements must be a non-null object'\n\t\t);\n\t}\n\n\tlet elements = initialElements;\n\n\t/**\n\t * Retrieve the initialized essential DOM elements.\n\t *\n\t * @return {Object} The initialized elements object.\n\t */\n\tfunction getElements() {\n\t\treturn elements;\n\t}\n\n\t/**\n\t * Add new elements to the elements object.\n\t *\n\t * @param {Object} newElements An object containing new elements to be added.\n\t * @throws {Error} Throws an error if the `newElements` is not a non-null object.\n\t * @return {void} Updates the elements object by merging the new elements into it.\n\t */\n\tfunction addElements( newElements ) {\n\t\tif ( typeof newElements !== 'object' || newElements === null ) {\n\t\t\tthrow new Error(\n\t\t\t\t'addElements: newElements must be a non-null object'\n\t\t\t);\n\t\t}\n\n\t\telements = { ...elements, ...newElements };\n\t}\n\n\treturn { getElements, addElements };\n}\n","/**\n * Creates a page state manager.\n *\n * @param {Object} [initialState={}] An object containing the initial state.\n * @throws {Error} Throws an error if the `initialState` is not a plain object.\n * @return {Object} An object with methods to initialize, get, and set the page state.\n */\nexport function createPageState( initialState = {} ) {\n\tif ( typeof initialState !== 'object' || initialState === null ) {\n\t\tthrow new Error(\n\t\t\t'createPageState: initialState must be a non-null object'\n\t\t);\n\t}\n\n\tlet state = initialState;\n\n\t/**\n\t * Returns the current page state.\n\t *\n\t * @return {Object|null} The current state of the page or null if not initialized.\n\t */\n\tconst getState = () => state;\n\n\t/**\n\t * Returns a specific property from the current page state.\n\t *\n\t * @param {string} propertyName The name of the property to retrieve.\n\t * @return {*} The value of the specified property, or null if it doesn't exist.\n\t */\n\tconst getSingleState = ( propertyName ) => {\n\t\tconst value = Reflect.get( state, propertyName );\n\n\t\t// We convert `undefined` to `null` for a consistent API.\n\t\t// This makes it easier for users to handle the results since all missing properties return `null`.\n\t\treturn value === undefined ? null : value;\n\t};\n\n\t/**\n\t * Updates the page state with new values.\n\t *\n\t * @param {Object} newState The new values to update the state with.\n\t * @throws {Error} Throws an error if `newState` is not a plain object.\n\t * @return {void}\n\t */\n\tconst setState = ( newState ) => {\n\t\tif ( typeof newState !== 'object' || newState === null ) {\n\t\t\tthrow new Error( 'setState: newState must be a non-null object' );\n\t\t}\n\n\t\tstate = { ...state, ...newState };\n\t};\n\n\t/**\n\t * Updates a specific property in the page state with a new value.\n\t *\n\t * @param {string} propertyName The name of the property to update.\n\t * @param {*} value The new value to set for the property.\n\t * @return {void}\n\t */\n\tconst setSingleState = ( propertyName, value ) => {\n\t\tif ( Reflect.has( state, propertyName ) ) {\n\t\t\tReflect.set( state, propertyName, value );\n\t\t}\n\t};\n\n\treturn { getState, getSingleState, setState, setSingleState };\n}\n","export * from './createPageElements';\nexport * from './createPageState';\n","export class frmAnimate {\n\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements\n\t * @param {'default'|'cascade'|'cascade-3d'} type - The animation type: default | cascade | cascade-3d\n\t *\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true });\n\t\t});\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay - The transition delay value.\n\t *\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( index + 1 ) * delay + 's';\n\t\t\t});\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t});\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${type}\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true });\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = ( paramName ) => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ([ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = {[paramName]: paramValue};\n\t\twindow.history[updateMethod]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","export { default as setupUsageData} from './setupUsageData';\n","/**\n * Internal Dependencies\n */\nimport { getState, STEPS } from '../shared';\n\n/**\n * Processes and submits usage data for the specified onboarding step.\n *\n * @param {string} processedStep The name of the step that has just been processed.\n * @param {string} nextStepName The name of the next step in the onboarding process.\n * @return {void}\n */\nfunction setupUsageData( processedStep, nextStepName ) {\n\tconst formData = processDataForStep( processedStep, nextStepName );\n\tif ( ! formData ) {\n\t\treturn;\n\t}\n\n\t// Send the POST request\n\tconst { doJsonPost } = frmDom.ajax;\n\tdoJsonPost( 'onboarding_setup_usage_data', formData );\n}\n\n/**\n * Processes onboarding step data and returns the corresponding FormData.\n *\n * @private\n * @param {string} processedStep The name of the step that has just been processed.\n * @param {string} nextStepName The name of the next step in the onboarding process.\n * @return {FormData|null} The FormData to be submitted for the step, or null if there's no data.\n */\nfunction processDataForStep( processedStep, nextStepName ) {\n\tlet formData;\n\n\t// Append completed steps if moving to the success step\n\tif ( STEPS.SUCCESS === nextStepName || STEPS.UNSUCCESSFUL === nextStepName ) {\n\t\tconst { processedSteps } = getState();\n\n\t\tif ( processedSteps.length > 1 ) {\n\t\t\tif ( ! processedSteps.includes( nextStepName ) ) {\n\t\t\t\tprocessedSteps.push( nextStepName );\n\t\t\t}\n\n\t\t\tformData = new FormData();\n\t\t\tformData.append( 'processed_steps', processedSteps.join( ',' ) );\n\t\t\tformData.append( 'completed_steps', true );\n\t\t}\n\t}\n\n\t// Append installed addons for the addon installation step\n\tif ( STEPS.INSTALL_ADDONS === processedStep ) {\n\t\tconst { installedAddons } = getState();\n\n\t\tif ( installedAddons.length > 0 ) {\n\t\t\tformData = formData ?? new FormData();\n\t\t\tformData.append( 'installed_addons', installedAddons.join( ',' ) );\n\t\t}\n\t}\n\n\treturn formData;\n}\n\nexport default setupUsageData;\n","/**\n * External dependencies\n */\nimport { createPageElements } from 'core/factory';\n\n/**\n * Internal dependencies\n */\nimport { PREFIX } from '../shared';\n\nexport const { getElements, addElements } = createPageElements({\n\tonboardingWizardPage: document.getElementById( `${PREFIX}-wizard-page` ),\n\tcontainer: document.getElementById( `${PREFIX}-container` ),\n\n\trootline: document.getElementById( `${PREFIX}-rootline` ),\n\tsteps: document.querySelectorAll( `.${PREFIX}-step` ),\n\tskipStepButtons: document.querySelectorAll( `.${PREFIX}-skip-step` ),\n\tbackButtons: document.querySelectorAll( `.${PREFIX}-back-button` ),\n\n\tconsentTrackingButton: document.getElementById( `${PREFIX}-consent-tracking` ),\n\tinstallAddonsButton: document.getElementById( `${PREFIX}-install-addons-button` ),\n\n\thiddenLicenseKeyInput: document.getElementById( 'frm-license-key' ),\n});\n","export * from './elements';\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToPrevStep } from '../utils';\n\n/**\n * Manages event handling for the \"Back\" button.\n *\n * @return {void}\n */\nfunction addBackButtonEvents() {\n\tconst { backButtons } = getElements();\n\n\t// Attach click event listeners to each back buttons\n\tbackButtons.forEach( backButton => {\n\t\tonClickPreventDefault( backButton, onBackButtonClick );\n\t});\n}\n\n/**\n * Handles the click event on a \"Back\" button.\n *\n * @private\n * @return {void}\n */\nconst onBackButtonClick = () => {\n\tnavigateToPrevStep();\n};\n\nexport default addBackButtonEvents;\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Allow & Continue\" button in the \"Never miss an important update\" step.\n *\n * @return {void}\n */\nfunction addConsentTrackingButtonEvents() {\n\tconst { consentTrackingButton } = getElements();\n\n\t// Attach click event listener\n\tonClickPreventDefault( consentTrackingButton, onConsentTrackingButtonClick );\n}\n\n/**\n * Handles the click event on the \"Allow & Continue\" button in the \"Never miss an important update\" step.\n *\n * @private\n * @return {void}\n */\nconst onConsentTrackingButtonClick = async() => {\n\tconst { doJsonPost } = frmDom.ajax;\n\tdoJsonPost( 'onboarding_consent_tracking', new FormData() ).then( navigateToNextStep );\n};\n\nexport default addConsentTrackingButtonEvents;\n","/**\n * External dependencies\n */\nimport { addOptionBoxEvents } from 'core/events';\nimport { getQueryParam } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport addSkipStepButtonEvents from './skipStepButtonListener';\nimport addBackButtonEvents from './backButtonListener';\nimport addConsentTrackingButtonEvents from './consentTrackingButtonListener';\nimport addInstallAddonsButtonEvents from './installAddonsButtonListener';\nimport { navigateToStep } from '../utils';\n\n/**\n * Attaches event listeners for handling user interactions.\n *\n * @return {void}\n */\nexport function addEventListeners() {\n\t// Add event handling for the \"Skip\" and \"Back\" buttons\n\taddSkipStepButtonEvents();\n\taddBackButtonEvents();\n\n\taddConsentTrackingButtonEvents();\n\n\t// Add event handling for the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step\n\taddInstallAddonsButtonEvents();\n\t// Add event handling for an option-box\n\taddOptionBoxEvents();\n}\n\n/**\n * Responds to browser navigation events (back/forward) by updating the UI to match the step indicated in the URL or history state.\n *\n * @param {PopStateEvent} event The event object associated with the navigation action.\n * @return {void}\n */\nwindow.addEventListener( 'popstate', ( event ) => {\n\tconst stepName = event.state?.step || getQueryParam( 'step' );\n\t// Navigate to the specified step without adding to browser history\n\tnavigateToStep( stepName, 'replaceState' );\n});\n","/**\n * External dependencies\n */\nimport { nonce } from 'core/constants';\nimport { onClickPreventDefault, addToRequestQueue } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { getState, setSingleState } from '../shared';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step.\n *\n * @return {void}\n */\nfunction addInstallAddonsButtonEvents() {\n\tconst { installAddonsButton } = getElements();\n\n\t// Attach click event listener\n\tonClickPreventDefault( installAddonsButton, onInstallAddonsButtonClick );\n}\n\n/**\n * Handles the click event on the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step.\n *\n * @private\n * @param {Event} event The click event object.\n * @return {void}\n */\nconst onInstallAddonsButtonClick = async( event ) => {\n\tconst addons = document.querySelectorAll( '.frm-option-box.frm-checked:not(.frm-disabled)' );\n\tconst { installedAddons } = getState();\n\tconst installAddonsButton = event.currentTarget;\n\n\tinstallAddonsButton.classList.add( 'frm_loading_button' );\n\n\tfor ( const addon of addons ) {\n\t\ttry {\n\t\t\tawait addToRequestQueue( () => installAddon( addon.getAttribute( 'rel' ), addon.dataset ) );\n\n\t\t\t// Capture addon title\n\t\t\tconst addonTitle = addon.dataset.title;\n\t\t\tif ( ! installedAddons.includes( addonTitle ) ) {\n\t\t\t\tinstalledAddons.push( addonTitle );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'An error occurred:', error );\n\t\t}\n\t}\n\n\tinstallAddonsButton.classList.remove( 'frm_loading_button' );\n\n\tsetSingleState( 'installedAddons', installedAddons );\n\tnavigateToNextStep();\n};\n\n/**\n * Installs an add-on or plugin based on the provided plugin name and vendor status.\n *\n * @private\n * @param {string} plugin The unique identifier or name of the plugin or add-on to be installed.\n * @param {Object} options An object containing additional options for the installation.\n * @param {boolean} options.isInstalled Indicates whether the plugin is already installed.\n * @param {boolean} options.isVendor Indicates whether the plugin is a vendor plugin (true) or a regular add-on (false).\n * @return {Promise} A promise that resolves with the JSON response from the server after the installation request is completed.\n */\nasync function installAddon( plugin, {isVendor, isInstalled}) {\n\t// Prepare FormData for the POST request\n\tconst formData = new FormData();\n\tformData.append( 'nonce', nonce );\n\tformData.append( 'plugin', plugin );\n\n\tconst addonAction = isInstalled ? 'frm_activate_addon' : 'frm_install_addon';\n\tformData.append( 'action', isVendor ? 'frm_install_plugin' : addonAction );\n\n\ttry {\n\t\t// Perform the POST request\n\t\tconst response = await fetch( ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\tbody: formData\n\t\t});\n\n\t\tif ( ! response.ok ) {\n\t\t\tthrow new Error( `Server responded with status ${response.status}` );\n\t\t}\n\n\t\t// Parse the JSON response\n\t\treturn await response.json();\n\t} catch ( error ) {\n\t\tconsole.error( 'An error occurred:', error );\n\t}\n}\n\nexport default addInstallAddonsButtonEvents;\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Skip\" step button.\n *\n * @return {void}\n */\nfunction addSkipStepButtonEvents() {\n\tconst { skipStepButtons } = getElements();\n\n\t// Attach click event listeners to each skip buttons\n\tskipStepButtons.forEach( skipButton => {\n\t\tonClickPreventDefault( skipButton, onSkipStepButtonClick );\n\t});\n}\n\n/**\n * Handles the click event on a \"Skip\" step button.\n *\n * @private\n * @return {void}\n */\nconst onSkipStepButtonClick = () => {\n\tnavigateToNextStep();\n};\n\nexport default addSkipStepButtonEvents;\n","/**\n * Internal dependencies\n */\nimport { setupInitialView } from './ui';\nimport { addEventListeners } from './events';\n\n/**\n * Initializes Onboarding Wizard.\n *\n * @return {void}\n */\nfunction initializeOnboardingWizard() {\n\tsetupInitialView();\n\taddEventListeners();\n}\n\nexport default initializeOnboardingWizard;\n","export const { INITIAL_STEP } = window.frmOnboardingWizardVars;\n\nexport const PREFIX = 'frm-onboarding';\n\nexport const STEPS = {\n\tINITIAL: INITIAL_STEP,\n\tINSTALL_ADDONS: 'install-addons',\n\tSUCCESS: 'success',\n\tUNSUCCESSFUL: 'unsuccessful'\n};\n","export * from './constants';\nexport * from './pageState';\n","/**\n * External dependencies\n */\nimport { createPageState } from 'core/factory';\n\nexport const { getState, getSingleState, setState, setSingleState } = createPageState({\n\tprocessedSteps: [],\n\tinstalledAddons: [],\n});\n","export { default as setupInitialView } from './setupInitialView';\nexport * from './rootline';\n","/**\n * External dependencies\n */\nimport { CURRENT_CLASS } from 'core/constants';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from \"../elements\";\nimport { STEPS } from '../shared';\n\nconst COMPLETED_STEP_CLASS = 'frm-completed-step';\n\n/**\n * Updates the rootline to reflect the current and completed steps.\n *\n * - Applies COMPLETED_STEP_CLASS to steps before the current one.\n * - Applies CURRENT_CLASS to the current step, unless it is the success step.\n *\n * @param {string} currentStep The current step in the process.\n * @return {void}\n */\nexport function updateRootline( currentStep ) {\n\tif ( currentStep === STEPS.UNSUCCESSFUL ) {\n\t\tcurrentStep = STEPS.SUCCESS;\n\t}\n\n\tconst { rootline } = getElements();\n\tconst currentItem = rootline.querySelector( `.frm-rootline-item[data-step=\"${currentStep}\"]` );\n\n\trootline.querySelectorAll( '.frm-rootline-item' ).forEach( item => {\n\t\titem.classList.remove( COMPLETED_STEP_CLASS );\n\t\titem.classList.remove( CURRENT_CLASS );\n\t});\n\n\tlet prevItem = currentItem.previousElementSibling;\n\tif ( prevItem ) {\n\t\twhile ( prevItem ) {\n\t\t\tprevItem.classList.add( COMPLETED_STEP_CLASS );\n\t\t\tprevItem = prevItem.previousElementSibling; // move to the previous sibling\n\t\t}\n\t}\n\n\tif ( currentStep === STEPS.SUCCESS ) {\n\t\tcurrentItem.classList.add( COMPLETED_STEP_CLASS );\n\t} else {\n\t\tcurrentItem.classList.add( CURRENT_CLASS );\n\t}\n}\n","/**\n * External dependencies\n */\nimport { frmAnimate, getQueryParam, removeQueryParam, hasQueryParam } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { STEPS } from '../shared';\nimport { navigateToStep } from '../utils';\n\n/**\n * Initializes the onboarding wizard's UI, sets up the initial step based on certain conditions,\n * and applies necessary UI enhancements for a smoother user experience.\n *\n * @return {void}\n */\nexport default function setupInitialView() {\n\tnavigateToInitialStep();\n\tfadeInPageElements();\n}\n\n/**\n * Determines the initial step in the onboarding process and navigates to it, considering the installation\n * status of Formidable Pro and specific query parameters.\n *\n * @private\n * @return {void}\n */\nfunction navigateToInitialStep() {\n\tconst initialStepName = determineInitialStep();\n\n\tclearOnboardingQueryParams();\n\tnavigateToStep( initialStepName, 'replaceState' );\n}\n\n/**\n * Determines the initial step based on the current state, such as whether Formidable Pro is installed\n * and the presence of specific query parameters. Also handles the removal of unnecessary steps.\n *\n * @private\n * @return {string} The name of the initial step to navigate to.\n */\nfunction determineInitialStep() {\n\tconst isConnectedAccount = getQueryParam( 'success' );\n\n\tif ( isConnectedAccount === '0' ) {\n\t\treturn STEPS.UNSUCCESSFUL;\n\t}\n\n\tconst { hiddenLicenseKeyInput } = getElements();\n\n\tif ( hiddenLicenseKeyInput || isConnectedAccount ) {\n\t\treturn STEPS.INSTALL_ADDONS;\n\t}\n\n\treturn getQueryParam( 'step' ) || STEPS.INITIAL;\n}\n\n/**\n * Clears specific query parameters related to the onboarding process.\n *\n * @private\n * @return {void}\n */\nfunction clearOnboardingQueryParams() {\n\tremoveQueryParam( 'key' );\n\tremoveQueryParam( 'success' );\n}\n\n/**\n * Smoothly fades in the background and container elements of the page for a more pleasant user experience.\n *\n * @private\n * @return {void}\n */\nfunction fadeInPageElements() {\n\tconst { container } = getElements();\n\n\tnew frmAnimate( container ).fadeIn();\n}\n","export * from './navigateToStep';\n","/**\n * External dependencies\n */\nimport { CURRENT_CLASS } from 'core/constants';\nimport { frmAnimate, setQueryParam, hide, show } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { setupUsageData } from '../dataUtils';\nimport { getElements } from '../elements';\nimport { getState, PREFIX, setSingleState } from '../shared';\nimport { updateRootline } from '../ui';\n\n/**\n * Navigates to the given step in the onboarding sequence.\n * Optionally updates the browser's history state to include the current step.\n *\n * @param {string} stepName The name of the step to navigate to.\n * @param {string} [updateMethod='pushState'] Specifies the method to update the browser's history and URL. Accepts 'pushState' or 'replaceState'. If omitted, defaults to 'pushState'.\n * @return {void}\n */\nexport const navigateToStep = ( stepName, updateMethod = 'pushState' ) => {\n\t// Find the target step element\n\tconst targetStep = document.querySelector( `.${PREFIX}-step[data-step-name=\"${stepName}\"]` );\n\tif ( ! targetStep ) {\n\t\treturn;\n\t}\n\n\t// Find and hide the current step element\n\tconst currentStep = document.querySelector( `.${PREFIX}-step.${CURRENT_CLASS}` );\n\tif ( currentStep ) {\n\t\tcurrentStep.classList.remove( CURRENT_CLASS );\n\t\thide( currentStep );\n\t}\n\n\t// Display the target step element\n\ttargetStep.classList.add( CURRENT_CLASS );\n\tshow( targetStep );\n\tnew frmAnimate( targetStep ).fadeIn();\n\n\t// Update the onboarding wizard's current step attribute\n\tconst { onboardingWizardPage } = getElements();\n\tonboardingWizardPage.setAttribute( 'data-current-step', stepName );\n\n\t// Update the URL query parameter, with control over history update method\n\tsetQueryParam( 'step', stepName, updateMethod );\n\n\tupdateRootline( stepName );\n};\n\n/**\n * Navigates to the next step in the sequence.\n *\n * The function assumes steps are sequentially ordered in the DOM.\n *\n * @return {void}\n */\nexport const navigateToNextStep = () => {\n\tconst currentStep = document.querySelector( `.${PREFIX}-step.${CURRENT_CLASS}` );\n\tconst nextStep = currentStep?.nextElementSibling;\n\n\tif ( ! nextStep ) {\n\t\treturn;\n\t}\n\n\tconst processedStep = currentStep.dataset.stepName;\n\tconst nextStepName = nextStep.dataset.stepName;\n\n\t// Save processed steps\n\tconst { processedSteps } = getState();\n\tif ( ! processedSteps.includes( processedStep ) ) {\n\t\tprocessedSteps.push( processedStep );\n\t\tsetSingleState( 'processedSteps', processedSteps );\n\t}\n\tsetupUsageData( processedStep, nextStepName );\n\n\tnavigateToStep( nextStepName );\n};\n\n/**\n * Navigates to the previous step in the sequence.\n *\n * The function assumes steps are sequentially ordered in the DOM.\n *\n * @return {void}\n */\nexport const navigateToPrevStep = () => {\n\tconst currentStep = document.querySelector( `.${PREFIX}-step.${CURRENT_CLASS}` );\n\tconst prevStep = currentStep?.previousElementSibling;\n\n\tif ( ! prevStep ) {\n\t\treturn;\n\t}\n\n\tnavigateToStep( prevStep.dataset.stepName );\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * WordPress dependencies\n */\nimport domReady from '@wordpress/dom-ready';\n\n/**\n * Internal dependencies\n */\nimport initializeOnboardingWizard from './initializeOnboardingWizard';\n\ndomReady( () => {\n\tinitializeOnboardingWizard();\n});\n"],"names":["_window$frmGlobal","window","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","OPTION_BOX_CLASS","addOptionBoxEvents","optionBoxes","document","querySelectorAll","forEach","optionBox","addEventListener","onOptionBoxClick","event","target","tagName","toLowerCase","currentTarget","closest","classList","toggle","createPageElements","initialElements","arguments","length","undefined","_typeof","Error","elements","getElements","addElements","newElements","_objectSpread","createPageState","initialState","state","getState","getSingleState","propertyName","value","Reflect","get","setState","newState","setSingleState","has","set","frmAnimate","type","_classCallCheck","prepareElements","_createClass","key","fadeIn","_this","applyStyleToElements","element","add","resetOpacity","remove","once","cascadeFadeIn","_this2","delay","setTimeout","index","style","transitionDelay","_this3","opacity","callback","Element","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","querySelector","errorElement","console","warn","span","concat","textContent","setAttribute","_window$frmDom$util","frmDom","util","onClickPreventDefault","documentOn","URL","location","href","urlParams","searchParams","getQueryParam","paramName","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","includes","_defineProperty","history","hasQueryParam","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","default","setupUsageData","STEPS","processedStep","nextStepName","formData","processDataForStep","doJsonPost","ajax","SUCCESS","UNSUCCESSFUL","_getState","processedSteps","push","FormData","append","join","INSTALL_ADDONS","_getState2","installedAddons","_formData","PREFIX","_createPageElements","onboardingWizardPage","getElementById","container","rootline","steps","skipStepButtons","backButtons","consentTrackingButton","installAddonsButton","hiddenLicenseKeyInput","navigateToPrevStep","addBackButtonEvents","_getElements","backButton","onBackButtonClick","_regeneratorRuntime","e","t","r","prototype","n","hasOwnProperty","o","defineProperty","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","__await","callInvokeWithMethodAndArg","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","name","mark","setPrototypeOf","__proto__","awrap","async","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","apply","_next","_throw","navigateToNextStep","addConsentTrackingButtonEvents","onConsentTrackingButtonClick","_ref","_callee","_callee$","_context","addSkipStepButtonEvents","addInstallAddonsButtonEvents","navigateToStep","addEventListeners","_event$state","stepName","step","_createForOfIteratorHelper","isArray","_unsupportedIterableToArray","_n","F","_arrayLikeToArray","onInstallAddonsButtonClick","addons","_iterator","_step","_loop","_context2","addon","addonTitle","_loop$","installAddon","getAttribute","dataset","title","t0","error","t1","_x","_x2","_x3","_installAddon","_callee2","plugin","_ref2","isVendor","isInstalled","addonAction","response","_callee2$","_context3","fetch","ajaxurl","body","ok","status","json","skipButton","onSkipStepButtonClick","setupInitialView","initializeOnboardingWizard","INITIAL_STEP","frmOnboardingWizardVars","INITIAL","_createPageState","COMPLETED_STEP_CLASS","updateRootline","currentStep","currentItem","item","prevItem","previousElementSibling","navigateToInitialStep","fadeInPageElements","initialStepName","determineInitialStep","clearOnboardingQueryParams","isConnectedAccount","_getElements2","targetStep","nextStep","nextElementSibling","prevStep","domReady"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"onboarding-wizard.js","mappings":"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","sources":["webpack://formidable/./node_modules/@wordpress/dom-ready/build-module/index.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/events/index.js","webpack://formidable/./js/src/core/events/optionBoxListener.js","webpack://formidable/./js/src/core/factory/createPageElements.js","webpack://formidable/./js/src/core/factory/createPageState.js","webpack://formidable/./js/src/core/factory/index.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/./js/src/onboarding-wizard/dataUtils/index.js","webpack://formidable/./js/src/onboarding-wizard/dataUtils/setupUsageData.js","webpack://formidable/./js/src/onboarding-wizard/elements/elements.js","webpack://formidable/./js/src/onboarding-wizard/elements/index.js","webpack://formidable/./js/src/onboarding-wizard/events/backButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/consentTrackingButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/index.js","webpack://formidable/./js/src/onboarding-wizard/events/installAddonsButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/skipStepButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/initializeOnboardingWizard.js","webpack://formidable/./js/src/onboarding-wizard/shared/constants.js","webpack://formidable/./js/src/onboarding-wizard/shared/index.js","webpack://formidable/./js/src/onboarding-wizard/shared/pageState.js","webpack://formidable/./js/src/onboarding-wizard/ui/index.js","webpack://formidable/./js/src/onboarding-wizard/ui/rootline.js","webpack://formidable/./js/src/onboarding-wizard/ui/setupInitialView.js","webpack://formidable/./js/src/onboarding-wizard/utils/index.js","webpack://formidable/./js/src/onboarding-wizard/utils/navigateToStep.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/onboarding-wizard/index.js"],"sourcesContent":["/**\n * @typedef {() => void} Callback\n *\n * TODO: Remove this typedef and inline `() => void` type.\n *\n * This typedef is used so that a descriptive type is provided in our\n * automatically generated documentation.\n *\n * An in-line type `() => void` would be preferable, but the generated\n * documentation is `null` in that case.\n *\n * @see https://github.com/WordPress/gutenberg/issues/18045\n */\n\n/**\n * Specify a function to execute when the DOM is fully loaded.\n *\n * @param {Callback} callback A function to execute after the DOM is ready.\n *\n * @example\n * ```js\n * import domReady from '@wordpress/dom-ready';\n *\n * domReady( function() {\n * \t//do something after DOM loads.\n * } );\n * ```\n *\n * @return {void}\n */\nexport default function domReady(callback) {\n if (typeof document === 'undefined') {\n return;\n }\n\n if (document.readyState === 'complete' || // DOMContentLoaded + Images/Styles/etc loaded, so we call directly.\n document.readyState === 'interactive' // DOMContentLoaded fires at this point, so we call directly.\n ) {\n return void callback();\n } // DOMContentLoaded has not fired yet, delay callback until then.\n\n\n document.addEventListener('DOMContentLoaded', callback);\n}\n//# sourceMappingURL=index.js.map","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export * from './optionBoxListener';\n","/**\n * Internal dependencies\n */\nimport { CHECKED_CLASS } from 'core/constants';\n\nconst OPTION_BOX_CLASS = '.frm-option-box';\n\n/**\n * Manages event handling for an option-box.\n *\n * @return {void}\n */\nexport function addOptionBoxEvents() {\n\tconst optionBoxes = document.querySelectorAll( OPTION_BOX_CLASS );\n\n\toptionBoxes.forEach( optionBox => {\n\t\toptionBox.addEventListener( 'click', onOptionBoxClick );\n\t} );\n}\n\n/**\n * Handles the click event on a option box item.\n *\n * @private\n * @param {Event} event The click event object.\n */\nfunction onOptionBoxClick( event ) {\n\tif ( event.target.tagName.toLowerCase() !== 'input' ) {\n\t\treturn;\n\t}\n\n\tconst optionBox = event.currentTarget.closest( OPTION_BOX_CLASS );\n\toptionBox.classList.toggle( CHECKED_CLASS );\n}\n","/**\n * Creates a page elements manager.\n *\n * @param {Object} [initialElements={}] An object containing initial DOM elements.\n * @throws {Error} Throws an error if the `initialElements` is not an object.\n * @return {Object} An object with methods to get and add elements.\n */\nexport function createPageElements( initialElements = {} ) {\n\tif ( typeof initialElements !== 'object' || initialElements === null ) {\n\t\tthrow new Error(\n\t\t\t'createPageElements: initialElements must be a non-null object'\n\t\t);\n\t}\n\n\tlet elements = initialElements;\n\n\t/**\n\t * Retrieve the initialized essential DOM elements.\n\t *\n\t * @return {Object} The initialized elements object.\n\t */\n\tfunction getElements() {\n\t\treturn elements;\n\t}\n\n\t/**\n\t * Add new elements to the elements object.\n\t *\n\t * @param {Object} newElements An object containing new elements to be added.\n\t * @throws {Error} Throws an error if the `newElements` is not a non-null object.\n\t * @return {void} Updates the elements object by merging the new elements into it.\n\t */\n\tfunction addElements( newElements ) {\n\t\tif ( typeof newElements !== 'object' || newElements === null ) {\n\t\t\tthrow new Error(\n\t\t\t\t'addElements: newElements must be a non-null object'\n\t\t\t);\n\t\t}\n\n\t\telements = { ...elements, ...newElements };\n\t}\n\n\treturn { getElements, addElements };\n}\n","/**\n * Creates a page state manager.\n *\n * @param {Object} [initialState={}] An object containing the initial state.\n * @throws {Error} Throws an error if the `initialState` is not a plain object.\n * @return {Object} An object with methods to initialize, get, and set the page state.\n */\nexport function createPageState( initialState = {} ) {\n\tif ( typeof initialState !== 'object' || initialState === null ) {\n\t\tthrow new Error(\n\t\t\t'createPageState: initialState must be a non-null object'\n\t\t);\n\t}\n\n\tlet state = initialState;\n\n\t/**\n\t * Returns the current page state.\n\t *\n\t * @return {Object|null} The current state of the page or null if not initialized.\n\t */\n\tconst getState = () => state;\n\n\t/**\n\t * Returns a specific property from the current page state.\n\t *\n\t * @param {string} propertyName The name of the property to retrieve.\n\t * @return {*} The value of the specified property, or null if it doesn't exist.\n\t */\n\tconst getSingleState = propertyName => {\n\t\tconst value = Reflect.get( state, propertyName );\n\n\t\t// We convert `undefined` to `null` for a consistent API.\n\t\t// This makes it easier for users to handle the results since all missing properties return `null`.\n\t\treturn value === undefined ? null : value;\n\t};\n\n\t/**\n\t * Updates the page state with new values.\n\t *\n\t * @param {Object} newState The new values to update the state with.\n\t * @throws {Error} Throws an error if `newState` is not a plain object.\n\t * @return {void}\n\t */\n\tconst setState = newState => {\n\t\tif ( typeof newState !== 'object' || newState === null ) {\n\t\t\tthrow new Error( 'setState: newState must be a non-null object' );\n\t\t}\n\n\t\tstate = { ...state, ...newState };\n\t};\n\n\t/**\n\t * Updates a specific property in the page state with a new value.\n\t *\n\t * @param {string} propertyName The name of the property to update.\n\t * @param {*} value The new value to set for the property.\n\t * @return {void}\n\t */\n\tconst setSingleState = ( propertyName, value ) => {\n\t\tif ( Reflect.has( state, propertyName ) ) {\n\t\t\tReflect.set( state, propertyName, value );\n\t\t}\n\t};\n\n\treturn { getState, getSingleState, setState, setSingleState };\n}\n","export * from './createPageElements';\nexport * from './createPageState';\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","export { default as setupUsageData } from './setupUsageData';\n","/**\n * Internal Dependencies\n */\nimport { getState, STEPS } from '../shared';\n\n/**\n * Processes and submits usage data for the specified onboarding step.\n *\n * @param {string} processedStep The name of the step that has just been processed.\n * @param {string} nextStepName The name of the next step in the onboarding process.\n * @return {void}\n */\nfunction setupUsageData( processedStep, nextStepName ) {\n\tconst formData = processDataForStep( processedStep, nextStepName );\n\tif ( ! formData ) {\n\t\treturn;\n\t}\n\n\t// Send the POST request\n\tconst { doJsonPost } = frmDom.ajax;\n\tdoJsonPost( 'onboarding_setup_usage_data', formData );\n}\n\n/**\n * Processes onboarding step data and returns the corresponding FormData.\n *\n * @private\n * @param {string} processedStep The name of the step that has just been processed.\n * @param {string} nextStepName The name of the next step in the onboarding process.\n * @return {FormData|null} The FormData to be submitted for the step, or null if there's no data.\n */\nfunction processDataForStep( processedStep, nextStepName ) {\n\tlet formData;\n\n\t// Append completed steps if moving to the success step\n\tif ( STEPS.SUCCESS === nextStepName || STEPS.UNSUCCESSFUL === nextStepName ) {\n\t\tconst { processedSteps } = getState();\n\n\t\tif ( processedSteps.length > 1 ) {\n\t\t\tif ( ! processedSteps.includes( nextStepName ) ) {\n\t\t\t\tprocessedSteps.push( nextStepName );\n\t\t\t}\n\n\t\t\tformData = new FormData();\n\t\t\tformData.append( 'processed_steps', processedSteps.join( ',' ) );\n\t\t\tformData.append( 'completed_steps', true );\n\t\t}\n\t}\n\n\t// Append installed addons for the addon installation step\n\tif ( STEPS.INSTALL_ADDONS === processedStep ) {\n\t\tconst { installedAddons } = getState();\n\n\t\tif ( installedAddons.length > 0 ) {\n\t\t\tformData = formData ?? new FormData();\n\t\t\tformData.append( 'installed_addons', installedAddons.join( ',' ) );\n\t\t}\n\t}\n\n\treturn formData;\n}\n\nexport default setupUsageData;\n","/**\n * External dependencies\n */\nimport { createPageElements } from 'core/factory';\n\n/**\n * Internal dependencies\n */\nimport { PREFIX } from '../shared';\n\nexport const { getElements, addElements } = createPageElements( {\n\tonboardingWizardPage: document.getElementById( `${ PREFIX }-wizard-page` ),\n\tcontainer: document.getElementById( `${ PREFIX }-container` ),\n\n\trootline: document.getElementById( `${ PREFIX }-rootline` ),\n\tsteps: document.querySelectorAll( `.${ PREFIX }-step` ),\n\tskipStepButtons: document.querySelectorAll( `.${ PREFIX }-skip-step` ),\n\tbackButtons: document.querySelectorAll( `.${ PREFIX }-back-button` ),\n\n\tconsentTrackingButton: document.getElementById( `${ PREFIX }-consent-tracking` ),\n\tinstallAddonsButton: document.getElementById( `${ PREFIX }-install-addons-button` ),\n\n\thiddenLicenseKeyInput: document.getElementById( 'frm-license-key' ),\n} );\n","export * from './elements';\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToPrevStep } from '../utils';\n\n/**\n * Manages event handling for the \"Back\" button.\n *\n * @return {void}\n */\nfunction addBackButtonEvents() {\n\tconst { backButtons } = getElements();\n\n\t// Attach click event listeners to each back buttons\n\tbackButtons.forEach( backButton => {\n\t\tonClickPreventDefault( backButton, onBackButtonClick );\n\t} );\n}\n\n/**\n * Handles the click event on a \"Back\" button.\n *\n * @private\n * @return {void}\n */\nconst onBackButtonClick = () => {\n\tnavigateToPrevStep();\n};\n\nexport default addBackButtonEvents;\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Allow & Continue\" button in the \"Never miss an important update\" step.\n *\n * @return {void}\n */\nfunction addConsentTrackingButtonEvents() {\n\tconst { consentTrackingButton } = getElements();\n\n\t// Attach click event listener\n\tonClickPreventDefault( consentTrackingButton, onConsentTrackingButtonClick );\n}\n\n/**\n * Handles the click event on the \"Allow & Continue\" button in the \"Never miss an important update\" step.\n *\n * @private\n * @return {void}\n */\nconst onConsentTrackingButtonClick = async () => {\n\tconst { doJsonPost } = frmDom.ajax;\n\tdoJsonPost( 'onboarding_consent_tracking', new FormData() ).then( navigateToNextStep );\n};\n\nexport default addConsentTrackingButtonEvents;\n","/**\n * External dependencies\n */\nimport { addOptionBoxEvents } from 'core/events';\nimport { getQueryParam } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport addSkipStepButtonEvents from './skipStepButtonListener';\nimport addBackButtonEvents from './backButtonListener';\nimport addConsentTrackingButtonEvents from './consentTrackingButtonListener';\nimport addInstallAddonsButtonEvents from './installAddonsButtonListener';\nimport { navigateToStep } from '../utils';\n\n/**\n * Attaches event listeners for handling user interactions.\n *\n * @return {void}\n */\nexport function addEventListeners() {\n\t// Add event handling for the \"Skip\" and \"Back\" buttons\n\taddSkipStepButtonEvents();\n\taddBackButtonEvents();\n\n\taddConsentTrackingButtonEvents();\n\n\t// Add event handling for the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step\n\taddInstallAddonsButtonEvents();\n\t// Add event handling for an option-box\n\taddOptionBoxEvents();\n}\n\n/**\n * Responds to browser navigation events (back/forward) by updating the UI to match the step indicated in the URL or history state.\n *\n * @param {PopStateEvent} event The event object associated with the navigation action.\n * @return {void}\n */\nwindow.addEventListener( 'popstate', event => {\n\tconst stepName = event.state?.step || getQueryParam( 'step' );\n\t// Navigate to the specified step without adding to browser history\n\tnavigateToStep( stepName, 'replaceState' );\n} );\n","/**\n * External dependencies\n */\nimport { nonce } from 'core/constants';\nimport { onClickPreventDefault, addToRequestQueue } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { getState, setSingleState } from '../shared';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step.\n *\n * @return {void}\n */\nfunction addInstallAddonsButtonEvents() {\n\tconst { installAddonsButton } = getElements();\n\n\t// Attach click event listener\n\tonClickPreventDefault( installAddonsButton, onInstallAddonsButtonClick );\n}\n\n/**\n * Handles the click event on the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step.\n *\n * @private\n * @param {Event} event The click event object.\n * @return {void}\n */\nconst onInstallAddonsButtonClick = async event => {\n\tconst addons = document.querySelectorAll( '.frm-option-box.frm-checked:not(.frm-disabled)' );\n\tconst { installedAddons } = getState();\n\tconst installAddonsButton = event.currentTarget;\n\n\tinstallAddonsButton.classList.add( 'frm_loading_button' );\n\n\tfor ( const addon of addons ) {\n\t\ttry {\n\t\t\tawait addToRequestQueue( () => installAddon( addon.getAttribute( 'rel' ), addon.dataset ) );\n\n\t\t\t// Capture addon title\n\t\t\tconst addonTitle = addon.dataset.title;\n\t\t\tif ( ! installedAddons.includes( addonTitle ) ) {\n\t\t\t\tinstalledAddons.push( addonTitle );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'An error occurred:', error );\n\t\t}\n\t}\n\n\tinstallAddonsButton.classList.remove( 'frm_loading_button' );\n\n\tsetSingleState( 'installedAddons', installedAddons );\n\tnavigateToNextStep();\n};\n\n/**\n * Installs an add-on or plugin based on the provided plugin name and vendor status.\n *\n * @private\n * @param {string} plugin The unique identifier or name of the plugin or add-on to be installed.\n * @param {Object} options An object containing additional options for the installation.\n * @param {boolean} options.isInstalled Indicates whether the plugin is already installed.\n * @param {boolean} options.isVendor Indicates whether the plugin is a vendor plugin (true) or a regular add-on (false).\n * @return {Promise} A promise that resolves with the JSON response from the server after the installation request is completed.\n */\nasync function installAddon( plugin, { isVendor, isInstalled } ) {\n\t// Prepare FormData for the POST request\n\tconst formData = new FormData();\n\tformData.append( 'nonce', nonce );\n\tformData.append( 'plugin', plugin );\n\n\tconst addonAction = isInstalled ? 'frm_activate_addon' : 'frm_install_addon';\n\tformData.append( 'action', isVendor ? 'frm_install_plugin' : addonAction );\n\n\ttry {\n\t\t// Perform the POST request\n\t\tconst response = await fetch( ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\tbody: formData\n\t\t} );\n\n\t\tif ( ! response.ok ) {\n\t\t\tthrow new Error( `Server responded with status ${ response.status }` );\n\t\t}\n\n\t\t// Parse the JSON response\n\t\treturn await response.json();\n\t} catch ( error ) {\n\t\tconsole.error( 'An error occurred:', error );\n\t}\n}\n\nexport default addInstallAddonsButtonEvents;\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Skip\" step button.\n *\n * @return {void}\n */\nfunction addSkipStepButtonEvents() {\n\tconst { skipStepButtons } = getElements();\n\n\t// Attach click event listeners to each skip buttons\n\tskipStepButtons.forEach( skipButton => {\n\t\tonClickPreventDefault( skipButton, onSkipStepButtonClick );\n\t} );\n}\n\n/**\n * Handles the click event on a \"Skip\" step button.\n *\n * @private\n * @return {void}\n */\nconst onSkipStepButtonClick = () => {\n\tnavigateToNextStep();\n};\n\nexport default addSkipStepButtonEvents;\n","/**\n * Internal dependencies\n */\nimport { setupInitialView } from './ui';\nimport { addEventListeners } from './events';\n\n/**\n * Initializes Onboarding Wizard.\n *\n * @return {void}\n */\nfunction initializeOnboardingWizard() {\n\tsetupInitialView();\n\taddEventListeners();\n}\n\nexport default initializeOnboardingWizard;\n","export const { INITIAL_STEP } = window.frmOnboardingWizardVars;\n\nexport const PREFIX = 'frm-onboarding';\n\nexport const STEPS = {\n\tINITIAL: INITIAL_STEP,\n\tINSTALL_ADDONS: 'install-addons',\n\tSUCCESS: 'success',\n\tUNSUCCESSFUL: 'unsuccessful'\n};\n","export * from './constants';\nexport * from './pageState';\n","/**\n * External dependencies\n */\nimport { createPageState } from 'core/factory';\n\nexport const { getState, getSingleState, setState, setSingleState } = createPageState( {\n\tprocessedSteps: [],\n\tinstalledAddons: [],\n} );\n","export { default as setupInitialView } from './setupInitialView';\nexport * from './rootline';\n","/**\n * External dependencies\n */\nimport { CURRENT_CLASS } from 'core/constants';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { STEPS } from '../shared';\n\nconst COMPLETED_STEP_CLASS = 'frm-completed-step';\n\n/**\n * Updates the rootline to reflect the current and completed steps.\n *\n * - Applies COMPLETED_STEP_CLASS to steps before the current one.\n * - Applies CURRENT_CLASS to the current step, unless it is the success step.\n *\n * @param {string} currentStep The current step in the process.\n * @return {void}\n */\nexport function updateRootline( currentStep ) {\n\tif ( currentStep === STEPS.UNSUCCESSFUL ) {\n\t\tcurrentStep = STEPS.SUCCESS;\n\t}\n\n\tconst { rootline } = getElements();\n\tconst currentItem = rootline.querySelector( `.frm-rootline-item[data-step=\"${ currentStep }\"]` );\n\n\trootline.querySelectorAll( '.frm-rootline-item' ).forEach( item => {\n\t\titem.classList.remove( COMPLETED_STEP_CLASS );\n\t\titem.classList.remove( CURRENT_CLASS );\n\t} );\n\n\tlet prevItem = currentItem.previousElementSibling;\n\tif ( prevItem ) {\n\t\twhile ( prevItem ) {\n\t\t\tprevItem.classList.add( COMPLETED_STEP_CLASS );\n\t\t\tprevItem = prevItem.previousElementSibling; // move to the previous sibling\n\t\t}\n\t}\n\n\tif ( currentStep === STEPS.SUCCESS ) {\n\t\tcurrentItem.classList.add( COMPLETED_STEP_CLASS );\n\t} else {\n\t\tcurrentItem.classList.add( CURRENT_CLASS );\n\t}\n}\n","/**\n * External dependencies\n */\nimport { frmAnimate, getQueryParam, removeQueryParam, hasQueryParam } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { STEPS } from '../shared';\nimport { navigateToStep } from '../utils';\n\n/**\n * Initializes the onboarding wizard's UI, sets up the initial step based on certain conditions,\n * and applies necessary UI enhancements for a smoother user experience.\n *\n * @return {void}\n */\nexport default function setupInitialView() {\n\tnavigateToInitialStep();\n\tfadeInPageElements();\n}\n\n/**\n * Determines the initial step in the onboarding process and navigates to it, considering the installation\n * status of Formidable Pro and specific query parameters.\n *\n * @private\n * @return {void}\n */\nfunction navigateToInitialStep() {\n\tconst initialStepName = determineInitialStep();\n\n\tclearOnboardingQueryParams();\n\tnavigateToStep( initialStepName, 'replaceState' );\n}\n\n/**\n * Determines the initial step based on the current state, such as whether Formidable Pro is installed\n * and the presence of specific query parameters. Also handles the removal of unnecessary steps.\n *\n * @private\n * @return {string} The name of the initial step to navigate to.\n */\nfunction determineInitialStep() {\n\tconst isConnectedAccount = getQueryParam( 'success' );\n\n\tif ( isConnectedAccount === '0' ) {\n\t\treturn STEPS.UNSUCCESSFUL;\n\t}\n\n\tconst { hiddenLicenseKeyInput } = getElements();\n\n\tif ( hiddenLicenseKeyInput || isConnectedAccount ) {\n\t\treturn STEPS.INSTALL_ADDONS;\n\t}\n\n\treturn getQueryParam( 'step' ) || STEPS.INITIAL;\n}\n\n/**\n * Clears specific query parameters related to the onboarding process.\n *\n * @private\n * @return {void}\n */\nfunction clearOnboardingQueryParams() {\n\tremoveQueryParam( 'key' );\n\tremoveQueryParam( 'success' );\n}\n\n/**\n * Smoothly fades in the background and container elements of the page for a more pleasant user experience.\n *\n * @private\n * @return {void}\n */\nfunction fadeInPageElements() {\n\tconst { container } = getElements();\n\n\tnew frmAnimate( container ).fadeIn();\n}\n","export * from './navigateToStep';\n","/**\n * External dependencies\n */\nimport { CURRENT_CLASS } from 'core/constants';\nimport { frmAnimate, setQueryParam, hide, show } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { setupUsageData } from '../dataUtils';\nimport { getElements } from '../elements';\nimport { getState, PREFIX, setSingleState } from '../shared';\nimport { updateRootline } from '../ui';\n\n/**\n * Navigates to the given step in the onboarding sequence.\n * Optionally updates the browser's history state to include the current step.\n *\n * @param {string} stepName The name of the step to navigate to.\n * @param {string} [updateMethod='pushState'] Specifies the method to update the browser's history and URL. Accepts 'pushState' or 'replaceState'. If omitted, defaults to 'pushState'.\n * @return {void}\n */\nexport const navigateToStep = ( stepName, updateMethod = 'pushState' ) => {\n\t// Find the target step element\n\tconst targetStep = document.querySelector( `.${ PREFIX }-step[data-step-name=\"${ stepName }\"]` );\n\tif ( ! targetStep ) {\n\t\treturn;\n\t}\n\n\t// Find and hide the current step element\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tif ( currentStep ) {\n\t\tcurrentStep.classList.remove( CURRENT_CLASS );\n\t\thide( currentStep );\n\t}\n\n\t// Display the target step element\n\ttargetStep.classList.add( CURRENT_CLASS );\n\tshow( targetStep );\n\tnew frmAnimate( targetStep ).fadeIn();\n\n\t// Update the onboarding wizard's current step attribute\n\tconst { onboardingWizardPage } = getElements();\n\tonboardingWizardPage.setAttribute( 'data-current-step', stepName );\n\n\t// Update the URL query parameter, with control over history update method\n\tsetQueryParam( 'step', stepName, updateMethod );\n\n\tupdateRootline( stepName );\n};\n\n/**\n * Navigates to the next step in the sequence.\n *\n * The function assumes steps are sequentially ordered in the DOM.\n *\n * @return {void}\n */\nexport const navigateToNextStep = () => {\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tconst nextStep = currentStep?.nextElementSibling;\n\n\tif ( ! nextStep ) {\n\t\treturn;\n\t}\n\n\tconst processedStep = currentStep.dataset.stepName;\n\tconst nextStepName = nextStep.dataset.stepName;\n\n\t// Save processed steps\n\tconst { processedSteps } = getState();\n\tif ( ! processedSteps.includes( processedStep ) ) {\n\t\tprocessedSteps.push( processedStep );\n\t\tsetSingleState( 'processedSteps', processedSteps );\n\t}\n\tsetupUsageData( processedStep, nextStepName );\n\n\tnavigateToStep( nextStepName );\n};\n\n/**\n * Navigates to the previous step in the sequence.\n *\n * The function assumes steps are sequentially ordered in the DOM.\n *\n * @return {void}\n */\nexport const navigateToPrevStep = () => {\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tconst prevStep = currentStep?.previousElementSibling;\n\n\tif ( ! prevStep ) {\n\t\treturn;\n\t}\n\n\tnavigateToStep( prevStep.dataset.stepName );\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * WordPress dependencies\n */\nimport domReady from '@wordpress/dom-ready';\n\n/**\n * Internal dependencies\n */\nimport initializeOnboardingWizard from './initializeOnboardingWizard';\n\ndomReady( () => {\n\tinitializeOnboardingWizard();\n} );\n"],"names":["_window$frmGlobal","window","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","OPTION_BOX_CLASS","addOptionBoxEvents","optionBoxes","document","querySelectorAll","forEach","optionBox","addEventListener","onOptionBoxClick","event","target","tagName","toLowerCase","currentTarget","closest","classList","toggle","createPageElements","initialElements","arguments","length","undefined","_typeof","Error","elements","getElements","addElements","newElements","_objectSpread","createPageState","initialState","state","getState","getSingleState","propertyName","value","Reflect","get","setState","newState","setSingleState","has","set","frmAnimate","type","_classCallCheck","prepareElements","_createClass","key","fadeIn","_this","applyStyleToElements","element","add","resetOpacity","remove","once","cascadeFadeIn","_this2","delay","setTimeout","index","style","transitionDelay","_this3","opacity","callback","Element","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","querySelector","errorElement","console","warn","span","concat","textContent","setAttribute","_window$frmDom$util","frmDom","util","onClickPreventDefault","documentOn","URL","location","href","urlParams","searchParams","getQueryParam","paramName","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","includes","_defineProperty","history","hasQueryParam","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","default","setupUsageData","STEPS","processedStep","nextStepName","formData","processDataForStep","doJsonPost","ajax","SUCCESS","UNSUCCESSFUL","_getState","processedSteps","push","FormData","append","join","INSTALL_ADDONS","_getState2","installedAddons","_formData","PREFIX","_createPageElements","onboardingWizardPage","getElementById","container","rootline","steps","skipStepButtons","backButtons","consentTrackingButton","installAddonsButton","hiddenLicenseKeyInput","navigateToPrevStep","addBackButtonEvents","_getElements","backButton","onBackButtonClick","_regeneratorRuntime","e","t","r","prototype","n","hasOwnProperty","o","defineProperty","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","__await","callInvokeWithMethodAndArg","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","name","mark","setPrototypeOf","__proto__","awrap","async","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","apply","_next","_throw","navigateToNextStep","addConsentTrackingButtonEvents","onConsentTrackingButtonClick","_ref","_callee","_callee$","_context","addSkipStepButtonEvents","addInstallAddonsButtonEvents","navigateToStep","addEventListeners","_event$state","stepName","step","_createForOfIteratorHelper","isArray","_unsupportedIterableToArray","_n","F","_arrayLikeToArray","onInstallAddonsButtonClick","addons","_iterator","_step","_loop","_context2","addon","addonTitle","_loop$","installAddon","getAttribute","dataset","title","t0","error","t1","_x","_x2","_x3","_installAddon","_callee2","plugin","_ref2","isVendor","isInstalled","addonAction","response","_callee2$","_context3","fetch","ajaxurl","body","ok","status","json","skipButton","onSkipStepButtonClick","setupInitialView","initializeOnboardingWizard","INITIAL_STEP","frmOnboardingWizardVars","INITIAL","_createPageState","COMPLETED_STEP_CLASS","updateRootline","currentStep","currentItem","item","prevItem","previousElementSibling","navigateToInitialStep","fadeInPageElements","initialStepName","determineInitialStep","clearOnboardingQueryParams","isConnectedAccount","_getElements2","targetStep","nextStep","nextElementSibling","prevStep","domReady"],"sourceRoot":""} \ No newline at end of file From 47fea2e735d0885d8c25d56973d45d6bc1cd2c5c Mon Sep 17 00:00:00 2001 From: Sherv Date: Wed, 3 Sep 2025 21:53:34 +0300 Subject: [PATCH 194/230] Fix validation message visibility when deselecting checkboxes Ensure validation box display state is properly calculated by temporarily setting display:block during visibility check, preventing validation messages from disappearing prematurely. --- js/src/admin/admin.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index f69dcb12d5..dae6845b63 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -3312,8 +3312,10 @@ function frmAdminBuildJS() { if ( hasValue ) { $msg.fadeIn( 'fast' ).closest( '.frm_validation_msg' ).fadeIn( 'fast' ); } else { - //Fade out validation options - const v = $msg.fadeOut( 'fast' ).closest( '.frm_validation_box' ).children( ':not(' + messageClass + '):visible' ).length; + // Fade out validation options + const $validationBox = $msg.fadeOut( 'fast' ).closest( '.frm_validation_box' ); + const v = $validationBox.css( 'display', 'block' ).children( ':not(' + messageClass + '):visible' ).length; + $validationBox.css( 'display', '' ); if ( v === 0 ) { $msg.closest( '.frm_validation_msg' ).fadeOut( 'fast' ); } @@ -3331,7 +3333,9 @@ function frmAdminBuildJS() { $unqDetail.val( frmAdminJs.default_unique ); } } else { - const v = $thisField.fadeOut( 'fast' ).closest( '.frm_validation_box' ).children( ':not(.frm_unique_details' + fieldId + '):visible' ).length; + const $validationBox = $thisField.fadeOut( 'fast' ).closest( '.frm_validation_box' ); + const v = $validationBox.css( 'display', 'block' ).children( ':not(.frm_unique_details' + fieldId + '):visible' ).length; + $validationBox.css( 'display', '' ); if ( v === 0 ) { $thisField.closest( '.frm_validation_msg' ).fadeOut( 'fast' ); } From 2d6161a0cd7fcff2a779344162bd3e4ff7424820 Mon Sep 17 00:00:00 2001 From: Sherv Date: Wed, 3 Sep 2025 21:56:33 +0300 Subject: [PATCH 195/230] Remove formula field modal left positioning override Remove desktop-specific left positioning for formula inline modal to improve responsive behavior. --- resources/scss/admin/media-queries/_screen-desktop.scss | 4 ---- 1 file changed, 4 deletions(-) diff --git a/resources/scss/admin/media-queries/_screen-desktop.scss b/resources/scss/admin/media-queries/_screen-desktop.scss index e079766e69..118d431cdd 100644 --- a/resources/scss/admin/media-queries/_screen-desktop.scss +++ b/resources/scss/admin/media-queries/_screen-desktop.scss @@ -29,8 +29,4 @@ /* There isn't enough room for the title on a screen this size so just hide it. */ display: none !important; } - - .frm-field-formula div.frm-inline-modal { - left: var(--gap-xs); - } } From 66f8d70a0ffd8f2c674ecd74ffb0e38373dd68c1 Mon Sep 17 00:00:00 2001 From: Sherv Date: Thu, 4 Sep 2025 14:43:20 +0300 Subject: [PATCH 196/230] Improve token text wrapping and display Allow tokens to expand vertically with proper text wrapping and prevent remove button from shrinking when token text is long. --- .../scss/admin/components/form/_token-input.scss | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/resources/scss/admin/components/form/_token-input.scss b/resources/scss/admin/components/form/_token-input.scss index a79aa1362e..d0f97f6918 100644 --- a/resources/scss/admin/components/form/_token-input.scss +++ b/resources/scss/admin/components/form/_token-input.scss @@ -27,19 +27,25 @@ display: flex; align-items: center; gap: var(--gap-xs); - height: 24px; + min-height: 24px; + height: auto; color: var(--grey-900); background: var(--grey-100); border-radius: 4px; padding: 0 var(--gap-xs); font-size: var(--text-md); - line-height: 1; - white-space: nowrap; margin: 0; z-index: 2; + .frm-token-value { + line-height: var(--leading); + white-space: normal; + word-break: break-word; + } + .frm-token-remove { display: flex; + flex-shrink: 0; cursor: pointer; .frmsvg { From 01ffff9da2da5f690406f888eaf55ea792c7c034 Mon Sep 17 00:00:00 2001 From: Sherv Date: Thu, 4 Sep 2025 19:40:23 +0300 Subject: [PATCH 197/230] Improve field settings UI and fix layout issues - Change field ID display format from "#ID" to "(ID ID)" for better readability - Fix multiselect dropdown overlap with collapsed sections using z-index - Add proper margin spacing for panel option layouts --- classes/views/frm-fields/back-end/settings.php | 2 +- resources/scss/admin/components/_page-collapsed.scss | 6 ++++++ resources/scss/admin/components/panel/_options-panel.scss | 4 ++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/classes/views/frm-fields/back-end/settings.php b/classes/views/frm-fields/back-end/settings.php index 2e38d23c94..a67ead4f30 100644 --- a/classes/views/frm-fields/back-end/settings.php +++ b/classes/views/frm-fields/back-end/settings.php @@ -15,7 +15,7 @@ esc_html( $type_name ) ); ?> - # + (ID )
          diff --git a/resources/scss/admin/components/_page-collapsed.scss b/resources/scss/admin/components/_page-collapsed.scss index 166c9eb5ef..e866769322 100644 --- a/resources/scss/admin/components/_page-collapsed.scss +++ b/resources/scss/admin/components/_page-collapsed.scss @@ -76,6 +76,12 @@ padding-bottom: 10px; } +// Fix multiselect dropdown overlap issue with collapsed sections +.frm-collapse-me.frm_grid_container:has(.dropdown-toggle.multiselect) { + position: relative; + z-index: 1; +} + .frm-collapsed + div { height: 0; padding: 0; diff --git a/resources/scss/admin/components/panel/_options-panel.scss b/resources/scss/admin/components/panel/_options-panel.scss index a172d09f20..b9eefc0f13 100644 --- a/resources/scss/admin/components/panel/_options-panel.scss +++ b/resources/scss/admin/components/panel/_options-panel.scss @@ -46,6 +46,10 @@ > p:first-child { margin-top: var(--gap-sm); + + &.frm6 + .frm6 { + margin-top: var(--gap-sm); + } } } } From 1681426676b7d2426dda2e336981854c65c16a21 Mon Sep 17 00:00:00 2001 From: Sherv Date: Thu, 4 Sep 2025 20:27:21 +0300 Subject: [PATCH 198/230] Improve draggable field sensitivity settings Increase drag delay from 2ms to 10ms and remove distance threshold to make field dragging more responsive and less prone to accidental activation. --- js/src/admin/admin.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index dae6845b63..072ddb1527 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -838,13 +838,12 @@ function frmAdminBuildJS() { const settings = { helper: getDraggableHelper, revert: 'invalid', - delay: 2, + delay: 10, start: handleDragStart, stop: handleDragStop, drag: handleDrag, cursor: 'grabbing', refreshPositions: true, - distance: 3, // Only start drag after 3px of movement for more precision cursorAt: { top: 1, left: 70 // The width of draggable button is 140. 70 should center the draggable on the cursor. From d5557af9b9b487d38ee034f9f5515bf6f4a0fbbd Mon Sep 17 00:00:00 2001 From: Sherv Date: Fri, 5 Sep 2025 14:55:06 +0300 Subject: [PATCH 199/230] Improve styling for show image checkbox option Update Website/URL field show image checkbox with proper flexbox layout, spacing, and alignment classes for better visual consistency. --- classes/views/frm-fields/back-end/settings.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/classes/views/frm-fields/back-end/settings.php b/classes/views/frm-fields/back-end/settings.php index a67ead4f30..883f313210 100644 --- a/classes/views/frm-fields/back-end/settings.php +++ b/classes/views/frm-fields/back-end/settings.php @@ -329,10 +329,10 @@ ?> -

          -

          +

          From a1fe08a1b8d12bdc8197452821333068f47b9bc9 Mon Sep 17 00:00:00 2001 From: Sherv Date: Fri, 5 Sep 2025 15:20:32 +0300 Subject: [PATCH 200/230] Add utility classes for inline display and 6px margin Add frm-inline! utility class with !important flag and frm-mb-6 utility class for 6px bottom margin spacing. --- resources/scss/admin/utilities/layout/_display.scss | 4 ++++ resources/scss/admin/utilities/spacing/_margin.scss | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/resources/scss/admin/utilities/layout/_display.scss b/resources/scss/admin/utilities/layout/_display.scss index 98e16b4b4a..33d6b05b30 100644 --- a/resources/scss/admin/utilities/layout/_display.scss +++ b/resources/scss/admin/utilities/layout/_display.scss @@ -15,6 +15,10 @@ display: inline; } +.frm-inline\! { + display: inline !important; +} + .frm_inline_block { display: inline-block !important; } diff --git a/resources/scss/admin/utilities/spacing/_margin.scss b/resources/scss/admin/utilities/spacing/_margin.scss index f0a6706c62..406f8bfd5c 100644 --- a/resources/scss/admin/utilities/spacing/_margin.scss +++ b/resources/scss/admin/utilities/spacing/_margin.scss @@ -61,6 +61,10 @@ margin-bottom: var(--gap-2xs) !important; } +.frm-mb-6 { + margin-bottom: 6px !important; +} + .frm-mb-sm { margin-bottom: var(--gap-sm) !important; } From 63677aef41e2dd5bd024f65ad6ff41b7b60c7e33 Mon Sep 17 00:00:00 2001 From: Sherv Date: Fri, 5 Sep 2025 17:55:58 +0300 Subject: [PATCH 201/230] Refactor tag removal to use WordPress hooks system Replace direct function call with wp.hooks.doAction for 'frm_after_remove_this_tag' to allow external plugins to hook into the tag removal process. Removes mayToggleWatchLookupLabel function from core. --- js/src/admin/admin.js | 33 +++++++-------------------------- 1 file changed, 7 insertions(+), 26 deletions(-) diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index 072ddb1527..55be3c559a 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -595,36 +595,17 @@ function frmAdminBuildJS() { jQuery( this ).closest( '.frm_logic_rows' ).fadeOut( 'slow' ); } - mayToggleWatchLookupLabel( id, fadeEle ); + /** + * Fires when a tag element is removed. + * + * @param {string} id The ID of the removed element + * @param {HTMLElement} fadeEle The removed element + */ + wp.hooks.doAction( 'frm_after_remove_this_tag', id, fadeEle ); return false; } - /** - * Maybe toggle Watch Lookup Fields label visibility - * - * @param {string} id The ID of the removed element - * @param {HTMLElement} fadeEle The removed element - * @return {void} - */ - function mayToggleWatchLookupLabel( id, fadeEle ) { - if ( ! id || ! id.startsWith( 'frm_watch_lookup_' ) ) { - return; - } - - // If there are other rows, don't hide the label - if ( fadeEle.parentElement.children.length > 1 ) { - return; - } - - const fieldId = fadeEle.closest( '.frm-single-settings' )?.dataset.fid; - if ( fieldId ) { - setTimeout( () => { - document.getElementById( `frm_watch_lookup_label_${ fieldId }` )?.classList.add( 'frm_hidden!' ); - }, 190 ); - } - } - function afterActionRemoved( type ) { checkActiveAction( type ); From 7703a35c50980e8d4dbda20d0ba747f79cba808f Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 13:08:38 +0300 Subject: [PATCH 202/230] Simplify DOM selection in getExcludeArray Remove redundant getElementsByClassName fallback since querySelector handles the same case. --- js/src/admin/admin.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index 062f2b6167..c5686572ca 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -3038,7 +3038,7 @@ function frmAdminBuildJS() { } function getExcludeArray( calcBox, isSummary ) { - const codeList = calcBox.querySelector( '.frm_code_list' ) ?? calcBox.getElementsByClassName( 'frm_code_list' )[ 0 ]; + const codeList = calcBox.querySelector( '.frm_code_list' ); const exclude = JSON.parse( codeList.getAttribute( 'data-exclude' ) ); if ( isSummary ) { From dd9cbf4f58da3703e9ce2456cfb5e56c33fdd477 Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 13:58:42 +0300 Subject: [PATCH 203/230] Refactor addSlideAnimationCssVars to use early returns Replace nested if statements with early returns for better code readability and reduce nesting depth in slide animation height calculation. --- js/src/admin/admin.js | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index c5686572ca..f95a77415f 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -5558,14 +5558,18 @@ function frmAdminBuildJS() { * @return {void} */ function addSlideAnimationCssVars( element ) { - if ( element ) { - let height = element.scrollHeight; - if ( height > 0 ) { - height += 250; - element.style.setProperty( '--slide-height', `${ height }px` ); - element.style.setProperty( '--slide-time', `${ Math.ceil( height * 0.8 ) }ms` ); - } + if ( ! element ) { + return; + } + + let height = element.scrollHeight; + if ( height <= 0 ) { + return; } + + height += 250; + element.style.setProperty( '--slide-height', `${ height }px` ); + element.style.setProperty( '--slide-time', `${ Math.ceil( height * 0.8 ) }ms` ); } function clickLabel() { From 876ffcfa57c76f989eda05db52338ca8e0f368cc Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 16:34:38 +0300 Subject: [PATCH 204/230] Fix JSDoc consistency and improve linting configuration - Standardize JSDoc return tags to use @return instead of @returns - Replace non-standard JSDoc types (integer, int, float) with number - Fix JSDoc syntax errors and typos (HTMLlement -> HTMLElement, Void -> void) - Add jsdoc ESLint plugin with check-tag-names rule enforcement - Move custom toggle group behaviors to Pro plugin for better separation - Add ajv dependency and update ESLint configuration - Remove unused exports and clean up component structure --- .eslintignore | 1 + .eslintrc.json | 4 ++-- js/admin/embed.js | 2 +- js/admin/style.js | 2 +- js/src/admin/admin.js | 12 ++++++------ js/src/components/class-counter.js | 2 +- js/src/core/utils/animation.js | 2 +- js/src/form-templates/index.js | 2 +- package.json | 1 + 9 files changed, 15 insertions(+), 13 deletions(-) diff --git a/.eslintignore b/.eslintignore index dd81a4dadf..5530b00a96 100644 --- a/.eslintignore +++ b/.eslintignore @@ -14,6 +14,7 @@ js/formidable-settings-components.js # Config files *.config.js +webpack*.js **/node_modules/** **/vendor/** diff --git a/.eslintrc.json b/.eslintrc.json index 861d81ed76..42f6dd024b 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -34,7 +34,7 @@ "window": true, "document": true }, - "plugins": ["react", "jsx-a11y", "sonarjs", "cypress", "no-jquery", "compat"], + "plugins": ["react", "jsx-a11y", "sonarjs", "cypress", "no-jquery", "compat", "jsdoc"], "settings": { "import/resolver": { "webpack": { @@ -94,7 +94,7 @@ "@wordpress/no-global-active-element": "off", "no-alert": "off", "no-undef": "off", - "jsdoc/no-undefined-types": "off", + "jsdoc/check-tag-names": "error", "no-shadow": "off", "sonarjs/no-duplicate-string": "off", "sonarjs/prefer-single-boolean-return": "off", diff --git a/js/admin/embed.js b/js/admin/embed.js index 3f1472c1a8..7ceeaf5980 100644 --- a/js/admin/embed.js +++ b/js/admin/embed.js @@ -503,7 +503,7 @@ * Can be used for any UI that requires a unique id. * Not to be used in data. * - * @return {integer} The unique id. + * @return {number} The unique id. */ function getAutoId() { return ++autoId; diff --git a/js/admin/style.js b/js/admin/style.js index ccf2fa1ae5..5123417ff7 100644 --- a/js/admin/style.js +++ b/js/admin/style.js @@ -579,7 +579,7 @@ } /** - * @param {HTMLlement} card + * @param {HTMLElement} card * @return {void} */ function maybeAddMenuToCard( card ) { diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index f95a77415f..ac8d89ce20 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -400,7 +400,7 @@ function frmAdminBuildJS() { * Toggle a class on target elements when an anchor is clicked, or when a radio or checkbox has been selected. * * @param {Event} e Event with either the change or click type. - * @returns {false} + * @return {false} */ function hideShowItem( e ) { /*jshint validthis:true */ @@ -1796,7 +1796,7 @@ function frmAdminBuildJS() { * Can be used for any UI that requires a unique id. * Not to be used in data. * - * @return {integer} + * @return {number} */ function getAutoId() { return ++autoId; @@ -4181,9 +4181,9 @@ function frmAdminBuildJS() { } /** - * @param {int} size 2-6. + * @param {number} size 2-6. * @param {string} type even, middle, left, or right. - * @param {int} index 0-5. + * @param {number} index 0-5. * @return {string} The class name. */ function getClassForBlock( size, type, index ) { @@ -8705,7 +8705,7 @@ function frmAdminBuildJS() { * @param {HTMLElement} input * @param {string} type * - * @returns {Void} + * @return {void} */ function toggleContextualShortcodes( input, type ) { let selector, contextualShortcodes; @@ -8809,7 +8809,7 @@ function frmAdminBuildJS() { * Get the input box for the selected icon or calculation field. * * @param {Element} moreIcon The icon element - * @returns {Element} The associated input or textarea + * @return {Element} The associated input or textarea */ function getInputForIcon( moreIcon ) { // For regular fields diff --git a/js/src/components/class-counter.js b/js/src/components/class-counter.js index 98339dc40b..a8e10c5b27 100644 --- a/js/src/components/class-counter.js +++ b/js/src/components/class-counter.js @@ -4,7 +4,7 @@ export class frmCounter { * * @param {Element} element * @param {Object} options - * @param {integer} options.timetoFinish - Max time in mileseconds for counter to complete the animation. + * @param {number} options.timetoFinish Max time in mileseconds for counter to complete the animation. */ constructor( element, options ) { if ( ! ( element instanceof Element ) || ! element.dataset.counter ) { diff --git a/js/src/core/utils/animation.js b/js/src/core/utils/animation.js index 4a726f099b..abf881580f 100644 --- a/js/src/core/utils/animation.js +++ b/js/src/core/utils/animation.js @@ -34,7 +34,7 @@ export class frmAnimate { * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn(); * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn(); * - * @param {float} delay The transition delay value. + * @param {number} delay The transition delay value. */ cascadeFadeIn( delay = 0.03 ) { setTimeout( () => { diff --git a/js/src/form-templates/index.js b/js/src/form-templates/index.js index b08c8d0f2c..467a2c10b1 100644 --- a/js/src/form-templates/index.js +++ b/js/src/form-templates/index.js @@ -37,7 +37,7 @@ domReady( () => { * Trigger a specific action to interact with the hidden form '#frm-new-template', * which is used for creating or using a form template. * - * @param {jQuery} $form The jQuery object containing the hidden form element. + * @param {HTMLElement} $form The jQuery object containing the hidden form element. */ wp.hooks.doAction( 'frm_new_form_modal_form', jQuery( '#frm-new-template' ) ); } ); diff --git a/package.json b/package.json index 3a47ac7aba..79c2280c29 100644 --- a/package.json +++ b/package.json @@ -62,6 +62,7 @@ "@wordpress/env": "^9.8.0", "@wordpress/eslint-plugin": "^15.1.0", "@wordpress/stylelint-config": "^23.14.0", + "ajv": "^8.17.1", "axe-core": "^4.9.1", "babel-loader": "^9.1.3", "babel-plugin-styled-components": "^2.1.4", From f0d6ee285572152d39a6cff9a7fb892642223e47 Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 16:46:07 +0300 Subject: [PATCH 205/230] Move custom toggle group behaviors to Pro plugin Remove setupCustomToggleGroupHandlers and related Pro-specific functionality from core settings components to maintain proper separation between Lite and Pro features. --- .../custom-toggle-group-behaviors.js | 127 ------------------ .../components/toggle-group/index.js | 1 - js/src/settings-components/index.js | 2 - 3 files changed, 130 deletions(-) delete mode 100644 js/src/settings-components/components/toggle-group/custom-toggle-group-behaviors.js diff --git a/js/src/settings-components/components/toggle-group/custom-toggle-group-behaviors.js b/js/src/settings-components/components/toggle-group/custom-toggle-group-behaviors.js deleted file mode 100644 index df4783f109..0000000000 --- a/js/src/settings-components/components/toggle-group/custom-toggle-group-behaviors.js +++ /dev/null @@ -1,127 +0,0 @@ -/** - * Internal dependencies - */ -import { documentOn } from 'core/utils'; - -/** - * Setup custom toggle group handlers - * - * @return {void} - */ -export function setupCustomToggleGroupHandlers() { - documentOn( 'change', '[id^="frm-default-type-calc-"]:not(:checked)', onCalculateValueSettingOff ); - documentOn( 'change', '[id^="frm-default-type-date_calc-"]:not(:checked)', onDateCalculateValueSettingOff ); - documentOn( 'change', '[id^="frm-default-type-get_values_field-"]:not(:checked)', onLookupSettingOff ); - documentOn( 'change', '[id^="frm-enable-conditional-logic"]', onEnableConditionalLogicChange ); -} - -/** - * Reset the "Calculate Value" toggle related fields when it's off - * - * @private - * @param {Event} event The event object. - * @return {void} - */ -function onCalculateValueSettingOff( event ) { - const fieldId = event.target.closest( '[data-fid]' )?.dataset.fid; - if ( ! fieldId ) { - return; - } - - const calcField = document.getElementById( `frm_calc_${ fieldId }` ); - if ( calcField ) { - calcField.value = ''; - } - - const calcTextType = document.getElementById( `frm-text-toggle-name=field_options[calc_type_${ fieldId }]-0` ); - const calcMathType = document.getElementById( `frm-text-toggle-name=field_options[calc_type_${ fieldId }]-1` ); - if ( calcTextType ) { - calcTextType.checked = false; - } - if ( calcMathType ) { - calcMathType.checked = true; - } -} - -/** - * Reset the "Date Calculation" toggle related fields when it's off - * - * @private - * @param {Event} event The event object. - * @return {void} - */ -function onDateCalculateValueSettingOff( event ) { - const fieldId = event.target.closest( '[data-fid]' )?.dataset.fid; - if ( ! fieldId ) { - return; - } - - const dateCalcField = document.getElementById( `frm_date_calc_${ fieldId }` ); - if ( dateCalcField ) { - dateCalcField.value = ''; - } - - const dateCalcDiffField = document.getElementById( `frm_date_calc_diff_${ fieldId }` ); - if ( dateCalcDiffField ) { - dateCalcDiffField.value = ''; - } -} - -/** - * Reset the "Lookup" toggle related fields when it's off - * - * @private - * @param {Event} event The event object. - * @return {void} - */ -function onLookupSettingOff( event ) { - const fieldId = event.target.closest( '[data-fid]' )?.dataset.fid; - if ( ! fieldId ) { - return; - } - - const valuesForm = document.getElementById( `get_values_form_${ fieldId }` ); - if ( valuesForm ) { - valuesForm.value = ''; - } - - const valuesField = document.getElementById( `get_values_field_${ fieldId }` ); - if ( valuesField ) { - valuesField.value = ''; - } - - const lookupLabel = document.getElementById( `frm_watch_lookup_label_${ fieldId }` ); - if ( lookupLabel ) { - lookupLabel.classList.add( 'frm_hidden!' ); - } - - const lookupBlock = document.getElementById( `frm_watch_lookup_block_${ fieldId }` ); - if ( lookupBlock ) { - lookupBlock.innerHTML = ''; - } - - const mostRecentValue = document.getElementById( `get_most_recent_value_${ fieldId }` ); - if ( mostRecentValue ) { - mostRecentValue.checked = false; - } -} - -/** - * Handle the change event for the "Enable Conditional Logic" toggle - * - * @private - * @param {Event} event The event object. - * @return {void} - */ -function onEnableConditionalLogicChange( event ) { - const toggleButton = event.target; - const fieldId = toggleButton.closest( '[data-fid]' )?.dataset.fid; - if ( ! fieldId ) { - return; - } - - const enableConditionalLogicField = document.querySelector( `[name="field_options[enable_conditional_logic_${ fieldId }]"]` ); - if ( enableConditionalLogicField ) { - enableConditionalLogicField.value = toggleButton.checked ? '1' : '0'; - } -} diff --git a/js/src/settings-components/components/toggle-group/index.js b/js/src/settings-components/components/toggle-group/index.js index 2631f30ba6..aae01638f4 100644 --- a/js/src/settings-components/components/toggle-group/index.js +++ b/js/src/settings-components/components/toggle-group/index.js @@ -1,2 +1 @@ export * from './toggle-group.js'; -export * from './custom-toggle-group-behaviors.js'; diff --git a/js/src/settings-components/index.js b/js/src/settings-components/index.js index 6124dad7ab..b31c543413 100644 --- a/js/src/settings-components/index.js +++ b/js/src/settings-components/index.js @@ -13,7 +13,6 @@ import { frmTabsComponent, initTokenInputFields, initToggleGroupComponents, - setupCustomToggleGroupHandlers, setupUnitInputHandlers } from './components'; @@ -24,6 +23,5 @@ domReady( () => { initAddFieldsButtonHandler(); initTokenInputFields(); initToggleGroupComponents(); - setupCustomToggleGroupHandlers(); setupUnitInputHandlers(); } ); From df3184844d6575049b243c382f4c517adf840a22 Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 16:54:15 +0300 Subject: [PATCH 206/230] Fix ESLint action error --- package-lock.json | 213 +++++++++++++++++++++++----------------------- 1 file changed, 107 insertions(+), 106 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3eaaebbbe8..0019844530 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,6 +37,7 @@ "@wordpress/env": "^9.8.0", "@wordpress/eslint-plugin": "^15.1.0", "@wordpress/stylelint-config": "^23.14.0", + "ajv": "^8.17.1", "axe-core": "^4.9.1", "babel-loader": "^9.1.3", "babel-plugin-styled-components": "^2.1.4", @@ -2340,6 +2341,23 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, "node_modules/@eslint/eslintrc/node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -2376,6 +2394,13 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, "node_modules/@eslint/eslintrc/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -5343,16 +5368,16 @@ "license": "MIT" }, "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "dev": true, "license": "MIT", "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" }, "funding": { "type": "github", @@ -5377,30 +5402,6 @@ } } }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, "node_modules/ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", @@ -9386,6 +9387,23 @@ "node": ">=10" } }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, "node_modules/eslint/node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -9465,6 +9483,13 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/eslint/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -10867,30 +10892,6 @@ } } }, - "node_modules/html-validate/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/html-validate/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, "node_modules/html-validate/node_modules/semver": { "version": "7.6.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", @@ -12049,9 +12050,9 @@ "license": "(AFL-2.1 OR BSD-3-Clause)" }, "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true, "license": "MIT" }, @@ -17560,23 +17561,6 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/schema-utils/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, "node_modules/schema-utils/node_modules/ajv-keywords": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", @@ -17590,13 +17574,6 @@ "ajv": "^8.8.2" } }, - "node_modules/schema-utils/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, "node_modules/select": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", @@ -19104,30 +19081,6 @@ "node": ">=10.0.0" } }, - "node_modules/table/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/table/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, "node_modules/table/node_modules/slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -19236,6 +19189,30 @@ } } }, + "node_modules/terser-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, "node_modules/terser-webpack-plugin/node_modules/schema-utils": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", @@ -20197,6 +20174,23 @@ "node": ">=10.13.0" } }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, "node_modules/webpack/node_modules/enhanced-resolve": { "version": "5.17.1", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", @@ -20211,6 +20205,13 @@ "node": ">=10.13.0" } }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, "node_modules/webpack/node_modules/schema-utils": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", From b11c208a114aac46f75ef01e09bd5a3009558794 Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 17:10:11 +0300 Subject: [PATCH 207/230] Fix Firefox display issue with input icon containers Add display: block to frm-with-left-icon and frm-with-right-icon elements to ensure proper rendering in Firefox browsers. --- css/frm_admin.css | 2 +- js/formidable-settings-components.js | 2 +- js/formidable_admin.js | 2 +- resources/scss/admin/components/form/_input-icons.scss | 1 + 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/css/frm_admin.css b/css/frm_admin.css index 26286496a2..e4afff8a86 100644 --- a/css/frm_admin.css +++ b/css/frm_admin.css @@ -1,3 +1,3 @@ -@font-face{font-family:"s11-fp";src:url("../fonts/s11-fp.woff?v=7") format("woff");font-weight:400;font-style:normal}.frm-submenu-highlight{background:#1da867}.frm-submenu-highlight a span{color:#fff;font-weight:600}.frmfont,.frm_icon_font{text-decoration:none;text-shadow:none;font-weight:400;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:auto;line-height:1.5;transition:color .1s ease-in-out,opacity .1s ease-in-out;font-size:18px}i.frmfont,i.frm_icon_font{font-style:normal;font-variant:normal;speak:none}.frmfont::before,select.frmfont,.frm_icon_font::before,select.frm_icon_font{font-family:"s11-fp" !important;text-align:center}.frmfont,a.frmfont,.frmfont:hover,a.frmfont:hover .frm_icon_font,a.frm_icon_font,.frm_icon_font:hover,a.frm_icon_font:hover{text-decoration:none !important;box-shadow:none}.frmfont:focus,.frm_icon_font:focus{box-shadow:none}.frmfont:active,.frm_icon_font:active{outline:none}.frm_trigger .frm_icon_font{padding:0 5px}.frm_logo_icon::before{content:"\e601"}.frm_required_icon::before{content:"\e612"}.frm_delete_icon::before{content:"\e610" !important}.frm_move_icon::before{content:"\e61a"}.frm_drag_icon::before{content:"\e93b"}.frm_clear_icon::before{content:"\e60a"}.frm_noclear_icon::before{content:"\e60b"}.frm_duplicate_icon::before{content:"\e61b"}.frm_copy_icon::before{content:"\f0c5"}.frm_clone_icon::before{content:"\f24d"}.frm_tooltip_icon::before{content:"\e611"}.frm_tooltip_solid_icon::before{content:"\e907"}.frm_forbid_icon::before{content:"\e636"}.frm_checkmark_icon::before{content:"\e90a"}.frm_check_icon::before{content:"\e605"}.frm_check1_icon::before{content:"\e606"}.frm_plus_icon::before{content:"\e62f"}.frm_plus1_icon::before{content:"\e602"}.frm_plus2_icon::before{content:"\e603"}.frm_plus3_icon::before{content:"\e632"}.frm_plus4_icon::before{content:"\e60f"}.frm_minus_icon::before{content:"\e62e"}.frm_minus1_icon::before{content:"\e600"}.frm_minus2_icon::before{content:"\e604"}.frm_minus3_icon::before{content:"\e633"}.frm_minus4_icon::before{content:"\e613"}.frm_cancel_icon::before{content:"\e607"}.frm_cancel1_icon::before{content:"\e608"}.frm_close_icon::before{content:"\e928"}.frm_report_problem_solid_icon::before{content:"\e914"}.frm_report_problem_icon::before{content:"\e915"}.frm_arrowup_icon::before{content:"\e60d"}.frm_arrowup1_icon::before{content:"\e60e"}.frm_arrowup2_icon::before{content:"\e630"}.frm_arrowup3_icon::before{content:"\e62b"}.frm_arrowup4_icon::before{content:"\e62c"}.frm_arrowup5_icon::before{content:"\e635"}.frm_arrowup5_solid_icon::before{content:"\e9d"}.frm_arrowup7_icon::before{content:"\e908"}.frm_arrowup6_icon::before{content:"\e62d"}.frm_arrowdown_icon::before{content:"\e609"}.frm_arrowdown1_icon::before{content:"\e60c"}.frm_arrowdown2_icon::before{content:"\e631"}.frm_arrowdown3_icon::before{content:"\e628"}.frm_arrowdown4_icon::before{content:"\e629"}.frm_arrowdown5_icon::before{content:"\e634"}.frm_arrowdown5_solid_icon::before{content:"\e905"}.frm_arrowdown7_icon::before{content:"\e90b"}.frm_arrowdown6_icon::before{content:"\e62a"}.frm_arrow_left_icon::before{content:"\e912"}.frm_arrow_right_icon::before{content:"\e913"}.frm_filter_icon::before{content:"\e90c"}.frm_download_icon::before{content:"\e615"}.frm_upload2_icon::before{content:"\f093"}.frm_upload_icon::before{content:"\e616"}.frm_download2_icon::before{content:"\f019"}.frm_hard_drive_icon::before{content:"\e916"}.frm_pencil_solid_icon::before{content:"\e901"}.frm_pencil_icon::before{content:"\e61d"}.frm_signature_icon::before{content:"\e919"}.frm_user_icon::before{content:"\e7ff"}.frm_register_icon::before{content:"\e637"}.frm_account_circle_solid_icon::before{content:"\e853"}.frm_account_circle_icon::before{content:"\e921"}.frm_address_card_icon::before{content:"\e996"}.frm_paragraph_icon::before{content:"\f1dd"}.frm_checkbox_unchecked_icon::before{content:"\e91e"}.frm_checkbox_icon::before{content:"\e922"}.frm_checkbox_solid_icon::before{content:"\e91f"}.frm_dropdown_icon::before{content:"\e909"}.frm_caret_square_down_icon::before{content:"\f150"}.frm_check_square_icon::before{content:"\f14a"}.frm_radio_unchecked_icon::before{content:"\e971"}.frm_radio_checked_icon::before{content:"\ea54"}.frm_scrubber_icon::before{content:"\f2f8"}.frm_location_solid_icon::before{content:"\e955"}.frm_location_icon::before{content:"\e947"}.frm_toggle_on_icon::before{content:"\f205"}.frm_toggle_off_icon::before{content:"\f204"}.frm_shield_check_icon::before{content:"\f2f7"}.frm_shield_check_solid_icon::before{content:"\e97d"}.frm_clock_icon::before{content:"\e929"}.frm_clock_solid_icon::before{content:"\e985"}.frm_link_icon::before{content:"\f0c1"}.frm_email_icon::before{content:"\e626"}.frm_email_solid_icon::before{content:"\f0e0"}.frm_mail_bulk_icon::before{content:"\e95c"}.frm_phone_icon::before{content:"\e942"}.frm_calendar_icon::before{content:"\f073"}.frm_code_icon::before{content:"\e90d"}.frm_tag_icon::before{content:"\e98b"}.frm_tag_solid_icon::before{content:"\e989"}.frm_price_tags_icon::before{content:"\e936"}.frm_search_icon::before{content:"\e978"}.frm_sitemap_icon::before{content:"\f0e8"}.frm_file_icon::before{content:"\f15b"}.frm_file_text_solid_icon::before{content:"\f15c"}.frm_file_text_icon::before{content:"\e923"}.frm-option-icon::before,.frm_option_icon::before{content:"\e904"}.frm_option_solid_icon::before{content:"\e906"}.frm_more_horiz_icon::before{content:"\e5d3"}.frm_more_vert_icon::before{content:"\e5d4"}.frm_more_horiz_solid_icon{font-size:28px !important;font-weight:700;line-height:18px}.frm_more_horiz_solid_icon::before{content:"···"}.frm_more_vert_solid_icon::before{content:"\f142"}.frm_calculator_icon::before{content:"\f1ec"}.frm_keyboard_icon::before{content:"\e924"}.frm_eye_icon::before{content:"\f06e"}.frm_eye_solid_icon::before{content:"\e945"}.frm_eye_slash_icon::before{content:"\f070"}.frm_eye_slash_solid_icon::before{content:"\e949"}.frm_page_break_icon::before{content:"\e8e9"}.frm_view_day_icon::before{content:"\e8ed"}.frm_attach_file_icon::before{content:"\e226"}.frm_printer_icon::before{content:"\e926"}.frm_header_icon::before{content:"\f1dc"}.frm_h1_icon::before{content:"\e94c"}.frm_repeat_icon::before{content:"\f363"}.frm_repeater_icon::before{content:"\e974"}.frm_hashtag_icon::before{content:"\e292"}.frm_save_icon::before{content:"\e927"}.frm_sliders_icon::before{content:"\f1de"}.frm_code_commit_icon::before{content:"\f386"}.frm_star_icon::before{content:"\e9d7"}.frm_star_full_icon::before{content:"\e9d9"}.frm_star_half_icon::before{content:"\e9d8"}.frm_linear_scale_icon::before{content:"\e260"}.frm_pie_chart_icon::before{content:"\e99a"}.frm_stats_bars_icon::before{content:"\e99c"}.frm_sms_icon::before{content:"\e61c"}.frm_highrise_icon::before{content:"\e617"}.frm_mailchimp_icon::before{content:"\e622"}.frm_feed_icon::before{content:"\e624"}.frm_align_right_icon::before{content:"\e90f"}.frm_align_left_icon::before{content:"\e910"}.frm_button_icon::before{content:"\e911"}.frm_browser_icon::before{content:"\e925"}.frm_cloud_upload_solid_icon::before{content:"\e92c"}.frm_shuffle_icon::before{content:"\e917"}.frm_swap_icon::before{content:"\e918"}.frm_pallet_icon::before{content:"\e96d"}.frm_fingerprint_icon::before{content:"\e94a"}.frm_ghost_icon::before{content:"\e94b"}.frm_heart_solid_icon::before{content:"\e94d"}.frm_heart_icon::before{content:"\e94e"}.frm_history_icon::before{content:"\e94f"}.frm_import_icon::before{content:"\e91a"}.frm_export_icon::before{content:"\e91b"}.frm_label_solid_icon::before{content:"\e952"}.frm_label_icon::before{content:"\e953"}.frm_lock_open_icon::before{content:"\e957"}.frm_lock_icon::before{content:"\e959"}.frm_dollar_sign_icon::before{content:"\e91c"}.frm_percent_icon::before{content:"\e939"}.frm_external_link_icon::before{content:"\e966"}.frm_pageview_solid_icon::before{content:"\e96a"}.frm_pageview_icon::before{content:"\e96b"}.frm_settings_icon::before{content:"\e97a"}.frm_stamp_icon::before{content:"\e980"}.frm_support_icon::before{content:"\f1cd"}.frm_text_icon::before{content:"\e98d"}.frm_text2_icon::before{content:"\f031"}.frm_white_label_icon::before{content:"\e91d" !important}.frm_authorize_icon::before{content:"\e903"}.frm_icon_font.frm_activecampaign_icon{background-image:none}.frm_activecampaign_icon::before{content:"\e930"}.frm_aweber_icon::before{content:"\e627"}.frm_campaignmonitor_icon::before{content:"\e946"}.frm_constant_contact_icon::before{content:"\e931"}.frm_getresponse_icon::before{content:"\e932"}.frm_googlesheets_icon::before{content:"\e944"}.frm_building_icon::before{content:"\e93f"}.frm_hubspot_icon::before{content:"\e933"}.frm_icontact_icon::before{content:"\e940"}.frm_icon_font.frm_mailpoet_icon::before{content:"\e934"}.frm_paypal_icon::before{content:"\e61f"}.frm_sendinblue_icon::before{content:"\e943"}.frm_sendy_icon::before{content:"\e941"}.frm_salesforce_icon::before{content:"\e935"}.frm_salesforcealt_icon::before{content:"\e937"}.frm_stripe_icon::before{content:"\e902"}.frm_stripealt_icon::before{content:"\e93d"}.frm_twilio_icon::before{content:"\e620"}.frm_woocommerce_icon::before{content:"\e90e"}.frm_wordpress_icon::before{content:"\f19a"}.frm_credit_card_icon::before{content:"\e938"}.frm_credit-card-alt_icon::before,.frm_credit_card_alt_icon::before{content:"\f283"}.frm_cc_amex_icon::before{content:"\f1f3"}.frm_cc_discover_icon::before{content:"\f1f2"}.frm_cc_mastercard_icon::before{content:"\f1f1"}.frm_cc_visa_icon::before{content:"\f1f0"}.frm_cc_paypal_icon::before{content:"\f1f4"}.frm_cc_stripe_icon::before{content:"\f1f5"}:root,.frm-white-body,.frm_wrap{--grey-900: #101828;--grey-800: #1D2939;--grey-700: #344054;--grey-600: #475467;--grey-500: #667085;--grey-400: #98A2B3;--grey-300: #D0D5DD;--grey-200: #EAECF0;--grey-100: #F2F4F7;--grey-50: #F9FAFB;--grey-25: #FCFCFD;--dark-grey: var(--grey-700);--medium-grey: rgba(40, 47, 54, .65);--grey: var(--grey-500);--grey-border: var(--grey-300);--lightest-grey: rgb(250, 250, 250);--sidebar-color: var(--grey-50);--sidebar-hover: var(--grey-200);--primary-700: #2B66A9;--primary-500: #4199FD;--primary-300: #80BBFE;--primary-200: #C0DDFE;--primary-50: #ECF5FF;--primary-25: #F5FAFF;--primary-color: var(--primary-500);--primary-hover: var(--primary-700);--light-blue: var(--primary-25);--blue-border: rgb(188, 224, 253);--error-700: #B42318;--error-500: #F04438;--error-300: #FECDCA;--error-100: #FEE4E2;--error-25: #FFF5F4;--green: rgb(63, 172, 37);--orange: #F15A24;--warning-500: #F79009;--pink: rgb(226, 42, 110);--purple: rgb(141, 53, 245);--success-900: #054F31;--success-800: #065F46;--success-500: #12b76a;--success-100: #D1FAE5;--success-200: #A6F4C5;--success-50: #ECFDF3;--success-25: #f6fef9;--border-radius: 35px;--small-radius: 8px;--medium-radius: 16px;--small-sidebar: 275px;--medium-sidebar: 350px;--big-sidebar: 390px;--biggest-sidebar: 450px;--text-xs: 12px;--text-sm: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--h-xs: 24px;--h-sm: 30px;--h-md: 36px;--leading: 1.5;--gap-2xs: 4px;--gap-xs: 8px;--gap-sm: 16px;--gap-md: 24px;--gap-lg: 32px;--gap-xl: 40px;--gap-2xl: 48px;--box-shadow-xs: 0 0.47074466943740845px 0.9414893388748169px 0 rgba(16, 24, 40, 0.05);--box-shadow-sm: 0 0.470745px 1.41223px rgba(16, 24, 40, 0.1), 0 0.470745px 0.941489px rgba(16, 24, 40, 0.06);--box-shadow-md: 0 1.88298px 3.76596px -0.941489px rgba(16, 24, 40, 0.1), 0 0.941489px 1.88298px -0.941489px rgba(16, 24, 40, 0.06);--box-shadow-lg: 0 6px 8px -2px rgba(16, 24, 40, 0.08), 0 1.88298px 4px -1px rgba(16, 24, 40, 0.03), 0 0.470745px 1.41223px rgba(16, 24, 40, 0.1), 0 0.470745px 0.941489px rgba(16, 24, 40, 0.06);--box-shadow-xl: 0 9.41489px 11.2979px -1.88298px rgba(16, 24, 40, 0.08), 0 3.76596px 3.76596px -1.88298px rgba(16, 24, 40, 0.03);--box-shadow-xxl: 0 11px 22px -5px rgba(16, 24, 40, 0.18);--button-shadow: 0 0.47px 0.94px 0 rgba(16, 24, 40, 0.06), 0 0.47px 1.47px 0 rgba(16, 24, 40, 0.1);--check-label-color: var(--grey-700)}@font-face{font-family:"Inter";src:url("../fonts/Inter-VariableFont_slnt,wght.ttf?v=1") format("truetype")}.with_frm_style,.frm-white-body .wpbody-content,.frm_wrap{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}@media not all and (min-resolution: 0.001dpcm){@supports(-webkit-appearance: none) and (stroke-color: transparent){.with_frm_style,.frm-white-body .wpbody-content,.frm_wrap{-webkit-font-smoothing:antialiased}}}.frm-sm-z-index{z-index:1}.frm-md-z-index{z-index:5}.frm-white-body,.frm-white-body p,.frm_wrap,.frm_wrap p,.frm-modal,.frm-white-body .postbox .inside{font-size:var(--text-sm);color:var(--grey-500);line-height:var(--leading)}.frm-white-body p,.frm_wrap p{margin:var(--gap-sm) 0}body:not(.frm-admin-page-styles):not(.frm-admin-page-style) .with_frm_style .frm_form_fields>fieldset{--fieldset-padding: 15px 0}a,.widget .widget-top,.stuffbox h3,.frm-collapsed{cursor:pointer;text-decoration:none}.post-type-frm_display .wrap>#posts-filter,.wrap.frm-with-margin,.frm_wrap>.wrap{margin:var(--gap-sm) var(--gap-md) var(--gap-md)}#frm_top_bar+.wrap{margin:var(--gap-xl)}.frm-full-screen #wpbody-content>.wrap{margin:0}.post-type-frm_display .wrap{margin:0}.toplevel_page_formidable #post-body-content{overflow-x:visible}.frm-full-screen{height:100%;overflow:hidden}.frm-full-screen.frm-admin-page-reports,.frm-full-screen.frm-admin-page-entries,.frm-full-screen.post-type-frm_display{overflow:auto}.frm-full-screen #wpadminbar,.frm-full-screen #adminmenumain,.frm-full-screen .wp-header-end{display:none}body.frm-white-body:not(.frm-full-screen) .mce-fullscreen{top:32px;left:160px}.frm-full-screen #wpbody-content,.frm-full-screen #wpbody,.frm-full-screen #wpcontent{padding:0;overflow:hidden;margin:0 !important}.frm-white-body #wpbody-content{position:relative;padding-bottom:0}.post-new-php.post-type-frm_display #screen-meta-links,.post-php.post-type-frm_display #screen-meta-links{display:none}.frm-white-body #screen-meta-links{position:fixed;bottom:0;right:20px}.frm-full-screen #screen-meta-links .screen-meta-toggle{right:55px}.frm-white-body #screen-meta-links .show-settings{border-radius:var(--small-radius) var(--small-radius) 0 0;border:1px solid var(--grey-300);border-bottom:none}.frm-white-body.frm-lite #screen-meta-links .screen-meta-toggle{right:125px}.frm-white-body #screen-meta{margin:0}.frm-white-body #screen-meta-links .show-settings::after{color:var(--grey)}.frm-white-body .columns-2{border-bottom:1px solid var(--grey-300)}.frm-full-screen .columns-2{border:none}body.post-type-frm_display.edit-php,body.frm-white-body{background:#fff}body.frm-white-body ul#adminmenu a.wp-has-current-submenu::after,body.frm-white-body ul#adminmenu>li.current>a.current::after{border-right-color:#fff}.frm-white-body #wpcontent{padding-left:0;padding-right:0}.frm-white-body .wrap #post-body{padding:0 20px}.frm-grey-body #wpbody{background:var(--grey-100)}.frm-grey-body #frm_top_bar{background:#fff}.post-type-frm_display .tablenav,.frm_wrap .tablenav{margin-bottom:10px}.frm-white-body .tablenav .actions select,.wp-admin .frm_wrap .tablenav select{margin-right:var(--gap-xs)}.tablenav .actions .button{margin-top:1px}.frm-white-body table.widefat{background:var(--lightest-grey);border-width:0;box-shadow:none;margin:20px 0}.frm-white-body table.widefat tfoot,.frm-white-body table.widefat thead{background:#fff}.frm-white-body table.widefat th{font-size:var(--text-md)}.frm-white-body table.widefat th a{color:var(--grey-700)}.frm-white-body table.widefat strong a{color:var(--primary-700)}.frm-scroll-box{clear:both;overflow:auto;max-height:405px;border:1px solid var(--grey-300);border-radius:var(--small-radius)}.frm_form_field.frm_scroll_box .frm_opt_container{height:100px;overflow:auto;border:1px solid var(--grey-300)}.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+p,.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+div,.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+span{grid-column:span 6/span 6;align-content:center}.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+p,.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+div,.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+span{grid-column:span 12/span 12 !important;align-content:center}.frm_form_field.frm-phone-type~[id*=frm-field-format-custom-]>label,.frm_form_field.frm-format-dropdown~[id*=frm-field-format-custom-]>label{opacity:0}.frm_form_field.frm-format-dropdown~[id*=frm-field-format-custom-]{grid-column:span 6/span 6}.frm-single-settings.frm-type-textarea>.frm_grid_container [id*=frm-field-format-custom-]+p{grid-column:span 12/span 12}.frm-single-settings .frm_grid_container{column-gap:var(--gap-sm)}.frm-content-center{align-content:center}.frm-self-end{align-self:end}.frm-short-list{overflow:auto;max-height:190px}.frm-white-body table.frm-border td{font-size:var(--text-sm)}.frm-white-body .striped>tbody>:nth-child(odd){background-color:#fff}.frm_wrap td.column-title strong{display:inline}td.column-title .frm_actions_dropdown{float:right}#frm_top_bar{display:flex;gap:var(--gap-sm);width:100%;height:72px;margin:0;box-sizing:border-box;text-align:center;padding:0 var(--gap-md)}#frm_top_bar>.frm-full-close:last-child,#frm_top_bar>#frm-publishing:last-child{margin-left:auto}#frm_top_bar{border-bottom:1px solid var(--grey-300);padding:0 var(--gap-md);overflow:visible}.frm-white-body h1,.frm-white-body h2,.frm-white-body h3,.frm-white-body h4{color:var(--grey-900);font-weight:400;line-height:var(--leading) !important}.frm-white-body .wrap h1,.frm-white-body h1{font-size:var(--text-xl)}.frm-white-body .wrap h2,.frm-white-body h2{font-size:var(--text-lg);font-weight:500}.frm-white-body .wrap h3,.frm-white-body h3{font-size:var(--text-md)}.frm-white-body .wrap h4,.frm-white-body h4{font-size:var(--text-sm);font-weight:500}#frm_error_modal .frm_lock_simple{padding:20px;border-radius:50%;background-color:var(--primary-25);display:inline-block}#frm_error_modal #frm_lock_simple{color:var(--primary-500)}#frm_error_modal .frm-modal-title{display:block}#frm_error_modal .frm-modal-title h2{font-weight:600;font-size:var(--text-xl);margin:0}#frm_error_modal .frm_modal_content{padding:var(--gap-md);color:var(--grey-900)}.frm-views-editor-body .frm_page_container #frm_top_bar h1{padding:0 !important;color:var(--grey-900);font-size:var(--text-xl) !important}.post-type-frm_display .frm_top_left{padding-bottom:0 !important}.frm-new-table-view-option.frm-selected-table-view-option{border-radius:var(--small-radius);background:var(--primary-25)}.frm-views-editor-body #frm_adv_info .tabs-panel{padding-left:4px;padding-right:4px}#frm_edit_box_content_modal .frm_modal_footer{padding-top:var(--gap-sm);border-top:1px solid var(--grey-300)}#frm_edit_box_content_modal .frm_modal_footer>div{display:flex;justify-content:space-between}#frm_edit_box_content_modal #frm_modal_box_select_area,#frm_edit_box_content_modal #frm_box_content_wysiwyg_wrapper,#frm_edit_box_content_modal .frm_modal_content{max-height:calc(100vh - 176px) !important}#frm_edit_box_content_modal #frm_modal_box_select_area{height:calc(100vh - 176px) !important}#frm_edit_box_content_modal #wp-content-editor-tools{padding-top:0}#frm_edit_box_content_modal.frm-modal .postbox .frm-modal-title+div:last-child{right:var(--gap-md)}.frm_code_list.frm-full-hover .frm-dropdown-view a{flex-direction:row-reverse}#frm_view_editor_left.frm-right-panel .accordion-section-title::before{content:"" !important;margin:0}.frm-gradient,.frm-upgrade-bar{background:linear-gradient(90deg, #388CF3, #1961D5, #8C7FD8) !important;color:#fff !important;border:0 !important}.frm-gradient.frm-button-primary:not([disabled]),.frm-gradient.frm-button-primary:not([disabled]):hover,.frm-gradient.frm-button-primary:not([disabled]):focus{background:linear-gradient(90deg, #1961D5, #816CFA) !important}.frm-upgrade-bar,.frm-gradient{position:relative}.frm-upgrade-bar::before,.frm-gradient::before{content:"";display:none;position:absolute;top:0;right:0;bottom:0;left:0;background-color:hsla(0,0%,100%,.1);z-index:0}.frm-upgrade-bar:hover::before,.frm-gradient:hover::before,.frm-gradient:focus::before{display:block}.frm-upgrade-bar-inner,.frm-gradient>*{position:relative;z-index:1}.frm-upgrade-bar{border-bottom:1px solid var(--sidebar-hover);padding:9px 0;font-size:12px;text-align:center}.frm-upgrade-bar a{color:currentColor !important;text-decoration:underline}.frm-upgrade-bar a:focus{outline:1px dotted var(--sidebar-hover)}.frm-upgrade-bar span{opacity:.9}a h1 .frmsvg{color:var(--grey-400);vertical-align:middle;min-width:var(--text-sm)}a .frmsvg{color:currentColor}.frm_wrap .view-switch a.current::before,.frm-white-body a,.frm_wrap a,.frm_wrap a i{color:var(--primary-color)}.frm_wrap a:active,.frm_wrap a:hover{color:var(--primary-700);box-shadow:none}.post-type-frm_display a:focus,.frm_wrap a:focus{box-shadow:none}.frm_top_left{text-align:left;float:left;white-space:nowrap;max-width:250px;overflow:hidden;text-overflow:ellipsis;align-self:center}.post-type-frm_display .frm_top_left,.frm_top_left.frm_top_wide{max-width:100%}.post-type-frm_display .frm_nav_bar .frm-header-logo,.frm_nav_bar .frm-header-logo{margin:18px 0 10px}#frm_top_bar .frm_form_nav{flex:1}ul.frm_form_nav{margin:0 auto;padding-top:18px;display:block;min-width:240px}.nav-tab-wrapper.frm_form_nav{padding:0 25px}ul.frm_form_nav>li{margin:0 min(3.5%,32px) 0 0;display:inline-block}.post-type-frm_display #advanced-sortables h2.hndle,.post-type-frm_display #side-sortables h2.hndle,.post-type-frm_display #normal-sortables h2.hndle,.post-type-frm_display .frm_form_nav .nav-tab-active,.frm_form_nav>li>a{font-size:1.3em;text-decoration:none;display:block;padding:6px 2px 4px;font-weight:500;color:var(--grey-700);border-bottom:2px solid rgba(0,0,0,0)}.post-type-frm_display.js .postbox .handlediv .toggle-indicator::before{margin-top:10px}.frm-nav-tabs a:focus,.frm-nav-tabs a:active,.frm_form_nav a:active,.frm_form_nav a:focus{outline:none;box-shadow:none}.frm_form_nav>li>a{font-size:var(--text-md);font-weight:400;color:var(--grey-500)}.frm_form_nav>li>a:hover{border-color:var(--primary-700)}.frm_form_nav .frm-dropdown-menu a:hover{background-color:#eaf2fa}.post-type-frm_display .frm_form_nav .nav-tab-active,.post-type-frm_display .frm_form_nav .nav-tab-active:hover,.frm_form_nav>li a.current_page{color:var(--primary-500);border-color:var(--primary-500);background:rgba(0,0,0,0);opacity:1;font-weight:600}.frm-full-close{display:none;padding-left:var(--gap-md);border:0 solid var(--grey-300);border-left-width:1px;height:100%;box-sizing:border-box}.frm-full-screen .frm-full-close{display:flex;align-items:center}.frm-full-close a{display:block}.frm-full-close .frmsvg{font-size:20px;width:20px;height:20px;color:var(--grey-500)}#frm_top_bar h1{font-weight:400;padding:0;margin:0;color:var(--grey-900);display:inline-flex;gap:var(--gap-sm);align-items:center;text-align:left;min-width:200px}#frm_top_bar h1 span{max-width:175px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;display:inline-block;vertical-align:bottom}#frm_top_bar ul.frm_form_nav,#frm_top_bar .frm-header-logo,#frm_top_bar #frm_bs_dropdown{align-self:center;margin-top:0;margin-bottom:0;padding-top:0}#frm_top_bar .frm-header-logo{display:flex}#frm_top_bar h2{float:left;margin:0 0 0 var(--gap-sm);padding:2px 0 2px var(--gap-sm);font-weight:400;border-left:2px solid var(--grey)}.frm_wrap>#frm_top_bar #frm-publishing{margin-top:0}#frm-publishing{min-width:225px;align-self:center;align-items:center;display:flex;flex-direction:row-reverse;gap:0 var(--gap-sm);flex-wrap:wrap}.frm_wrap .postbox{border-color:var(--grey-300);border-radius:6px;box-shadow:none}.frm_wrap .postbox h3.hndle{cursor:default;padding:10px 20px;margin:0;line-height:1.4em;border-color:var(--grey-300)}.frm-pre-hndle{font-size:15px;padding:5px;margin:9px 15px}.frm-empty-row{display:none}.frm-child-row{box-shadow:5px 0 0 0 inset var(--sidebar-hover)}.frm_animate_bg{transition:background 200ms linear,color 200ms linear}.wrap>.subsubsub{clear:both;margin:0}.frm_wrap .subsubsub a{line-height:var(--leading);font-size:var(--text-sm)}.frm-admin-page-styles .frm_page_container,.frm_wrap .frm_page_container{height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden;padding-top:0;position:fixed;top:32px;bottom:0;left:0;right:0}.frm-admin-page-translate .frm_wrap .frm_page_container,.frm-admin-page-update_translations .frm_wrap .frm_page_container{position:static}.auto-fold.frm-admin-page-styles .frm_page_container,.auto-fold .frm_wrap .frm_page_container,.frm-unfold.frm-admin-page-styles .frm_page_container,.frm-unfold .frm_wrap .frm_page_container{left:160px}.folded.frm-admin-page-styles .frm_page_container,.folded .frm_wrap .frm_page_container{left:38px}.frm-full-screen.frm-admin-page-styles .frm_page_container,.frm-full-screen .frm_wrap .frm_page_container{height:100vh;top:0;left:0}.frm-full-screen.frm-admin-page-entries .frm_page_container,.frm-new-entry .frm_page_container,.frm-admin-page-reports .frm_page_container,.frm_list_entry_page .frm_page_container{height:auto;display:block}.frm-new-entry .columns-2{border:none}.frm-white-body #frm_top_bar,.frm-white-body .columns-2{flex:0 0 auto}.columns-2 .frm-right-panel+div{padding-bottom:var(--gap-md);border-left:1px solid var(--grey-300)}.columns-2 .frm-right-panel+div,.frm_wrap #post-body-content{padding-bottom:0;padding-top:var(--gap-sm);margin-bottom:0;background:#fff;width:auto;float:none;flex:2}.frm-white-body .columns-2{flex:1;display:flex;overflow:hidden}.frm-white-body .columns-2>div{overflow-y:auto;box-sizing:border-box}.frm_wrap .columns-2 .frm-right-panel,.frm-right-panel{flex:0 0 var(--biggest-sidebar);float:none;width:var(--biggest-sidebar);min-width:var(--biggest-sidebar);background-color:var(--sidebar-color);margin:0;box-shadow:none;border:none;padding-bottom:25px}.frm-right-panel .frm_field_list,.frm_wrap .frm-right-panel #frm_adv_info,.frm_wrap #postbox-container-1 #frm_adv_info{box-shadow:none;border:none;margin-bottom:26px}#new_fields,.frm-has-modal,p.frm_has_shortcodes{position:relative}.frm-inline-modal.postbox{background:#fff;border-color:var(--grey-100);border-radius:var(--small-radius);box-shadow:var(--box-shadow-lg)}.frm_has_shortcodes .frmsvg:not(.frm_help .frmsvg),.frm_has_shortcodes i:not([class*=mce-]){position:absolute;color:var(--primary-500);border-radius:50%;border:1px solid rgba(0,0,0,0);z-index:100;text-align:center}.frm_has_shortcodes .frmsvg.frm-show-box{border-radius:6px !important}.frm_has_shortcodes input,.frm_has_shortcodes textarea{padding-left:18px;box-sizing:border-box}#form_settings_page #frm_adv_info,#frm_builder_page #frm_adv_info{display:none;top:0;width:310px;max-height:315px;min-height:200px;overflow-y:scroll;z-index:100}#form_global_settings .columns-2>div{overflow:auto;height:calc(100vh - 32px)}#form_global_settings .columns-2 .frm-right-panel,#form_settings_page .columns-2 .frm-right-panel,#wpbody-content .frm-page-skeleton .frm-right-panel{flex:0 0 var(--small-sidebar);width:var(--small-sidebar);min-width:var(--small-sidebar)}#form_global_settings .frm_grid_container{gap:0 var(--gap-md)}.frm-inner-content{padding:var(--gap-md)}.post-type-frm_display #poststuff{padding:0 0 10px 40px}#postbox-container-2 .postbox .inside{padding:15px 25px}#postbox-container-2 #frm_advanced .inside h3{margin:15px -25px;font-weight:600}#form_settings_page .frm-inner-content{padding-top:0;padding-bottom:150px;position:relative}.frm_wrap #submitdiv{margin-bottom:0;border-width:0 0 1px;width:100%;min-width:unset}.frm_wrap #frm_adv_info .handlediv,.frm_wrap #frm_adv_info .hndle{display:none}.frm_wrap .menu-settings{border:none;margin-top:0}.nodrag a{cursor:pointer}.frm_wrap #frm_adv_info .inside{margin:0}#frm_adv_info>.inside{padding:0}#frm_adv_info ul.subsubsub{padding-bottom:var(--gap-xs) !important}#frm_adv_info ul.subsubsub a{font-weight:500}#frm_adv_info ul.subsubsub .frm-vertical-separator{display:inline-block;width:1px;height:8px;background-color:var(--grey-300)}#frm_adv_info #frm-insert-condition{background-color:var(--primary-50)}#frm_adv_info #frm-insert-condition:hover{background-color:var(--primary-25)}#frm_builder_page #frm_adv_info{width:322px;max-height:356px;border-radius:var(--small-radius);overflow:hidden}#frm_builder_page #frm_adv_info #taxonomy-linkcategory{height:356px;overflow:hidden}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div{max-height:286px;padding:0}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div>*{padding-bottom:var(--gap-sm);max-height:unset}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div>*:last-child{padding-bottom:var(--gap-xs)}#frm_builder_page #frm_adv_info #frm-nav-tabs{display:flex;gap:var(--gap-xs);background-color:var(--grey-100);border-radius:var(--small-radius);border:0;padding:var(--gap-xs);margin:var(--gap-xs) var(--gap-2xs) var(--gap-sm)}#frm_builder_page #frm_adv_info #frm-nav-tabs>li{flex:1;text-align:center}#frm_builder_page #frm_adv_info #frm-nav-tabs>li a{font-weight:500;line-height:1;color:var(--grey-500);border-radius:var(--small-radius);border:0;padding:var(--gap-xs);margin:0}#frm_builder_page #frm_adv_info #frm-nav-tabs>li a:hover{background-color:#eaecf0;color:var(--grey-500) !important;box-shadow:var(--box-shadow-sm)}#frm_builder_page #frm_adv_info #frm-nav-tabs>li.frm-tabs a{background-color:#fff;color:var(--grey-900) !important;box-shadow:var(--box-shadow-sm)}#frm_builder_page #frm_adv_info .frm-search,#frm_builder_page #frm_adv_info .frm-with-search{padding-top:0;margin:0}.frm-right-panel .frm-inline-modal.postbox .inside{margin:0;padding:0 14px 14px}.frm-right-panel .frm-inline-modal.postbox .inside .frm-with-line,.frm-right-panel .frm-inline-modal.postbox .inside .accordion-section-content h4{margin-left:-14px;margin-right:-14px}.frm-right-panel .frm-inline-modal .inside p:not(.howto),.frm-right-panel .frm-inline-modal .inside a{font-size:15px}.frm-inline-modal .inside a.frm_icon_font{font-size:18px}.frm-nav-tabs{margin:10px 0 20px;padding:0 var(--gap-sm);display:block;border-bottom:1px solid var(--grey-300)}#frm-nav-tabs{position:-webkit-sticky;position:sticky;top:0;background-color:var(--sidebar-color);z-index:98;margin-top:0;padding-top:5px}.frm_form_settings #frm_adv_info #frm-nav-tabs{background-color:#fff;margin:0 -4px}.frm_form_settings span.frm-with-right-icon,#frm_builder_page .frm_has_shortcodes span.frm-with-right-icon:not(.frm_hidden){display:block}.frm-inline-modal .frm-nav-tabs,#frm_adv_info .frm-nav-tabs{margin:5px 0 0}#frm_adv_info .frm-nav-tabs.frm-compact-nav{padding-right:0;padding-left:20px}.frm-nav-tabs li{display:inline-block;margin:0}.frm-nav-tabs a{color:var(--grey-700);padding:10px 1px;margin:0 9px;border-bottom:2px solid rgba(0,0,0,0)}.frm_form_settings #frm_adv_info .frm-nav-tabs a{padding:5px 1px;color:var(--grey-500)}.frm-nav-tabs.frm-compact-nav a{margin:0 5px}.frm-nav-tabs a{display:block;opacity:.9}#frm_adv_info .frm-nav-tabs a{color:var(--grey-700)}.frm-nav-tabs a:hover,.frm-nav-tabs .frm-tabs a{color:var(--primary-500) !important;border-color:var(--primary-500)}.frm_form_settings #frm_adv_info .frm-nav-tabs .frm-tabs a{font-weight:500}#frm-bulk-modal .howto,#frm-bulk-modal h3{font-size:var(--text-sm);font-weight:400;margin:5px 0 10px;color:var(--grey)}#frm-bulk-modal h3{margin-left:20px}.frm-right-panel a.frm_add_logic_link,.frm-right-panel h3{color:var(--grey-700);font-size:var(--text-lg);font-weight:400;margin:0}.frm-right-panel h3 i{color:var(--grey-700);float:right;width:16px;cursor:pointer}.frm-settings-panel{padding:var(--gap-sm);padding-right:var(--gap-xs)}.frm-settings-panel .frm-style-tabs-wrapper .frm-tabs-delimiter{top:var(--gap-xs);left:var(--gap-xs);width:calc(100% - var(--gap-sm))}.frm-settings-panel .frm-style-tabs-wrapper .frm-tabs-navs{padding:var(--gap-xs) var(--gap-xs) 0}.frm-settings-panel .frm-embed-field-placeholder{height:unset}.frm-settings-panel .frm-embed-field-placeholder img{height:100px}.frm-settings-panel .frm-embed-field-placeholder .frm-embed-message{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-sm);max-width:unset;color:var(--grey-800);padding:var(--gap-lg);border:0;box-shadow:var(--box-shadow-sm);margin:1px}.frm-single-settings .frm-default-value-wrapper>p{margin-bottom:0}.frm-single-settings .frm-default-value-wrapper+p:empty{display:none}.frm-single-settings [class*=frm-lookup-box-] .frm_grid_container p{margin-top:0 !important}.frm-single-settings .frm_single_option[id^=frm_watch_lookup_]{margin-bottom:var(--gap-xs) !important}.frm-single-settings>h3:first-of-type{position:relative;background-color:rgba(0,0,0,0) !important;border-top:none;padding-top:0 !important;margin-top:0 !important}.frm-single-settings>h3:first-of-type::after{content:"";position:absolute;left:var(--gap-sm);right:var(--gap-sm);bottom:0;height:1px;background-color:var(--sidebar-hover)}.frm-flex-justify,.frm-right-panel .frm-single-settings h3{display:flex;justify-content:space-between;align-items:center}#post-body-content+.frm-right-panel{flex:0 0 var(--medium-sidebar);width:var(--medium-sidebar);min-width:var(--medium-sidebar);border-left:1px solid var(--sidebar-hover)}.frm-new-entry #post-body-content+.frm-right-panel,.frm-new-entry .frm-right-panel{background:none;border:none}#post-body-content+.frm-right-panel h3{padding:20px 20px 0;font-size:17px}#post-body-content+.frm-right-panel .frm_with_icons:first-of-type h3{border:none}#frm-insert-fields h3{color:var(--grey);font-size:15px;font-weight:400;border-top:none;border-bottom:1px solid var(--sidebar-hover);margin:0;padding:10px 10px 10px 25px}.frm_wrap #frm_adv_info ul.category-tabs{margin:0;padding:10px 0 9px;font-size:15px;background:rgba(0,0,0,0)}.frm_wrap #frm_adv_info ul.category-tabs li{padding:10px;background-color:rgba(0,0,0,0) !important}.frm_wrap #frm_adv_info ul.category-tabs li:first-child{border:none}.frm_wrap #frm_adv_info .categorydiv div.tabs-panel{border:none;background:rgba(0,0,0,0)}.frm_wrap #frm-categorydiv{border-right:none}#frm_adv_info #frm-conditionals{padding-top:var(--gap-sm)}#postbox-container-1 #taxonomy-linkcategory #frm-html-tags{display:none;max-height:none}#postbox-container-1 .frm_field_list #frm-insert-fields .frmbutton.dropdown{position:relative}.frm-white-body #footer-upgrade{display:none}.frm-admin-footer-links,.frm-admin-footer-links-nav,.frm-admin-footer-links-socials{display:flex;justify-content:center}.frm-admin-footer-links{gap:var(--gap-2xs);flex-direction:column;text-align:center;padding:var(--gap-xl) 0 var(--gap-lg);font-size:var(--text-xs);color:var(--grey-400)}body.frm-hidden-overflow{height:100%;overflow:hidden}.frm-admin-footer-links-nav{gap:var(--gap-2xs);margin-bottom:var(--gap-xs)}.frm-admin-footer-links-socials{gap:var(--gap-xs)}.frm-admin-footer-links-socials a{color:var(--grey-400)}.frm_list_entry_page h2{float:left}.frm_list_entry_page h2+.error{clear:both}.frm_sidebar select{width:100%;margin-left:0;margin-right:0}.frm_sidebar #search-submit{float:right}.frm_single_entry_page #submitdiv{margin:0}.frm_single_entry_page .hndle a{font-size:13px}.frm-right-panel #publishing-action{float:none}.frm-right-panel #major-publishing-actions{border-top:none;height:32px;background:rgba(0,0,0,0)}#major-publishing-actions .frm_submit_form{float:right;margin-left:5px}.frm_orange_button,.frm_reverse_button{font-size:12px;border:1px solid var(--orange);color:var(--orange);font-weight:600;padding:1px 4px;border-radius:4px;background:rgba(0,0,0,0)}.frm_reverse_button:hover,.frm_reverse_button:active,.frm_reverse_button:focus{color:#fff;background:var(--orange);border:1px solid var(--orange)}.frm_reverse_button{font-size:1em;transition:all .2s ease}.frm-button-primary,.wp-core-ui .button-primary.frm-button-primary,.wp-core-ui .button.frm-button-primary,.frm-button-secondary,.wp-core-ui .button-secondary.frm-button-secondary,.wp-core-ui .button.frm-button-secondary,.frm-white-body .frm-search .button,.frm-white-body .search-box .button,.frm-white-body .tablenav .button,.frm_orange_button,.toplevel_page_formidable #frm_upgrade_modal .button-primary,.wp-core-ui.frm-white-body .button-primary,.wp-core-ui.frm-white-body .button-secondary,.frm-white-body .button-primary,.frm-white-body .button-secondary,#frm-form-button button,.frm-form-button button,.frm-preview-buttons button,.frm-button-red,.frm-button-tertiary{text-shadow:none;box-shadow:none;border-radius:30px;border:1px solid var(--primary-500);font-size:var(--text-sm);transition:all .2s ease;padding:7px 16px;height:auto;min-height:28px;outline:none;line-height:var(--leading);box-sizing:border-box;font-weight:500;margin-bottom:0;display:inline-block}.frm-button-primary.frm-sharp,.frm-button-secondary.frm-sharp{border-radius:12px !important}#wpcontent .frm-button-secondary.frm-button-gradient{position:relative;border-color:rgba(0,0,0,0) !important;background-clip:padding-box !important}#wpcontent .frm-button-secondary.frm-button-gradient::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;margin:-1px;border-radius:inherit;background:linear-gradient(90deg, #129EFD 0%, #A334FD 100%);transition:opacity 150ms ease-out}#wpcontent .frm-button-secondary:hover::before{opacity:.5}.no-js.wp-core-ui .frm-search .button.hide-if-no-js,.js.wp-core-ui .frm-search .button.hide-if-js{display:none}.frm-button-tertiary{border-color:rgba(0,0,0,0);color:var(--primary-500)}.frm-button-tertiary:focus{outline:none}.frm-button-tertiary.frm_loading_button::before{border-right-color:var(--grey);border-bottom-color:var(--grey)}.frm-button-red,.frm-button-red:focus{--primary-color: var(--error-500);--primary-500: var(--error-500);--primary-700: var(--error-700)}.frm-button-red:not(.frm-button-tertiary),.frm-button-red:not(.frm-button-tertiary):focus{color:#fff !important}.frm-white-body h2 .button,.post-type-frm_display h2 .frm-button-primary,.frm-white-body .tablenav .button,.frm-button-primary.frm-button-sm,.frm-button-secondary.frm-button-sm,.frm-button-tertiary.frm-button-sm,.frm-button-red.frm-button-sm{padding:4px 12px !important;font-size:var(--text-xs) !important}.frm_no_style_button{background:rgba(0,0,0,0)}.frm-with-icon{display:flex;gap:var(--gap-xs);align-items:center}.frm-with-icon svg{opacity:.65}.frm-with-icon.button svg{height:var(--text-sm);width:var(--text-sm)}.frm-with-icon.frm-button-sm svg{height:var(--text-xs);width:var(--text-xs)}.frm-white-body .button.add_media{padding-left:12px !important;padding-right:12px !important;font-size:var(--text-xs);border-radius:var(--border-radius)}.wp-core-ui.frm-white-body #post-query-submit.button,.wp-core-ui.frm-white-body .button.tablenav-pages-navspan,.wp-core-ui.frm-white-body .button.first-page,.wp-core-ui.frm-white-body .button.prev-page,.wp-core-ui.frm-white-body .button.next-page,.wp-core-ui.frm-white-body .button.last-page,.wp-core-ui.frm-white-body .button.action{background-color:rgba(0,0,0,0);border-color:var(--grey-300);color:var(--grey-700);border-radius:var(--border-radius)}.post-type-frm_display.wp-core-ui .button-primary,.frm-button-primary,.wp-core-ui .button-primary.frm-button-primary,.frm_single_entry_page #frm-publishing .button-primary{background-color:var(--primary-500) !important;color:#fff !important}.frm-button-primary.frm_large,.frm-button-secondary.frm_large{height:auto !important;padding:12px 16px !important}.frm-button-secondary.frm-small,.frm-button-primary.frm-small{font-size:var(--text-xs) !important;height:auto !important;padding:var(--gap-2xs) 12px !important}.frm-button-primary i::before{color:#fff}.wp-core-ui .button-primary.frm-button-primary:not([disabled]):hover,.frm-button-primary:not([disabled]):hover{background:var(--primary-700) !important;border-color:var(--primary-700) !important}.wp-core-ui .button-primary.frm-button-primary:active{vertical-align:inherit}.frm-white-body #search-submit,#frm-form-button .frm_button_submit,.frm-form-button .frm_button_submit,.frm-white-body .frm-preview-buttons button,.frm-white-body .button:not(.frm-button-primary),.wp-core-ui.frm-white-body .button-secondary,.wp-core-ui .button-secondary.frm-button-secondary,.wp-core-ui .button.frm-button-secondary,.frm-white-body .frm-button-secondary,.frm-button-secondary{color:var(--grey-800);border-color:var(--grey-300);background-color:#fff}#wp-content-media-buttons button,#wp-content-media-buttons a.button{border-color:var(--grey-300)}.frm_orange_button{border-color:#da791d !important;background:var(--orange);color:#fff}.frm-white-body .button:not(.frm-button-primary):focus,.frm-white-body .button:not(.frm-button-primary):active,.frm-white-body .frm-button-secondary:hover,.wp-core-ui.frm-white-body .frm-button-secondary:hover,.wp-core-ui.frm-white-body .button-secondary:hover,.wp-core-ui.frm-white-body .button-secondary:focus,.wp-core-ui.frm-white-body .tablenav .button:hover,.frm_wrap .preview>.button:hover,.frm-white-body #search-submit:hover{border-color:var(--grey-300) !important;color:var(--grey-800);background:var(--grey-50) !important;box-shadow:none !important;outline:none !important}.frm-button-primary .frmsvg{color:#fff}.frm_wrap .preview i{font-size:inherit}.frm-white-body .frm-button-primary:focus,.frm-white-body .frm-button-primary:active,#frm-addons-page .button-primary:focus,#form_global_settings .button-primary:focus,#frm_upgrade_modal .button:focus{border-color:var(--primary-700) !important;background-color:var(--primary-700) !important;box-shadow:none !important;outline:none !important}.frm_wrap .preview>.button:focus,.frm_orange_button:hover,.frm_orange_button:focus,.toplevel_page_formidable #frm_upgrade_modal .button-primary:hover,.toplevel_page_formidable #frm_upgrade_modal .button-primary:focus,.toplevel_page_formidable .frm_wrap button.button-primary:hover,.toplevel_page_formidable .frm_wrap button.button-primary:focus{outline:none}.frm_orange_button:hover,.frm_orange_button:focus{border-color:var(--orange) !important;background:rgba(0,0,0,0);color:var(--orange);opacity:1}.major-publishing-actions.frm_create_form_header{padding:8px 0}.major-publishing-actions.frm_create_form_header .frm_create_form_header_inner{font-size:15px;background:rgba(0,0,0,0)}.frm-menu-boxes .frm_blank_form_text{padding-bottom:26px}input.frm_insert_in_template{font-size:10px;width:98%;font-weight:400}.frm-dismissible a.dismiss:focus{box-shadow:none}.frm-dismissible a.dismiss{top:10px;right:10px;position:absolute}.frm-dismissible a.dismiss svg{color:var(--grey-800)}.wp-admin .frm-review-notice{position:fixed !important;bottom:var(--gap-2xl);right:var(--gap-lg);width:380px;text-align:center;border-color:var(--grey-100);padding:var(--gap-lg);border-radius:var(--medium-radius);box-shadow:var(--box-shadow-lg) !important;z-index:999;box-sizing:border-box;--gap-sm: 16px;--gap-md: 24px;--gap-2xl: 48px}.wp-admin .frm-review-notice *{box-sizing:border-box}.frm-review-notice-icon{display:inline-flex;margin-bottom:var(--gap-sm)}.wp-admin .frm-review-notice-title{font-weight:600;margin-top:0;margin-bottom:var(--gap-xs)}.wp-admin .frm-review-notice-text{margin-top:0;margin-bottom:var(--gap-md)}.frm-review-notice-signature{text-align:left;margin:var(--gap-md) 0}.frm-review-notice-signature img{width:40px;height:40px;padding:3px;box-shadow:var(--box-shadow-md);border-radius:100%}#wpwrap .frm-dismiss-review-notice{top:16px;right:19px}.frm-review-notice #frmapi-feedback [class^=frm__]{display:none}.frm-review-notice #frmapi-feedback input,.frm-review-notice #frmapi-feedback textarea{border-color:var(--grey-300);border-radius:var(--small-radius)}.frm-review-notice #frmapi-feedback input{min-height:unset;max-height:36px}.frm-review-notice #frmapi-feedback textarea{max-height:80px;padding-top:var(--gap-xs)}.frm-review-notice #frmapi-feedback .frm_message{color:var(--success-900);background-color:var(--success-25);border:1px solid var(--success-200);padding:var(--gap-sm) var(--gap-md);margin:0}.frm-review-notice #frmapi-feedback .frm_message p{margin:0}.frm-review-notice #frmapi-feedback .frm_button_submit{background-color:var(--primary-500);border-color:var(--primary-500) !important;cursor:pointer}.frm-review-notice #frmapi-feedback .frm_button_submit:hover,.frm-review-notice #frmapi-feedback .frm_button_submit:focus{color:#fff;background-color:var(--primary-700);border-color:var(--primary-700) !important}.frm-review-notice .frm_error,.frm-review-notice label{color:#444;text-align:left}.frm-review-notice label{font-size:var(--text-sm)}.frm-floating-success-message{position:fixed;z-index:999;border-radius:4px;right:10px;bottom:10px}.frm-box-shadow-xxl{box-shadow:var(--box-shadow-xxl) !important}.frm-text-primary-500{color:var(--primary-500)}.frm-text-grey-400{color:var(--grey-400) !important}.frm-text-grey-500{color:var(--grey-500)}.frm-text-grey-600{color:var(--grey-600) !important}.frm-text-grey-700{color:var(--grey-700)}.frm-text-grey-900{color:var(--grey-900)}.frm-text-success-500{color:var(--success-500)}.frm-text-warning-500{color:var(--warning-500)}.frm_no_margin,.frm-m-0{margin:0 !important}.frm-m-12{margin:var(--gap-2xl)}.frm-m-2xs{margin:var(--gap-2xs) !important}.frm_no_top_margin,.frm-mt-0{margin-top:0 !important}.frm-mt-2xs{margin-top:var(--gap-2xs) !important}.-frm-mt-2xs{margin-top:calc(-1*var(--gap-2xs)) !important}.frm-mt-xs{margin-top:var(--gap-xs) !important}.frm-mt-sm{margin-top:var(--gap-sm) !important}.frm-mt-md{margin-top:var(--gap-md) !important}.frm-mt-lg{margin-top:var(--gap-lg) !important}.frm-mt-2xl{margin-top:var(--gap-2xl) !important}.frm-mt-auto{margin-top:auto !important}.frm_no_bottom_margin,.frm-mb-0{margin-bottom:0 !important}.frm-mb-2xs{margin-bottom:var(--gap-2xs) !important}.frm-mb-6{margin-bottom:6px !important}.frm-mb-sm{margin-bottom:var(--gap-sm) !important}.frm-mb-12{margin-bottom:12px !important}.frm-mb-xs{margin-bottom:var(--gap-xs) !important}.frm-mb-md{margin-bottom:var(--gap-md) !important}.frm-mb-lg{margin-bottom:var(--gap-lg) !important}.frm-ml-2xs{margin-left:var(--gap-2xs) !important}.frm-ml-xs{margin-left:var(--gap-xs) !important}.frm-ml-auto{margin-left:auto}.-frm-ml-2xs{margin-left:calc(-1*var(--gap-2xs)) !important}.frm-mr-auto{margin-right:auto}.frm-mr-auto\!{margin-right:auto !important}.frm-mr-2xs{margin-right:var(--gap-2xs) !important}.frm-mr-xs{margin-right:var(--gap-xs) !important}.frm-mr-2{margin-right:2px !important}.frm-mx-0{margin-left:0 !important;margin-right:0 !important}.frm-mx-xs{margin-left:var(--gap-xs) !important;margin-right:var(--gap-xs) !important}.frm-mx-sm{margin-left:var(--gap-sm) !important;margin-right:var(--gap-sm) !important}.frm-my-sm{margin-top:var(--gap-sm) !important;margin-bottom:var(--gap-sm) !important}.frm-my-xs{margin-top:var(--gap-xs) !important;margin-bottom:var(--gap-xs) !important}.frm-p-0{padding:0 !important}.frm-p-1,.frm-p-2xs{padding:var(--gap-2xs)}.frm-p-sm,.frm-p-4{padding:var(--gap-sm) !important}.frm-p-sm{padding:var(--gap-sm) !important}.frm-p-6,.frm-p-md{padding:var(--gap-md) !important}.frm-p-xl{padding:var(--gap-xl) !important}.frm-px-0{padding-left:0 !important;padding-right:0 !important}.frm-py-0{padding-top:0 !important;padding-bottom:0 !important}.frm-py-2xs{padding-top:var(--gap-2xs) !important;padding-bottom:var(--gap-2xs) !important}.frm-py-sm{padding-top:var(--gap-sm) !important;padding-bottom:var(--gap-sm) !important}.frm-pt-0{padding-top:0 !important}.frm-pt-2xs{padding-top:var(--gap-2xs) !important}.frm-pt-xs{padding-top:var(--gap-xs) !important}.frm-pt-sm{padding-top:var(--gap-sm) !important}.frm-pt-md{padding-top:var(--gap-md) !important}.frm-pt-xl{padding-top:var(--gap-xl) !important}.frm-pr-lg{padding-right:var(--gap-lg) !important}.frm-pb-md{padding-bottom:var(--gap-md) !important}.frm-pb-sm{padding-bottom:var(--gap-sm) !important}.frm-pb-xs{padding-bottom:var(--gap-xs) !important}.frm-pb-2xs{padding-bottom:var(--gap-2xs) !important}.frm-pb-0{padding-bottom:0 !important}.frm-px-sm{padding-right:var(--gap-sm) !important;padding-left:var(--gap-sm) !important}.frm-px-xs{padding-right:var(--gap-xs) !important;padding-left:var(--gap-xs) !important}.frm-px-md{padding-right:var(--gap-md) !important;padding-left:var(--gap-md) !important}.frm-text-xs{font-size:var(--text-xs) !important}.frm-text-sm{font-size:var(--text-sm) !important}.frm-text-md{font-size:var(--text-md) !important}.frm-text-lg{font-size:var(--text-lg) !important}.frm-text-xl{font-size:var(--text-xl) !important}.frm-leading-none{line-height:1}.frm-italic{font-style:italic}.frm-no-italic{font-style:normal}.frm-capitalize{text-transform:capitalize}.frm-font-normal{font-weight:400 !important}.frm-font-medium{font-weight:500 !important}.frm-font-semibold{font-weight:600 !important}.frm-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[class*=frm-line-clamp-]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.frm-line-clamp-2{-webkit-line-clamp:2}.frm-white-space-nowrap{white-space:nowrap}.frm-rounded-sm{border-radius:var(--small-radius) !important}.frm-rounded-6{border-radius:6px !important}.frm-w-auto{width:auto !important}.frm-w-full{width:100% !important}.frm-w-half{width:50% !important}.frm-w-fit{width:fit-content !important}.frm-max-w-fit{max-width:fit-content}.frm-h-auto{height:auto !important}#wpwrap .frm_hidden\!{display:none !important}.frm_block,.frm-block{display:block}.frm_inline{display:inline}.frm-inline\!{display:inline !important}.frm_inline_block{display:inline-block !important}.frm-inline-flex,#wpbody-content .frm-inline-flex{display:inline-flex}.frm-flex{display:flex}.frm-flex\!{display:flex !important}.frm_hidden,.js .frm-hide-js{display:none}.frm-flex-box{display:flex;gap:var(--gap-sm)}.frm-flex-col{display:flex;flex-direction:column}.frm-flex-full{flex:1}.frm-flex-center\!,.frm-flex-center{justify-content:center;align-items:center}.frm-flex-center{display:flex}.frm-flex-center\!{display:flex !important}.frm-shrink-0{flex-shrink:0}.frm-gap-0{gap:0 !important}.frm-gap-2xs{gap:var(--gap-2xs)}.frm-gap-xs{gap:var(--gap-xs)}.frm-gap-xs\!{gap:var(--gap-xs) !important}.frm-gap-sm{gap:var(--gap-sm)}.frm-gap-md{gap:var(--gap-md)}.frm-gap-xl{gap:var(--gap-xl)}.frm-justify-start{justify-content:start !important}.frm-justify-center{justify-content:center !important}.frm-justify-between{justify-content:space-between}.frm-justify-end{justify-content:end}.frm-items-center{align-items:center}.frm-items-stretch{align-items:stretch}#wpbody-content .frm-flex-wrap{flex-wrap:wrap}.frm-grow{flex-grow:1}.frm-order-first{order:calc(-infinity)}.frm-order-last{order:calc(infinity)}.frm-order-none{order:0}.frm-h-stack-sm,.frm-h-stack-xs,.frm-h-stack{display:flex !important;align-items:center}.frm-h-stack-sm>input[type=checkbox],.frm-h-stack-xs>input[type=checkbox],.frm-h-stack>input[type=checkbox],.frm-h-stack-sm>input[type=radio],.frm-h-stack-xs>input[type=radio],.frm-h-stack>input[type=radio]{margin:0 !important}.frm-h-stack{gap:var(--gap-2xs)}.frm-h-stack-xs{gap:var(--gap-xs)}.frm-h-stack-sm{gap:var(--gap-sm)}.frm-transition-ease{transition:all .2s ease}.frm_invisible{visibility:hidden;transition:all .2s ease}.frm_disabled{opacity:.5;cursor:default;pointer-events:none}.frm_disabled .frm-show-inline-modal{pointer-events:none !important}.frm_no_float{float:none}.frm-text-right{text-align:right}.frm-border-b{border-bottom:1px solid var(--grey-300)}.frm-no-border{border:none !important}.frm-hr{display:block;height:1px;background-color:var(--grey-200);margin:var(--gap-xs) 0}.frm-opacity-100{opacity:1}.frm-on-bottom{z-index:-1}.frm-rotate-90{transform:rotate(90deg)}.frm-cursor-pointer{cursor:pointer}.frm-align-baseline{vertical-align:baseline !important}.frm-fields p>label.frm_hidden,#wpbody-content label.frm_hidden,.frm-lookup-modal .dismiss,.frm-right-panel .inside a.frm_hidden,#form_global_settings .frm_hidden,ul.frm_form_nav>li.frm_hidden,a.frm_hidden,.button.frm_hidden,.wp-core-ui .button.frm_hidden{display:none}.postbox .inside>p.frm_no_bottom_margin:last-child{margin-bottom:0 !important}.frm_no_section_fields.frm_block{display:block}.actions.frm_visible_overflow{overflow:visible !important}.frm_full_opacity,.frm_submit .frm_full_opacity,.frm_submit .frm-opacity-100{opacity:1}.frm-dropdown-menu.frm-on-top{z-index:99999}.frm-vertical-line{display:inline-block;width:1px;height:12px;background-color:var(--grey-300)}.frm-admin-full-screen #adminmenumain,.frm-admin-full-screen #wpadminbar,.frm-admin-full-screen #adminmenuback,.frm-admin-full-screen #adminmenuwrap,.frm-admin-full-screen #wpfooter{display:none}.frm-admin-full-screen #wpcontent,.frm-admin-full-screen.auto-fold #wpcontent{margin:0;padding:0}.frm-admin-full-screen.appearance_page_starter-templates #wpbody-content{padding:0}.frm_forms.with_frm_style{max-width:100%}.post-type-frm_display .wrap>.subsubsub,.post-type-frm_display .wrap>.icl_subsubsub,.frm_form_settings>p{margin:6px var(--gap-md);padding:0}.frm-entry-container{margin:0 40px 40px;padding:0}#form_reports_page .frm-inner-content{width:calc(100% - 40px);max-width:900px;margin:20px auto;padding:20px}.frm_inner_field_container>.frm_form_fields{clear:both}.post-type-frm_display h2,.frm_wrap h2{margin-top:0 !important;font-size:var(--text-lg);line-height:var(--leading)}.post-type-frm_display .wrap>h2:first-child,.frm_wrap .wrap>h2:first-child{padding-top:0;margin-top:0 !important;font-size:var(--text-lg)}#frm_form_editor_container{position:relative;margin-top:28px}.form-field p{background:none;border:none}.form-field label.frm_primary_label{display:block;float:none;width:auto}#frm_view_editor_left label,#frm_view_editor_left .frm_primary_label,.frm-dialog .frm-sub-label,.frm-dialog label,.dropdown .frm_primary_label,.accordion-container label,.frm-fields td>label,.frm-fields td>div>label,.frm_form_field>label:first-child,.frm-fields p>label,.frm_on_submit_type>label,.post-type-frm_display .frm_form_field>label,#new_fields .frm_primary_label,#form_global_settings .frm_primary_label,#frm_form_editor_container .frm_primary_label,#permissions_settings_settings .frm_primary_label{color:var(--grey-700);margin:0 0 6px;padding:0;width:auto;font-size:var(--text-sm);display:block;line-height:var(--leading)}#frm_form_editor_container #frm-show-fields .frm_primary_label{min-height:21px}.frm-fields td input+label{display:inline}#frm_form_editor_container .edit_field_type_end_divider .frm_primary_label,#frm_form_editor_container .edit_field_type_break .frm_primary_label{display:none}form .frm_primary_label input{font-size:12px}.with_frm_style form .form-field{margin-bottom:20px}#frm_builder_page .with_frm_style form .frm_combo_inputs_container>.form-field{margin-bottom:0}.frm_description,.with_frm_style form div.description,.frm_error,.with_frm_style form div.description textarea{padding:0;font-size:11px}.with_frm_style .description{color:inherit}#frm_form_editor_container .divider_section_only .frm_primary_label{display:flex;align-items:center;gap:var(--gap-xs);font-size:20px}#frm_form_editor_container .divider_section_only .frm_primary_label .frm-sub-label{padding:0}.frm-token-container{position:relative;display:block;direction:ltr}.frm-token-container .frm-tokens{position:absolute;top:0;left:0;max-width:calc(100% - var(--gap-xl));display:flex;align-items:center;flex-wrap:wrap;gap:var(--gap-2xs);padding:6px var(--gap-xs);margin:0}.frm-token-container .frm-token{position:relative;display:flex;align-items:center;gap:var(--gap-xs);min-height:24px;height:auto;color:var(--grey-900);background:var(--grey-100);border-radius:4px;padding:0 var(--gap-xs);font-size:var(--text-md);margin:0;z-index:2}.frm-token-container .frm-token .frm-token-value{line-height:var(--leading);white-space:normal;word-break:break-word}.frm-token-container .frm-token .frm-token-remove{display:flex;flex-shrink:0;cursor:pointer}.frm-token-container .frm-token .frm-token-remove .frmsvg{color:var(--grey-900);position:static;width:12px;height:12px;padding:0}.frm-token-container .frm-token .frm-token-remove:hover .frmsvg{color:var(--error-500)}.frm-token-container .frm-show-inline-modal{z-index:3 !important}.frm-token-container .frm-token-proxy-input{position:relative;z-index:1;padding-right:var(--gap-xl) !important}form .form-field.frm_field_loading{margin-bottom:0;min-height:0;padding:0;text-align:center}.frm_sorting>.frm_field_loading .frm_visible_spinner.frm-wait{margin-bottom:10px}.frm_sorting>.frm_field_loading~.frm_field_loading .frm_visible_spinner.frm-wait{margin-bottom:0;display:none}.frm_description,.with_frm_style form div.description,.frm_error{margin:0}.frm_error{color:#f04438}form .frm_blank_field input,form .frm_blank_field textarea,form .frm_blank_field select,form .frm_blank_field .frm-g-recaptcha iframe,form .frm_blank_field .g-recaptcha iframe{border-color:#f04438}form .frm_blank_field label{color:#f04438}.frm_required{color:#f04438}.with_frm_style .wp-editor-container textarea,.postbox .wp-editor-container textarea,.frm_remove_border{border:none}.with_frm_style .mceIframeContainer,.postbox .mceIframeContainer{background-color:#fff}.frm_pro_license_msg{clear:left;margin-top:10px}.frm-license-input{position:relative}.frm-license-input span{font-size:var(--text-sm)}.frm-license-input .frmsvg{width:20px;height:20px;margin-left:5px;vertical-align:text-top}.frm-license-input .frmsvg,.frm-license-input span,.frm-license-input i{color:#00831a}.upgrade_to_pro{padding:10px 25px 25px;max-width:700px;margin:20px auto !important}.upgrade_to_pro .error{display:none}.toplevel_page_formidable #wpbody-content>.error{margin:1px;padding:5px 12px}.frm_error_style,.frm_warning_style,.frm_note_style2,.frm_note_style,.frm_message,#post-body-content .frm_updated_message,div.frm_updated_message{border-radius:var(--small-radius);background-color:#d5f2dc;color:#1e561f;padding:var(--gap-sm) var(--gap-md);font-size:var(--text-sm);margin:var(--gap-sm) 0;text-align:left}.frm_note_style2{background:linear-gradient(90deg, #e9effa, #fcf6fe) padding-box,linear-gradient(90deg, #1961D5, #E8ABEF) border-box;border:1px solid rgba(0,0,0,0)}#frm_top_bar+.wrap>.frm_updated_message,#frm_top_bar+.wrap>.frm_warning_style{display:inline-block;width:100%;box-sizing:border-box}#post-body-content>.frm_updated_message{margin:5px 65px}#form_global_settings #post-body-content>.frm_updated_message,#form_global_settings #post-body-content>.frm_warning_style{margin:5px 25px}.frm_error_style{color:#973937;background-color:#ebcccc;clear:both}.frm_error_style a{text-decoration:underline;font-weight:600}.frm_error_style svg{opacity:.7}.frm_warning_style{color:#7a4d05;background-color:#fff2d2}.frm_warning_heading{font-weight:700;margin-bottom:4px}.frm_warning_style{position:relative;padding-right:calc(var(--gap-md) + 15px)}body.rtl .frm_warning_style{padding-right:var(--gap-md);padding-left:calc(var(--gap-md) + 15px)}.frm-warning-dismiss{position:absolute;top:10px;right:10px;display:flex;cursor:pointer;transition:opacity .2s ease-out}body.rtl .frm-warning-dismiss{left:10px;right:auto}.frm-warning-dismiss:hover{opacity:.8}.frm-warning-dismiss.frmsvg,.frm-warning-dismiss.frmsvg svg{width:15px;height:15px}.frm_note_style{background:rgba(188,224,253,.23);color:var(--grey-700)}.frm-banner-alert{text-align:left;margin:0;border-radius:0;padding:10px 0 10px 40px}.frm-banner-alert a{color:var(--primary-500);font-weight:400;text-decoration:none}.frm_updated_message ul,.frm_updated_message li,.frm_warning_style ul,.frm_warning_style li,.frm_error_style ul,.frm_error_style li{margin:0}.frm-inline-message{border:1px solid var(--primary-700);border-radius:var(--small-radius);color:var(--primary-700);background:#fff;text-align:center;padding:20px;font-size:var(--text-sm);line-height:var(--leading)}.frm-inline-message a{text-decoration:underline;font-weight:600;color:var(--primary-700)}.frm_pro_heading span{margin-top:10px}.frm_pro_heading .alignright{text-align:right}.frm-yes{color:var(--green);font-size:var(--text-xl)}.frm-nope{color:var(--grey-400);font-size:var(--text-xl)}.upgrade_to_pro a{color:var(--orange)}.upgrade_to_pro table .frmsvg{height:var(--text-xl);width:var(--text-xl)}.upgrade_to_pro table.widefat{background-color:#fff;border-collapse:collapse}.frm-white-body .upgrade_to_pro table th,.upgrade_to_pro table td{padding:10px 15px;border:1px solid var(--grey-300);line-height:var(--leading);font-size:var(--text-sm)}.upgrade_to_pro table th.frmcenter{text-align:center}.widefat th.frm_table_break{background-color:var(--sidebar-color)}h2.frm-h2+.howto{color:var(--medium-grey);max-width:850px;margin:5px 0 20px}.frm-card{width:100%;border-radius:10px;border:1px solid var(--grey-300);opacity:1;transition:opacity 1s}.frm-card-box{max-width:524px;background-color:#fff;border-radius:var(--medium-radius);padding:var(--gap-xl);border:1px solid var(--grey-200);box-shadow:var(--box-shadow-md)}.frm-card-box.frm-has-progress-bar{position:relative;overflow:hidden;border-radius:var(--medium-radius)}.frm-card-box-progress-bar{position:absolute;top:0;left:0;right:0;height:var(--gap-xs);background-color:var(--primary-25)}.frm-card-box-progress-bar>span{position:absolute;top:0;left:0;bottom:0;width:33%;background-color:var(--primary-500)}.frm-card-box-header{display:flex;justify-content:center;margin-bottom:var(--gap-sm)}.frm-card-box.frm-has-progress-bar .frm-card-box-header{margin-top:var(--gap-xs)}.frm-card-box-content>:last-child{margin-bottom:0}.frm-card-box-footer{display:flex;justify-content:end;gap:var(--gap-sm);margin-top:var(--gap-lg)}.frm-card-box-title{font-size:var(--text-xl) !important;font-weight:600 !important;margin-bottom:var(--gap-xs)}.frm-card-box-text{font-size:var(--text-md) !important;color:var(--grey-600) !important;margin-top:0 !important}.frm-fade{opacity:0;transition:all 1s}.frm-addons .frm-card.frm-addon-not-installed{position:relative}.frm-addons .plugin-card-top{min-height:155px;padding-top:var(--gap-lg);overflow:hidden}.frm-addons .plugin-card-top h2{margin-top:0;font-weight:400}.frm-template-row p,.frm-addons .plugin-card-top p{opacity:.8}.frm-addons .plugin-card-top>:not(p):not(h2){display:none}.frm-addons .plugin-card-bottom{padding:5px 20px 20px;text-align:center;background:rgba(0,0,0,0);border-top:none}.frm-addons .plugin-card-bottom,.frm-addons .plugin-card-bottom .button{font-size:15px}.frm-addons .button,.frm-addons .frm-button-tertiary{float:right}.frm-addons .addon-status{float:left;padding-top:4px}.frm-addon-not-installed .frm-activate-addon,.frm-addon-not-installed .frm-deactivate-addon,.frm-addon-not-installed .frm-uninstall-addon,.frm-addon-installed .frm-install-addon,.frm-addon-installed .frm-deactivate-addon,.frm-addon-active .frm-activate-addon,.frm-addon-active .frm-install-addon,.frm-addon-active .frm-uninstall-addon,.plugin-card-pro.frm-addon-active .button,.plugin-card-pro.frm-addon-active .frm-button-tertiary{display:none !important}.frm-save-and-reload-options{margin-top:10px;font-size:13px}.frm-save-and-reload,.frm-save-and-reload+.frm-button-secondary{visibility:visible !important}.addon-status-label{opacity:.7}.frm-addon-active .addon-status-label{color:var(--green);opacity:1}.frm-addon-error{position:absolute;top:55px;left:10px;right:10px;font-weight:700;text-align:center}.frm-new-template.plugin-card-bottom{overflow:visible}#frm-new-template p:first-child{margin-top:0}.frm-admin-page-formidableedit #wpbody-content>*:not(.frm-review-notice):not(.frm_previous_install):not(.frm-banner-alert):not(#frm-svg-icons-pack),#wpbody-content>.updated,#wpbody-content>#update-nag,#wpbody-content>.update-nag,#wpbody-content>.notice,#wpbody-content>.error:not(.frm_previous_install),.frm-white-body .updated,.frm-white-body .notice,.frm_wrap>.wrap>.notice,.frm-white-body .error:not(.frm_previous_install){display:none}.frm-admin-page-formidableedit #frm_builder_page{display:block !important}.frm-white-body .updated,.frm-white-body .error{margin:0;padding:10px 20px}.frm-modal:not(#frm-dismissable-cta) .postbox{max-height:600px;overflow:hidden;margin-bottom:0}.frm-modal .postbox .frm_modal_top,.frm-dialog .frm_common_modal .postbox>div:first-child,.frm-error-modal .frm_modal_top{padding:var(--gap-md) var(--gap-md) 0;position:relative}.frm-modal h2,.frm-modal .postbox .inside h2,.frm-modal .postbox .frm-modal-title,.frm-dialog .frm_common_modal .postbox>div:first-child>div:first-child,.frm-error-modal .frm-modal-title{display:inline-block;font-size:var(--text-lg);color:var(--grey-900);font-weight:600;margin:0;padding:0}.frm-modal h3{font-weight:500}.frm-inline-modal>a.dismiss,.frm-modal .postbox>a.dismiss,.frm-modal .postbox .frm-modal-title+div:last-child,.frm-dialog .frm_common_modal .postbox>div:first-child>div:last-child{position:absolute;top:19px;right:19px;display:flex;z-index:2}body.rtl .frm-inline-modal>a.dismiss,body.rtl .frm-modal .postbox>a.dismiss,body.rtl .frm-modal .postbox .frm-modal-title+div:last-child,body.rtl .frm-dialog .frm_common_modal .postbox>div:first-child>div:last-child{right:unset;left:30px}.frm-info-modal .postbox>a.dismiss,.frm-inline-modal>a.dismiss{right:13px;top:13px}.frm-modal .postbox .frm-modal-title+div:last-child a,.frm-modal a.dismiss .frmsvg,.frm_common_modal .frm_modal_top a .frmsvg{color:var(--grey-500)}.frm-modal .postbox .frm-modal-title+div:last-child a:hover,.frm-modal a.dismiss .frmsvg:hover,.frm_common_modal .frm_modal_top a .frmsvg:hover{color:var(--grey-700)}.frm-modal .frm_modal_content>div.inside,.frm_common_modal .frm_modal_content>div.inside{padding:var(--gap-md);margin:0;font-size:var(--text-sm);color:var(--grey-700)}.frm-modal p{color:var(--grey-900)}.frm_common_modal .postbox{display:flex;flex-direction:column}.frm-modal .postbox>div.inside .cta-inside{overflow-y:auto;height:auto}.frm_modal_footer{padding:0 var(--gap-md) var(--gap-sm);text-align:right}body.frm-body-with-open-modal{overflow-y:hidden}.frm-templates-list{margin-top:0}.frm-templates-list.frm_grid_container li{margin-bottom:0}.frm-templates-list li{vertical-align:top;position:relative;box-sizing:border-box;border-radius:6px;border:1px solid rgba(0,0,0,0);text-align:left}.frm-templates-list li:not(.frm_hidden){display:inline-block}.frm-templates-list.frm-categories-list li{width:100%}.frm-templates-list li.frm-selectable{cursor:pointer}.frm-templates-list li.frm-selectable:hover{background:var(--light-blue);border-color:rgba(65,153,253,.5)}.frm-templates-list li.frm-selectable:hover h3,.frm-templates-list li.frm-selectable:hover p{max-width:calc(100% - 65px)}.frm-templates-list .frm-featured-form{display:flex;width:100%}.frm-templates-list li .frm-featured-form{padding:7px 5px}.frm-templates-list li li>div{padding-left:0}.frm-templates-list li>div>div{vertical-align:middle}.frm-category-icon,.frm-icon-wrapper{background:var(--primary-500);border-radius:var(--small-radius);color:#fff;width:32px;height:32px;font-size:18px;box-sizing:border-box;align-self:center;justify-content:center;align-items:center;display:inline-flex}.frm-templates-list li .frm-category-icon{overflow:hidden}.frm-templates-list li h3,.frm-templates-list li p{text-align:left;margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.frm-templates-list li h3,.frm-templates-list .frm-install-template h3{font-size:var(--text-sm) !important}.frm-templates-list .frm-install-template div{text-align:left}#frm_leave_email,#frm_code_from_email{width:480px;max-width:100%}.frm-templates-list.frm-categories-list li>div>div:last-child{padding-left:0}.frm-hover-icons{position:absolute;right:0;top:17px;max-width:91px;height:100%;box-sizing:border-box;padding:0 10px 0 5px !important;border-radius:var(--small-radius);text-align:right;display:flex;gap:5px}.frm-ready-made-solution .frm-hover-icons{visibility:hidden}.frm-ready-made-solution:hover .frm-hover-icons{visibility:visible}.frm-hover-icons a{width:22px;height:22px;font-size:var(--text-md);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;box-sizing:border-box;line-height:var(--leading);text-align:center}.frm-hover-icons>.frm-preview-form,.frm-hover-icons>.frm-delete-form{border:1px solid var(--primary-500)}.frm-hover-icons>.frm-create-form,.frm-ready-made-solution .frm-hover-icons a{background-color:var(--primary-500)}.frm-hover-icons>a .frmsvg{width:14px;height:14px;vertical-align:baseline}.frm-hover-icons>.frm-preview-form .frmsvg,.frm-hover-icons>.frm-delete-form .frmsvg{color:var(--primary-500)}.frm-hover-icons>.frm-unlock-form{background-color:var(--primary-500)}.frm-hover-icons>.frm-unlock-form .frmsvg{background-color:var(--primary-500)}.frm-ready-made-solution .frmsvg{width:14px;height:14px}.frm-hover-icons .frm-create-form svg,.frm-ready-made-solution .frm-hover-icons svg{color:#fff}.frm-hover-icons .frm-create-form:hover,.frm-ready-made-solution .frm-hover-icons a:hover,.frm-hover-icons>.frm-unlock-form:hover,.frm-hover-icons>.frm-unlock-form:hover .frmsvg{background-color:var(--primary-700) !important}.frm-hover-icons .frm-preview-form:hover,.frm-hover-icons .frm-delete-form:hover{border:1px solid var(--primary-700) !important}.frm-hover-icons .frm-preview-form:hover .frmsvg,.frm-hover-icons .frm-delete-form:hover .frmsvg{color:var(--primary-700) !important}.frm-application-card h4 .frmsvg,.frm-locked-template h3 .frmsvg{height:var(--text-sm);width:var(--text-sm);vertical-align:text-top;color:var(--grey-500)}.frm-modal-back{cursor:pointer;margin-right:4px}.frm-modal-cancel{float:left}.frm-meta-tag,.frm-meta-tag:hover{padding:var(--gap-2xs) var(--gap-xs);border-radius:var(--small-radius);font-weight:600;display:inline-flex;background-color:#d9ebff;gap:2px}.frm-meta-tag.frm-grey-tag,.frm-meta-tag.frm-grey-tag:hover{background-color:var(--sidebar-hover);color:var(--grey-900)}.frm-meta-tag.frm-red-tag,.frm-meta-tag.frm-red-tag:hover{background:var(--error-100);color:var(--error-700)}.frm-meta-tag.frm-orange-tag,.frm-meta-tag.frm-orange-tag:hover{background-color:#fef7f4;color:var(--orange)}.frm-meta-tag.frm-green-tag,.frm-meta-tag.frm-green-tag:hover{background-color:var(--success-500);color:#fff}.frm-entry-status-0,.frm-meta-tag.frm-lt-green-tag,.frm-meta-tag.frm-lt-green-tag:hover{background-color:var(--success-100);color:var(--success-800)}.frm-meta-tag.frm-new-pill{background-color:var(--success-500);vertical-align:text-bottom}.frm_add_field span+.frm-meta-tag{margin-left:0}.frm-entry-status{font-weight:500}.frm-entry-status-1{color:#7a4d05;background:#fff2d2}#frm-create-footer{padding:15px 20px}li .frm-hover-icons .frm-preview-form,.frm-hover-icons .frm-unlock-form,.frm-locked-template .frm-hover-icons .frm-create-form,.frm-modal-back{display:none}.frm-locked-template .frm-hover-icons .frm-unlock-form,li[data-preview] .frm-hover-icons .frm-preview-form{display:inline-flex}.frm-modal-back svg{color:#7f7f7f}#frm-upgrade-body-list-wrapper>div{display:inline-block;width:33.3333333333%;vertical-align:top;text-align:left;margin-bottom:10px}#frm-upgrade-body-list-wrapper ul{padding-left:40px}#frm-upgrade-body-list-wrapper ul li::before{content:"\2022";color:var(--primary-500);display:inline-block;width:1em;margin-left:-1em}.frm-embed-modal-content{padding:var(--gap-md)}.frm-embed-modal-content.frm-loading-page-options{display:flex;justify-content:center}#frm_embed_modal .frm_embed_example{background:var(--sidebar-color);border:1px solid var(--sidebar-hover);border-radius:var(--small-radius);color:var(--grey-900);font-size:var(--text-sm);padding-right:var(--gap-lg);width:100%;height:auto !important;resize:none}#frm_embed_modal textarea.frm_embed_example{padding-bottom:0}.frm-embed-modal-content>div a{position:absolute;right:0;top:0}.frm-embed-modal-content>div{position:relative;margin-bottom:var(--gap-sm)}.frm-embed-modal-content>div:last-child{margin-bottom:0}.frm-embed-modal-content svg[id^=frm_copy_embed_]{position:absolute;bottom:10px;right:10px;cursor:pointer;opacity:.5}.frm-border-info-box,.frm-embed-modal-option{border-radius:var(--small-radius);border:1px solid var(--grey-300);padding:var(--gap-sm);cursor:pointer;display:flex;gap:var(--gap-sm);font-size:var(--text-sm)}.frm-embed-modal-option+.frm-embed-modal-option{margin-top:var(--gap-sm)}.caret.rotate-270,.frm-embed-modal-option .caret{align-self:center;margin-left:auto;transform:rotate(-90deg)}#frm_embed_modal .frm_modal_footer{display:none}#frm_embed_modal.frm-on-page-2 .frm_modal_footer{display:block}.frm-embed-modal-content ul{max-height:300px;overflow-y:scroll}.frm-embed-modal-wrapper.frm-dialog{overflow:visible}#frm-bulk-modal .frm_grid_container{grid-template-columns:repeat(12, 8.33%);grid-gap:0}#frm-bulk-modal .frm8{border-right:1px solid var(--grey-300);padding:10px 20px 10px var(--gap-lg)}#frm-bulk-modal .frm4{padding:10px 0}.frm-inline-modal .howto{margin:5px 0 10px;color:var(--grey)}.frm-inline-modal .frm_code_list+.howto{margin-bottom:0}#frm_bulk_options{height:240px;width:100%;border:none;box-shadow:none;padding:0}.frm-bulk-edit-link{display:flex;align-items:center;justify-content:flex-end;gap:var(--gap-2xs);font-size:var(--text-sm);margin:12px 0 12px auto}.frm-bulk-edit-link .frm-bulk-edit-link{margin:0}.frm-small-add{font-size:var(--text-sm) !important}.frm-small-add span{color:var(--primary-500);font-size:12px;height:12px;width:12px}.frm_no_captcha_text{font-weight:700;color:#a00}.frm_image_from_url{height:50px}h1 .fa-caret-down{font-size:18px}.caret{display:inline-block;width:19px;height:9px;margin-right:-8px;vertical-align:middle}.caret,.wp-admin .frm_wrap select,.frm_wrap .frm_form_builder select,.frm_wrap .ui-autocomplete-input{background:rgba(0,0,0,0) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none'%3E%3Cpath stroke='%2398A2B3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M12.708 8.959 10 11.875 7.292 8.96'/%3E%3C/svg%3E") no-repeat right 8px top 50%;padding-right:var(--gap-lg) !important}.caret{padding-right:var(--gap-xs) !important;background-position-x:5px}.frm-btn-group .caret{float:right;margin-top:calc(var(--text-md)/2)}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.frm_wrap .ui-autocomplete,#frm_adv_info.frm-dropdown-menu,.frm-dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;padding-left:4px;padding-right:4px;margin:var(--gap-xs) 0 0;text-align:left;list-style:none;background:none;background-color:#fff;background-clip:padding-box;border:1px solid var(--grey-100);border-radius:.25rem;box-shadow:var(--box-shadow-lg);max-height:200px;overflow-y:auto;overflow-x:hidden;font-size:var(--text-md);width:auto;min-width:160px}.frm6 .frm-dropdown-menu{min-width:100px;max-width:99%}#frm_bs_dropdown .frm-dropdown-menu{max-width:400px}.field_type_list .frm-dropdown-menu{min-width:150px !important}#frm_field_group_controls .frm-dropdown-menu,.frm-field-action-icons .frm-dropdown-menu{min-width:180px !important}.frm-field-action-icons .frm-dropdown-toggle svg{color:#9ea9b8}.multiselect-container.frm-dropdown-menu,#search-submit .frm-dropdown-menu{min-width:200px !important}.preview .frm-dropdown-menu{min-width:230px !important}.frm-dropdown-menu.dropdown-menu-right{right:0;left:auto}.frm-dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.frm-dropdown-menu>.dropdown-item{margin:0}.frm-select-list-item,.frm_wrap .ui-autocomplete li>div,.multiselect-container button.multiselect-option,.frm-dropdown-menu>.dropdown-item>a,.frm-dropdown-menu .frm_dropdown_li{clear:both;font-weight:400;white-space:nowrap;text-decoration:none;border-radius:var(--small-radius)}.frm-dropdown-menu>.active>a,.frm-dropdown-menu>.active>a:hover,.frm-dropdown-menu>.active>a:focus{text-decoration:none;outline:0}.frm-select-list-item.disabled,.frm-dropdown-menu>.disabled>a,.frm-dropdown-menu>.disabled>a:hover,.frm-dropdown-menu>.disabled>a:focus{color:#999}.frm-select-list-item.disabled:hover,.frm-dropdown-menu>.disabled>a:hover,.frm-dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:rgba(0,0,0,0);background-image:none;cursor:not-allowed}.open>.frm-dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 10px;font-size:var(--text-xs);color:var(--grey-400)}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.dropdown-menu-right>.frm-dropdown-menu,.pull-right>.frm-dropdown-menu{right:0;left:auto}.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.navbar-fixed-bottom .dropdown .frm-dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.btn{border:1px solid #ddd;background:#fff;height:28px;line-height:var(--leading)}a.frm_option_icon::before{color:var(--primary-500);font-size:22px;width:22px;height:22px}a.frm_option_icon:focus::before,a.frm_option_icon:hover::before{color:var(--primary-700)}.frm_top_left .frm-dropdown-toggle{color:#999}.frm-card ol{margin-left:15px}.frm-dropdown-toggle{text-decoration:none}.frm-card .frm-dropdown-toggle{border:1px solid var(--grey-300);border-radius:var(--small-radius);font-size:13px;color:var(--grey-700);padding:7px 20px}.frm_actions_dropdown .frm-dropdown-menu{font-size:var(--text-sm);color:#5f6c72}.frm-dropdown-menu .frm_icon_font{vertical-align:middle;color:#5f6c72;margin-right:3px}.multiselect-container.frm-dropdown-menu{top:auto;left:auto;font-size:var(--text-sm);padding:4px;margin-bottom:3px}#post-body-content+.frm-right-panel h3.accordion-section-title{padding:7px 10px 8px 14px;font-size:var(--text-md);color:var(--grey-700)}.frm-with-line,.accordion-section-content h4{font-size:var(--text-md);font-weight:400;margin:20px -20px 10px;padding:0 20px;color:var(--grey-700);position:relative;border:none !important}.frm-with-line span,.accordion-section-content h4 span{background:#fff;padding:0 var(--gap-xs);position:relative;display:inline-block;z-index:2}.accordion-section-content h4 span{background:var(--sidebar-color)}.frm-right-panel .frm-with-line span{background:var(--sidebar-color) !important;margin-left:-4px}.frm-right-panel .frm-inline-modal .frm-with-line span{background:#fff !important}.frm-with-line::before,.accordion-section-content h4::before{content:"";display:block;position:absolute;border-bottom:1px solid var(--grey-300);left:0;width:100%;top:50%}.control-section .accordion-section-title::after,.customize-pane-child .accordion-section-title::after{top:15px}.accordion-container .frm-dropdown-menu{min-width:40px}.frm-btn-group .multiselect.dropdown-toggle{box-sizing:border-box;min-height:unset;cursor:pointer}.accordion-container .frm-dropdown-menu::before,.accordion-container .multiselect.dropdown-toggle::before{font-family:"s11-fp" !important}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0;width:100%;max-width:250px}.multiselect-container button.multiselect-option{width:100%;text-align:left;border:none;margin-bottom:4px}.multiselect-container button.multiselect-option label{margin-left:5px}.accordion-container .multiselect-container label{padding:3px 19px 3px 7px}.frm-btn-group.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.frm-btn-group.btn-group,.frm-btn-group.btn-group-vertical{display:block}.multiselect-option label{max-width:calc(100% - 22px);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.frm_scale{text-align:center;float:left;margin-right:10px}.frm_scale input{display:block;margin:5px}.frm_multi_fields_container{float:left}.frm_multi_fields_container,.frm_form_builder .frm_form_fields input[type=tel] .frm_form_builder .frm_form_fields input[type=range],.frm_form_builder .frm_form_fields input[type=text]{width:100%;height:auto}.frm_form_builder .frm_time_wrap .frm_time_sep{vertical-align:sub;vertical-align:-webkit-baseline-middle}.frm_form_builder input[type=range]::-webkit-slider-runnable-track{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-moz-range-track{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-ms-fill-lower{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-ms-fill-upper{background-color:var(--blue-border)}.frm-embed-field-placeholder{text-align:center;height:145px;display:flex;align-items:center;justify-content:center}.frm-fake-field{display:block;height:25px;background-color:var(--light-blue);border:1px solid var(--grey-300);margin:10px 0;border-radius:var(--small-radius)}.frm-embed-message{position:absolute;background:#fff;border:1px solid var(--grey-300);color:var(--grey-700);padding:var(--gap-md);font-size:var(--text-lg);max-width:200px;min-width:50%;margin:0 var(--gap-md);overflow:hidden;text-overflow:ellipsis}.frm-summary-message{top:50%;left:50%;padding:15px 0;font-size:var(--text-md);transform:translate(-50%, -50%)}.frm-summary-learn-more{font-size:inherit !important}.frm-single-settings .frm-embed-message{width:100%;position:static;border-radius:var(--small-radius)}#new_fields input[type=text],#new_fields input[type=number],.frm_field_box .frm_form_fields>textarea,.frm_form_fields .frm_form_field>textarea,.frm_form_fields .frm_form_field>input[type=email],.frm_form_fields .frm_form_field>input[type=url],.frm_form_fields .frm_form_field>input[type=number],.frm_form_fields .frm_form_field>input[type=tel],.frm_form_fields .frm_form_field>input[type=text],.frm_form_fields .frm_form_field>input[type=range]{width:100%}.frm_form_fields textarea.wp-editor-area{width:100%;border:none}.frm_form_fields input[type=file],.frm_form_fields input[type=file]:disabled{background:rgba(0,0,0,0);border:none;box-shadow:none;width:auto}.frm_form_fields select{width:auto;max-width:100%}input[type=radio],input[type=checkbox]{width:16px;padding:0}.frm_grid_container>p,.frm_grid_container>p.frm_form_field,.frm_grid_container>div.frm_form_field,#new_fields .frm_grid_container>p{margin-top:8px;margin-bottom:8px;margin-right:0}.frm_grid_container>p>label:only-child,.frm_grid_container>p.frm_form_field>label:only-child,.frm_grid_container>div.frm_form_field>label:only-child,#new_fields .frm_grid_container>p>label:only-child{margin-bottom:0}.frm_grid_container>.frm-has-modal>p:only-child{margin-bottom:var(--gap-xs)}#new_fields div.frm_grid_container>.frm_primary_label{margin-top:8px}#new_fields .frm_primary_label+p,#new_fields .frm_primary_label+.frm6+.frm6,#new_fields .frm_primary_label+.frm6+.frm-inline-modal+.frm6{margin-top:0}.frm_catlevel_2,.frm_catlevel_3,.frm_catlevel_4,.frm_catlevel_5{margin-left:18px}.frm_wrap .frm-fields .auto_width,.frm_form_fields input.auto_width,.frm_form_fields select.auto_width,.frm_form_fields textarea.auto_width{width:auto !important}.frm_form_fields select.auto_width{min-width:60px}.frm_form_fields input:focus,.frm_form_fields select:focus,.frm_form_fields textarea:focus,.frm_focus_field input{background-color:#fff;border-color:#ddd}.frm_form_builder .frm_radio,.frm_form_builder .frm_checkbox{display:block;margin-bottom:2px}.frm_form_builder .frm_radio label,.frm_form_builder .frm_checkbox label{font-size:var(--text-sm)}.horizontal_radio .frm_radio,.horizontal_radio .frm_checkbox{margin-right:5px;display:inline-block}.frm_form_builder .frm_opt_container .frm_radio.frm_image_option label,.frm_form_builder .frm_opt_container .frm_checkbox.frm_image_option label{display:flex;align-items:center;gap:9px;white-space:normal}.frm_form_field.frm_two_col .frm_opt_container,.frm_form_field.frm_three_col .frm_opt_container,.frm_form_field.frm_four_col .frm_opt_container{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:max-content;grid-gap:0 2.5%}.frm_form_field.frm_three_col .frm_opt_container{grid-template-columns:repeat(3, 1fr)}.frm_form_field.frm_four_col .frm_opt_container{grid-template-columns:repeat(4, 1fr)}.frm_form_field.frm_two_col .frm_radio,.frm_form_field.frm_two_col .frm_checkbox,.frm_form_field.frm_three_col .frm_radio,.frm_form_field.frm_three_col .frm_checkbox,.frm_form_field.frm_four_col .frm_radio,.frm_form_field.frm_four_col .frm_checkbox{grid-column-end:span 1}.frm_wrap .with_frm_style .frm_checkbox input[type=checkbox],.frm_wrap .with_frm_style .frm_radio input[type=radio],.frm_wrap input[type=checkbox],.frm-white-body input[type=checkbox],.field-group input[type=checkbox],.frm_scale input[type=radio],.frm_radio input[type=radio],.frm_checkbox input[type=checkbox]{width:15px;min-width:15px;height:15px;border:1px solid var(--grey-300);box-shadow:var(--box-shadow-sm);-webkit-appearance:none}.frm_wrap input[type=radio]{border-color:var(--grey-300);box-shadow:var(--box-shadow-sm)}.frm_wrap input[type=radio]:checked::before{background-color:var(--primary-500)}.frm_wrap .with_frm_style .frm_checkbox input[type=checkbox],.frm_wrap input[type=checkbox],.frm-white-body input[type=checkbox],.field-group input[type=checkbox],.frm_checkbox input[type=checkbox]{border-radius:4px}.frm-white-body input[type=checkbox]:checked,.frm_wrap input[type=checkbox]:checked{background-color:var(--border-color-active, var(--primary-500)) !important;border-color:var(--border-color-active, var(--primary-500)) !important}.frm-white-body input[type=checkbox]:checked:focus,.frm_wrap input[type=checkbox]:checked:focus{border-color:var(--border-color-active, var(--primary-500))}.frm-white-body input[type=checkbox]:checked::before,.frm_wrap input[type=checkbox]:checked::before{content:"";display:block;width:100% !important;height:100% !important;background-image:url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6667 1.5L4.25001 7.91667L1.33334 5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A") !important;background-size:8px !important;background-repeat:no-repeat !important;background-position:center !important;margin:0}.frm_radio input[type=radio],.frm_checkbox input[type=checkbox]{margin-right:5px}.frm_inner_field_container{margin-bottom:10px}.frm_conf_inline .frm_inner_field_container,.frm_conf_inline .frm_inner_conf_container{width:49%;float:left}.frm_conf_inline .frm_inner_field_container{margin-right:2%;clear:both}.frm_inner_field_container>label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.frm_field_box:not(.edit_field_type_divider):hover>.frm_inner_field_container>label,.frm_field_box .divider_section_only:hover>.frm_inner_field_container>label,li.ui-state-default.selected>.frm_inner_field_container>label{max-width:calc(100% - 100px)}.frm-drag-fade{background-color:var(--lightest-grey) !important;border-radius:4px}.frm-drag-fade *{opacity:0}.frm-dragging .divider_section_only,.frm-dragging .frm_field_box{pointer-events:none}.frm_form_settings #op-popup,.frm_form_settings com-1password-op-button,.frm_conf_below .frm_conf_field_container .frm_primary_label,.frm_conf_inline .frm_inner_field_container .frm-show-click a,.frm_conf_below .frm_conf_field_container .frm-show-click a{display:none !important}.frm_conf_inline .frm_inner_field_container .frm-field-action-icons{position:absolute;right:5px}.frm_conf_below .frm_conf_field_container{margin-top:10px}.frm_calc_dec{width:50px}.frm_ext_sc{display:none}.frm_long_input{width:100% !important;box-sizing:border-box}.frmcenter{text-align:center}img.frm_help{margin-left:2px;vertical-align:middle;padding-bottom:2px}.frm_spinner.frm-wait,.frm_spinner.spinner{float:left;visibility:hidden;margin:0 10px}.frm_visible_spinner.frm-wait,.frm_visible_spinner.spinner{visibility:visible;float:none}.frm_form_action_settings .frm_spinner.frm-wait,.frm_form_action_settings .frm_spinner.spinner{visibility:visible;float:none;vertical-align:bottom}.frm_form_action_settings .frm_loading{font-size:15px;text-align:center}.frm_ajax_settings_tab .frm-wait,.frm_ajax_settings_tab .spinner{visibility:visible;float:none;margin-top:20px}.wp-core-ui .frm_loading_button.button-primary.frm-button-primary,.frm_loading_button,.frm_loading_form.frm_button_submit{position:relative !important;opacity:.8;color:rgba(0,0,0,0) !important;text-shadow:none !important}.frm_loading_button:hover,.frm_loading_button:active,.frm_loading_button:focus,.frm_loading_form.frm_button_submit:hover,.frm_loading_form.frm_button_submit:active,.frm_loading_form.frm_button_submit:focus{cursor:not-allowed;color:rgba(0,0,0,0) !important;outline:none !important;box-shadow:none}.frm-wait{margin:20px;width:20px;height:20px;position:relative;display:inline-block}#frm-show-fields .frm-wait:only-child{position:absolute;left:50px;top:30px}.frm-wait::before,.frm_loading_button::before,.frm_loading_form.frm_button_submit::before{content:"";display:inline-block;position:absolute;background:rgba(0,0,0,0);border:1px solid #fff;border-top-color:rgba(0,0,0,0);border-left-color:rgba(0,0,0,0);border-radius:50%;box-sizing:border-box;top:50%;left:50%;margin-top:-10px;margin-left:-10px;width:20px;height:20px;animation:spin 2s linear infinite}.frm-wait::before{border-bottom-color:var(--primary-700);border-right-color:var(--primary-700)}.frm_loading_button.frm-button-secondary::before{border-bottom-color:var(--primary-500);border-right-color:var(--primary-500)}input[type=submit]:focus{outline:none !important}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}label input[type=checkbox],label input[type=radio]{vertical-align:inherit}#editorcontainer #dyncontent{margin:0;width:100%;padding:6px;line-height:var(--leading);border:0 none;outline:none;box-sizing:border-box}.frm_postbox_icon{margin:-6px 0 0 -10px}.frm_form_builder a:hover{text-decoration:underline}.frm_form_builder .widget-title h4{padding:10px 15px}.frm_form_builder .widget-top a.widget-action::after{margin:7px 12px 0}.frmbutton.frm_tgateway{display:none !important}.frm_html_legend pre{display:inline}#ed_fullscreen{display:none !important}.frm_posttax_opt_list{overflow:auto;max-height:200px;background-color:#fff}.frm_posttax_opt_list p.howto{font-size:12px}.frm_border_bottom{border-bottom:1px solid var(--grey-300);margin-bottom:10px;padding-bottom:10px}.frm_posttax_opt_list .frm_border_bottom span.howto{padding-right:10px}.frm_posttax_opt_list .frm_border_bottom input{margin-right:1px}.frm_add_remove div.frm_form_field{padding-bottom:5px}.frm_field_opts_list{max-height:260px;overflow:auto}.frm_white_bg{background-color:#fff}.frm_border_light{border:solid 1px #ddd}#new_fields .form-table input[type=text],#new_fields .form-table select,.form-table .form-field input,.form-table .form-field .quicktags-toolbar input,.form-field input,.form-field .quicktags-toolbar input{width:auto}.frm_aff_link{float:right}.frm_select_box{text-align:center;font-weight:700;width:100%;background-color:rgba(0,0,0,0) !important}.wp-list-table input.frm_select_box{text-align:left;font-weight:400;font-size:inherit !important;border:none;padding:0 !important;background-color:rgba(0,0,0,0) !important}.wp-list-table input.frm_select_box:focus{outline:none;box-shadow:none}.wp-list-table .frm_no_items.frm_select_box{text-align:center;font-weight:700;width:500px;max-width:100%;font-size:inherit}#frm-options-panel{padding:0 var(--gap-sm);color:var(--grey-900);overflow:hidden}.frm-right-panel a.frm_add_logic_link,#frm-options-panel h3{font-size:var(--text-md);font-weight:500;background-color:#fff;border-radius:var(--small-radius);padding:18px var(--gap-sm);margin:2px calc(-1*var(--gap-sm));transition:background-color 200ms ease-out,box-shadow 200ms ease-out,color 200ms ease-out}.frm-right-panel a.frm_add_logic_link .frmsvg,#frm-options-panel h3 .frmsvg{width:13px;height:13px;color:var(--grey-500);transition:transform 300ms ease-in}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):not(:first-of-type),.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):first-of-type:first-child,#frm-options-panel h3:not(.frm-collapsed):not(:first-of-type),#frm-options-panel h3:not(.frm-collapsed):first-of-type:first-child{color:var(--grey-700);box-shadow:var(--box-shadow-sm)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):not(:first-of-type) .frmsvg,.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):first-of-type:first-child .frmsvg,#frm-options-panel h3:not(.frm-collapsed):not(:first-of-type) .frmsvg,#frm-options-panel h3:not(.frm-collapsed):first-of-type:first-child .frmsvg{transform:rotate(-180deg)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div,#frm-options-panel h3:not(.frm-collapsed)+div{padding-top:6px;padding-bottom:6px}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container{padding-bottom:14px}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container>p:first-child,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container>p:first-child{margin-top:var(--gap-sm)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container>p:first-child.frm6+.frm6,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container>p:first-child.frm6+.frm6{margin-top:var(--gap-sm)}.frm-right-panel a.frm_add_logic_link.frm-collapsed,#frm-options-panel h3.frm-collapsed{color:var(--grey-500);background-color:rgba(0,0,0,0)}.frm-right-panel a.frm_add_logic_link:hover,#frm-options-panel h3:hover{color:var(--grey-700);background-color:#fff;box-shadow:var(--box-shadow-sm)}.frm-right-panel a.frm_add_logic_link:focus-visible,#frm-options-panel h3:focus-visible{outline:1px solid var(--primary-500) !important;outline-offset:-1px}.frm-right-panel a.frm_add_logic_link:focus{outline:auto}.frm_field_key{background-color:#f7f7f7}#frm_form_editor_container #edit-slug-box{padding:0}.frm-alt-table{position:relative;width:100%;border-collapse:collapse;margin-top:.5em;font-size:15px}#form_show_entry_page .frm-alt-table:not(.frm-zebra-striping)::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#fff}.frm-alt-table th{width:200px}.frm-alt-table tr,.frm-alt-table tr.frm-odd{background-color:rgba(0,0,0,0)}.frm-alt-table tr.frm-even{background-color:var(--sidebar-color)}.frm-alt-table th,.frm-alt-table td{background-color:rgba(0,0,0,0);vertical-align:top;text-align:left;padding:20px}.frm-alt-table h3{margin-bottom:0}.form-field .frm_cb_button{height:22px;line-height:20px;margin-bottom:10px;margin-right:5px}.edit_field_type_select .frm_option_val_label{margin-left:12px}.frm_rte{background:url(../images/rte.png) no-repeat}.frm_rte .howto{margin:10px 0 46px}.subform_section{margin:25px}.subform_section,.subform_section label,.subform_section input{opacity:80}.subform_section .frm_sortable_field_opts{display:none}#frm_form_editor_container .subform_section .frm_primary_label{display:block}.subform_section.subform_break{border-top:1px dashed #ccc}.button-secondary.frm_html_field{background-color:#ededed;padding:10px 20px;line-height:inherit;width:auto;height:auto !important;border-radius:0;box-sizing:content-box}.frm_html_field_placeholder{margin-bottom:10px;text-align:center}.recaptcha_placeholder{border:1px solid #d3d3d3;width:300px}.turnstile_placeholder{width:300px}.frm_sorting .frm_rte textarea{width:653px;background:#fff;margin:1px 0 0;border:1px solid #dfdfdf;border-top:none;border-radius:0;float:none !important}.frm_full_rte textarea{width:98%;padding:0}.frm_field_box{padding:5px;min-height:20px;margin:10px 0}.frm_indent_opt,td.frm_indent_opt{padding-left:25px}.frm_charts object{background:rgba(0,0,0,0)}.frm_charts h2{height:34px}.frm_single_option.ui-sortable-placeholder,li.sortable-placeholder{border:none;margin:0;visibility:visible !important;box-shadow:2px -10px 0 2px var(--primary-500)}#frm_form_editor_container>ul>.frm_single_option.ui-sortable-placeholder,#frm_form_editor_container>ul>li.sortable-placeholder{width:calc(100% - 5px) !important;height:0 !important}#frm_form_editor_container>ul>li>ul{position:relative}#frm_form_editor_container>ul>li>ul>li.sortable-placeholder,#frm_form_editor_container ul.start_divider>li>ul>li.sortable-placeholder{position:absolute;top:20px;bottom:0}.edit_field_type_divider+li.sortable-placeholder{box-shadow:2px 5px 0 2px var(--primary-500)}.start_divider li.sortable-placeholder{box-shadow:2px -5px 0 2px var(--primary-500)}.frm-is-collapsed+.sortable-placeholder{box-shadow:2px 15px 0 2px var(--primary-500)}.frm_single_option.ui-sortable-placeholder{box-shadow:0 0 1px 1px var(--primary-500)}.frm_sorting>li.edit_field_type_end_divider:first-child,.frm-show-click,li.ui-state-default.edit_field_type_divider .frm-show-click{display:none}.frm_form_field.ui-sortable-helper .frm-field-action-icons,.frm_form_field.ui-sortable-helper .frm_form_fields,.frm_form_field.ui-sortable-helper .frm_description,.frm_form_field.ui-sortable-helper .description{display:none}.frm_form_field.ui-sortable-helper .frm_primary_label,.frm_form_field.ui-sortable-helper .frm_inner_field_container{margin:0 !important}.frm-single-settings .frm-show-click{display:block !important}.frm-show-hover,.frm_single_visible_hover,li.ui-state-default.edit_field_type_divider .frm-show-hover{opacity:0;transition:opacity .15s ease-in-out}#frm-show-fields .frm-field-settings-open .frm-show-hover{opacity:1}.frm_sortable_field_opts{margin-top:5px}.frm_single_option{clear:both;margin:0 !important;padding-bottom:5px}.frm_single_option input[type=radio],.frm_single_option input[type=checkbox]{margin-top:0}.frm_single_option .frm-with-right-icon input[type=text]+.frmsvg{position:relative;right:27px;width:14px;height:14px;padding:0;margin:var(--gap-2xs) 0 0}.frm_product_price_wrapper,.frm_image_preview_wrapper,#new_fields .frm_single_option select,#new_fields .frm_single_option input[type=text]{width:calc(100% - 106px) !important;flex-grow:1}.frm-right-panel .frm_single_option a.frm_remove_tag,.frm_single_option a{padding-left:7px}.frm_single_option:hover .frm_single_visible_hover{opacity:100}.frm_single_option .frm-drag{font-size:23px;width:24px;height:24px;margin-left:-6px;margin-right:var(--gap-xs);color:var(--grey-500)}.frm_single_option .frm-drag::before{vertical-align:middle}.frm-drag,.frm_single_option.ui-sortable-helper{cursor:move}.frm_single_option .frm_option_key{margin-left:19px !important}.frm_option_key input[type=text]{margin-top:var(--gap-xs) !important;margin-left:11px !important}.frm_option_key input[type=checkbox]+input[type=text],.frm_option_key input[type=radio]+input[type=text]{margin-left:30px !important}li.ui-state-default.selected .frm-show-click,li.ui-state-default.selected.edit_field_type_divider .frm-show-click{display:inline;vertical-align:top}.frm_field_box:not(.edit_field_type_divider):hover>.frm_inner_field_container>.frm-show-hover,.frm_field_box .divider_section_only:hover>.frm_inner_field_container>.frm-show-hover,li.ui-state-default.selected>.frm_inner_field_container>.frm-show-hover,li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-show-hover{opacity:100}li.frm_field_box>ul.frm_grid_container{position:relative}.frm_sorting span.ui-icon{width:16px}body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) .frm_image_options .frm_image_option_container{--field-border-width: 1px;--border-color: var(--grey-300);--border-color-active: var(--primary-500);--border-radius: var(--small-radius)}#form_show_entry_page .frm_file_link,#form_show_entry_page .frm_image_option_container{display:inline-flex;flex-wrap:nowrap;flex-direction:column;text-align:center;align-items:center;width:150px;margin-right:10px;margin-bottom:10px}#form_show_entry_page .frm_image_option_container img{width:150px;height:150px;object-fit:cover}#form_show_entry_page .frm_file_link img{max-width:150px;height:auto}#form_show_entry_page .frm_file_link~br{display:none}#form_show_entry_page .frm_upload_label{padding:10px}#form_show_entry_page.frm_wrap .postbox{overflow:hidden}.frm_image_option_container .frm_image_placeholder_icon svg{height:150px}.frm_list_entry_page .frm_file_link,.frm_list_entry_page .frm_image_option_container.frm_label_with_image{display:block;text-align:center}.frm_list_entry_page .frm_image_option_container img{width:75px;height:75px;object-fit:cover}.frm_list_entry_page img{max-width:100%;height:auto}.frm_image_option_container .frm_empty_url{background-color:var(--sidebar-color)}.frm_list_entry_page .frm_image_option_container .frm_text_label_for_image{display:block;padding:5px 0 10px}.frm_list_entry_page .frm_upload_label,.frm-summary-page-wrapper .frm_text_label_for_image{display:block}#frm-welcome .frm_image_options .frm_image_option_container,#form_global_settings .frm_image_options .frm_image_option_container{background:var(--sidebar-color)}#frm-welcome .frm_image_option_container svg,#form_global_settings .frm_image_option_container svg{max-width:calc(100% - 20px)}#frm-new-template .frm_image_option_container svg{height:50px;margin:10px auto 0}.frm_image_option_container{position:relative}.frm_text_label_for_image>svg{width:30px;position:absolute;top:5px;right:calc(50% - 15px)}.frm_single_option .frm_option_key{margin-top:17px}.frm_single_option .frm_option_key.frm_image_preview_wrapper{margin-top:var(--gap-xs)}.frm_image_data{margin-left:var(--gap-sm);display:flex;flex-direction:column;font-size:var(--text-sm);justify-content:space-around;min-width:0}.frm_image_styling_frame{display:flex;align-items:stretch;margin-left:36px;margin-bottom:var(--gap-xs);width:100%}.frm_image_styling_frame img{height:54px;width:54px;min-width:auto;min-height:auto;border-radius:3px;object-fit:cover;object-position:center}.frm_image_styling_frame .frm_email_attachment_icon img{height:auto;width:auto;max-width:54px}.frm_image_preview_title{color:var(--grey-500);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0;flex:1 1 auto}.frm_wrap .frm_choose_image_box{cursor:pointer;color:var(--primary-500);background-color:#fff;margin-left:32px;text-align:center;width:100%}.frm-type-ranking .frm_option_key .frm_choose_image_box{margin-left:11px !important}.frm_wrap .frm_choose_image_box:hover{background:#fff}a.frm_remove_image_option,.frm_remove_image_option{color:var(--grey-400);cursor:pointer}a.frm_remove_image_option:hover .frmsvg,a.frm_remove_image_option:hover,.frm_remove_image_option:hover{color:rgba(40,47,54,.8)}.frm-form-setting-tabs{margin-top:var(--gap-sm) !important}.frm-right-panel>.postbox{background-color:rgba(0,0,0,0);border:none;box-shadow:none;margin:0}.frm-right-panel .postbox.frm_with_icons .inside,.frm-right-panel .postbox .inside,.frm-right-panel .inside{font-size:var(--text-md);padding:15px 20px 20px;color:var(--grey-700)}.frm-right-panel .misc-pub-section{padding:var(--gap-xs) 0;position:relative}.frm-right-panel .inside a,.frm-form-setting-tabs a{font-size:var(--text-md);color:var(--grey-700);padding:var(--gap-sm);display:block}.frm-form-setting-tabs a{color:var(--grey-900);padding:var(--gap-sm) var(--gap-md)}.frm-right-panel .inside a{padding:0;color:var(--primary-500);display:inline-block}.frm-right-panel .inside a:hover{color:var(--primary-700)}.frm-form-setting-tabs a:hover{background:var(--sidebar-hover);color:var(--grey-900)}.frm-right-panel .inside i,.frm-form-setting-tabs a i,.frm-form-setting-tabs a .frmsvg{margin:0 5px;display:inline-block;width:20px;height:20px;color:var(--grey-500)}.frm-form-setting-tabs a .frmsvg{margin:0}.frm-right-panel .inside a:hover i,.frm-right-panel .inside a:hover .frmsvg,.frm-form-setting-tabs a:hover .frmsvg,.frm-form-setting-tabs a:hover span{color:var(--grey-700)}.frm_settings_form .tabs-panel{padding:0 25px}#form_settings_page .tabs-panel,.frm_settings_form .tabs-panel{max-height:initial !important;min-height:50px !important}#frm_adv_info .tabs-panel{min-height:0 !important;overflow-x:hidden;padding:0;border:none;background:rgba(0,0,0,0)}select.frm_cancelnew,input.frm_enternew{width:175px}.frm_posttax_opt_list{border:1px solid var(--grey-300);padding:var(--gap-md);border-radius:var(--small-radius);margin:5px 0 5px var(--gap-md)}.frm-right-panel .wp-picker-open+.wp-picker-input-wrap{position:absolute;margin-left:calc((100% - 35px)*-1);margin-top:1px;width:calc(100% - 36px)}.frm-right-panel .wp-picker-container input[type=text].wp-color-picker{border:none;padding:5px 8px;font-family:inherit;color:var(--grey-700);font-size:var(--text-md);width:100%;line-height:var(--leading)}.frm-right-panel .wp-picker-input-wrap .wp-picker-clear{display:none !important}.frm-right-panel .wp-picker-holder{position:absolute;z-index:999}.frm-right-panel .wp-picker-input-wrap label{margin-bottom:0}.frm-right-panel .wp-picker-container .wp-color-result.button{width:100%;overflow:hidden;margin:0 !important;height:var(--h-md) !important;padding:0 0 0 var(--gap-lg) !important;border-radius:var(--small-radius);border-color:var(--grey-300)}.frm-right-panel .wp-color-result-text{line-height:var(--leading) !important;font-size:var(--text-md);background:#fff !important;color:var(--grey-900);padding:5px 8px;border-color:var(--grey-300);text-align:left}.frm-right-panel .color-alpha{width:var(--gap-lg) !important}.frm_grid_container .wp-picker-container{width:100%;position:relative}.wp-picker-container button.wp-color-result{border:1px solid var(--grey-300) !important}.wp-picker-container .wp-picker-input-wrap input.hex.wp-color-picker{max-width:100%;position:relative}.frm_end .wp-picker-holder{margin-left:-145px}.frm_end.frm6 .wp-picker-holder{margin-left:-86px}.frm_toggle_opt{padding:0;white-space:normal;display:inline;vertical-align:middle;font-weight:400}.frm_on_label,.frm_off_label{color:var(--grey-700)}.frm_toggle{position:relative;display:inline-block;width:40px;height:var(--h-xs);vertical-align:middle}.frm_toggle_block{display:inline-flex !important;gap:var(--gap-xs);align-items:center}.frm_toggle input,.frm_toggle_block input{display:none !important}.frm_toggle_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--grey-200);transition:.4s;border-radius:30px}.frm_toggle_slider::before{box-sizing:border-box;content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none'%3E%3Cpath stroke='%2398A2B3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m10.063 3.938-6.126 6.124M3.938 3.938l6.124 6.124'/%3E%3C/svg%3E");position:absolute;left:2px;bottom:2px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:20px;line-height:20px;background-color:#fff;border-radius:50%;transition:.4s;box-shadow:var(--box-shadow-md)}input:checked+.frm_toggle .frm_toggle_slider{background-color:var(--primary-500)}input:focus+.frm_toggle .frm_toggle_slider{box-shadow:var(--box-shadow-md)}input:checked+.frm_toggle .frm_toggle_slider::before{transform:translateX(16px);content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none'%3E%3Cpath stroke='%234199FD' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4.52 7.437 1.313 1.459L9.48 5.104'/%3E%3C/svg%3E")}input[disabled]+.frm_toggle_slider,input[disabled]+.frm_toggle .frm_toggle_slider{pointer-events:none;cursor:text;opacity:.5}.frm_toggle_opt~.frm_toggle .frm_toggle_slider::before{content:"" !important}.rtl .frm_toggle_opt{padding:0 8px}.rtl .frm_toggle_slider::before{left:17px}.rtl input:checked+.frm_toggle .frm_toggle_slider::before{transform:none !important;left:1px}.frm_toggle_off,.frm_toggle_on{display:none;color:#fff;z-index:999;position:absolute;font-size:10px;line-height:20px;left:6px}.frm_toggle_off{display:inline;left:auto;right:5px;color:var(--dark-grey)}.frm_toggle_long{width:80% !important;height:28px;display:inline-block !important}.frm_toggle_long .frm_toggle_slider{background:var(--primary-700);box-shadow:0 0 0 2px var(--primary-700)}.frm_toggle_long .frm_toggle_off,.frm_toggle_long .frm_toggle_on{width:50%;text-align:center;font-size:13px;line-height:28px}.frm_toggle_long .frm_toggle_on{left:0}.frm_toggle_long .frm_toggle_off{right:0}.frm_toggle_long .frm_toggle_slider::before{width:50%;left:0;top:0;border-radius:var(--border-radius) 0 0 var(--border-radius);height:100%;background-color:#fff;color:var(--primary-color);content:"" !important}.frm_toggle_long input:checked+.frm_toggle_slider::before{transform:translateX(101%);border-radius:0 var(--border-radius) var(--border-radius) 0}input:checked+.frm_toggle_slider+.frm_toggle_on{display:inline}input:checked+.frm_toggle_slider+.frm_toggle_on+.frm_toggle_off{display:none}.frm_toggle_long .frm_toggle_on,.frm_toggle_long input:checked+.frm_toggle_slider+.frm_toggle_on+.frm_toggle_off{display:inline;color:var(--primary-500);font-weight:400}.frm_toggle_long .frm_toggle_off,.frm_toggle_long input:checked+.frm_toggle_slider+.frm_toggle_on{color:#fff;font-weight:700}.tabs-panel{height:auto !important;min-height:260px}.tabs-panel.panel_secondary{min-height:20px;margin-top:10px;margin-left:150px}label.frm-example-icon{margin-right:20px !important;display:inline-block !important}#frm_stripe_icon{border-radius:5px}#captcha_settings .frm_primary_label{margin-top:var(--gap-sm)}.frm-long-icon-buttons{display:flex;gap:var(--gap-md)}.frm-long-icon-buttons>label{border:1px solid var(--grey-300);color:var(--grey-700);border-radius:var(--small-radius);display:flex;padding:var(--gap-sm);gap:var(--gap-sm);justify-content:center;align-items:center;width:calc(33% - var(--gap-sm));box-sizing:border-box}.frm-long-icon-buttons>label:hover{color:var(--primary-500)}.frm-long-icon-buttons input[type=radio]{display:none}.frm-long-icon-buttons input[type=radio]:checked+label{border-color:var(--primary-500);box-shadow:0 0 0 1px var(--primary-color)}.frm-long-icon-buttons label>svg{height:21px}.frm-example-icon .frmsvg,.frm-example-icon i{height:20px;width:20px;font-size:20px;color:var(--grey-700)}.frm_license_msg{margin-top:0}.frm_authorized_box .frm-show-unauthorized,.frm_unauthorized_box .frm-show-authorized{display:none}.edd_frm_status_icon.frmsvg{margin:0 5px}.edd_frm_license_row .frm_action_success .frmsvg{color:green}.edd_frm_license_row .frm_action_error .frmsvg{color:#d54e21}#form_global_settings .tabs-panel .num svg{display:none}.frm_no_items{margin:0 auto 50px;text-align:center;color:var(--grey-700);max-width:500px}.frm-subscribe{margin:var(--gap-lg) 0}.frm_inbox_count{color:#fff;border-radius:50%;display:inline-block;margin-right:8px;font-size:11px;text-align:center;min-width:18px;height:18px;margin-left:2px;vertical-align:text-bottom}#payments_settings .frm_payments_section .form-table td{padding-left:0;padding-right:0}#payments_settings .frm_payments_section .form-table{margin-top:0}#frm_authnet_general_settings>tr:first-of-type>td:first-of-type{padding-top:0}#frm_authnet_general_settings h3{margin-bottom:0}.frm_payment_settings_tab .frmsvg{height:22px}.frm_payment_settings_tab[for=frm_toggle_paypal_settings] .frmsvg{width:83px}.frm_payment_settings_tab[for=frm_toggle_authorize_net_settings] .frmsvg{width:99px}.frm_payment_settings_tab[for=frm_toggle_square_settings] .frmsvg{width:89px}.frm_payment_settings_tab[for=frm_toggle_stripe_settings] .frmsvg{width:53px}.frm-lite .xml_opts .frm-export-xml-items{display:none}.csv_opts #frm_csv_col_sep{width:45px}#frm_advanced td.frm_left_label{width:20%;padding-right:2px}#frm_where_options select{max-width:200px}#frm_where_options select.frm_insert_where_options{width:30%}#frm_where_options select.frm_where_is_options{width:20%}#frm_where_options span.frm_where_val{width:32%;display:inline-block;position:relative}#frm_where_options span.frm_where_val .frm_tooltip_icon,#frm_where_options span.frm_where_val .frm_help{left:-4px;position:absolute}#frm_where_options span.frm_where_val.frm_hidden{display:none}#frm_where_options span.frm_where_val input,#frm_where_options span.frm_where_val select{width:90%;margin-left:10px}#frm_where_options{min-height:31px}.tabs-panel.active .tabs-panel,.frm_settings_form .tabs-panel .tabs-panel{border:none;padding:0}.frm-feature-banner{background:var(--grey-700);color:#fff;border-radius:var(--small-radius);padding:20px;margin:10px 0}.frm-feature-banner p{font-size:var(--text-sm)}.frm-feature-banner .dismiss{margin-top:-10px;margin-right:-10px}.frm-feature-banner .dismiss svg{color:#fff}.frm-feature-banner .frm-big-icon{padding-right:20px;float:left;min-height:60px}.frm-big-icon svg{height:60px;width:60px}.frm-feature-banner p{margin-top:0}.frm_98_width{width:100% !important}h2.frm-h2,.frm_form_settings h2{border-bottom:1px solid var(--grey-300);color:var(--grey-900);font-weight:400 !important;padding:9px 0 5px;margin:0}.frm_settings_form h3,.frm_form_settings h3,.frm_form_settings span.frm_add_logic_link{font-size:var(--text-md);border-top:1px solid var(--grey-300);padding-top:var(--gap-sm);margin:var(--gap-sm) 0;font-weight:400;text-transform:uppercase;color:var(--medium-grey);display:block}.frm_form_settings .howto{color:var(--grey-500);font-size:var(--text-sm);margin-top:8px}.frm_form_settings .advanced_settings .form-table{margin-top:0}.frm_form_settings td.frm_175_width{width:175px}.frm_form_settings #success_url{width:95%}.frm_wrap .ui-autocomplete{padding:3px 0;max-height:310px}.frm_wrap .ui-widget{font-family:inherit}.frm_wrap .ui-autocomplete li{padding:2px 4px;background:none;color:var(--grey-700);border:none;font-weight:400}.frm_wrap .ui-autocomplete .ui-menu-item-wrapper.ui-state-active{border:none;font-weight:inherit}.frm_select_with_label{margin:7px 0 0}#frm-insert-fields-box,#frm-conditionals{max-height:none}#frm-conditionals,#frm-adv-info-tab{display:none;max-height:355px}#frm-insert-fields-box ul.subsubsub,#frm-conditionals ul.subsubsub{float:right;margin:0}#frm-insert-fields-box ul.alignleft,#frm-conditionals ul.alignleft{margin:4px 0 0}#frm_adv_info ul.frm_code_list.frm-full-hover{clear:both;max-height:215px;overflow:auto}#frm-insert-fields-box ul.frm_code_list li.clear.frm_block{height:10px}#frm_adv_info .frm_noallow{display:none}#frm_adv_info #frm-conditionals .frm_noallow{display:block}#frm_html_tab.frm_hidden{display:none}#frm_html_tab.active{display:inline}.frm_email_reply_container select,.frm_email_reply_container input,.form-table td.frm_150_width{width:170px}#frm_notification_settings .frm_no_top_padding{padding-top:0}.frm_email_settings.frm_email_settings.widgets-holder-wrap{overflow:auto;box-shadow:none}#frm_notification_settings .widget-top .widget-action,#frm_form_editor_container .widget-top .widget-action{border:0;margin:0;padding:8px;background:0 0;cursor:pointer;outline:0}#frm_notification_settings .widget-top .widget-action{padding-top:13.5px}#frm_email_addon_menu{border:1px solid var(--grey-300);padding:var(--gap-sm);border-radius:4px;margin:var(--gap-md) 0 var(--gap-sm)}#frm_email_addon_menu .frm-search{float:right;margin:0}#frm_email_addon_menu h3.frm-no-border{clear:none;padding-top:7px}.frm_email_settings .widget .widget-top{background-color:var(--sidebar-color)}.frm_email_settings .widget .widget-top,.frm_email_settings .widget .widget-top h3{cursor:pointer !important}.frm_email_settings .widget{margin-bottom:var(--gap-sm)}.frm_form_action_settings .widget-top{box-shadow:none;border-color:var(--grey-300);border-radius:var(--small-radius);background:var(--lightest-grey);color:var(--grey-700)}.frm_form_action_settings:hover .widget-top{border-color:var(--grey)}.frm_form_action_settings.open .widget-top{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}.frm_form_action_settings.open:hover .widget-top{border-color:var(--grey-300)}.frm_form_action_settings>.widget-inside{display:none}.frm_form_action_settings.open>.widget-inside{display:block}.frm_form_action_settings .widget-inside{min-height:25px;padding:15px;border-color:var(--grey-300);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.frm_form_action_settings .widget-title h4,.frm_form_action_settings .widget-title h3{display:inline-block;border-bottom:none;padding:10px 10px 5px;font-size:var(--text-md);font-weight:500}#frm_email_addon_menu h3{margin:0 0 var(--gap-sm);clear:both}.frm_single_api_settings p>label{display:inline}.frm_form_action_icon{margin-right:5px}.frm_actions_list{margin:0;display:inline}.frm_actions_list li{float:left;width:15.6%;margin:10px .5% 15px;height:100px;text-align:center}.frm-limited-actions .frm-group-heading,.frm-limited-actions #frm-hide-groups,.frm-all-actions #frm-show-groups,.frm-limited-actions .frm-not-installed:not(.frm-search-result):not(.frm-default-show){display:none}label.frm_action_events{padding-left:15px}#frm-hide-groups,#frm-show-groups{font-size:var(--text-md);float:right}.frm_actions_list a:active,.frm_actions_list a:focus{outline:none}.frm_actions_list a{font-size:var(--text-sm);color:var(--grey-700);word-break:break-word}.frm_actions_list span.frm-outer-circle{background-color:var(--grey-100);padding:10px;text-align:center;border-radius:50%;display:block;width:30px;height:30px;margin:0 auto 15px;line-height:1}.frm_email_settings .widget-title h4{color:var(--grey-700)}.frm_disabled_action .widget-title h4{color:var(--grey)}.frm_actions_list a .frmsvg,.frm_actions_list a i{height:18px;width:18px;font-size:18px;padding:2px;color:var(--lightest-grey)}span.frm-inner-circle,.frm_email_settings .widget-title .frm_form_action_icon{background-color:var(--grey-400);border-radius:50%;display:inline-block;text-align:center;line-height:1}span.frm-inner-circle{background-color:var(--primary-700);height:22px;width:22px;padding:4px;color:#fff}.frm-inner-circle svg{fill:currentColor}.frm_email_settings .widget-title .frm_form_action_icon{height:15px;width:15px;padding:5px;color:#fff;vertical-align:middle}.frm_actions_list .frmsvg,.frm_actions_list i::before,.frm_email_settings .widget-title .frm_form_action_icon i,.frm_email_settings .widget-title .frm_form_action_icon .frmsvg{height:15px;width:15px;vertical-align:text-top}.frm_actions_list i::before{vertical-align:middle}.frm_email_settings .widget-title:hover .frm_form_action_icon{background-color:var(--grey)}span.frm-inner-circle.frm-inverse{background-color:rgba(0,0,0,0);color:var(--primary-700);padding:0;height:30px;width:100%}.frm_actions_list span.frm-inverse i,.frm_actions_list span.frm-inverse .frmsvg{color:var(--primary-700);height:30px;width:30px;font-size:30px;padding:0}.frm_actions_list i.frm-inverse::before{height:30px;width:100%;font-size:30px}.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse{background:#fff;padding:0;height:24px;width:24px}.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse .frmsvg,.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse i::before{color:var(--grey-400);height:24px;width:24px;font-size:24px}.frm_email_settings .widget-title:hover .frm_form_action_icon.frm-inverse .frmsvg,.frm_email_settings .widget-title:hover .frm_form_action_icon.frm-inverse i::before{color:var(--grey-500)}.frm_email_icons{padding:10px 0 5px 6px;font-size:20px}.frm_email_icons a{margin-left:8px;color:var(--grey);opacity:0;transition:all .2s ease}.frm_email_icons a .frmsvg{color:var(--grey)}.frm_email_icons a:hover,.widget-top:hover .frm_email_icons a{opacity:1}.frm_actions_list a.frm_inactive_action{color:var(--grey)}.frm_inactive_action .frm-inner-circle,.frm_actions_list .frm_inactive_action i{opacity:.4}table td,.form-table tr td{vertical-align:top}#new_fields .form-table tr td{display:block;padding:7px 0 0}#new_fields .form-table tr td:first-child{margin:0}#new_fields .form-table tr td:last-child{margin-bottom:9px}.form-table #list-table th{text-align:center}#form_settings_page th,#form_settings_page td,.frm_settings_form td,#frm_notification_settings .frm_form_action_settings td p{padding:7px 0}#permissions_settings_settings .frm_grid_container{align-items:center}#frm_notification_settings .form-table>tbody>tr>th{width:150px;font-weight:400;padding-right:10px}#frm_notification_settings .frm_single_email_settings .form-table>tbody>tr>th{width:80px}#frm_notification_settings table tr td:first-child{padding-left:0}#frm_notification_settings table tr td:last-child{padding-right:0}#frm_notification_settings .frm_left_label{float:none;width:auto !important}.frm-fields .frm_autoresponder_rows select{width:auto}#frm_notification_settings .frm_with_left_label,#frm_notification_settings .frm_left_label+textarea,#frm_notification_settings .frm_left_label+select,#frm_notification_settings .frm_left_label+input[type=text]{width:100%}#frm_notification_settings .frm_email_buttons{padding:var(--gap-2xs);background:var(--light-blue);color:var(--primary-700);border-radius:var(--small-radius);border-color:var(--blue-border);line-height:1;height:auto;min-height:12px;font-size:var(--text-xs);box-shadow:none}p.frm_bcc_cc_container,p.frm_reply_to_container{float:right;z-index:1;position:relative}p.frm_bcc_cc_container{margin:14px 0 0}p.frm_reply_to_container{margin:-4px 0 0}.frm_email_row .frm_cancel1_icon::before{vertical-align:bottom}.frm_cc_row.frm_email_row .frm-with-right-icon,.frm_bcc_row.frm_email_row .frm-with-right-icon,.frm_reply_to_row.frm_email_row .frm-with-right-icon{width:calc(100% - 20px);display:inline-block}.frm_email_row .frm_remove_field .frm_close_icon{position:relative;fill:var(--grey-500);vertical-align:middle}.frm-inline-select,p.frm-inline-select,.frm_logic_rows .frm-collapse-me{line-height:var(--h-md) !important}.frm_logic_row{padding:var(--gap-xs) 0 0}.frm-single-settings ul.frm_sortable_field_opts{border-bottom:1px solid var(--grey-200);padding-bottom:var(--gap-xs);margin-bottom:var(--gap-xs)}.frm-single-settings .frm-add-other svg.frm_add_tag{position:relative;top:5px;margin-right:4px}.frm-single-settings .frm_single_option .frm_remove_tag::before{content:""}.frm-single-settings input[type=checkbox][readonly]{opacity:.5;pointer-events:none}.advanced_settings .frm_logic_row{margin:14px 0}.advanced_settings .frm_logic_row select,.advanced_settings .frm_logic_row input{max-width:30% !important}.frm_form_action_settings .frm_logic_row p{margin-top:0;margin-bottom:0;padding:0}#poststuff .widgets-holder-wrap .frm_form_action_settings .widget-inside{padding-bottom:0}#poststuff .frm_form_settings .widgets-holder-wrap .widget-inside{padding-left:15px;padding-right:15px}#form_global_settings h3{font-size:var(--text-sm);margin-top:25px}#form_global_settings .tabs-panel+h3{margin-top:0;border:none}#poststuff .frm_form_settings .widget-inside h3,#poststuff .frm_form_settings .advanced_settings h3,#poststuff .frm_settings_form h3,#frm_advanced .inside h3{border-top:1px solid #eee;border-bottom:none;margin:15px -15px 0;padding:8px 15px;font-size:var(--text-sm)}#poststuff .frm_form_settings h3.frm_first_h3,#poststuff h3.frm_first_h3{border:none;margin-top:0}h3.frm_add_logic_link{margin-bottom:0 !important}a.frm_add_logic_link.frm_hidden{display:none}a.frm_add_logic_link.frm_hidden+.frm_logic_rows{height:auto}.frm_icon_font{color:#a0a0a0;color:var(--grey)}.frm-fields label .frm_icon_font{font-size:inherit}.misc-pub-revisions.frm_icon_font,.misc-pub-revisions.frm_icon_font:hover{color:inherit}.postbox.frm_with_icons .inside{padding:0;margin:0}.frm_add_tag::before{content:"\e602"}.frm_remove_tag::before{content:"\e600"}.frm_logic_row .frm1>.frm_remove_tag{padding:0}.frm_tooltip_icon::before{font-size:13px;vertical-align:top}.frm_help svg,.frm_help .frmsvg{height:13px;width:13px;vertical-align:top;color:var(--grey-400)}.form-field input[type=text].frm_other_input{width:30%;margin-left:10px}.frm-add-other{text-align:right}.frm-add-other .frm_add_tag{vertical-align:20%}.frm_action_icon{margin:5px 0 0 5px}span.frm_action_icon{margin:0 4px 0 0}.frm_action_icon:active{outline:none}a.frm_action_icon:hover{text-decoration:none}.frm_action_icon.frm_error_icon::before{content:"\e608"}.frm_inactive_icon.frm_action_icon.frm_error_icon::before{content:"\e606"}.frm-field-action-icons{text-align:right;position:absolute;top:2px;right:2px;max-width:100%}.frm-field-action-icons .frm-field-id{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:80px;max-width:calc(100% - 50px);position:relative;top:2px}.frm-field-action-icons>a{font-size:var(--text-md);width:17px}.frm-field-action-icons a:hover{text-decoration:none}.frm-field-action-icons .dropdown{display:inline-block}.frm-field-action-icons>a .frmsvg{color:var(--grey-500) !important;font-size:17px;width:17px;height:17px}.frm-field-action-icons>a .frmsvg,.frm-field-action-icons>div>a .frmsvg{vertical-align:baseline}.edit_field_type_end_divider .frm-field-action-icons{display:none !important}.frm-move{cursor:grab}span.howto{display:inline}.frm_import_message{margin:15px 0;line-height:2.5}.frm_sorting .form-field .widget input[type=text],.frm_sorting .form-field .widget input[type=number],.frm_sorting .form-field .widget select,#wpcontent .frm_sorting .form-field .widget select,.frm_sorting .form-field .widget textarea{width:auto}.tagchecklist span.no_taglist{display:inline;float:none;line-height:15px;margin-right:0;font-size:inherit}.tagchecklist .frm_exclude_cat_list span{display:inline}.tagchecklist span a::before{line-height:23px;text-align:start}.frm_form_action_settings .frm_email_row .frm_tooltip_icon{position:relative;bottom:2px}.frm_no_entries_form{padding:60px 0}.frm_no_entries_form .frm_no_entries_header{font-size:20px;margin-bottom:10px}.frm_no_entries_form .frm_no_entries_text{line-height:var(--leading)}#form_entries_page #the-list .no-items{height:240px}#form_reports_page img.frm_no_reports{max-width:100%}.frm_wrap .google-visualization-table .gradient,.frm_wrap .google-visualization-table-tr-head,.frm_wrap .google-visualization-table-tr-odd,.frm_wrap .google-visualization-table-tr-odd.google-visualization-table-tr-over{background:var(--lightest-grey)}.frm_wrap .google-visualization-table-tr-over{background:#fff}.frm_wrap .google-visualization-table-table th,.frm_wrap .google-visualization-table-table td{border-right-width:0;padding:10px !important}.frm_wrap .google-visualization-table-tr-head,.frm_wrap .google-visualization-table-tr-head th{white-space:pre-wrap;font-size:var(--text-md);font-weight:400 !important;text-align:left}.frm_wrap .google-visualization-table-td-number{text-align:inherit}#form_reports_page .postbox{text-align:center;float:none;display:inline-block;margin-right:2%;width:20%;min-width:175px}#form_views_page img.frm_no_views{max-width:100%}.frm_field_opts_popup{min-width:300px;background-color:#fff}.frm_field_opts_popup #wpadminbar{display:none}.frm_prepop{width:100%;list-style:none;overflow:auto;margin:0;max-height:295px}.frm_prepop li{margin:0}.frm_prepop li a{display:block;text-decoration:none;cursor:pointer;padding:5px 20px}.frm_prepop li a:hover{background:var(--sidebar-color)}#frm_form_editor_container #frm_form_key_box{width:13em;max-width:30%}#frm_form_editor_container #frm_form_desc{width:70%}#frm_form_editor_container .ui-widget-content{display:none;padding:15px}#frm_form_editor_container .ui-widget-content label{float:left;width:170px;text-align:right;padding-right:5px;clear:both}#frm_form_editor_container .ui-widget-content label.nofloat{clear:none;float:none;margin-left:10px}#frm_form_editor_container .ui-state-default{color:#333 !important}.frm_green{color:var(--green) !important}#frm_form_editor_container .ui-state-default a.frm_orange,.frm-right-panel a.frm_orange,#postbox-container-1 a.frm_orange{color:#d54e21}#styling_settings input[type=checkbox],#styling_settings input[type=radio]{border:solid 1px #bbb}#styling_settings .widget .widget-top,#frm_form_editor_container .widget .widget-top{cursor:pointer}.frm_sorting .widget,.frm_settings_page .widget{background:#fff}.frm_sorting .widget-title h4{font-weight:400}.frm_sorting .widget,#postbox-container-1 .widget,.frm-right-panel .widget,.frm_settings_page .widget{margin-bottom:0}.frm_settings_page .widget-inside{padding:0 5px 5px}.frm_sorting .widget,.widget-inside,.frm_sorting .form-field .widget{display:none}#frm-show-fields{min-height:350px;padding:0 0 35px;margin:0;position:relative}.frm-has-fields #frm-show-fields{min-height:50px}#frm_builder_page .frm-lite-credit-card-element,body.frm-admin-page-styles .frm-lite-credit-card-element{position:relative}#frm_builder_page .frm-lite-credit-card-element>div,body.frm-admin-page-styles .frm-lite-credit-card-element>div{position:absolute;top:calc(50% - 1px);transform:translateY(-50%);right:10px;color:#d0d4dd}#frm_builder_page #frm_field_group_controls{position:absolute;padding:5px;border-radius:4px 4px 0 0;text-align:right;box-sizing:border-box;right:0;top:-28px;height:28px;z-index:3}.frm-field-group-hover-target,.frm-has-open-field-group-popup,#frm_builder_page #frm_field_group_controls,.frm-selected-field-group{background:rgba(65,153,253,.04)}.frm-selected-field-group{position:relative}#frm_builder_page #frm_field_group_controls>span:first-child{margin-right:5px}#frm_builder_page #frm_field_group_controls svg{pointer-events:none}#frm_field_group_controls{visibility:hidden}.frm-field-group-hover-target #frm_field_group_controls{visibility:visible}#frm_field_group_controls .dropdown-item a span{color:var(--grey-700)}#frm_field_group_controls .dropdown-item a:hover{text-decoration:none}.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider{display:none !important}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default,.frm_sorting>li.ui-state-default,.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider:hover{border:1px solid rgba(0,0,0,0);font-weight:400 !important;background-color:rgba(0,0,0,0);background-image:none;padding:5px;margin:0;box-shadow:none;display:block;text-align:inherit !important;overflow:visible;position:relative}#frm-show-fields li.frm_cancel_sort{display:none}.divider_drop{text-align:center}.divider_drop .howto .frm_icon_font{font-style:normal}.show_repeat_sec{display:none}.repeat_section .show_repeat_sec{display:inline-block;margin:5px 0 0}.repeat_section tr.show_repeat_sec{display:table-row}.repeat_format .frm_repeat_label,.repeat_formattext .frmsvg,.repeat_formattext i{display:none}.frm_button{text-decoration:none;border:1px solid #eee;padding:5px;color:#444;vertical-align:middle;box-shadow:none !important}a.frm_button:hover{text-decoration:none !important}.frm_button,.frm_button .frm_icon_font::before{font-size:13px;vertical-align:middle}.frm_button .frmsvg{width:13px;height:13px}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default{padding:0;margin:0}ul.start_divider{padding:8px 13px 0 8px;min-height:115px;transition:all .4s linear}.frm-section-collapsed .frm_no_section_fields,.frm-section-collapsed ul.start_divider{height:0;min-height:0 !important}.frm-section-collapsed ul.start_divider{overflow:hidden}.frm-section-collapsed .frm_no_section_fields{overflow:hidden;padding:0;opacity:0}.frm-section-collapsed .divider_section_only .frm-collapsed-label{display:inline}.frm-page-collapsed .frm_clone_icon,.frm-page-collapsed .frm_delete_field,.frm-page-collapsed .frm_clone_field,.frm-section-collapsed .frm_clone_icon{opacity:.5;cursor:not-allowed}.edit_field_type_summary .frm_more_options_li:nth-child(2){display:none !important}.edit_field_type_submit .frm_more_options_li:not(:last-child){display:none !important}.frm_no_section_fields:not(.frm_block)+ul.start_divider{padding:0;min-height:132px}.frm_sorting li.ui-state-default .divider_section_only{padding:6px;margin-top:-10px;border:2px solid rgba(0,0,0,0);border-radius:var(--small-radius);z-index:2;position:relative}.divider_section_only>.frm_inner_field_container{padding:5px 0;margin:0}.frm-collapsed-label,.divider_section_only>.frm_inner_field_container .frm_form_fields{display:none}.frm-section-collapsed .divider_section_only::after,.divider_section_only::before{content:"";display:block;padding:2px 0;line-height:1px;border-top:2px solid var(--grey-300);top:-2px;position:absolute;width:100%;transition:.5s border-color ease-in-out}.frm-section-collapsed .divider_section_only::after{top:auto;bottom:-6px}.frm-section-collapsed .divider_section_only:hover::after,li.selected.frm-section-collapsed .divider_section_only::before,li.selected.frm-section-collapsed .divider_section_only::after,.divider_section_only:hover::before,li.selected .divider_section_only::before{border-color:rgba(0,0,0,0)}.frm_sorting li.ui-state-default.edit_field_type_divider{overflow:visible;position:relative;padding:0 0 0 20px;margin:25px 0 0 -5px;border-left:1px solid var(--primary-700);transition:border .7s ease-out}.frm-section-collapsed{border-left-color:rgba(0,0,0,0) !important}.frm_sorting li.edit_field_type_end_divider,.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider:hover{margin:0 0 var(--gap-sm)}.frm-first-page .frm_prev_page{display:none}#frm_builder_page .frm_remove_form_row.frm_button,#frm_builder_page .frm_add_form_row.frm_button{border-radius:var(--small-radius);border:1px solid var(--blue-border)}#frm_builder_page .frm_remove_form_row .frmsvg,#frm_builder_page .frm_remove_form_row i::before,#frm_builder_page .frm_add_form_row .frmsvg,#frm_builder_page .frm_add_form_row i::before{color:var(--primary-700)}.frm-preview-buttons .frm_button_submit{margin:0 5px}.frm-page-break{border-top:1px dashed var(--primary-700);margin-top:var(--gap-lg);position:relative}.frm-page-break::before,.frm-page-break::after{content:"";position:absolute;background-color:#fff;border-radius:50%;border:1px solid var(--primary-700);text-rendering:auto;-webkit-font-smoothing:antialiased}.edit_field_type_divider .frm-divider-icon.frmsvg{padding:2px;position:absolute;left:-12px;color:#fff;background-color:var(--primary-700);border-radius:50%}.edit_field_type_divider .start_divider .frm-divider-icon.frmsvg{height:8px;width:8px;padding:0;bottom:-4px;left:-24.5px;color:var(--primary-700);background-color:#fff}.edit_field_type_divider.selected .frm-divider-icon.frmsvg,.edit_field_type_divider:hover .frm-divider-icon.frmsvg{background:var(--primary-500)}.edit_field_type_divider.selected .start_divider .frm-divider-icon.frmsvg,.edit_field_type_divider:hover .start_divider .frm-divider-icon.frmsvg{background-color:#fff;color:var(--primary-500)}.frm-page-break::before,.frm-page-break::after{width:8px;height:8px;top:-6px;border-color:var(--grey)}.frm-page-break::after{right:0}#frm-fake-page .frm-page-break{border-color:var(--grey)}#frm-fake-page{padding:0 5px}.frm_sorting li.edit_field_type_divider:hover,.frm_sorting li.edit_field_type_divider.selected{border-left-color:var(--primary-500)}.frm-section-collapsed::after{border-color:rgba(0,0,0,0) !important;color:rgba(0,0,0,0)}.frm-page-break .frm-collapse-page.button{margin-left:46%;margin-top:-16px;padding:6px 12px !important}#frm-fake-page.frm-page-collapsed{margin-bottom:0}.frm-page-collapsed{position:relative;overflow:visible !important;margin-bottom:var(--gap-lg)}.frm-collapse-page .frmsvg,.frm-collapse-page .frm_arrowdown6_icon{width:var(--text-sm);height:var(--text-sm);font-size:var(--text-sm);text-align:center;margin-left:2px;color:currentColor;transition:transform 300ms ease-in-out}.frm-page-collapsed .frm-collapse-page .frmsvg{transform:rotate(180deg)}#frm-fake-page .frm_arrowdown6_icon{color:currentColor}.frm-collapsed i::before,.frm-page-collapsed .frm_arrowdown6_icon::before{content:"\e913"}.frm-collapse-section svg{fill:var(--primary-color);transition:transform .2s ease-out,fill .2s ease-out}.frm-collapse-section:hover svg{fill:var(--primary-700)}.frm-section-collapsed .frm-collapse-section svg{transform:rotate(-90deg)}.open .widget-top .widget-title-action button .frmsvg{transform:rotate(90deg)}.widget-top .widget-title-action button .frmsvg use{color:var(--grey)}.frm-collapsed+.frm-collapse-me{overflow:hidden !important}.frm-collapse-me{padding-bottom:10px}.frm-collapse-me.frm_grid_container:has(.dropdown-toggle.multiselect){position:relative;z-index:1}.frm-collapsed+div{height:0;padding:0}.frm-collapsed+div.frm-collapse-me{display:none}.frm-collapsible{display:flex;justify-content:space-between;align-items:center;font-weight:700;padding:var(--gap-xs) 0;margin:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.frm-collapsible.frm-collapsed{font-weight:400}.frm-collapsible:not(.frm-collapsed) .frmsvg{transform:rotate(-180deg)}h4.frm-collapsible{font-size:var(--text-md)}.frm-collapsible+.frm-collapse-me{padding-bottom:0}.frm-collapsible:focus-visible{outline:1px solid var(--primary-500)}.frm_sorting .divider_section_only>.frm_ipe_field_label{font-size:116%}#frm_form_editor_container .edit_field_type_break .frm_primary_label.frm_ipe_field_label.button{width:150px;text-align:center;margin-bottom:3px;display:block}tr.frm_options_heading td{padding-bottom:0}.frm_sorting .widget-inside .form-table td p,.frm_sorting .widget-inside .form-wrap label{padding:10px 0}.frm_no_fields,.frm_no_section_fields{text-align:center;position:absolute;color:var(--medium-grey);font-size:var(--text-md);box-sizing:border-box;border:1px dashed var(--grey-300);outline:2px solid rgba(0,0,0,0)}.frm-over-droppable+.frm_no_fields{border-style:solid;border-color:var(--primary-500);outline-color:var(--primary-500)}.frm_no_section_fields{display:none;margin:0;padding:20px 0 0;width:calc(100% - 20px);height:121px;transition:all .4s linear}.frm-empty-fields .frm_updated_message~.frm_no_fields{top:60px}#frm_form_editor_container:not(.frm-has-fields) #frm-show-fields>.frm_field_box:last-child{visibility:hidden}.frm-has-fields .frm_no_fields{display:none}#frm_form_editor_container:not(.frm-has-fields) #frm_drag_placeholder{display:none}#frm-form-button{display:none;margin:0 7px 25px}.frm-has-fields #frm-form-button{display:block}.frm-large-plus.frmsvg{color:var(--primary-700);height:45px;width:45px}.frm_no_section_fields p{color:var(--grey);font-size:15px}.frm_no_fields{top:0;width:calc(100% - 24px);min-height:320px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-md);padding:var(--gap-md);border:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Crect width='99%25' height='99%25' fill='none' stroke='%23D0D5DD' stroke-width='1' stroke-dasharray='8,8' rx='8' ry='8' x='0.5%25' y='0.5%25' stroke-linecap='square' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");border-radius:var(--medium-radius);margin:var(--gap-sm) 12px}.frm_no_fields img{margin-left:calc(-1*var(--gap-lg))}.frm_no_fields .frm_drag_inst{font-size:20px;font-weight:600;margin:0 0 12px}.frm_no_fields p{color:var(--grey-600);font-size:var(--text-md);margin:0}.frm_product_price_wrapper{display:inline-block;vertical-align:middle}.frm_prod_type_single .frm_product_price_wrapper{width:100%}#new_fields .frm_product_price_wrapper input:first-child{width:60% !important;float:left}#new_fields .frm_product_price_wrapper input:nth-child(2){width:37% !important;float:right}li.frm_single_option{padding-bottom:var(--gap-sm);border-bottom:0}.frm_prod_type_single input[type=radio],.frm_prod_type_single .frm_drag_icon,.frm_prod_type_single .frm_sortable_field_opts li:nth-child(n+3),.frm_prod_type_single .frm_sortable_field_opts .frm_remove_tag,.frm_prod_type_single .frm_form_field:not(.frm_product_type):not(.frm_sep_val_product),.frm_prod_type_single .frm-bulk-edit-link,.frm_prod_type_user_def.frm_grid_container,.frm_prod_options_heading.frm_prod_user_def{display:none}.frm_prod_type_single .frm-ai-generate-options-modal-trigger{display:none !important}.frm_prod_type_single .frm_option_key{margin-left:0 !important}.frm_prod_type_single .frm_option_key input[type=checkbox]+input[type=text],.frm_prod_type_single .frm_option_key input[type=radio]+input[type=text]{margin-left:0 !important}.plugin-card-bottom .frm-trash{color:#a00}.frm-fields p>.frm_inline_label,.frm_inline_label{padding-left:3px;margin-right:12px;display:inline-block}.frm_left_label{clear:both;float:left;width:32% !important;margin-right:2% !important;line-height:2em}table td.frm_left_label{float:none;line-height:inherit;padding:5px 0 5px 2%}.frm_left_label.frm_alignright{padding-right:10px;text-align:right}.frm-fields .frm_left_label+textarea,.frm-fields .frm_left_label+select,.frm-fields .frm_left_label+input[type=text],.frm_with_left_label{width:66%}td.frm_left_label+td{width:66%;padding-top:0}#html_settings label{display:block}#html_settings .frm_field_html_box{width:100%}.frm-has-required .frm-required{color:var(--error-500)}ul.frm-category-tabs{margin-top:2px}.frm-category-tabs>li a,.frm-category-tabs>li a:active{outline:none;box-shadow:none;display:flex;gap:var(--gap-xs);align-items:center}.frm-category-tabs>li.active .frmsvg,.frm-category-tabs>li.active i,.frm-category-tabs>li.active span,.frm-category-tabs>li.active a{color:var(--primary-500)}.frm_wrap .manage-menus{margin-top:0;border:none;border-bottom:1px solid var(--grey-300);background:var(--lightest-grey)}.general_settings .postbox .manage-menus{border-top:none;border-left:none;border-right:none}.frm-postbox-no-h3{padding-top:10px}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default{color:var(--grey-900)}.no_repeat_section .frm_sorting>li.ui-state-default.edit_field_type_end_divider:hover{box-shadow:none}.frm-selected-field-group li.ui-state-default,.start_divider.frm_sorting li.ui-state-default.frm_not_divider.selected,.start_divider.frm_sorting li.ui-state-default.frm_not_divider:hover,.frm_sorting li.ui-state-default.frm_not_divider:hover,.frm_sorting li.ui-state-default.ui-sortable-helper,.frm_sorting li.ui-state-default.edit_field_type_divider .divider_section_only:hover,.frm_sorting .repeat_section li.ui-state-default.edit_field_type_end_divider:hover,.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only,.frm_update_msg,.frm_sorting li.ui-state-default.frm_not_divider.selected,.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only{border-color:var(--primary-500);transition:.5s border-color ease-in-out}.frm_sorting li.ui-state-default.frm_not_divider.selected{box-shadow:0 0 1px 0 var(--primary-500)}.frm_sorting li.ui-state-default{transition:.7s box-shadow ease-in-out,.7s height linear}.frm_sorting li.ui-state-default.frm-newly-added{box-shadow:inset 0 0 2px 1px var(--blue-border)}.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-show-hover{visibility:visible !important;display:inline !important}.edit_field_type_end_divider>label{display:none !important}.frm_email_actions.feature-filter{font-weight:700;border:1px solid #dfdfdf;background-color:#eee;padding:3px 5px 2px;font-size:var(--text-md);line-height:20px}.frm_update_msg{border-style:solid;margin:10px 0;color:#21759b;padding:8px 15px;border-radius:4px}.frm_update_msg.wrap{margin:10px 20px 0 2px}#frm-insert-fields-box .frm_update_msg{margin-right:.9em}.frm_update_msg a{font-weight:700}.widefat td{width:auto}.widefat .column-id{width:3.7em}.widefat .column-show_count{width:5em}.widefat .column-shortcode{width:9em}.toplevel_page_formidable .column-shortcode div{display:flex;gap:var(--gap-xs)}.widefat .column-entries,.widefat .column-link{width:10%;text-align:center}.widefat .column-form_key,.widefat .column-created_at{width:10%}.frm-white-body .search-box,.frm_wrap .frm-search{float:right;margin:0;clear:right}.frm-white-body .search-box,.frm-search{min-width:32%;position:relative;display:flex;gap:var(--gap-sm);align-items:center}.frm-inline-modal .frm-search,#frm_adv_info .frm-search{float:none;width:100%;clear:both;margin:var(--gap-xs) 0}.frm-button-group a{margin:0 7px !important}.frm_has_textarea .frm-with-right-icon{display:block}.frm-with-left-icon,.frm-with-right-icon{position:relative}i.frm-show-box,i.frm-show-inline-modal,.frm-with-left-icon i,.frm-with-right-icon i:not([class*=mce-]),.frmsvg.frm-show-box,.frmsvg.frm-show-inline-modal,.frm-with-left-icon .frmsvg,.frm-with-right-icon .frmsvg,.frm-search>.frmsvg,.frm-search span:not(.multiselect-selected-text):not(.multiselect-native-select){position:absolute;padding:0 14px;pointer-events:none;left:0;color:var(--grey-400);font-size:var(--text-xs)}.frm-search>.frmsvg,.frm-search span:not(.multiselect-selected-text):not(.multiselect-native-select){padding-left:var(--gap-xs);padding-right:var(--gap-xs)}.frm-search>.frmsvg{box-sizing:unset}.frm-with-right-icon .frmsvg,.frm-with-right-icon i:not([class*=mce-]){right:0;top:-3px;left:auto;padding:0 10px 0 5px}.frm_form_settings .frm-with-right-icon .frmsvg{top:0}.frm_form_settings .wp-editor-container .frm-with-right-icon .frmsvg,#frm_builder_page .wp-editor-container .frm-with-right-icon .frmsvg{top:auto;bottom:var(--gap-sm)}.frm_form_settings .tmce-active .wp-editor-container .frm-with-right-icon .frmsvg,#frm_builder_page .tmce-active .wp-editor-container .frm-with-right-icon .frmsvg{bottom:var(--gap-lg)}.frm_form_settings .frm_has_textarea .frm-with-right-icon .frmsvg{top:auto;bottom:6px}.frmsvg.frm-show-box,.frmsvg.frm-show-inline-modal,i.frm-show-box,i.frm-show-inline-modal{top:auto;background-color:var(--primary-50);color:var(--primary-500);border-radius:6px;padding:var(--gap-2xs);margin:5px;margin-bottom:0;z-index:1;cursor:pointer;pointer-events:initial}.frm-open+.frm-inline-modal{top:-10px;margin-bottom:0}.frm-open+.frm-inline-modal.frm-modal-no-dismiss .inside>.frm-search:first-child{margin-top:var(--gap-sm)}.frm_grid_container>.frm-open+.frm-inline-modal{top:-4px}.frm_grid_container>.frm-open+.frm-inline-modal.frm-modal-no-dismiss{top:0 !important}.frm-with-left-icon input{padding-left:37px !important}.frm_wrap .frm-with-right-icon textarea,.frm_wrap .frm-with-right-icon input,.frm_wrap .frm-with-right-icon input[type=text]{padding-right:var(--gap-md)}#frm-show-fields .frm-with-left-icon .frmsvg,#frm-show-fields .frm-with-left-icon i{padding-top:10px}.frm-search input[name=s],.frm-search .dropdown-toggle,.frm-search input.frm-search-input{color:var(--grey-800);border-color:var(--grey-300);border-radius:var(--small-radius);box-shadow:var(--box-shadow-xs)}.frm-search input[type=search],.frm-search input[type=text]{padding-left:var(--gap-lg) !important}.frm-search .dropdown-toggle{width:100%;float:none;max-width:200px;background:rgba(0,0,0,0);padding:7px;padding-left:33px !important;min-height:32px;text-align:inherit;overflow:hidden;text-overflow:ellipsis}.frm-search #search-submit a{color:var(--grey-800)}.frm-search #search-submit .caret{opacity:.7}.frm-white-body .search-box input[name=s],#wpwrap .frm-search input[type=search]{flex:1;font-size:var(--text-md);line-height:var(--text-xl);padding:var(--gap-xs)}span.multiselect-selected-text{white-space:nowrap;display:inline-block;max-width:90%;text-overflow:ellipsis;overflow:hidden}.frm-not-set input{color:var(--primary-500) !important;font-size:13px}.frm-not-set .frmsvg,.frm-not-set i{color:var(--primary-700);opacity:1}.post-type-frm_display select[name=m]+#post-query-submit,select[name=m]{display:none}.frm_shortcode_select optgroup option{margin-left:1em}.frm_shortcode_select optgroup{padding-top:5px}.frm_shortcode_select .frm_subopt{margin-left:2em}.misc-pub-section a.edit-frm_shortcode,.misc-pub-section a.edit-form-status{float:none;font-size:13px}.frm-grid{border-collapse:collapse;border:none;margin-right:10px}.frm-grid td,.frm-grid th{padding:5px;border:1px solid #000}.post-type-frm_display #poststuff #post-body.columns-2{margin-right:var(--big-sidebar)}.post-type-frm_display #post-body.columns-2 #postbox-container-1{margin-right:calc(var(--big-sidebar)*-1);width:calc(var(--big-sidebar) - 40px)}.post-type-frm_display #poststuff #post-body.columns-2 #side-sortables{width:100%}#frm_dyncontent .hndle,#frm_dyncontent .handlediv{display:none !important}.post-type-frm_display .meta-box-sortables .frm_form_nav>li>a,.post-type-frm_display .frm_form_nav .nav-tab-active{padding:0 2px 5px;line-height:1.4}.post-type-frm_display #advanced-sortables h2.hndle,.post-type-frm_display #side-sortables h2.hndle,.post-type-frm_display #normal-sortables h2.hndle{border-bottom:1px solid var(--grey-300);margin:10px 0 0 !important;padding:0 25px 8px}.post-type-frm_display #side-sortables h2.hndle{margin-top:0 !important;padding-top:10px}.post-type-frm_display #post-body-content{margin-top:var(--gap-lg)}.post-type-frm_display.edit-php #wpbody-content>.wrap{margin:0}.post-type-frm_display .postbox .hndle,.post-type-frm_display .postbox{border-color:var(--grey-300)}.post-type-frm_display #postbox-container-1 .postbox,.post-type-frm_display #postbox-container-2 .postbox{border-radius:var(--small-radius);border-color:var(--grey-300);box-shadow:none}.post-type-frm_display #side-sortables .postbox{border-radius:0;border-top-width:0;margin-bottom:0}.post-type-frm_display #side-sortables .misc-pub-section{padding:15px 20px 10px}.post-type-frm_display .misc-pub-section .frmsvg,.post-type-frm_display #post-body .misc-pub-post-status::before,.post-type-frm_display #post-body #visibility::before,.post-type-frm_display .curtime #timestamp::before,.post-type-frm_display #post-body .misc-pub-revisions::before,.post-type-frm_display span.wp-media-buttons-icon::before{color:var(--grey)}.post-type-frm_display #frm_top_bar+#poststuff #submitdiv #publishing-action,.post-type-frm_display #frm_top_bar+#poststuff #submitdiv #minor-publishing-actions,.post-type-frm_display #frm_top_bar+#poststuff #edit-slug-box,.post-type-frm_display .wrap h1.wp-heading-inline,.post-type-frm_display .wrap>.page-title-action{display:none}.post-type-frm_display #poststuff h2.nav-tab-wrapper{padding-left:10px;margin-bottom:0;padding-bottom:0}.post-type-frm_display .nav-menus-php .wrap{margin:10px 0 0}.post-type-frm_display .nav-menus-php .wrap p{padding-left:12px;padding-right:12px}.post-type-frm_display .nav-tab{display:inline-block;background-color:#f4f4f4}.post-type-frm_display .nav-tab.frm_hidden{display:none}.post-type-frm_display .nav-tab:hover{background-color:#e4e4e4}.frm_order_row,.frm_where_row{margin-bottom:7px;line-height:30px}.frm-single-settings .frm_prod_field_opt_cont{margin-top:initial;margin-bottom:20px}select.texture{display:none}.post-type-frm_display #wp-content-editor-tools,#wp-content-editor-tools{background-color:rgba(0,0,0,0)}.post-type-frm_display #major-publishing-actions{border-color:var(--grey-300);background:var(--sidebar-color)}.post-type-frm_display #frm_adv_info{width:calc(var(--big-sidebar) - 40px);height:calc(100vh - 32px);overflow:hidden}.post-type-frm_display #frm_adv_info:not(.frm_fixed){top:0 !important}.post-type-frm_display #frm_adv_info.frm_fixed{position:fixed;z-index:9999;top:32px}.post-type-frm_display #frm_adv_info ul.frm_code_list.frm-full-hover{max-height:calc(100vh - 180px)}.frm_col_one{margin-right:4%;clear:both}ul .frm_col_one{float:left}ul .frm_col_two{float:right}ul.frm_two_col{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:var(--gap-sm)}.frm_two_col li{margin-bottom:0}.frm-info-modal a,.frm-info-modal ul,.frm-info-modal p,.frm-info-modal,.settings-lite-cta a,.settings-lite-cta ul,.settings-lite-cta{color:var(--grey-500);font-size:var(--text-md);box-shadow:none !important}.frm-info-modal h3,.settings-lite-cta h3{font-size:17px !important}.frm-green-icons .frmsvg{color:var(--green)}.frm-info-modal .postbox .inside,.settings-lite-cta .postbox .inside{padding:var(--gap-md);margin:0}.cta-inside a{color:var(--orange)}.info-modal-inside a.frm-standard-link{color:var(--primary-500)}.info-modal-inside a.frm-standard-link:hover{color:var(--primary-700)}.frm_no_p_margin>p{margin:0}.frm_code_list a.button{display:block;text-align:center;font-size:11px;overflow:hidden}#frm-navbarDrop+.frm_code_list.frm-full-hover{margin:var(--gap-xs) 0 0;min-width:300px;max-height:256px}.frm_code_list.frm-full-hover li{margin:0}.frm-select-list-item,.frm_wrap .ui-autocomplete li>div,.multiselect-container button.multiselect-option,.frm-dropdown-menu>.dropdown-item>a,.frm-dropdown-menu>.dropdown-item>a:visited,.frm-dropdown-menu>.dropdown-item>a:link,.frm-dropdown-menu .frm_dropdown_li,.frm_code_list.frm-full-hover a{display:flex;color:var(--grey-700);padding:5px 10px;font-size:var(--text-md);gap:var(--gap-xs);align-items:center}.multiselect-container button.multiselect-option.disabled{opacity:.5}.frm_code_list.frm-full-hover a span{max-width:83px;margin-right:var(--gap-xs);margin-left:auto}.frm_code_list.frm-full-hover a{border-radius:var(--small-radius)}.frm_code_list.frm-full-hover a:not(#frm-insert-condition),.frm_code_list.frm-full-hover a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.frm_code_list.frm-full-hover a:focus span:last-child{outline:1px solid var(--primary-500);outline-offset:var(--gap-2xs)}.frm_code_list.frm-full-hover.frmcenter a{display:block}#frm-layout-classes frm-full-hover a span{max-width:45%}.frm-select-list-item.active,.frm-select-list-item:hover,.frm_wrap .ui-autocomplete li div.ui-state-active,.frm_wrap .ui-autocomplete li.ui-state-focus,.multiselect-container button.multiselect-option.active,.multiselect-container button.multiselect-option:hover,.frm-dropdown-menu>.dropdown-item>a:hover,.frm_code_list.frm-full-hover a:hover span,.frm_code_list.frm-full-hover a:hover{background:var(--primary-25);color:var(--primary-500)}.frm-select-list-item .frmsvg,.frm-dropdown-menu>.dropdown-item>a .frmsvg{opacity:.8}.frm-select-list-item:hover .frmsvg,.frm-dropdown-menu>.dropdown-item>a:hover .frmsvg{opacity:1}.frm-dropdown-menu.frm_code_list>li>a{padding:3px 15px;width:300px}#frm_edit_box_content_modal .frm-with-search,.frm-dropdown-menu .frm-with-search{padding:var(--gap-xs) 10px 0}.frm-dropdown-menu .subsubsub{padding:0 10px}.frm_grid_container{overflow:visible}.frm_code_list.frm_grid_container{grid-gap:var(--gap-xs)}.frm_code_list.frm_grid_container li{width:auto;margin:0}.frm_code_list.frm_grid_container a{display:block;font-size:var(--text-md) !important;font-weight:500;text-align:center;color:var(--primary-500);background-color:var(--light-blue);border:1px solid var(--primary-300);border-radius:var(--small-radius);padding:10px 0;box-shadow:var(--box-shadow-sm)}.frm_code_list.frm_grid_container a:hover{background-color:var(--primary-500);color:#fff}.frm_code_list.frm_grid_container a:focus-visible{outline:2px solid var(--primary-500);outline-offset:-1px}.frm-single-settings .frm_code_list.frm-full-hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover{padding:0;margin:var(--gap-xs) -10px 0}.frm-single-settings .frm_code_list.frm-full-hover>li>a,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a{font-size:var(--text-md);color:var(--grey-900);padding:var(--gap-xs) 12px}.frm-single-settings .frm_code_list.frm-full-hover>li>a span,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span{margin:0}.frm-single-settings .frm_code_list.frm-full-hover>li>a span:first-child,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span:first-child{max-width:130px}.frm-single-settings .frm_code_list.frm-full-hover>li>a span:last-child,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span:last-child{max-width:120px;margin-left:auto}.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover{font-weight:500}.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover,.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover .frmsvg,.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover span,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover .frmsvg,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover span{color:var(--primary-500)}#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover{margin:var(--gap-xs) 0 0}#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover a .frmsvg{width:20px;height:20px}.frm_field_list #frm-insert-fields{max-height:none;font-size:var(--text-sm)}.frm_field_list #frm-insert-fields .button a{display:block;max-width:95%;overflow:hidden}#frm-insert-fields{padding:0 var(--gap-xs);overflow:hidden}#frm-insert-fields .frm-search{float:none;margin:0 0 var(--gap-md);width:auto}#frm-insert-fields li,#frm-insert-fields li a{text-decoration:none;font-weight:500;font-size:var(--text-md) !important;color:var(--grey-900)}#frm-insert-fields li.frm_show_upgrade{cursor:pointer;opacity:.5}#frm-insert-fields li span:not(.frm-new-pill){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}#frm-insert-fields li a.disabled:hover{cursor:not-allowed}#frm-insert-fields li.ui-draggable-disabled{opacity:.5}#frm-insert-fields li a:not(.disabled):hover .frmsvg,#frm-insert-fields li a:not(.disabled):hover i{color:var(--grey-600)}#frm-insert-fields li.frm_show_upgrade,#frm-insert-fields li a{text-decoration:none;display:inline-flex !important;gap:var(--gap-xs);align-items:center;border-radius:var(--small-radius) !important;padding:11px var(--gap-md) 11px var(--gap-xs) !important;color:var(--grey-900) !important}#frm-insert-fields li a{display:flex !important;transition:background-color .2s ease-out,box-shadow .2s ease-out}#frm-insert-fields li a:not(.disabled):hover{background:#fff;box-shadow:var(--box-shadow-md)}#frm-insert-fields li a:focus-visible{outline:1px solid var(--primary-500)}#frm-insert-fields li.frm_show_upgrade.frm_hidden{display:none !important}#frm-insert-fields .frm-with-line{padding:12px var(--gap-md);font-weight:500;font-size:var(--text-sm)}#frm-insert-fields .frm-with-line::before{margin-left:calc(-1*var(--gap-sm));width:calc(100% + var(--gap-md))}.frm_code_list{clear:both}.frm_code_list.frm-full-hover a.frm_hidden,.frm_code_list .frmkeys{display:none}.frmsvg{fill:currentColor;width:18px;height:18px;vertical-align:middle}.frmsvg svg{pointer-events:none}.frmsvg.frm_svg40{width:40px;height:40px}.frmsvg.frm_svg24{width:24px;height:24px}.frmsvg.frm_svg20{width:20px;height:20px}.frmsvg.frm_svg15{width:15px;height:15px}.frmsvg.frm_svg14{width:14px !important;height:14px !important}.frmsvg.frm_svg13{width:13px;height:13px}.frmsvg.frm_svg12{width:12px;height:12px}.frmsvg.frm_svg9{width:9px;height:9px}input[disabled]{pointer-events:none}.frmbutton.ui-sortable-helper .frmsvg,.field_type_list li.frmbutton .frmsvg,.frmbutton.ui-sortable-helper i,.field_type_list li.frmbutton i,.frm_code_list a .frmsvg,.frm_code_list a i{color:var(--grey-500);display:inline-block;vertical-align:middle;width:var(--text-md);font-size:var(--text-md)}.field_type_list.frm_grid_container{gap:10px;margin:13px 0}.field_type_list li{margin:0;padding:0}.field_type_list li.frmbutton .frmsvg{width:24px;height:24px;font-size:24px}.frm_code_list i::before{font-size:inherit}.frmbutton.ui-draggable-dragging{pointer-events:none}.frmbutton.ui-draggable-dragging a{color:var(--grey-900) !important;background:var(--grey-100);text-decoration:none;display:inline-flex !important;gap:var(--gap-xs);align-items:center;border-radius:var(--small-radius) !important;padding:11px var(--gap-md) 11px var(--gap-xs) !important;box-shadow:var(--box-shadow-md)}.frmbutton.ui-draggable-dragging a{border:1px solid var(--grey-300);box-shadow:var(--box-shadow-md)}.frmbutton.ui-draggable-dragging span{font-size:15px}#frm-show-fields .frmbutton.ui-sortable-helper i,.frmbutton.ui-draggable-dragging i,.frmbutton.ui-draggable-dragging .frmsvg{color:#fff !important}.frmbutton.ui-draggable-dragging i,.frmbutton.ui-draggable-dragging .frmsvg{color:var(--grey-700) !important}.frm_sorting li.ui-state-default.ui-sortable-helper,.frmbutton.ui-sortable-helper{transition:opacity .2s;opacity:1;position:fixed;z-index:99999}#frm-insert-fields .frmbutton.ui-sortable-helper a,#frm-show-fields .frmbutton.ui-sortable-helper a{min-width:100px}li.frm_noallow.button,.frm_noallow{opacity:.5}.frm_actions_list a.frm_show_upgrade.frm_inactive_action::before,li.frm_noallow.button.frm_show_upgrade{cursor:pointer}.field_type_list li.frm_noallow.button.frm_show_upgrade:hover{border-color:inherit}.frm_noallow a{color:inherit}#frm_upgrade_modal_image{max-width:200px}#frm_upgrade_modal .frm-upgrade-message img{margin-top:10px;width:100%}.frm-tab-message{max-width:600px;margin:20px auto;color:rgba(63,75,91,.8)}.frm-settings-screenshot-toolbar{min-height:39px;display:flex}.frm-settings-screenshot-toolbar .frm-minmax-icon{height:8px;width:8px;border-radius:50%;align-self:center;margin-left:10px}.frm-settings-screenshot-toolbar .frm-minmax-icon:first-of-type{margin-left:20px}.frm-settings-screenshot-toolbar img{object-fit:contain;align-self:flex-end;margin-left:25px}.frm-settings-screenshot-toolbar+div{background:#fff;padding-top:25px;border-radius:0 0 16px 16px}.frm-settings-screenshot-toolbar+div img{max-width:calc(100% - 40px)}.frm-settings-screenshot-wrapper{max-width:700px;margin:50px auto 0;box-shadow:0 4px 4px rgba(189,196,205,.25),0 12px 56px rgba(42,57,75,.25);border-radius:16px;background:#ebecf1}.frm-dialog{z-index:100;padding:0 !important;border-radius:16px;border:none;background-color:#fff;max-width:100% !important}.frm-dialog .postbox{background:rgba(0,0,0,0);box-shadow:none;border:none;line-height:var(--leading)}.frm-dialog input[type=text],.frm-dialog textarea{font-size:var(--text-md)}.frm-dialog textarea{height:75px}.frm-dialog button.frm-button-primary{margin-right:10px}.frm-dialog .frm-sub-label,.frm-sub-label{color:var(--grey);text-transform:none;padding-left:8px}h2 .frm-sub-label{font-size:var(--text-md)}.frm-views-editor-body .ui-widget-overlay,.frm-white-body .ui-widget-overlay,.toplevel_page_formidable .ui-widget-overlay,body[class*=formidable-payments] .ui-widget-overlay,body.plugins-php .ui-widget-overlay{position:fixed;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background:var(--grey-500);opacity:.5;z-index:2}.frm-circled-icon{width:60px;height:60px;border-radius:50%;background-color:var(--primary-25)}.frm-circled-icon-large{width:80px;height:80px}.frm-circled-icon-green{background-color:var(--success-50)}.frm-circled-icon .frmsvg{width:21px;height:24px}.frm-circled-icon-large .frmsvg{width:24px}.frm-circled-icon .frmsvg use{color:var(--primary-500)}.frm-circled-icon-green .frmsvg use{color:var(--success-500)}.frm-border-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--grey-300);border-radius:var(--small-radius)}.frm-upgrade-message img{max-width:100%}a.frm-link-secondary{color:#c4c4c4;font-size:var(--text-sm);text-decoration:underline}.field_type_list li.button.frm_noallow,.field_type_list li.button.frm_noallow:hover,.button.frm_noallow,.button.frm_noallow:hover{color:inherit;border-color:#ccc;background:inherit}iframe#dyncontent_ifr{min-height:150px}/*! +@font-face{font-family:"s11-fp";src:url("../fonts/s11-fp.woff?v=7") format("woff");font-weight:400;font-style:normal}.frm-submenu-highlight{background:#1da867}.frm-submenu-highlight a span{color:#fff;font-weight:600}.frmfont,.frm_icon_font{text-decoration:none;text-shadow:none;font-weight:400;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:auto;line-height:1.5;transition:color .1s ease-in-out,opacity .1s ease-in-out;font-size:18px}i.frmfont,i.frm_icon_font{font-style:normal;font-variant:normal;speak:none}.frmfont::before,select.frmfont,.frm_icon_font::before,select.frm_icon_font{font-family:"s11-fp" !important;text-align:center}.frmfont,a.frmfont,.frmfont:hover,a.frmfont:hover .frm_icon_font,a.frm_icon_font,.frm_icon_font:hover,a.frm_icon_font:hover{text-decoration:none !important;box-shadow:none}.frmfont:focus,.frm_icon_font:focus{box-shadow:none}.frmfont:active,.frm_icon_font:active{outline:none}.frm_trigger .frm_icon_font{padding:0 5px}.frm_logo_icon::before{content:"\e601"}.frm_required_icon::before{content:"\e612"}.frm_delete_icon::before{content:"\e610" !important}.frm_move_icon::before{content:"\e61a"}.frm_drag_icon::before{content:"\e93b"}.frm_clear_icon::before{content:"\e60a"}.frm_noclear_icon::before{content:"\e60b"}.frm_duplicate_icon::before{content:"\e61b"}.frm_copy_icon::before{content:"\f0c5"}.frm_clone_icon::before{content:"\f24d"}.frm_tooltip_icon::before{content:"\e611"}.frm_tooltip_solid_icon::before{content:"\e907"}.frm_forbid_icon::before{content:"\e636"}.frm_checkmark_icon::before{content:"\e90a"}.frm_check_icon::before{content:"\e605"}.frm_check1_icon::before{content:"\e606"}.frm_plus_icon::before{content:"\e62f"}.frm_plus1_icon::before{content:"\e602"}.frm_plus2_icon::before{content:"\e603"}.frm_plus3_icon::before{content:"\e632"}.frm_plus4_icon::before{content:"\e60f"}.frm_minus_icon::before{content:"\e62e"}.frm_minus1_icon::before{content:"\e600"}.frm_minus2_icon::before{content:"\e604"}.frm_minus3_icon::before{content:"\e633"}.frm_minus4_icon::before{content:"\e613"}.frm_cancel_icon::before{content:"\e607"}.frm_cancel1_icon::before{content:"\e608"}.frm_close_icon::before{content:"\e928"}.frm_report_problem_solid_icon::before{content:"\e914"}.frm_report_problem_icon::before{content:"\e915"}.frm_arrowup_icon::before{content:"\e60d"}.frm_arrowup1_icon::before{content:"\e60e"}.frm_arrowup2_icon::before{content:"\e630"}.frm_arrowup3_icon::before{content:"\e62b"}.frm_arrowup4_icon::before{content:"\e62c"}.frm_arrowup5_icon::before{content:"\e635"}.frm_arrowup5_solid_icon::before{content:"\e9d"}.frm_arrowup7_icon::before{content:"\e908"}.frm_arrowup6_icon::before{content:"\e62d"}.frm_arrowdown_icon::before{content:"\e609"}.frm_arrowdown1_icon::before{content:"\e60c"}.frm_arrowdown2_icon::before{content:"\e631"}.frm_arrowdown3_icon::before{content:"\e628"}.frm_arrowdown4_icon::before{content:"\e629"}.frm_arrowdown5_icon::before{content:"\e634"}.frm_arrowdown5_solid_icon::before{content:"\e905"}.frm_arrowdown7_icon::before{content:"\e90b"}.frm_arrowdown6_icon::before{content:"\e62a"}.frm_arrow_left_icon::before{content:"\e912"}.frm_arrow_right_icon::before{content:"\e913"}.frm_filter_icon::before{content:"\e90c"}.frm_download_icon::before{content:"\e615"}.frm_upload2_icon::before{content:"\f093"}.frm_upload_icon::before{content:"\e616"}.frm_download2_icon::before{content:"\f019"}.frm_hard_drive_icon::before{content:"\e916"}.frm_pencil_solid_icon::before{content:"\e901"}.frm_pencil_icon::before{content:"\e61d"}.frm_signature_icon::before{content:"\e919"}.frm_user_icon::before{content:"\e7ff"}.frm_register_icon::before{content:"\e637"}.frm_account_circle_solid_icon::before{content:"\e853"}.frm_account_circle_icon::before{content:"\e921"}.frm_address_card_icon::before{content:"\e996"}.frm_paragraph_icon::before{content:"\f1dd"}.frm_checkbox_unchecked_icon::before{content:"\e91e"}.frm_checkbox_icon::before{content:"\e922"}.frm_checkbox_solid_icon::before{content:"\e91f"}.frm_dropdown_icon::before{content:"\e909"}.frm_caret_square_down_icon::before{content:"\f150"}.frm_check_square_icon::before{content:"\f14a"}.frm_radio_unchecked_icon::before{content:"\e971"}.frm_radio_checked_icon::before{content:"\ea54"}.frm_scrubber_icon::before{content:"\f2f8"}.frm_location_solid_icon::before{content:"\e955"}.frm_location_icon::before{content:"\e947"}.frm_toggle_on_icon::before{content:"\f205"}.frm_toggle_off_icon::before{content:"\f204"}.frm_shield_check_icon::before{content:"\f2f7"}.frm_shield_check_solid_icon::before{content:"\e97d"}.frm_clock_icon::before{content:"\e929"}.frm_clock_solid_icon::before{content:"\e985"}.frm_link_icon::before{content:"\f0c1"}.frm_email_icon::before{content:"\e626"}.frm_email_solid_icon::before{content:"\f0e0"}.frm_mail_bulk_icon::before{content:"\e95c"}.frm_phone_icon::before{content:"\e942"}.frm_calendar_icon::before{content:"\f073"}.frm_code_icon::before{content:"\e90d"}.frm_tag_icon::before{content:"\e98b"}.frm_tag_solid_icon::before{content:"\e989"}.frm_price_tags_icon::before{content:"\e936"}.frm_search_icon::before{content:"\e978"}.frm_sitemap_icon::before{content:"\f0e8"}.frm_file_icon::before{content:"\f15b"}.frm_file_text_solid_icon::before{content:"\f15c"}.frm_file_text_icon::before{content:"\e923"}.frm-option-icon::before,.frm_option_icon::before{content:"\e904"}.frm_option_solid_icon::before{content:"\e906"}.frm_more_horiz_icon::before{content:"\e5d3"}.frm_more_vert_icon::before{content:"\e5d4"}.frm_more_horiz_solid_icon{font-size:28px !important;font-weight:700;line-height:18px}.frm_more_horiz_solid_icon::before{content:"···"}.frm_more_vert_solid_icon::before{content:"\f142"}.frm_calculator_icon::before{content:"\f1ec"}.frm_keyboard_icon::before{content:"\e924"}.frm_eye_icon::before{content:"\f06e"}.frm_eye_solid_icon::before{content:"\e945"}.frm_eye_slash_icon::before{content:"\f070"}.frm_eye_slash_solid_icon::before{content:"\e949"}.frm_page_break_icon::before{content:"\e8e9"}.frm_view_day_icon::before{content:"\e8ed"}.frm_attach_file_icon::before{content:"\e226"}.frm_printer_icon::before{content:"\e926"}.frm_header_icon::before{content:"\f1dc"}.frm_h1_icon::before{content:"\e94c"}.frm_repeat_icon::before{content:"\f363"}.frm_repeater_icon::before{content:"\e974"}.frm_hashtag_icon::before{content:"\e292"}.frm_save_icon::before{content:"\e927"}.frm_sliders_icon::before{content:"\f1de"}.frm_code_commit_icon::before{content:"\f386"}.frm_star_icon::before{content:"\e9d7"}.frm_star_full_icon::before{content:"\e9d9"}.frm_star_half_icon::before{content:"\e9d8"}.frm_linear_scale_icon::before{content:"\e260"}.frm_pie_chart_icon::before{content:"\e99a"}.frm_stats_bars_icon::before{content:"\e99c"}.frm_sms_icon::before{content:"\e61c"}.frm_highrise_icon::before{content:"\e617"}.frm_mailchimp_icon::before{content:"\e622"}.frm_feed_icon::before{content:"\e624"}.frm_align_right_icon::before{content:"\e90f"}.frm_align_left_icon::before{content:"\e910"}.frm_button_icon::before{content:"\e911"}.frm_browser_icon::before{content:"\e925"}.frm_cloud_upload_solid_icon::before{content:"\e92c"}.frm_shuffle_icon::before{content:"\e917"}.frm_swap_icon::before{content:"\e918"}.frm_pallet_icon::before{content:"\e96d"}.frm_fingerprint_icon::before{content:"\e94a"}.frm_ghost_icon::before{content:"\e94b"}.frm_heart_solid_icon::before{content:"\e94d"}.frm_heart_icon::before{content:"\e94e"}.frm_history_icon::before{content:"\e94f"}.frm_import_icon::before{content:"\e91a"}.frm_export_icon::before{content:"\e91b"}.frm_label_solid_icon::before{content:"\e952"}.frm_label_icon::before{content:"\e953"}.frm_lock_open_icon::before{content:"\e957"}.frm_lock_icon::before{content:"\e959"}.frm_dollar_sign_icon::before{content:"\e91c"}.frm_percent_icon::before{content:"\e939"}.frm_external_link_icon::before{content:"\e966"}.frm_pageview_solid_icon::before{content:"\e96a"}.frm_pageview_icon::before{content:"\e96b"}.frm_settings_icon::before{content:"\e97a"}.frm_stamp_icon::before{content:"\e980"}.frm_support_icon::before{content:"\f1cd"}.frm_text_icon::before{content:"\e98d"}.frm_text2_icon::before{content:"\f031"}.frm_white_label_icon::before{content:"\e91d" !important}.frm_authorize_icon::before{content:"\e903"}.frm_icon_font.frm_activecampaign_icon{background-image:none}.frm_activecampaign_icon::before{content:"\e930"}.frm_aweber_icon::before{content:"\e627"}.frm_campaignmonitor_icon::before{content:"\e946"}.frm_constant_contact_icon::before{content:"\e931"}.frm_getresponse_icon::before{content:"\e932"}.frm_googlesheets_icon::before{content:"\e944"}.frm_building_icon::before{content:"\e93f"}.frm_hubspot_icon::before{content:"\e933"}.frm_icontact_icon::before{content:"\e940"}.frm_icon_font.frm_mailpoet_icon::before{content:"\e934"}.frm_paypal_icon::before{content:"\e61f"}.frm_sendinblue_icon::before{content:"\e943"}.frm_sendy_icon::before{content:"\e941"}.frm_salesforce_icon::before{content:"\e935"}.frm_salesforcealt_icon::before{content:"\e937"}.frm_stripe_icon::before{content:"\e902"}.frm_stripealt_icon::before{content:"\e93d"}.frm_twilio_icon::before{content:"\e620"}.frm_woocommerce_icon::before{content:"\e90e"}.frm_wordpress_icon::before{content:"\f19a"}.frm_credit_card_icon::before{content:"\e938"}.frm_credit-card-alt_icon::before,.frm_credit_card_alt_icon::before{content:"\f283"}.frm_cc_amex_icon::before{content:"\f1f3"}.frm_cc_discover_icon::before{content:"\f1f2"}.frm_cc_mastercard_icon::before{content:"\f1f1"}.frm_cc_visa_icon::before{content:"\f1f0"}.frm_cc_paypal_icon::before{content:"\f1f4"}.frm_cc_stripe_icon::before{content:"\f1f5"}:root,.frm-white-body,.frm_wrap{--grey-900: #101828;--grey-800: #1D2939;--grey-700: #344054;--grey-600: #475467;--grey-500: #667085;--grey-400: #98A2B3;--grey-300: #D0D5DD;--grey-200: #EAECF0;--grey-100: #F2F4F7;--grey-50: #F9FAFB;--grey-25: #FCFCFD;--dark-grey: var(--grey-700);--medium-grey: rgba(40, 47, 54, .65);--grey: var(--grey-500);--grey-border: var(--grey-300);--lightest-grey: rgb(250, 250, 250);--sidebar-color: var(--grey-50);--sidebar-hover: var(--grey-200);--primary-700: #2B66A9;--primary-500: #4199FD;--primary-300: #80BBFE;--primary-200: #C0DDFE;--primary-50: #ECF5FF;--primary-25: #F5FAFF;--primary-color: var(--primary-500);--primary-hover: var(--primary-700);--light-blue: var(--primary-25);--blue-border: rgb(188, 224, 253);--error-700: #B42318;--error-500: #F04438;--error-300: #FECDCA;--error-100: #FEE4E2;--error-25: #FFF5F4;--green: rgb(63, 172, 37);--orange: #F15A24;--warning-500: #F79009;--pink: rgb(226, 42, 110);--purple: rgb(141, 53, 245);--success-900: #054F31;--success-800: #065F46;--success-500: #12b76a;--success-100: #D1FAE5;--success-200: #A6F4C5;--success-50: #ECFDF3;--success-25: #f6fef9;--border-radius: 35px;--small-radius: 8px;--medium-radius: 16px;--small-sidebar: 275px;--medium-sidebar: 350px;--big-sidebar: 390px;--biggest-sidebar: 450px;--text-xs: 12px;--text-sm: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--h-xs: 24px;--h-sm: 30px;--h-md: 36px;--leading: 1.5;--gap-2xs: 4px;--gap-xs: 8px;--gap-sm: 16px;--gap-md: 24px;--gap-lg: 32px;--gap-xl: 40px;--gap-2xl: 48px;--box-shadow-xs: 0 0.47074466943740845px 0.9414893388748169px 0 rgba(16, 24, 40, 0.05);--box-shadow-sm: 0 0.470745px 1.41223px rgba(16, 24, 40, 0.1), 0 0.470745px 0.941489px rgba(16, 24, 40, 0.06);--box-shadow-md: 0 1.88298px 3.76596px -0.941489px rgba(16, 24, 40, 0.1), 0 0.941489px 1.88298px -0.941489px rgba(16, 24, 40, 0.06);--box-shadow-lg: 0 6px 8px -2px rgba(16, 24, 40, 0.08), 0 1.88298px 4px -1px rgba(16, 24, 40, 0.03), 0 0.470745px 1.41223px rgba(16, 24, 40, 0.1), 0 0.470745px 0.941489px rgba(16, 24, 40, 0.06);--box-shadow-xl: 0 9.41489px 11.2979px -1.88298px rgba(16, 24, 40, 0.08), 0 3.76596px 3.76596px -1.88298px rgba(16, 24, 40, 0.03);--box-shadow-xxl: 0 11px 22px -5px rgba(16, 24, 40, 0.18);--button-shadow: 0 0.47px 0.94px 0 rgba(16, 24, 40, 0.06), 0 0.47px 1.47px 0 rgba(16, 24, 40, 0.1);--check-label-color: var(--grey-700)}@font-face{font-family:"Inter";src:url("../fonts/Inter-VariableFont_slnt,wght.ttf?v=1") format("truetype")}.with_frm_style,.frm-white-body .wpbody-content,.frm_wrap{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}@media not all and (min-resolution: 0.001dpcm){@supports(-webkit-appearance: none) and (stroke-color: transparent){.with_frm_style,.frm-white-body .wpbody-content,.frm_wrap{-webkit-font-smoothing:antialiased}}}.frm-sm-z-index{z-index:1}.frm-md-z-index{z-index:5}.frm-white-body,.frm-white-body p,.frm_wrap,.frm_wrap p,.frm-modal,.frm-white-body .postbox .inside{font-size:var(--text-sm);color:var(--grey-500);line-height:var(--leading)}.frm-white-body p,.frm_wrap p{margin:var(--gap-sm) 0}body:not(.frm-admin-page-styles):not(.frm-admin-page-style) .with_frm_style .frm_form_fields>fieldset{--fieldset-padding: 15px 0}a,.widget .widget-top,.stuffbox h3,.frm-collapsed{cursor:pointer;text-decoration:none}.post-type-frm_display .wrap>#posts-filter,.wrap.frm-with-margin,.frm_wrap>.wrap{margin:var(--gap-sm) var(--gap-md) var(--gap-md)}#frm_top_bar+.wrap{margin:var(--gap-xl)}.frm-full-screen #wpbody-content>.wrap{margin:0}.post-type-frm_display .wrap{margin:0}.toplevel_page_formidable #post-body-content{overflow-x:visible}.frm-full-screen{height:100%;overflow:hidden}.frm-full-screen.frm-admin-page-reports,.frm-full-screen.frm-admin-page-entries,.frm-full-screen.post-type-frm_display{overflow:auto}.frm-full-screen #wpadminbar,.frm-full-screen #adminmenumain,.frm-full-screen .wp-header-end{display:none}body.frm-white-body:not(.frm-full-screen) .mce-fullscreen{top:32px;left:160px}.frm-full-screen #wpbody-content,.frm-full-screen #wpbody,.frm-full-screen #wpcontent{padding:0;overflow:hidden;margin:0 !important}.frm-white-body #wpbody-content{position:relative;padding-bottom:0}.post-new-php.post-type-frm_display #screen-meta-links,.post-php.post-type-frm_display #screen-meta-links{display:none}.frm-white-body #screen-meta-links{position:fixed;bottom:0;right:20px}.frm-full-screen #screen-meta-links .screen-meta-toggle{right:55px}.frm-white-body #screen-meta-links .show-settings{border-radius:var(--small-radius) var(--small-radius) 0 0;border:1px solid var(--grey-300);border-bottom:none}.frm-white-body.frm-lite #screen-meta-links .screen-meta-toggle{right:125px}.frm-white-body #screen-meta{margin:0}.frm-white-body #screen-meta-links .show-settings::after{color:var(--grey)}.frm-white-body .columns-2{border-bottom:1px solid var(--grey-300)}.frm-full-screen .columns-2{border:none}body.post-type-frm_display.edit-php,body.frm-white-body{background:#fff}body.frm-white-body ul#adminmenu a.wp-has-current-submenu::after,body.frm-white-body ul#adminmenu>li.current>a.current::after{border-right-color:#fff}.frm-white-body #wpcontent{padding-left:0;padding-right:0}.frm-white-body .wrap #post-body{padding:0 20px}.frm-grey-body #wpbody{background:var(--grey-100)}.frm-grey-body #frm_top_bar{background:#fff}.post-type-frm_display .tablenav,.frm_wrap .tablenav{margin-bottom:10px}.frm-white-body .tablenav .actions select,.wp-admin .frm_wrap .tablenav select{margin-right:var(--gap-xs)}.tablenav .actions .button{margin-top:1px}.frm-white-body table.widefat{background:var(--lightest-grey);border-width:0;box-shadow:none;margin:20px 0}.frm-white-body table.widefat tfoot,.frm-white-body table.widefat thead{background:#fff}.frm-white-body table.widefat th{font-size:var(--text-md)}.frm-white-body table.widefat th a{color:var(--grey-700)}.frm-white-body table.widefat strong a{color:var(--primary-700)}.frm-scroll-box{clear:both;overflow:auto;max-height:405px;border:1px solid var(--grey-300);border-radius:var(--small-radius)}.frm_form_field.frm_scroll_box .frm_opt_container{height:100px;overflow:auto;border:1px solid var(--grey-300)}.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+p,.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+div,.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+span{grid-column:span 6/span 6;align-content:center}.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+p,.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+div,.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+span{grid-column:span 12/span 12 !important;align-content:center}.frm_form_field.frm-phone-type~[id*=frm-field-format-custom-]>label,.frm_form_field.frm-format-dropdown~[id*=frm-field-format-custom-]>label{opacity:0}.frm_form_field.frm-format-dropdown~[id*=frm-field-format-custom-]{grid-column:span 6/span 6}.frm-single-settings.frm-type-textarea>.frm_grid_container [id*=frm-field-format-custom-]+p{grid-column:span 12/span 12}.frm-single-settings .frm_grid_container{column-gap:var(--gap-sm)}.frm-content-center{align-content:center}.frm-self-end{align-self:end}.frm-short-list{overflow:auto;max-height:190px}.frm-white-body table.frm-border td{font-size:var(--text-sm)}.frm-white-body .striped>tbody>:nth-child(odd){background-color:#fff}.frm_wrap td.column-title strong{display:inline}td.column-title .frm_actions_dropdown{float:right}#frm_top_bar{display:flex;gap:var(--gap-sm);width:100%;height:72px;margin:0;box-sizing:border-box;text-align:center;padding:0 var(--gap-md)}#frm_top_bar>.frm-full-close:last-child,#frm_top_bar>#frm-publishing:last-child{margin-left:auto}#frm_top_bar{border-bottom:1px solid var(--grey-300);padding:0 var(--gap-md);overflow:visible}.frm-white-body h1,.frm-white-body h2,.frm-white-body h3,.frm-white-body h4{color:var(--grey-900);font-weight:400;line-height:var(--leading) !important}.frm-white-body .wrap h1,.frm-white-body h1{font-size:var(--text-xl)}.frm-white-body .wrap h2,.frm-white-body h2{font-size:var(--text-lg);font-weight:500}.frm-white-body .wrap h3,.frm-white-body h3{font-size:var(--text-md)}.frm-white-body .wrap h4,.frm-white-body h4{font-size:var(--text-sm);font-weight:500}#frm_error_modal .frm_lock_simple{padding:20px;border-radius:50%;background-color:var(--primary-25);display:inline-block}#frm_error_modal #frm_lock_simple{color:var(--primary-500)}#frm_error_modal .frm-modal-title{display:block}#frm_error_modal .frm-modal-title h2{font-weight:600;font-size:var(--text-xl);margin:0}#frm_error_modal .frm_modal_content{padding:var(--gap-md);color:var(--grey-900)}.frm-views-editor-body .frm_page_container #frm_top_bar h1{padding:0 !important;color:var(--grey-900);font-size:var(--text-xl) !important}.post-type-frm_display .frm_top_left{padding-bottom:0 !important}.frm-new-table-view-option.frm-selected-table-view-option{border-radius:var(--small-radius);background:var(--primary-25)}.frm-views-editor-body #frm_adv_info .tabs-panel{padding-left:4px;padding-right:4px}#frm_edit_box_content_modal .frm_modal_footer{padding-top:var(--gap-sm);border-top:1px solid var(--grey-300)}#frm_edit_box_content_modal .frm_modal_footer>div{display:flex;justify-content:space-between}#frm_edit_box_content_modal #frm_modal_box_select_area,#frm_edit_box_content_modal #frm_box_content_wysiwyg_wrapper,#frm_edit_box_content_modal .frm_modal_content{max-height:calc(100vh - 176px) !important}#frm_edit_box_content_modal #frm_modal_box_select_area{height:calc(100vh - 176px) !important}#frm_edit_box_content_modal #wp-content-editor-tools{padding-top:0}#frm_edit_box_content_modal.frm-modal .postbox .frm-modal-title+div:last-child{right:var(--gap-md)}.frm_code_list.frm-full-hover .frm-dropdown-view a{flex-direction:row-reverse}#frm_view_editor_left.frm-right-panel .accordion-section-title::before{content:"" !important;margin:0}.frm-gradient,.frm-upgrade-bar{background:linear-gradient(90deg, #388CF3, #1961D5, #8C7FD8) !important;color:#fff !important;border:0 !important}.frm-gradient.frm-button-primary:not([disabled]),.frm-gradient.frm-button-primary:not([disabled]):hover,.frm-gradient.frm-button-primary:not([disabled]):focus{background:linear-gradient(90deg, #1961D5, #816CFA) !important}.frm-upgrade-bar,.frm-gradient{position:relative}.frm-upgrade-bar::before,.frm-gradient::before{content:"";display:none;position:absolute;top:0;right:0;bottom:0;left:0;background-color:hsla(0,0%,100%,.1);z-index:0}.frm-upgrade-bar:hover::before,.frm-gradient:hover::before,.frm-gradient:focus::before{display:block}.frm-upgrade-bar-inner,.frm-gradient>*{position:relative;z-index:1}.frm-upgrade-bar{border-bottom:1px solid var(--sidebar-hover);padding:9px 0;font-size:12px;text-align:center}.frm-upgrade-bar a{color:currentColor !important;text-decoration:underline}.frm-upgrade-bar a:focus{outline:1px dotted var(--sidebar-hover)}.frm-upgrade-bar span{opacity:.9}a h1 .frmsvg{color:var(--grey-400);vertical-align:middle;min-width:var(--text-sm)}a .frmsvg{color:currentColor}.frm_wrap .view-switch a.current::before,.frm-white-body a,.frm_wrap a,.frm_wrap a i{color:var(--primary-color)}.frm_wrap a:active,.frm_wrap a:hover{color:var(--primary-700);box-shadow:none}.post-type-frm_display a:focus,.frm_wrap a:focus{box-shadow:none}.frm_top_left{text-align:left;float:left;white-space:nowrap;max-width:250px;overflow:hidden;text-overflow:ellipsis;align-self:center}.post-type-frm_display .frm_top_left,.frm_top_left.frm_top_wide{max-width:100%}.post-type-frm_display .frm_nav_bar .frm-header-logo,.frm_nav_bar .frm-header-logo{margin:18px 0 10px}#frm_top_bar .frm_form_nav{flex:1}ul.frm_form_nav{margin:0 auto;padding-top:18px;display:block;min-width:240px}.nav-tab-wrapper.frm_form_nav{padding:0 25px}ul.frm_form_nav>li{margin:0 min(3.5%,32px) 0 0;display:inline-block}.post-type-frm_display #advanced-sortables h2.hndle,.post-type-frm_display #side-sortables h2.hndle,.post-type-frm_display #normal-sortables h2.hndle,.post-type-frm_display .frm_form_nav .nav-tab-active,.frm_form_nav>li>a{font-size:1.3em;text-decoration:none;display:block;padding:6px 2px 4px;font-weight:500;color:var(--grey-700);border-bottom:2px solid rgba(0,0,0,0)}.post-type-frm_display.js .postbox .handlediv .toggle-indicator::before{margin-top:10px}.frm-nav-tabs a:focus,.frm-nav-tabs a:active,.frm_form_nav a:active,.frm_form_nav a:focus{outline:none;box-shadow:none}.frm_form_nav>li>a{font-size:var(--text-md);font-weight:400;color:var(--grey-500)}.frm_form_nav>li>a:hover{border-color:var(--primary-700)}.frm_form_nav .frm-dropdown-menu a:hover{background-color:#eaf2fa}.post-type-frm_display .frm_form_nav .nav-tab-active,.post-type-frm_display .frm_form_nav .nav-tab-active:hover,.frm_form_nav>li a.current_page{color:var(--primary-500);border-color:var(--primary-500);background:rgba(0,0,0,0);opacity:1;font-weight:600}.frm-full-close{display:none;padding-left:var(--gap-md);border:0 solid var(--grey-300);border-left-width:1px;height:100%;box-sizing:border-box}.frm-full-screen .frm-full-close{display:flex;align-items:center}.frm-full-close a{display:block}.frm-full-close .frmsvg{font-size:20px;width:20px;height:20px;color:var(--grey-500)}#frm_top_bar h1{font-weight:400;padding:0;margin:0;color:var(--grey-900);display:inline-flex;gap:var(--gap-sm);align-items:center;text-align:left;min-width:200px}#frm_top_bar h1 span{max-width:175px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;display:inline-block;vertical-align:bottom}#frm_top_bar ul.frm_form_nav,#frm_top_bar .frm-header-logo,#frm_top_bar #frm_bs_dropdown{align-self:center;margin-top:0;margin-bottom:0;padding-top:0}#frm_top_bar .frm-header-logo{display:flex}#frm_top_bar h2{float:left;margin:0 0 0 var(--gap-sm);padding:2px 0 2px var(--gap-sm);font-weight:400;border-left:2px solid var(--grey)}.frm_wrap>#frm_top_bar #frm-publishing{margin-top:0}#frm-publishing{min-width:225px;align-self:center;align-items:center;display:flex;flex-direction:row-reverse;gap:0 var(--gap-sm);flex-wrap:wrap}.frm_wrap .postbox{border-color:var(--grey-300);border-radius:6px;box-shadow:none}.frm_wrap .postbox h3.hndle{cursor:default;padding:10px 20px;margin:0;line-height:1.4em;border-color:var(--grey-300)}.frm-pre-hndle{font-size:15px;padding:5px;margin:9px 15px}.frm-empty-row{display:none}.frm-child-row{box-shadow:5px 0 0 0 inset var(--sidebar-hover)}.frm_animate_bg{transition:background 200ms linear,color 200ms linear}.wrap>.subsubsub{clear:both;margin:0}.frm_wrap .subsubsub a{line-height:var(--leading);font-size:var(--text-sm)}.frm-admin-page-styles .frm_page_container,.frm_wrap .frm_page_container{height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden;padding-top:0;position:fixed;top:32px;bottom:0;left:0;right:0}.frm-admin-page-translate .frm_wrap .frm_page_container,.frm-admin-page-update_translations .frm_wrap .frm_page_container{position:static}.auto-fold.frm-admin-page-styles .frm_page_container,.auto-fold .frm_wrap .frm_page_container,.frm-unfold.frm-admin-page-styles .frm_page_container,.frm-unfold .frm_wrap .frm_page_container{left:160px}.folded.frm-admin-page-styles .frm_page_container,.folded .frm_wrap .frm_page_container{left:38px}.frm-full-screen.frm-admin-page-styles .frm_page_container,.frm-full-screen .frm_wrap .frm_page_container{height:100vh;top:0;left:0}.frm-full-screen.frm-admin-page-entries .frm_page_container,.frm-new-entry .frm_page_container,.frm-admin-page-reports .frm_page_container,.frm_list_entry_page .frm_page_container{height:auto;display:block}.frm-new-entry .columns-2{border:none}.frm-white-body #frm_top_bar,.frm-white-body .columns-2{flex:0 0 auto}.columns-2 .frm-right-panel+div{padding-bottom:var(--gap-md);border-left:1px solid var(--grey-300)}.columns-2 .frm-right-panel+div,.frm_wrap #post-body-content{padding-bottom:0;padding-top:var(--gap-sm);margin-bottom:0;background:#fff;width:auto;float:none;flex:2}.frm-white-body .columns-2{flex:1;display:flex;overflow:hidden}.frm-white-body .columns-2>div{overflow-y:auto;box-sizing:border-box}.frm_wrap .columns-2 .frm-right-panel,.frm-right-panel{flex:0 0 var(--biggest-sidebar);float:none;width:var(--biggest-sidebar);min-width:var(--biggest-sidebar);background-color:var(--sidebar-color);margin:0;box-shadow:none;border:none;padding-bottom:25px}.frm-right-panel .frm_field_list,.frm_wrap .frm-right-panel #frm_adv_info,.frm_wrap #postbox-container-1 #frm_adv_info{box-shadow:none;border:none;margin-bottom:26px}#new_fields,.frm-has-modal,p.frm_has_shortcodes{position:relative}.frm-inline-modal.postbox{background:#fff;border-color:var(--grey-100);border-radius:var(--small-radius);box-shadow:var(--box-shadow-lg)}.frm_has_shortcodes .frmsvg:not(.frm_help .frmsvg),.frm_has_shortcodes i:not([class*=mce-]){position:absolute;color:var(--primary-500);border-radius:50%;border:1px solid rgba(0,0,0,0);z-index:100;text-align:center}.frm_has_shortcodes .frmsvg.frm-show-box{border-radius:6px !important}.frm_has_shortcodes input,.frm_has_shortcodes textarea{padding-left:18px;box-sizing:border-box}#form_settings_page #frm_adv_info,#frm_builder_page #frm_adv_info{display:none;top:0;width:310px;max-height:315px;min-height:200px;overflow-y:scroll;z-index:100}#form_global_settings .columns-2>div{overflow:auto;height:calc(100vh - 32px)}#form_global_settings .columns-2 .frm-right-panel,#form_settings_page .columns-2 .frm-right-panel,#wpbody-content .frm-page-skeleton .frm-right-panel{flex:0 0 var(--small-sidebar);width:var(--small-sidebar);min-width:var(--small-sidebar)}#form_global_settings .frm_grid_container{gap:0 var(--gap-md)}.frm-inner-content{padding:var(--gap-md)}.post-type-frm_display #poststuff{padding:0 0 10px 40px}#postbox-container-2 .postbox .inside{padding:15px 25px}#postbox-container-2 #frm_advanced .inside h3{margin:15px -25px;font-weight:600}#form_settings_page .frm-inner-content{padding-top:0;padding-bottom:150px;position:relative}.frm_wrap #submitdiv{margin-bottom:0;border-width:0 0 1px;width:100%;min-width:unset}.frm_wrap #frm_adv_info .handlediv,.frm_wrap #frm_adv_info .hndle{display:none}.frm_wrap .menu-settings{border:none;margin-top:0}.nodrag a{cursor:pointer}.frm_wrap #frm_adv_info .inside{margin:0}#frm_adv_info>.inside{padding:0}#frm_adv_info ul.subsubsub{padding-bottom:var(--gap-xs) !important}#frm_adv_info ul.subsubsub a{font-weight:500}#frm_adv_info ul.subsubsub .frm-vertical-separator{display:inline-block;width:1px;height:8px;background-color:var(--grey-300)}#frm_adv_info #frm-insert-condition{background-color:var(--primary-50)}#frm_adv_info #frm-insert-condition:hover{background-color:var(--primary-25)}#frm_builder_page #frm_adv_info{width:322px;max-height:356px;border-radius:var(--small-radius);overflow:hidden}#frm_builder_page #frm_adv_info #taxonomy-linkcategory{height:356px;overflow:hidden}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div{max-height:286px;padding:0}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div>*{padding-bottom:var(--gap-sm);max-height:unset}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div>*:last-child{padding-bottom:var(--gap-xs)}#frm_builder_page #frm_adv_info #frm-nav-tabs{display:flex;gap:var(--gap-xs);background-color:var(--grey-100);border-radius:var(--small-radius);border:0;padding:var(--gap-xs);margin:var(--gap-xs) var(--gap-2xs) var(--gap-sm)}#frm_builder_page #frm_adv_info #frm-nav-tabs>li{flex:1;text-align:center}#frm_builder_page #frm_adv_info #frm-nav-tabs>li a{font-weight:500;line-height:1;color:var(--grey-500);border-radius:var(--small-radius);border:0;padding:var(--gap-xs);margin:0}#frm_builder_page #frm_adv_info #frm-nav-tabs>li a:hover{background-color:#eaecf0;color:var(--grey-500) !important;box-shadow:var(--box-shadow-sm)}#frm_builder_page #frm_adv_info #frm-nav-tabs>li.frm-tabs a{background-color:#fff;color:var(--grey-900) !important;box-shadow:var(--box-shadow-sm)}#frm_builder_page #frm_adv_info .frm-search,#frm_builder_page #frm_adv_info .frm-with-search{padding-top:0;margin:0}.frm-right-panel .frm-inline-modal.postbox .inside{margin:0;padding:0 14px 14px}.frm-right-panel .frm-inline-modal.postbox .inside .frm-with-line,.frm-right-panel .frm-inline-modal.postbox .inside .accordion-section-content h4{margin-left:-14px;margin-right:-14px}.frm-right-panel .frm-inline-modal .inside p:not(.howto),.frm-right-panel .frm-inline-modal .inside a{font-size:15px}.frm-inline-modal .inside a.frm_icon_font{font-size:18px}.frm-nav-tabs{margin:10px 0 20px;padding:0 var(--gap-sm);display:block;border-bottom:1px solid var(--grey-300)}#frm-nav-tabs{position:-webkit-sticky;position:sticky;top:0;background-color:var(--sidebar-color);z-index:98;margin-top:0;padding-top:5px}.frm_form_settings #frm_adv_info #frm-nav-tabs{background-color:#fff;margin:0 -4px}.frm_form_settings span.frm-with-right-icon,#frm_builder_page .frm_has_shortcodes span.frm-with-right-icon:not(.frm_hidden){display:block}.frm-inline-modal .frm-nav-tabs,#frm_adv_info .frm-nav-tabs{margin:5px 0 0}#frm_adv_info .frm-nav-tabs.frm-compact-nav{padding-right:0;padding-left:20px}.frm-nav-tabs li{display:inline-block;margin:0}.frm-nav-tabs a{color:var(--grey-700);padding:10px 1px;margin:0 9px;border-bottom:2px solid rgba(0,0,0,0)}.frm_form_settings #frm_adv_info .frm-nav-tabs a{padding:5px 1px;color:var(--grey-500)}.frm-nav-tabs.frm-compact-nav a{margin:0 5px}.frm-nav-tabs a{display:block;opacity:.9}#frm_adv_info .frm-nav-tabs a{color:var(--grey-700)}.frm-nav-tabs a:hover,.frm-nav-tabs .frm-tabs a{color:var(--primary-500) !important;border-color:var(--primary-500)}.frm_form_settings #frm_adv_info .frm-nav-tabs .frm-tabs a{font-weight:500}#frm-bulk-modal .howto,#frm-bulk-modal h3{font-size:var(--text-sm);font-weight:400;margin:5px 0 10px;color:var(--grey)}#frm-bulk-modal h3{margin-left:20px}.frm-right-panel a.frm_add_logic_link,.frm-right-panel h3{color:var(--grey-700);font-size:var(--text-lg);font-weight:400;margin:0}.frm-right-panel h3 i{color:var(--grey-700);float:right;width:16px;cursor:pointer}.frm-settings-panel{padding:var(--gap-sm);padding-right:var(--gap-xs)}.frm-settings-panel .frm-style-tabs-wrapper .frm-tabs-delimiter{top:var(--gap-xs);left:var(--gap-xs);width:calc(100% - var(--gap-sm))}.frm-settings-panel .frm-style-tabs-wrapper .frm-tabs-navs{padding:var(--gap-xs) var(--gap-xs) 0}.frm-settings-panel .frm-embed-field-placeholder{height:unset}.frm-settings-panel .frm-embed-field-placeholder img{height:100px}.frm-settings-panel .frm-embed-field-placeholder .frm-embed-message{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-sm);max-width:unset;color:var(--grey-800);padding:var(--gap-lg);border:0;box-shadow:var(--box-shadow-sm);margin:1px}.frm-single-settings .frm-default-value-wrapper>p{margin-bottom:0}.frm-single-settings .frm-default-value-wrapper+p:empty{display:none}.frm-single-settings [class*=frm-lookup-box-] .frm_grid_container p{margin-top:0 !important}.frm-single-settings .frm_single_option[id^=frm_watch_lookup_]{margin-bottom:var(--gap-xs) !important}.frm-single-settings>h3:first-of-type{position:relative;background-color:rgba(0,0,0,0) !important;border-top:none;padding-top:0 !important;margin-top:0 !important}.frm-single-settings>h3:first-of-type::after{content:"";position:absolute;left:var(--gap-sm);right:var(--gap-sm);bottom:0;height:1px;background-color:var(--sidebar-hover)}.frm-flex-justify,.frm-right-panel .frm-single-settings h3{display:flex;justify-content:space-between;align-items:center}#post-body-content+.frm-right-panel{flex:0 0 var(--medium-sidebar);width:var(--medium-sidebar);min-width:var(--medium-sidebar);border-left:1px solid var(--sidebar-hover)}.frm-new-entry #post-body-content+.frm-right-panel,.frm-new-entry .frm-right-panel{background:none;border:none}#post-body-content+.frm-right-panel h3{padding:20px 20px 0;font-size:17px}#post-body-content+.frm-right-panel .frm_with_icons:first-of-type h3{border:none}#frm-insert-fields h3{color:var(--grey);font-size:15px;font-weight:400;border-top:none;border-bottom:1px solid var(--sidebar-hover);margin:0;padding:10px 10px 10px 25px}.frm_wrap #frm_adv_info ul.category-tabs{margin:0;padding:10px 0 9px;font-size:15px;background:rgba(0,0,0,0)}.frm_wrap #frm_adv_info ul.category-tabs li{padding:10px;background-color:rgba(0,0,0,0) !important}.frm_wrap #frm_adv_info ul.category-tabs li:first-child{border:none}.frm_wrap #frm_adv_info .categorydiv div.tabs-panel{border:none;background:rgba(0,0,0,0)}.frm_wrap #frm-categorydiv{border-right:none}#frm_adv_info #frm-conditionals{padding-top:var(--gap-sm)}#postbox-container-1 #taxonomy-linkcategory #frm-html-tags{display:none;max-height:none}#postbox-container-1 .frm_field_list #frm-insert-fields .frmbutton.dropdown{position:relative}.frm-white-body #footer-upgrade{display:none}.frm-admin-footer-links,.frm-admin-footer-links-nav,.frm-admin-footer-links-socials{display:flex;justify-content:center}.frm-admin-footer-links{gap:var(--gap-2xs);flex-direction:column;text-align:center;padding:var(--gap-xl) 0 var(--gap-lg);font-size:var(--text-xs);color:var(--grey-400)}body.frm-hidden-overflow{height:100%;overflow:hidden}.frm-admin-footer-links-nav{gap:var(--gap-2xs);margin-bottom:var(--gap-xs)}.frm-admin-footer-links-socials{gap:var(--gap-xs)}.frm-admin-footer-links-socials a{color:var(--grey-400)}.frm_list_entry_page h2{float:left}.frm_list_entry_page h2+.error{clear:both}.frm_sidebar select{width:100%;margin-left:0;margin-right:0}.frm_sidebar #search-submit{float:right}.frm_single_entry_page #submitdiv{margin:0}.frm_single_entry_page .hndle a{font-size:13px}.frm-right-panel #publishing-action{float:none}.frm-right-panel #major-publishing-actions{border-top:none;height:32px;background:rgba(0,0,0,0)}#major-publishing-actions .frm_submit_form{float:right;margin-left:5px}.frm_orange_button,.frm_reverse_button{font-size:12px;border:1px solid var(--orange);color:var(--orange);font-weight:600;padding:1px 4px;border-radius:4px;background:rgba(0,0,0,0)}.frm_reverse_button:hover,.frm_reverse_button:active,.frm_reverse_button:focus{color:#fff;background:var(--orange);border:1px solid var(--orange)}.frm_reverse_button{font-size:1em;transition:all .2s ease}.frm-button-primary,.wp-core-ui .button-primary.frm-button-primary,.wp-core-ui .button.frm-button-primary,.frm-button-secondary,.wp-core-ui .button-secondary.frm-button-secondary,.wp-core-ui .button.frm-button-secondary,.frm-white-body .frm-search .button,.frm-white-body .search-box .button,.frm-white-body .tablenav .button,.frm_orange_button,.toplevel_page_formidable #frm_upgrade_modal .button-primary,.wp-core-ui.frm-white-body .button-primary,.wp-core-ui.frm-white-body .button-secondary,.frm-white-body .button-primary,.frm-white-body .button-secondary,#frm-form-button button,.frm-form-button button,.frm-preview-buttons button,.frm-button-red,.frm-button-tertiary{text-shadow:none;box-shadow:none;border-radius:30px;border:1px solid var(--primary-500);font-size:var(--text-sm);transition:all .2s ease;padding:7px 16px;height:auto;min-height:28px;outline:none;line-height:var(--leading);box-sizing:border-box;font-weight:500;margin-bottom:0;display:inline-block}.frm-button-primary.frm-sharp,.frm-button-secondary.frm-sharp{border-radius:12px !important}#wpcontent .frm-button-secondary.frm-button-gradient{position:relative;border-color:rgba(0,0,0,0) !important;background-clip:padding-box !important}#wpcontent .frm-button-secondary.frm-button-gradient::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;margin:-1px;border-radius:inherit;background:linear-gradient(90deg, #129EFD 0%, #A334FD 100%);transition:opacity 150ms ease-out}#wpcontent .frm-button-secondary:hover::before{opacity:.5}.no-js.wp-core-ui .frm-search .button.hide-if-no-js,.js.wp-core-ui .frm-search .button.hide-if-js{display:none}.frm-button-tertiary{border-color:rgba(0,0,0,0);color:var(--primary-500)}.frm-button-tertiary:focus{outline:none}.frm-button-tertiary.frm_loading_button::before{border-right-color:var(--grey);border-bottom-color:var(--grey)}.frm-button-red,.frm-button-red:focus{--primary-color: var(--error-500);--primary-500: var(--error-500);--primary-700: var(--error-700)}.frm-button-red:not(.frm-button-tertiary),.frm-button-red:not(.frm-button-tertiary):focus{color:#fff !important}.frm-white-body h2 .button,.post-type-frm_display h2 .frm-button-primary,.frm-white-body .tablenav .button,.frm-button-primary.frm-button-sm,.frm-button-secondary.frm-button-sm,.frm-button-tertiary.frm-button-sm,.frm-button-red.frm-button-sm{padding:4px 12px !important;font-size:var(--text-xs) !important}.frm_no_style_button{background:rgba(0,0,0,0)}.frm-with-icon{display:flex;gap:var(--gap-xs);align-items:center}.frm-with-icon svg{opacity:.65}.frm-with-icon.button svg{height:var(--text-sm);width:var(--text-sm)}.frm-with-icon.frm-button-sm svg{height:var(--text-xs);width:var(--text-xs)}.frm-white-body .button.add_media{padding-left:12px !important;padding-right:12px !important;font-size:var(--text-xs);border-radius:var(--border-radius)}.wp-core-ui.frm-white-body #post-query-submit.button,.wp-core-ui.frm-white-body .button.tablenav-pages-navspan,.wp-core-ui.frm-white-body .button.first-page,.wp-core-ui.frm-white-body .button.prev-page,.wp-core-ui.frm-white-body .button.next-page,.wp-core-ui.frm-white-body .button.last-page,.wp-core-ui.frm-white-body .button.action{background-color:rgba(0,0,0,0);border-color:var(--grey-300);color:var(--grey-700);border-radius:var(--border-radius)}.post-type-frm_display.wp-core-ui .button-primary,.frm-button-primary,.wp-core-ui .button-primary.frm-button-primary,.frm_single_entry_page #frm-publishing .button-primary{background-color:var(--primary-500) !important;color:#fff !important}.frm-button-primary.frm_large,.frm-button-secondary.frm_large{height:auto !important;padding:12px 16px !important}.frm-button-secondary.frm-small,.frm-button-primary.frm-small{font-size:var(--text-xs) !important;height:auto !important;padding:var(--gap-2xs) 12px !important}.frm-button-primary i::before{color:#fff}.wp-core-ui .button-primary.frm-button-primary:not([disabled]):hover,.frm-button-primary:not([disabled]):hover{background:var(--primary-700) !important;border-color:var(--primary-700) !important}.wp-core-ui .button-primary.frm-button-primary:active{vertical-align:inherit}.frm-white-body #search-submit,#frm-form-button .frm_button_submit,.frm-form-button .frm_button_submit,.frm-white-body .frm-preview-buttons button,.frm-white-body .button:not(.frm-button-primary),.wp-core-ui.frm-white-body .button-secondary,.wp-core-ui .button-secondary.frm-button-secondary,.wp-core-ui .button.frm-button-secondary,.frm-white-body .frm-button-secondary,.frm-button-secondary{color:var(--grey-800);border-color:var(--grey-300);background-color:#fff}#wp-content-media-buttons button,#wp-content-media-buttons a.button{border-color:var(--grey-300)}.frm_orange_button{border-color:#da791d !important;background:var(--orange);color:#fff}.frm-white-body .button:not(.frm-button-primary):focus,.frm-white-body .button:not(.frm-button-primary):active,.frm-white-body .frm-button-secondary:hover,.wp-core-ui.frm-white-body .frm-button-secondary:hover,.wp-core-ui.frm-white-body .button-secondary:hover,.wp-core-ui.frm-white-body .button-secondary:focus,.wp-core-ui.frm-white-body .tablenav .button:hover,.frm_wrap .preview>.button:hover,.frm-white-body #search-submit:hover{border-color:var(--grey-300) !important;color:var(--grey-800);background:var(--grey-50) !important;box-shadow:none !important;outline:none !important}.frm-button-primary .frmsvg{color:#fff}.frm_wrap .preview i{font-size:inherit}.frm-white-body .frm-button-primary:focus,.frm-white-body .frm-button-primary:active,#frm-addons-page .button-primary:focus,#form_global_settings .button-primary:focus,#frm_upgrade_modal .button:focus{border-color:var(--primary-700) !important;background-color:var(--primary-700) !important;box-shadow:none !important;outline:none !important}.frm_wrap .preview>.button:focus,.frm_orange_button:hover,.frm_orange_button:focus,.toplevel_page_formidable #frm_upgrade_modal .button-primary:hover,.toplevel_page_formidable #frm_upgrade_modal .button-primary:focus,.toplevel_page_formidable .frm_wrap button.button-primary:hover,.toplevel_page_formidable .frm_wrap button.button-primary:focus{outline:none}.frm_orange_button:hover,.frm_orange_button:focus{border-color:var(--orange) !important;background:rgba(0,0,0,0);color:var(--orange);opacity:1}.major-publishing-actions.frm_create_form_header{padding:8px 0}.major-publishing-actions.frm_create_form_header .frm_create_form_header_inner{font-size:15px;background:rgba(0,0,0,0)}.frm-menu-boxes .frm_blank_form_text{padding-bottom:26px}input.frm_insert_in_template{font-size:10px;width:98%;font-weight:400}.frm-dismissible a.dismiss:focus{box-shadow:none}.frm-dismissible a.dismiss{top:10px;right:10px;position:absolute}.frm-dismissible a.dismiss svg{color:var(--grey-800)}.wp-admin .frm-review-notice{position:fixed !important;bottom:var(--gap-2xl);right:var(--gap-lg);width:380px;text-align:center;border-color:var(--grey-100);padding:var(--gap-lg);border-radius:var(--medium-radius);box-shadow:var(--box-shadow-lg) !important;z-index:999;box-sizing:border-box;--gap-sm: 16px;--gap-md: 24px;--gap-2xl: 48px}.wp-admin .frm-review-notice *{box-sizing:border-box}.frm-review-notice-icon{display:inline-flex;margin-bottom:var(--gap-sm)}.wp-admin .frm-review-notice-title{font-weight:600;margin-top:0;margin-bottom:var(--gap-xs)}.wp-admin .frm-review-notice-text{margin-top:0;margin-bottom:var(--gap-md)}.frm-review-notice-signature{text-align:left;margin:var(--gap-md) 0}.frm-review-notice-signature img{width:40px;height:40px;padding:3px;box-shadow:var(--box-shadow-md);border-radius:100%}#wpwrap .frm-dismiss-review-notice{top:16px;right:19px}.frm-review-notice #frmapi-feedback [class^=frm__]{display:none}.frm-review-notice #frmapi-feedback input,.frm-review-notice #frmapi-feedback textarea{border-color:var(--grey-300);border-radius:var(--small-radius)}.frm-review-notice #frmapi-feedback input{min-height:unset;max-height:36px}.frm-review-notice #frmapi-feedback textarea{max-height:80px;padding-top:var(--gap-xs)}.frm-review-notice #frmapi-feedback .frm_message{color:var(--success-900);background-color:var(--success-25);border:1px solid var(--success-200);padding:var(--gap-sm) var(--gap-md);margin:0}.frm-review-notice #frmapi-feedback .frm_message p{margin:0}.frm-review-notice #frmapi-feedback .frm_button_submit{background-color:var(--primary-500);border-color:var(--primary-500) !important;cursor:pointer}.frm-review-notice #frmapi-feedback .frm_button_submit:hover,.frm-review-notice #frmapi-feedback .frm_button_submit:focus{color:#fff;background-color:var(--primary-700);border-color:var(--primary-700) !important}.frm-review-notice .frm_error,.frm-review-notice label{color:#444;text-align:left}.frm-review-notice label{font-size:var(--text-sm)}.frm-floating-success-message{position:fixed;z-index:999;border-radius:4px;right:10px;bottom:10px}.frm-box-shadow-xxl{box-shadow:var(--box-shadow-xxl) !important}.frm-text-primary-500{color:var(--primary-500)}.frm-text-grey-400{color:var(--grey-400) !important}.frm-text-grey-500{color:var(--grey-500)}.frm-text-grey-600{color:var(--grey-600) !important}.frm-text-grey-700{color:var(--grey-700)}.frm-text-grey-900{color:var(--grey-900)}.frm-text-success-500{color:var(--success-500)}.frm-text-warning-500{color:var(--warning-500)}.frm_no_margin,.frm-m-0{margin:0 !important}.frm-m-12{margin:var(--gap-2xl)}.frm-m-2xs{margin:var(--gap-2xs) !important}.frm_no_top_margin,.frm-mt-0{margin-top:0 !important}.frm-mt-2xs{margin-top:var(--gap-2xs) !important}.-frm-mt-2xs{margin-top:calc(-1*var(--gap-2xs)) !important}.frm-mt-xs{margin-top:var(--gap-xs) !important}.frm-mt-sm{margin-top:var(--gap-sm) !important}.frm-mt-md{margin-top:var(--gap-md) !important}.frm-mt-lg{margin-top:var(--gap-lg) !important}.frm-mt-2xl{margin-top:var(--gap-2xl) !important}.frm-mt-auto{margin-top:auto !important}.frm_no_bottom_margin,.frm-mb-0{margin-bottom:0 !important}.frm-mb-2xs{margin-bottom:var(--gap-2xs) !important}.frm-mb-6{margin-bottom:6px !important}.frm-mb-sm{margin-bottom:var(--gap-sm) !important}.frm-mb-12{margin-bottom:12px !important}.frm-mb-xs{margin-bottom:var(--gap-xs) !important}.frm-mb-md{margin-bottom:var(--gap-md) !important}.frm-mb-lg{margin-bottom:var(--gap-lg) !important}.frm-ml-2xs{margin-left:var(--gap-2xs) !important}.frm-ml-xs{margin-left:var(--gap-xs) !important}.frm-ml-auto{margin-left:auto}.-frm-ml-2xs{margin-left:calc(-1*var(--gap-2xs)) !important}.frm-mr-auto{margin-right:auto}.frm-mr-auto\!{margin-right:auto !important}.frm-mr-2xs{margin-right:var(--gap-2xs) !important}.frm-mr-xs{margin-right:var(--gap-xs) !important}.frm-mr-2{margin-right:2px !important}.frm-mx-0{margin-left:0 !important;margin-right:0 !important}.frm-mx-xs{margin-left:var(--gap-xs) !important;margin-right:var(--gap-xs) !important}.frm-mx-sm{margin-left:var(--gap-sm) !important;margin-right:var(--gap-sm) !important}.frm-my-sm{margin-top:var(--gap-sm) !important;margin-bottom:var(--gap-sm) !important}.frm-my-xs{margin-top:var(--gap-xs) !important;margin-bottom:var(--gap-xs) !important}.frm-p-0{padding:0 !important}.frm-p-1,.frm-p-2xs{padding:var(--gap-2xs)}.frm-p-sm,.frm-p-4{padding:var(--gap-sm) !important}.frm-p-sm{padding:var(--gap-sm) !important}.frm-p-6,.frm-p-md{padding:var(--gap-md) !important}.frm-p-xl{padding:var(--gap-xl) !important}.frm-px-0{padding-left:0 !important;padding-right:0 !important}.frm-py-0{padding-top:0 !important;padding-bottom:0 !important}.frm-py-2xs{padding-top:var(--gap-2xs) !important;padding-bottom:var(--gap-2xs) !important}.frm-py-sm{padding-top:var(--gap-sm) !important;padding-bottom:var(--gap-sm) !important}.frm-pt-0{padding-top:0 !important}.frm-pt-2xs{padding-top:var(--gap-2xs) !important}.frm-pt-xs{padding-top:var(--gap-xs) !important}.frm-pt-sm{padding-top:var(--gap-sm) !important}.frm-pt-md{padding-top:var(--gap-md) !important}.frm-pt-xl{padding-top:var(--gap-xl) !important}.frm-pr-lg{padding-right:var(--gap-lg) !important}.frm-pb-md{padding-bottom:var(--gap-md) !important}.frm-pb-sm{padding-bottom:var(--gap-sm) !important}.frm-pb-xs{padding-bottom:var(--gap-xs) !important}.frm-pb-2xs{padding-bottom:var(--gap-2xs) !important}.frm-pb-0{padding-bottom:0 !important}.frm-px-sm{padding-right:var(--gap-sm) !important;padding-left:var(--gap-sm) !important}.frm-px-xs{padding-right:var(--gap-xs) !important;padding-left:var(--gap-xs) !important}.frm-px-md{padding-right:var(--gap-md) !important;padding-left:var(--gap-md) !important}.frm-text-xs{font-size:var(--text-xs) !important}.frm-text-sm{font-size:var(--text-sm) !important}.frm-text-md{font-size:var(--text-md) !important}.frm-text-lg{font-size:var(--text-lg) !important}.frm-text-xl{font-size:var(--text-xl) !important}.frm-leading-none{line-height:1}.frm-italic{font-style:italic}.frm-no-italic{font-style:normal}.frm-capitalize{text-transform:capitalize}.frm-font-normal{font-weight:400 !important}.frm-font-medium{font-weight:500 !important}.frm-font-semibold{font-weight:600 !important}.frm-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[class*=frm-line-clamp-]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.frm-line-clamp-2{-webkit-line-clamp:2}.frm-white-space-nowrap{white-space:nowrap}.frm-rounded-sm{border-radius:var(--small-radius) !important}.frm-rounded-6{border-radius:6px !important}.frm-w-auto{width:auto !important}.frm-w-full{width:100% !important}.frm-w-half{width:50% !important}.frm-w-fit{width:fit-content !important}.frm-max-w-fit{max-width:fit-content}.frm-h-auto{height:auto !important}#wpwrap .frm_hidden\!{display:none !important}.frm_block,.frm-block{display:block}.frm_inline{display:inline}.frm-inline\!{display:inline !important}.frm_inline_block{display:inline-block !important}.frm-inline-flex,#wpbody-content .frm-inline-flex{display:inline-flex}.frm-flex{display:flex}.frm-flex\!{display:flex !important}.frm_hidden,.js .frm-hide-js{display:none}.frm-flex-box{display:flex;gap:var(--gap-sm)}.frm-flex-col{display:flex;flex-direction:column}.frm-flex-full{flex:1}.frm-flex-center\!,.frm-flex-center{justify-content:center;align-items:center}.frm-flex-center{display:flex}.frm-flex-center\!{display:flex !important}.frm-shrink-0{flex-shrink:0}.frm-gap-0{gap:0 !important}.frm-gap-2xs{gap:var(--gap-2xs)}.frm-gap-xs{gap:var(--gap-xs)}.frm-gap-xs\!{gap:var(--gap-xs) !important}.frm-gap-sm{gap:var(--gap-sm)}.frm-gap-md{gap:var(--gap-md)}.frm-gap-xl{gap:var(--gap-xl)}.frm-justify-start{justify-content:start !important}.frm-justify-center{justify-content:center !important}.frm-justify-between{justify-content:space-between}.frm-justify-end{justify-content:end}.frm-items-center{align-items:center}.frm-items-stretch{align-items:stretch}#wpbody-content .frm-flex-wrap{flex-wrap:wrap}.frm-grow{flex-grow:1}.frm-order-first{order:calc(-infinity)}.frm-order-last{order:calc(infinity)}.frm-order-none{order:0}.frm-h-stack-sm,.frm-h-stack-xs,.frm-h-stack{display:flex !important;align-items:center}.frm-h-stack-sm>input[type=checkbox],.frm-h-stack-xs>input[type=checkbox],.frm-h-stack>input[type=checkbox],.frm-h-stack-sm>input[type=radio],.frm-h-stack-xs>input[type=radio],.frm-h-stack>input[type=radio]{margin:0 !important}.frm-h-stack{gap:var(--gap-2xs)}.frm-h-stack-xs{gap:var(--gap-xs)}.frm-h-stack-sm{gap:var(--gap-sm)}.frm-transition-ease{transition:all .2s ease}.frm_invisible{visibility:hidden;transition:all .2s ease}.frm_disabled{opacity:.5;cursor:default;pointer-events:none}.frm_disabled .frm-show-inline-modal{pointer-events:none !important}.frm_no_float{float:none}.frm-text-right{text-align:right}.frm-border-b{border-bottom:1px solid var(--grey-300)}.frm-no-border{border:none !important}.frm-hr{display:block;height:1px;background-color:var(--grey-200);margin:var(--gap-xs) 0}.frm-opacity-100{opacity:1}.frm-on-bottom{z-index:-1}.frm-rotate-90{transform:rotate(90deg)}.frm-cursor-pointer{cursor:pointer}.frm-align-baseline{vertical-align:baseline !important}.frm-fields p>label.frm_hidden,#wpbody-content label.frm_hidden,.frm-lookup-modal .dismiss,.frm-right-panel .inside a.frm_hidden,#form_global_settings .frm_hidden,ul.frm_form_nav>li.frm_hidden,a.frm_hidden,.button.frm_hidden,.wp-core-ui .button.frm_hidden{display:none}.postbox .inside>p.frm_no_bottom_margin:last-child{margin-bottom:0 !important}.frm_no_section_fields.frm_block{display:block}.actions.frm_visible_overflow{overflow:visible !important}.frm_full_opacity,.frm_submit .frm_full_opacity,.frm_submit .frm-opacity-100{opacity:1}.frm-dropdown-menu.frm-on-top{z-index:99999}.frm-vertical-line{display:inline-block;width:1px;height:12px;background-color:var(--grey-300)}.frm-admin-full-screen #adminmenumain,.frm-admin-full-screen #wpadminbar,.frm-admin-full-screen #adminmenuback,.frm-admin-full-screen #adminmenuwrap,.frm-admin-full-screen #wpfooter{display:none}.frm-admin-full-screen #wpcontent,.frm-admin-full-screen.auto-fold #wpcontent{margin:0;padding:0}.frm-admin-full-screen.appearance_page_starter-templates #wpbody-content{padding:0}.frm_forms.with_frm_style{max-width:100%}.post-type-frm_display .wrap>.subsubsub,.post-type-frm_display .wrap>.icl_subsubsub,.frm_form_settings>p{margin:6px var(--gap-md);padding:0}.frm-entry-container{margin:0 40px 40px;padding:0}#form_reports_page .frm-inner-content{width:calc(100% - 40px);max-width:900px;margin:20px auto;padding:20px}.frm_inner_field_container>.frm_form_fields{clear:both}.post-type-frm_display h2,.frm_wrap h2{margin-top:0 !important;font-size:var(--text-lg);line-height:var(--leading)}.post-type-frm_display .wrap>h2:first-child,.frm_wrap .wrap>h2:first-child{padding-top:0;margin-top:0 !important;font-size:var(--text-lg)}#frm_form_editor_container{position:relative;margin-top:28px}.form-field p{background:none;border:none}.form-field label.frm_primary_label{display:block;float:none;width:auto}#frm_view_editor_left label,#frm_view_editor_left .frm_primary_label,.frm-dialog .frm-sub-label,.frm-dialog label,.dropdown .frm_primary_label,.accordion-container label,.frm-fields td>label,.frm-fields td>div>label,.frm_form_field>label:first-child,.frm-fields p>label,.frm_on_submit_type>label,.post-type-frm_display .frm_form_field>label,#new_fields .frm_primary_label,#form_global_settings .frm_primary_label,#frm_form_editor_container .frm_primary_label,#permissions_settings_settings .frm_primary_label{color:var(--grey-700);margin:0 0 6px;padding:0;width:auto;font-size:var(--text-sm);display:block;line-height:var(--leading)}#frm_form_editor_container #frm-show-fields .frm_primary_label{min-height:21px}.frm-fields td input+label{display:inline}#frm_form_editor_container .edit_field_type_end_divider .frm_primary_label,#frm_form_editor_container .edit_field_type_break .frm_primary_label{display:none}form .frm_primary_label input{font-size:12px}.with_frm_style form .form-field{margin-bottom:20px}#frm_builder_page .with_frm_style form .frm_combo_inputs_container>.form-field{margin-bottom:0}.frm_description,.with_frm_style form div.description,.frm_error,.with_frm_style form div.description textarea{padding:0;font-size:11px}.with_frm_style .description{color:inherit}#frm_form_editor_container .divider_section_only .frm_primary_label{display:flex;align-items:center;gap:var(--gap-xs);font-size:20px}#frm_form_editor_container .divider_section_only .frm_primary_label .frm-sub-label{padding:0}.frm-token-container{position:relative;display:block;direction:ltr}.frm-token-container .frm-tokens{position:absolute;top:0;left:0;max-width:calc(100% - var(--gap-xl));display:flex;align-items:center;flex-wrap:wrap;gap:var(--gap-2xs);padding:6px var(--gap-xs);margin:0}.frm-token-container .frm-token{position:relative;display:flex;align-items:center;gap:var(--gap-xs);min-height:24px;height:auto;color:var(--grey-900);background:var(--grey-100);border-radius:4px;padding:0 var(--gap-xs);font-size:var(--text-md);margin:0;z-index:2}.frm-token-container .frm-token .frm-token-value{line-height:var(--leading);white-space:normal;word-break:break-word}.frm-token-container .frm-token .frm-token-remove{display:flex;flex-shrink:0;cursor:pointer}.frm-token-container .frm-token .frm-token-remove .frmsvg{color:var(--grey-900);position:static;width:12px;height:12px;padding:0}.frm-token-container .frm-token .frm-token-remove:hover .frmsvg{color:var(--error-500)}.frm-token-container .frm-show-inline-modal{z-index:3 !important}.frm-token-container .frm-token-proxy-input{position:relative;z-index:1;padding-right:var(--gap-xl) !important}form .form-field.frm_field_loading{margin-bottom:0;min-height:0;padding:0;text-align:center}.frm_sorting>.frm_field_loading .frm_visible_spinner.frm-wait{margin-bottom:10px}.frm_sorting>.frm_field_loading~.frm_field_loading .frm_visible_spinner.frm-wait{margin-bottom:0;display:none}.frm_description,.with_frm_style form div.description,.frm_error{margin:0}.frm_error{color:#f04438}form .frm_blank_field input,form .frm_blank_field textarea,form .frm_blank_field select,form .frm_blank_field .frm-g-recaptcha iframe,form .frm_blank_field .g-recaptcha iframe{border-color:#f04438}form .frm_blank_field label{color:#f04438}.frm_required{color:#f04438}.with_frm_style .wp-editor-container textarea,.postbox .wp-editor-container textarea,.frm_remove_border{border:none}.with_frm_style .mceIframeContainer,.postbox .mceIframeContainer{background-color:#fff}.frm_pro_license_msg{clear:left;margin-top:10px}.frm-license-input{position:relative}.frm-license-input span{font-size:var(--text-sm)}.frm-license-input .frmsvg{width:20px;height:20px;margin-left:5px;vertical-align:text-top}.frm-license-input .frmsvg,.frm-license-input span,.frm-license-input i{color:#00831a}.upgrade_to_pro{padding:10px 25px 25px;max-width:700px;margin:20px auto !important}.upgrade_to_pro .error{display:none}.toplevel_page_formidable #wpbody-content>.error{margin:1px;padding:5px 12px}.frm_error_style,.frm_warning_style,.frm_note_style2,.frm_note_style,.frm_message,#post-body-content .frm_updated_message,div.frm_updated_message{border-radius:var(--small-radius);background-color:#d5f2dc;color:#1e561f;padding:var(--gap-sm) var(--gap-md);font-size:var(--text-sm);margin:var(--gap-sm) 0;text-align:left}.frm_note_style2{background:linear-gradient(90deg, #e9effa, #fcf6fe) padding-box,linear-gradient(90deg, #1961D5, #E8ABEF) border-box;border:1px solid rgba(0,0,0,0)}#frm_top_bar+.wrap>.frm_updated_message,#frm_top_bar+.wrap>.frm_warning_style{display:inline-block;width:100%;box-sizing:border-box}#post-body-content>.frm_updated_message{margin:5px 65px}#form_global_settings #post-body-content>.frm_updated_message,#form_global_settings #post-body-content>.frm_warning_style{margin:5px 25px}.frm_error_style{color:#973937;background-color:#ebcccc;clear:both}.frm_error_style a{text-decoration:underline;font-weight:600}.frm_error_style svg{opacity:.7}.frm_warning_style{color:#7a4d05;background-color:#fff2d2}.frm_warning_heading{font-weight:700;margin-bottom:4px}.frm_warning_style{position:relative;padding-right:calc(var(--gap-md) + 15px)}body.rtl .frm_warning_style{padding-right:var(--gap-md);padding-left:calc(var(--gap-md) + 15px)}.frm-warning-dismiss{position:absolute;top:10px;right:10px;display:flex;cursor:pointer;transition:opacity .2s ease-out}body.rtl .frm-warning-dismiss{left:10px;right:auto}.frm-warning-dismiss:hover{opacity:.8}.frm-warning-dismiss.frmsvg,.frm-warning-dismiss.frmsvg svg{width:15px;height:15px}.frm_note_style{background:rgba(188,224,253,.23);color:var(--grey-700)}.frm-banner-alert{text-align:left;margin:0;border-radius:0;padding:10px 0 10px 40px}.frm-banner-alert a{color:var(--primary-500);font-weight:400;text-decoration:none}.frm_updated_message ul,.frm_updated_message li,.frm_warning_style ul,.frm_warning_style li,.frm_error_style ul,.frm_error_style li{margin:0}.frm-inline-message{border:1px solid var(--primary-700);border-radius:var(--small-radius);color:var(--primary-700);background:#fff;text-align:center;padding:20px;font-size:var(--text-sm);line-height:var(--leading)}.frm-inline-message a{text-decoration:underline;font-weight:600;color:var(--primary-700)}.frm_pro_heading span{margin-top:10px}.frm_pro_heading .alignright{text-align:right}.frm-yes{color:var(--green);font-size:var(--text-xl)}.frm-nope{color:var(--grey-400);font-size:var(--text-xl)}.upgrade_to_pro a{color:var(--orange)}.upgrade_to_pro table .frmsvg{height:var(--text-xl);width:var(--text-xl)}.upgrade_to_pro table.widefat{background-color:#fff;border-collapse:collapse}.frm-white-body .upgrade_to_pro table th,.upgrade_to_pro table td{padding:10px 15px;border:1px solid var(--grey-300);line-height:var(--leading);font-size:var(--text-sm)}.upgrade_to_pro table th.frmcenter{text-align:center}.widefat th.frm_table_break{background-color:var(--sidebar-color)}h2.frm-h2+.howto{color:var(--medium-grey);max-width:850px;margin:5px 0 20px}.frm-card{width:100%;border-radius:10px;border:1px solid var(--grey-300);opacity:1;transition:opacity 1s}.frm-card-box{max-width:524px;background-color:#fff;border-radius:var(--medium-radius);padding:var(--gap-xl);border:1px solid var(--grey-200);box-shadow:var(--box-shadow-md)}.frm-card-box.frm-has-progress-bar{position:relative;overflow:hidden;border-radius:var(--medium-radius)}.frm-card-box-progress-bar{position:absolute;top:0;left:0;right:0;height:var(--gap-xs);background-color:var(--primary-25)}.frm-card-box-progress-bar>span{position:absolute;top:0;left:0;bottom:0;width:33%;background-color:var(--primary-500)}.frm-card-box-header{display:flex;justify-content:center;margin-bottom:var(--gap-sm)}.frm-card-box.frm-has-progress-bar .frm-card-box-header{margin-top:var(--gap-xs)}.frm-card-box-content>:last-child{margin-bottom:0}.frm-card-box-footer{display:flex;justify-content:end;gap:var(--gap-sm);margin-top:var(--gap-lg)}.frm-card-box-title{font-size:var(--text-xl) !important;font-weight:600 !important;margin-bottom:var(--gap-xs)}.frm-card-box-text{font-size:var(--text-md) !important;color:var(--grey-600) !important;margin-top:0 !important}.frm-fade{opacity:0;transition:all 1s}.frm-addons .frm-card.frm-addon-not-installed{position:relative}.frm-addons .plugin-card-top{min-height:155px;padding-top:var(--gap-lg);overflow:hidden}.frm-addons .plugin-card-top h2{margin-top:0;font-weight:400}.frm-template-row p,.frm-addons .plugin-card-top p{opacity:.8}.frm-addons .plugin-card-top>:not(p):not(h2){display:none}.frm-addons .plugin-card-bottom{padding:5px 20px 20px;text-align:center;background:rgba(0,0,0,0);border-top:none}.frm-addons .plugin-card-bottom,.frm-addons .plugin-card-bottom .button{font-size:15px}.frm-addons .button,.frm-addons .frm-button-tertiary{float:right}.frm-addons .addon-status{float:left;padding-top:4px}.frm-addon-not-installed .frm-activate-addon,.frm-addon-not-installed .frm-deactivate-addon,.frm-addon-not-installed .frm-uninstall-addon,.frm-addon-installed .frm-install-addon,.frm-addon-installed .frm-deactivate-addon,.frm-addon-active .frm-activate-addon,.frm-addon-active .frm-install-addon,.frm-addon-active .frm-uninstall-addon,.plugin-card-pro.frm-addon-active .button,.plugin-card-pro.frm-addon-active .frm-button-tertiary{display:none !important}.frm-save-and-reload-options{margin-top:10px;font-size:13px}.frm-save-and-reload,.frm-save-and-reload+.frm-button-secondary{visibility:visible !important}.addon-status-label{opacity:.7}.frm-addon-active .addon-status-label{color:var(--green);opacity:1}.frm-addon-error{position:absolute;top:55px;left:10px;right:10px;font-weight:700;text-align:center}.frm-new-template.plugin-card-bottom{overflow:visible}#frm-new-template p:first-child{margin-top:0}.frm-admin-page-formidableedit #wpbody-content>*:not(.frm-review-notice):not(.frm_previous_install):not(.frm-banner-alert):not(#frm-svg-icons-pack),#wpbody-content>.updated,#wpbody-content>#update-nag,#wpbody-content>.update-nag,#wpbody-content>.notice,#wpbody-content>.error:not(.frm_previous_install),.frm-white-body .updated,.frm-white-body .notice,.frm_wrap>.wrap>.notice,.frm-white-body .error:not(.frm_previous_install){display:none}.frm-admin-page-formidableedit #frm_builder_page{display:block !important}.frm-white-body .updated,.frm-white-body .error{margin:0;padding:10px 20px}.frm-modal:not(#frm-dismissable-cta) .postbox{max-height:600px;overflow:hidden;margin-bottom:0}.frm-modal .postbox .frm_modal_top,.frm-dialog .frm_common_modal .postbox>div:first-child,.frm-error-modal .frm_modal_top{padding:var(--gap-md) var(--gap-md) 0;position:relative}.frm-modal h2,.frm-modal .postbox .inside h2,.frm-modal .postbox .frm-modal-title,.frm-dialog .frm_common_modal .postbox>div:first-child>div:first-child,.frm-error-modal .frm-modal-title{display:inline-block;font-size:var(--text-lg);color:var(--grey-900);font-weight:600;margin:0;padding:0}.frm-modal h3{font-weight:500}.frm-inline-modal>a.dismiss,.frm-modal .postbox>a.dismiss,.frm-modal .postbox .frm-modal-title+div:last-child,.frm-dialog .frm_common_modal .postbox>div:first-child>div:last-child{position:absolute;top:19px;right:19px;display:flex;z-index:2}body.rtl .frm-inline-modal>a.dismiss,body.rtl .frm-modal .postbox>a.dismiss,body.rtl .frm-modal .postbox .frm-modal-title+div:last-child,body.rtl .frm-dialog .frm_common_modal .postbox>div:first-child>div:last-child{right:unset;left:30px}.frm-info-modal .postbox>a.dismiss,.frm-inline-modal>a.dismiss{right:13px;top:13px}.frm-modal .postbox .frm-modal-title+div:last-child a,.frm-modal a.dismiss .frmsvg,.frm_common_modal .frm_modal_top a .frmsvg{color:var(--grey-500)}.frm-modal .postbox .frm-modal-title+div:last-child a:hover,.frm-modal a.dismiss .frmsvg:hover,.frm_common_modal .frm_modal_top a .frmsvg:hover{color:var(--grey-700)}.frm-modal .frm_modal_content>div.inside,.frm_common_modal .frm_modal_content>div.inside{padding:var(--gap-md);margin:0;font-size:var(--text-sm);color:var(--grey-700)}.frm-modal p{color:var(--grey-900)}.frm_common_modal .postbox{display:flex;flex-direction:column}.frm-modal .postbox>div.inside .cta-inside{overflow-y:auto;height:auto}.frm_modal_footer{padding:0 var(--gap-md) var(--gap-sm);text-align:right}body.frm-body-with-open-modal{overflow-y:hidden}.frm-templates-list{margin-top:0}.frm-templates-list.frm_grid_container li{margin-bottom:0}.frm-templates-list li{vertical-align:top;position:relative;box-sizing:border-box;border-radius:6px;border:1px solid rgba(0,0,0,0);text-align:left}.frm-templates-list li:not(.frm_hidden){display:inline-block}.frm-templates-list.frm-categories-list li{width:100%}.frm-templates-list li.frm-selectable{cursor:pointer}.frm-templates-list li.frm-selectable:hover{background:var(--light-blue);border-color:rgba(65,153,253,.5)}.frm-templates-list li.frm-selectable:hover h3,.frm-templates-list li.frm-selectable:hover p{max-width:calc(100% - 65px)}.frm-templates-list .frm-featured-form{display:flex;width:100%}.frm-templates-list li .frm-featured-form{padding:7px 5px}.frm-templates-list li li>div{padding-left:0}.frm-templates-list li>div>div{vertical-align:middle}.frm-category-icon,.frm-icon-wrapper{background:var(--primary-500);border-radius:var(--small-radius);color:#fff;width:32px;height:32px;font-size:18px;box-sizing:border-box;align-self:center;justify-content:center;align-items:center;display:inline-flex}.frm-templates-list li .frm-category-icon{overflow:hidden}.frm-templates-list li h3,.frm-templates-list li p{text-align:left;margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.frm-templates-list li h3,.frm-templates-list .frm-install-template h3{font-size:var(--text-sm) !important}.frm-templates-list .frm-install-template div{text-align:left}#frm_leave_email,#frm_code_from_email{width:480px;max-width:100%}.frm-templates-list.frm-categories-list li>div>div:last-child{padding-left:0}.frm-hover-icons{position:absolute;right:0;top:17px;max-width:91px;height:100%;box-sizing:border-box;padding:0 10px 0 5px !important;border-radius:var(--small-radius);text-align:right;display:flex;gap:5px}.frm-ready-made-solution .frm-hover-icons{visibility:hidden}.frm-ready-made-solution:hover .frm-hover-icons{visibility:visible}.frm-hover-icons a{width:22px;height:22px;font-size:var(--text-md);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;box-sizing:border-box;line-height:var(--leading);text-align:center}.frm-hover-icons>.frm-preview-form,.frm-hover-icons>.frm-delete-form{border:1px solid var(--primary-500)}.frm-hover-icons>.frm-create-form,.frm-ready-made-solution .frm-hover-icons a{background-color:var(--primary-500)}.frm-hover-icons>a .frmsvg{width:14px;height:14px;vertical-align:baseline}.frm-hover-icons>.frm-preview-form .frmsvg,.frm-hover-icons>.frm-delete-form .frmsvg{color:var(--primary-500)}.frm-hover-icons>.frm-unlock-form{background-color:var(--primary-500)}.frm-hover-icons>.frm-unlock-form .frmsvg{background-color:var(--primary-500)}.frm-ready-made-solution .frmsvg{width:14px;height:14px}.frm-hover-icons .frm-create-form svg,.frm-ready-made-solution .frm-hover-icons svg{color:#fff}.frm-hover-icons .frm-create-form:hover,.frm-ready-made-solution .frm-hover-icons a:hover,.frm-hover-icons>.frm-unlock-form:hover,.frm-hover-icons>.frm-unlock-form:hover .frmsvg{background-color:var(--primary-700) !important}.frm-hover-icons .frm-preview-form:hover,.frm-hover-icons .frm-delete-form:hover{border:1px solid var(--primary-700) !important}.frm-hover-icons .frm-preview-form:hover .frmsvg,.frm-hover-icons .frm-delete-form:hover .frmsvg{color:var(--primary-700) !important}.frm-application-card h4 .frmsvg,.frm-locked-template h3 .frmsvg{height:var(--text-sm);width:var(--text-sm);vertical-align:text-top;color:var(--grey-500)}.frm-modal-back{cursor:pointer;margin-right:4px}.frm-modal-cancel{float:left}.frm-meta-tag,.frm-meta-tag:hover{padding:var(--gap-2xs) var(--gap-xs);border-radius:var(--small-radius);font-weight:600;display:inline-flex;background-color:#d9ebff;gap:2px}.frm-meta-tag.frm-grey-tag,.frm-meta-tag.frm-grey-tag:hover{background-color:var(--sidebar-hover);color:var(--grey-900)}.frm-meta-tag.frm-red-tag,.frm-meta-tag.frm-red-tag:hover{background:var(--error-100);color:var(--error-700)}.frm-meta-tag.frm-orange-tag,.frm-meta-tag.frm-orange-tag:hover{background-color:#fef7f4;color:var(--orange)}.frm-meta-tag.frm-green-tag,.frm-meta-tag.frm-green-tag:hover{background-color:var(--success-500);color:#fff}.frm-entry-status-0,.frm-meta-tag.frm-lt-green-tag,.frm-meta-tag.frm-lt-green-tag:hover{background-color:var(--success-100);color:var(--success-800)}.frm-meta-tag.frm-new-pill{background-color:var(--success-500);vertical-align:text-bottom}.frm_add_field span+.frm-meta-tag{margin-left:0}.frm-entry-status{font-weight:500}.frm-entry-status-1{color:#7a4d05;background:#fff2d2}#frm-create-footer{padding:15px 20px}li .frm-hover-icons .frm-preview-form,.frm-hover-icons .frm-unlock-form,.frm-locked-template .frm-hover-icons .frm-create-form,.frm-modal-back{display:none}.frm-locked-template .frm-hover-icons .frm-unlock-form,li[data-preview] .frm-hover-icons .frm-preview-form{display:inline-flex}.frm-modal-back svg{color:#7f7f7f}#frm-upgrade-body-list-wrapper>div{display:inline-block;width:33.3333333333%;vertical-align:top;text-align:left;margin-bottom:10px}#frm-upgrade-body-list-wrapper ul{padding-left:40px}#frm-upgrade-body-list-wrapper ul li::before{content:"\2022";color:var(--primary-500);display:inline-block;width:1em;margin-left:-1em}.frm-embed-modal-content{padding:var(--gap-md)}.frm-embed-modal-content.frm-loading-page-options{display:flex;justify-content:center}#frm_embed_modal .frm_embed_example{background:var(--sidebar-color);border:1px solid var(--sidebar-hover);border-radius:var(--small-radius);color:var(--grey-900);font-size:var(--text-sm);padding-right:var(--gap-lg);width:100%;height:auto !important;resize:none}#frm_embed_modal textarea.frm_embed_example{padding-bottom:0}.frm-embed-modal-content>div a{position:absolute;right:0;top:0}.frm-embed-modal-content>div{position:relative;margin-bottom:var(--gap-sm)}.frm-embed-modal-content>div:last-child{margin-bottom:0}.frm-embed-modal-content svg[id^=frm_copy_embed_]{position:absolute;bottom:10px;right:10px;cursor:pointer;opacity:.5}.frm-border-info-box,.frm-embed-modal-option{border-radius:var(--small-radius);border:1px solid var(--grey-300);padding:var(--gap-sm);cursor:pointer;display:flex;gap:var(--gap-sm);font-size:var(--text-sm)}.frm-embed-modal-option+.frm-embed-modal-option{margin-top:var(--gap-sm)}.caret.rotate-270,.frm-embed-modal-option .caret{align-self:center;margin-left:auto;transform:rotate(-90deg)}#frm_embed_modal .frm_modal_footer{display:none}#frm_embed_modal.frm-on-page-2 .frm_modal_footer{display:block}.frm-embed-modal-content ul{max-height:300px;overflow-y:scroll}.frm-embed-modal-wrapper.frm-dialog{overflow:visible}#frm-bulk-modal .frm_grid_container{grid-template-columns:repeat(12, 8.33%);grid-gap:0}#frm-bulk-modal .frm8{border-right:1px solid var(--grey-300);padding:10px 20px 10px var(--gap-lg)}#frm-bulk-modal .frm4{padding:10px 0}.frm-inline-modal .howto{margin:5px 0 10px;color:var(--grey)}.frm-inline-modal .frm_code_list+.howto{margin-bottom:0}#frm_bulk_options{height:240px;width:100%;border:none;box-shadow:none;padding:0}.frm-bulk-edit-link{display:flex;align-items:center;justify-content:flex-end;gap:var(--gap-2xs);font-size:var(--text-sm);margin:12px 0 12px auto}.frm-bulk-edit-link .frm-bulk-edit-link{margin:0}.frm-small-add{font-size:var(--text-sm) !important}.frm-small-add span{color:var(--primary-500);font-size:12px;height:12px;width:12px}.frm_no_captcha_text{font-weight:700;color:#a00}.frm_image_from_url{height:50px}h1 .fa-caret-down{font-size:18px}.caret{display:inline-block;width:19px;height:9px;margin-right:-8px;vertical-align:middle}.caret,.wp-admin .frm_wrap select,.frm_wrap .frm_form_builder select,.frm_wrap .ui-autocomplete-input{background:rgba(0,0,0,0) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none'%3E%3Cpath stroke='%2398A2B3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M12.708 8.959 10 11.875 7.292 8.96'/%3E%3C/svg%3E") no-repeat right 8px top 50%;padding-right:var(--gap-lg) !important}.caret{padding-right:var(--gap-xs) !important;background-position-x:5px}.frm-btn-group .caret{float:right;margin-top:calc(var(--text-md)/2)}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.frm_wrap .ui-autocomplete,#frm_adv_info.frm-dropdown-menu,.frm-dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;padding-left:4px;padding-right:4px;margin:var(--gap-xs) 0 0;text-align:left;list-style:none;background:none;background-color:#fff;background-clip:padding-box;border:1px solid var(--grey-100);border-radius:.25rem;box-shadow:var(--box-shadow-lg);max-height:200px;overflow-y:auto;overflow-x:hidden;font-size:var(--text-md);width:auto;min-width:160px}.frm6 .frm-dropdown-menu{min-width:100px;max-width:99%}#frm_bs_dropdown .frm-dropdown-menu{max-width:400px}.field_type_list .frm-dropdown-menu{min-width:150px !important}#frm_field_group_controls .frm-dropdown-menu,.frm-field-action-icons .frm-dropdown-menu{min-width:180px !important}.frm-field-action-icons .frm-dropdown-toggle svg{color:#9ea9b8}.multiselect-container.frm-dropdown-menu,#search-submit .frm-dropdown-menu{min-width:200px !important}.preview .frm-dropdown-menu{min-width:230px !important}.frm-dropdown-menu.dropdown-menu-right{right:0;left:auto}.frm-dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.frm-dropdown-menu>.dropdown-item{margin:0}.frm-select-list-item,.frm_wrap .ui-autocomplete li>div,.multiselect-container button.multiselect-option,.frm-dropdown-menu>.dropdown-item>a,.frm-dropdown-menu .frm_dropdown_li{clear:both;font-weight:400;white-space:nowrap;text-decoration:none;border-radius:var(--small-radius)}.frm-dropdown-menu>.active>a,.frm-dropdown-menu>.active>a:hover,.frm-dropdown-menu>.active>a:focus{text-decoration:none;outline:0}.frm-select-list-item.disabled,.frm-dropdown-menu>.disabled>a,.frm-dropdown-menu>.disabled>a:hover,.frm-dropdown-menu>.disabled>a:focus{color:#999}.frm-select-list-item.disabled:hover,.frm-dropdown-menu>.disabled>a:hover,.frm-dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:rgba(0,0,0,0);background-image:none;cursor:not-allowed}.open>.frm-dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 10px;font-size:var(--text-xs);color:var(--grey-400)}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.dropdown-menu-right>.frm-dropdown-menu,.pull-right>.frm-dropdown-menu{right:0;left:auto}.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.navbar-fixed-bottom .dropdown .frm-dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.btn{border:1px solid #ddd;background:#fff;height:28px;line-height:var(--leading)}a.frm_option_icon::before{color:var(--primary-500);font-size:22px;width:22px;height:22px}a.frm_option_icon:focus::before,a.frm_option_icon:hover::before{color:var(--primary-700)}.frm_top_left .frm-dropdown-toggle{color:#999}.frm-card ol{margin-left:15px}.frm-dropdown-toggle{text-decoration:none}.frm-card .frm-dropdown-toggle{border:1px solid var(--grey-300);border-radius:var(--small-radius);font-size:13px;color:var(--grey-700);padding:7px 20px}.frm_actions_dropdown .frm-dropdown-menu{font-size:var(--text-sm);color:#5f6c72}.frm-dropdown-menu .frm_icon_font{vertical-align:middle;color:#5f6c72;margin-right:3px}.multiselect-container.frm-dropdown-menu{top:auto;left:auto;font-size:var(--text-sm);padding:4px;margin-bottom:3px}#post-body-content+.frm-right-panel h3.accordion-section-title{padding:7px 10px 8px 14px;font-size:var(--text-md);color:var(--grey-700)}.frm-with-line,.accordion-section-content h4{font-size:var(--text-md);font-weight:400;margin:20px -20px 10px;padding:0 20px;color:var(--grey-700);position:relative;border:none !important}.frm-with-line span,.accordion-section-content h4 span{background:#fff;padding:0 var(--gap-xs);position:relative;display:inline-block;z-index:2}.accordion-section-content h4 span{background:var(--sidebar-color)}.frm-right-panel .frm-with-line span{background:var(--sidebar-color) !important;margin-left:-4px}.frm-right-panel .frm-inline-modal .frm-with-line span{background:#fff !important}.frm-with-line::before,.accordion-section-content h4::before{content:"";display:block;position:absolute;border-bottom:1px solid var(--grey-300);left:0;width:100%;top:50%}.control-section .accordion-section-title::after,.customize-pane-child .accordion-section-title::after{top:15px}.accordion-container .frm-dropdown-menu{min-width:40px}.frm-btn-group .multiselect.dropdown-toggle{box-sizing:border-box;min-height:unset;cursor:pointer}.accordion-container .frm-dropdown-menu::before,.accordion-container .multiselect.dropdown-toggle::before{font-family:"s11-fp" !important}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0;width:100%;max-width:250px}.multiselect-container button.multiselect-option{width:100%;text-align:left;border:none;margin-bottom:4px}.multiselect-container button.multiselect-option label{margin-left:5px}.accordion-container .multiselect-container label{padding:3px 19px 3px 7px}.frm-btn-group.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.frm-btn-group.btn-group,.frm-btn-group.btn-group-vertical{display:block}.multiselect-option label{max-width:calc(100% - 22px);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.frm_scale{text-align:center;float:left;margin-right:10px}.frm_scale input{display:block;margin:5px}.frm_multi_fields_container{float:left}.frm_multi_fields_container,.frm_form_builder .frm_form_fields input[type=tel] .frm_form_builder .frm_form_fields input[type=range],.frm_form_builder .frm_form_fields input[type=text]{width:100%;height:auto}.frm_form_builder .frm_time_wrap .frm_time_sep{vertical-align:sub;vertical-align:-webkit-baseline-middle}.frm_form_builder input[type=range]::-webkit-slider-runnable-track{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-moz-range-track{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-ms-fill-lower{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-ms-fill-upper{background-color:var(--blue-border)}.frm-embed-field-placeholder{text-align:center;height:145px;display:flex;align-items:center;justify-content:center}.frm-fake-field{display:block;height:25px;background-color:var(--light-blue);border:1px solid var(--grey-300);margin:10px 0;border-radius:var(--small-radius)}.frm-embed-message{position:absolute;background:#fff;border:1px solid var(--grey-300);color:var(--grey-700);padding:var(--gap-md);font-size:var(--text-lg);max-width:200px;min-width:50%;margin:0 var(--gap-md);overflow:hidden;text-overflow:ellipsis}.frm-summary-message{top:50%;left:50%;padding:15px 0;font-size:var(--text-md);transform:translate(-50%, -50%)}.frm-summary-learn-more{font-size:inherit !important}.frm-single-settings .frm-embed-message{width:100%;position:static;border-radius:var(--small-radius)}#new_fields input[type=text],#new_fields input[type=number],.frm_field_box .frm_form_fields>textarea,.frm_form_fields .frm_form_field>textarea,.frm_form_fields .frm_form_field>input[type=email],.frm_form_fields .frm_form_field>input[type=url],.frm_form_fields .frm_form_field>input[type=number],.frm_form_fields .frm_form_field>input[type=tel],.frm_form_fields .frm_form_field>input[type=text],.frm_form_fields .frm_form_field>input[type=range]{width:100%}.frm_form_fields textarea.wp-editor-area{width:100%;border:none}.frm_form_fields input[type=file],.frm_form_fields input[type=file]:disabled{background:rgba(0,0,0,0);border:none;box-shadow:none;width:auto}.frm_form_fields select{width:auto;max-width:100%}input[type=radio],input[type=checkbox]{width:16px;padding:0}.frm_grid_container>p,.frm_grid_container>p.frm_form_field,.frm_grid_container>div.frm_form_field,#new_fields .frm_grid_container>p{margin-top:8px;margin-bottom:8px;margin-right:0}.frm_grid_container>p>label:only-child,.frm_grid_container>p.frm_form_field>label:only-child,.frm_grid_container>div.frm_form_field>label:only-child,#new_fields .frm_grid_container>p>label:only-child{margin-bottom:0}.frm_grid_container>.frm-has-modal>p:only-child{margin-bottom:var(--gap-xs)}#new_fields div.frm_grid_container>.frm_primary_label{margin-top:8px}#new_fields .frm_primary_label+p,#new_fields .frm_primary_label+.frm6+.frm6,#new_fields .frm_primary_label+.frm6+.frm-inline-modal+.frm6{margin-top:0}.frm_catlevel_2,.frm_catlevel_3,.frm_catlevel_4,.frm_catlevel_5{margin-left:18px}.frm_wrap .frm-fields .auto_width,.frm_form_fields input.auto_width,.frm_form_fields select.auto_width,.frm_form_fields textarea.auto_width{width:auto !important}.frm_form_fields select.auto_width{min-width:60px}.frm_form_fields input:focus,.frm_form_fields select:focus,.frm_form_fields textarea:focus,.frm_focus_field input{background-color:#fff;border-color:#ddd}.frm_form_builder .frm_radio,.frm_form_builder .frm_checkbox{display:block;margin-bottom:2px}.frm_form_builder .frm_radio label,.frm_form_builder .frm_checkbox label{font-size:var(--text-sm)}.horizontal_radio .frm_radio,.horizontal_radio .frm_checkbox{margin-right:5px;display:inline-block}.frm_form_builder .frm_opt_container .frm_radio.frm_image_option label,.frm_form_builder .frm_opt_container .frm_checkbox.frm_image_option label{display:flex;align-items:center;gap:9px;white-space:normal}.frm_form_field.frm_two_col .frm_opt_container,.frm_form_field.frm_three_col .frm_opt_container,.frm_form_field.frm_four_col .frm_opt_container{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:max-content;grid-gap:0 2.5%}.frm_form_field.frm_three_col .frm_opt_container{grid-template-columns:repeat(3, 1fr)}.frm_form_field.frm_four_col .frm_opt_container{grid-template-columns:repeat(4, 1fr)}.frm_form_field.frm_two_col .frm_radio,.frm_form_field.frm_two_col .frm_checkbox,.frm_form_field.frm_three_col .frm_radio,.frm_form_field.frm_three_col .frm_checkbox,.frm_form_field.frm_four_col .frm_radio,.frm_form_field.frm_four_col .frm_checkbox{grid-column-end:span 1}.frm_wrap .with_frm_style .frm_checkbox input[type=checkbox],.frm_wrap .with_frm_style .frm_radio input[type=radio],.frm_wrap input[type=checkbox],.frm-white-body input[type=checkbox],.field-group input[type=checkbox],.frm_scale input[type=radio],.frm_radio input[type=radio],.frm_checkbox input[type=checkbox]{width:15px;min-width:15px;height:15px;border:1px solid var(--grey-300);box-shadow:var(--box-shadow-sm);-webkit-appearance:none}.frm_wrap input[type=radio]{border-color:var(--grey-300);box-shadow:var(--box-shadow-sm)}.frm_wrap input[type=radio]:checked::before{background-color:var(--primary-500)}.frm_wrap .with_frm_style .frm_checkbox input[type=checkbox],.frm_wrap input[type=checkbox],.frm-white-body input[type=checkbox],.field-group input[type=checkbox],.frm_checkbox input[type=checkbox]{border-radius:4px}.frm-white-body input[type=checkbox]:checked,.frm_wrap input[type=checkbox]:checked{background-color:var(--border-color-active, var(--primary-500)) !important;border-color:var(--border-color-active, var(--primary-500)) !important}.frm-white-body input[type=checkbox]:checked:focus,.frm_wrap input[type=checkbox]:checked:focus{border-color:var(--border-color-active, var(--primary-500))}.frm-white-body input[type=checkbox]:checked::before,.frm_wrap input[type=checkbox]:checked::before{content:"";display:block;width:100% !important;height:100% !important;background-image:url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6667 1.5L4.25001 7.91667L1.33334 5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A") !important;background-size:8px !important;background-repeat:no-repeat !important;background-position:center !important;margin:0}.frm_radio input[type=radio],.frm_checkbox input[type=checkbox]{margin-right:5px}.frm_inner_field_container{margin-bottom:10px}.frm_conf_inline .frm_inner_field_container,.frm_conf_inline .frm_inner_conf_container{width:49%;float:left}.frm_conf_inline .frm_inner_field_container{margin-right:2%;clear:both}.frm_inner_field_container>label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.frm_field_box:not(.edit_field_type_divider):hover>.frm_inner_field_container>label,.frm_field_box .divider_section_only:hover>.frm_inner_field_container>label,li.ui-state-default.selected>.frm_inner_field_container>label{max-width:calc(100% - 100px)}.frm-drag-fade{background-color:var(--lightest-grey) !important;border-radius:4px}.frm-drag-fade *{opacity:0}.frm-dragging .divider_section_only,.frm-dragging .frm_field_box{pointer-events:none}.frm_form_settings #op-popup,.frm_form_settings com-1password-op-button,.frm_conf_below .frm_conf_field_container .frm_primary_label,.frm_conf_inline .frm_inner_field_container .frm-show-click a,.frm_conf_below .frm_conf_field_container .frm-show-click a{display:none !important}.frm_conf_inline .frm_inner_field_container .frm-field-action-icons{position:absolute;right:5px}.frm_conf_below .frm_conf_field_container{margin-top:10px}.frm_calc_dec{width:50px}.frm_ext_sc{display:none}.frm_long_input{width:100% !important;box-sizing:border-box}.frmcenter{text-align:center}img.frm_help{margin-left:2px;vertical-align:middle;padding-bottom:2px}.frm_spinner.frm-wait,.frm_spinner.spinner{float:left;visibility:hidden;margin:0 10px}.frm_visible_spinner.frm-wait,.frm_visible_spinner.spinner{visibility:visible;float:none}.frm_form_action_settings .frm_spinner.frm-wait,.frm_form_action_settings .frm_spinner.spinner{visibility:visible;float:none;vertical-align:bottom}.frm_form_action_settings .frm_loading{font-size:15px;text-align:center}.frm_ajax_settings_tab .frm-wait,.frm_ajax_settings_tab .spinner{visibility:visible;float:none;margin-top:20px}.wp-core-ui .frm_loading_button.button-primary.frm-button-primary,.frm_loading_button,.frm_loading_form.frm_button_submit{position:relative !important;opacity:.8;color:rgba(0,0,0,0) !important;text-shadow:none !important}.frm_loading_button:hover,.frm_loading_button:active,.frm_loading_button:focus,.frm_loading_form.frm_button_submit:hover,.frm_loading_form.frm_button_submit:active,.frm_loading_form.frm_button_submit:focus{cursor:not-allowed;color:rgba(0,0,0,0) !important;outline:none !important;box-shadow:none}.frm-wait{margin:20px;width:20px;height:20px;position:relative;display:inline-block}#frm-show-fields .frm-wait:only-child{position:absolute;left:50px;top:30px}.frm-wait::before,.frm_loading_button::before,.frm_loading_form.frm_button_submit::before{content:"";display:inline-block;position:absolute;background:rgba(0,0,0,0);border:1px solid #fff;border-top-color:rgba(0,0,0,0);border-left-color:rgba(0,0,0,0);border-radius:50%;box-sizing:border-box;top:50%;left:50%;margin-top:-10px;margin-left:-10px;width:20px;height:20px;animation:spin 2s linear infinite}.frm-wait::before{border-bottom-color:var(--primary-700);border-right-color:var(--primary-700)}.frm_loading_button.frm-button-secondary::before{border-bottom-color:var(--primary-500);border-right-color:var(--primary-500)}input[type=submit]:focus{outline:none !important}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}label input[type=checkbox],label input[type=radio]{vertical-align:inherit}#editorcontainer #dyncontent{margin:0;width:100%;padding:6px;line-height:var(--leading);border:0 none;outline:none;box-sizing:border-box}.frm_postbox_icon{margin:-6px 0 0 -10px}.frm_form_builder a:hover{text-decoration:underline}.frm_form_builder .widget-title h4{padding:10px 15px}.frm_form_builder .widget-top a.widget-action::after{margin:7px 12px 0}.frmbutton.frm_tgateway{display:none !important}.frm_html_legend pre{display:inline}#ed_fullscreen{display:none !important}.frm_posttax_opt_list{overflow:auto;max-height:200px;background-color:#fff}.frm_posttax_opt_list p.howto{font-size:12px}.frm_border_bottom{border-bottom:1px solid var(--grey-300);margin-bottom:10px;padding-bottom:10px}.frm_posttax_opt_list .frm_border_bottom span.howto{padding-right:10px}.frm_posttax_opt_list .frm_border_bottom input{margin-right:1px}.frm_add_remove div.frm_form_field{padding-bottom:5px}.frm_field_opts_list{max-height:260px;overflow:auto}.frm_white_bg{background-color:#fff}.frm_border_light{border:solid 1px #ddd}#new_fields .form-table input[type=text],#new_fields .form-table select,.form-table .form-field input,.form-table .form-field .quicktags-toolbar input,.form-field input,.form-field .quicktags-toolbar input{width:auto}.frm_aff_link{float:right}.frm_select_box{text-align:center;font-weight:700;width:100%;background-color:rgba(0,0,0,0) !important}.wp-list-table input.frm_select_box{text-align:left;font-weight:400;font-size:inherit !important;border:none;padding:0 !important;background-color:rgba(0,0,0,0) !important}.wp-list-table input.frm_select_box:focus{outline:none;box-shadow:none}.wp-list-table .frm_no_items.frm_select_box{text-align:center;font-weight:700;width:500px;max-width:100%;font-size:inherit}#frm-options-panel{padding:0 var(--gap-sm);color:var(--grey-900);overflow:hidden}.frm-right-panel a.frm_add_logic_link,#frm-options-panel h3{font-size:var(--text-md);font-weight:500;background-color:#fff;border-radius:var(--small-radius);padding:18px var(--gap-sm);margin:2px calc(-1*var(--gap-sm));transition:background-color 200ms ease-out,box-shadow 200ms ease-out,color 200ms ease-out}.frm-right-panel a.frm_add_logic_link .frmsvg,#frm-options-panel h3 .frmsvg{width:13px;height:13px;color:var(--grey-500);transition:transform 300ms ease-in}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):not(:first-of-type),.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):first-of-type:first-child,#frm-options-panel h3:not(.frm-collapsed):not(:first-of-type),#frm-options-panel h3:not(.frm-collapsed):first-of-type:first-child{color:var(--grey-700);box-shadow:var(--box-shadow-sm)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):not(:first-of-type) .frmsvg,.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):first-of-type:first-child .frmsvg,#frm-options-panel h3:not(.frm-collapsed):not(:first-of-type) .frmsvg,#frm-options-panel h3:not(.frm-collapsed):first-of-type:first-child .frmsvg{transform:rotate(-180deg)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div,#frm-options-panel h3:not(.frm-collapsed)+div{padding-top:6px;padding-bottom:6px}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container{padding-bottom:14px}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container>p:first-child,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container>p:first-child{margin-top:var(--gap-sm)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container>p:first-child.frm6+.frm6,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container>p:first-child.frm6+.frm6{margin-top:var(--gap-sm)}.frm-right-panel a.frm_add_logic_link.frm-collapsed,#frm-options-panel h3.frm-collapsed{color:var(--grey-500);background-color:rgba(0,0,0,0)}.frm-right-panel a.frm_add_logic_link:hover,#frm-options-panel h3:hover{color:var(--grey-700);background-color:#fff;box-shadow:var(--box-shadow-sm)}.frm-right-panel a.frm_add_logic_link:focus-visible,#frm-options-panel h3:focus-visible{outline:1px solid var(--primary-500) !important;outline-offset:-1px}.frm-right-panel a.frm_add_logic_link:focus{outline:auto}.frm_field_key{background-color:#f7f7f7}#frm_form_editor_container #edit-slug-box{padding:0}.frm-alt-table{position:relative;width:100%;border-collapse:collapse;margin-top:.5em;font-size:15px}#form_show_entry_page .frm-alt-table:not(.frm-zebra-striping)::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#fff}.frm-alt-table th{width:200px}.frm-alt-table tr,.frm-alt-table tr.frm-odd{background-color:rgba(0,0,0,0)}.frm-alt-table tr.frm-even{background-color:var(--sidebar-color)}.frm-alt-table th,.frm-alt-table td{background-color:rgba(0,0,0,0);vertical-align:top;text-align:left;padding:20px}.frm-alt-table h3{margin-bottom:0}.form-field .frm_cb_button{height:22px;line-height:20px;margin-bottom:10px;margin-right:5px}.edit_field_type_select .frm_option_val_label{margin-left:12px}.frm_rte{background:url(../images/rte.png) no-repeat}.frm_rte .howto{margin:10px 0 46px}.subform_section{margin:25px}.subform_section,.subform_section label,.subform_section input{opacity:80}.subform_section .frm_sortable_field_opts{display:none}#frm_form_editor_container .subform_section .frm_primary_label{display:block}.subform_section.subform_break{border-top:1px dashed #ccc}.button-secondary.frm_html_field{background-color:#ededed;padding:10px 20px;line-height:inherit;width:auto;height:auto !important;border-radius:0;box-sizing:content-box}.frm_html_field_placeholder{margin-bottom:10px;text-align:center}.recaptcha_placeholder{border:1px solid #d3d3d3;width:300px}.turnstile_placeholder{width:300px}.frm_sorting .frm_rte textarea{width:653px;background:#fff;margin:1px 0 0;border:1px solid #dfdfdf;border-top:none;border-radius:0;float:none !important}.frm_full_rte textarea{width:98%;padding:0}.frm_field_box{padding:5px;min-height:20px;margin:10px 0}.frm_indent_opt,td.frm_indent_opt{padding-left:25px}.frm_charts object{background:rgba(0,0,0,0)}.frm_charts h2{height:34px}.frm_single_option.ui-sortable-placeholder,li.sortable-placeholder{border:none;margin:0;visibility:visible !important;box-shadow:2px -10px 0 2px var(--primary-500)}#frm_form_editor_container>ul>.frm_single_option.ui-sortable-placeholder,#frm_form_editor_container>ul>li.sortable-placeholder{width:calc(100% - 5px) !important;height:0 !important}#frm_form_editor_container>ul>li>ul{position:relative}#frm_form_editor_container>ul>li>ul>li.sortable-placeholder,#frm_form_editor_container ul.start_divider>li>ul>li.sortable-placeholder{position:absolute;top:20px;bottom:0}.edit_field_type_divider+li.sortable-placeholder{box-shadow:2px 5px 0 2px var(--primary-500)}.start_divider li.sortable-placeholder{box-shadow:2px -5px 0 2px var(--primary-500)}.frm-is-collapsed+.sortable-placeholder{box-shadow:2px 15px 0 2px var(--primary-500)}.frm_single_option.ui-sortable-placeholder{box-shadow:0 0 1px 1px var(--primary-500)}.frm_sorting>li.edit_field_type_end_divider:first-child,.frm-show-click,li.ui-state-default.edit_field_type_divider .frm-show-click{display:none}.frm_form_field.ui-sortable-helper .frm-field-action-icons,.frm_form_field.ui-sortable-helper .frm_form_fields,.frm_form_field.ui-sortable-helper .frm_description,.frm_form_field.ui-sortable-helper .description{display:none}.frm_form_field.ui-sortable-helper .frm_primary_label,.frm_form_field.ui-sortable-helper .frm_inner_field_container{margin:0 !important}.frm-single-settings .frm-show-click{display:block !important}.frm-show-hover,.frm_single_visible_hover,li.ui-state-default.edit_field_type_divider .frm-show-hover{opacity:0;transition:opacity .15s ease-in-out}#frm-show-fields .frm-field-settings-open .frm-show-hover{opacity:1}.frm_sortable_field_opts{margin-top:5px}.frm_single_option{clear:both;margin:0 !important;padding-bottom:5px}.frm_single_option input[type=radio],.frm_single_option input[type=checkbox]{margin-top:0}.frm_single_option .frm-with-right-icon input[type=text]+.frmsvg{position:relative;right:27px;width:14px;height:14px;padding:0;margin:var(--gap-2xs) 0 0}.frm_product_price_wrapper,.frm_image_preview_wrapper,#new_fields .frm_single_option select,#new_fields .frm_single_option input[type=text]{width:calc(100% - 106px) !important;flex-grow:1}.frm-right-panel .frm_single_option a.frm_remove_tag,.frm_single_option a{padding-left:7px}.frm_single_option:hover .frm_single_visible_hover{opacity:100}.frm_single_option .frm-drag{font-size:23px;width:24px;height:24px;margin-left:-6px;margin-right:var(--gap-xs);color:var(--grey-500)}.frm_single_option .frm-drag::before{vertical-align:middle}.frm-drag,.frm_single_option.ui-sortable-helper{cursor:move}.frm_single_option .frm_option_key{margin-left:19px !important}.frm_option_key input[type=text]{margin-top:var(--gap-xs) !important;margin-left:11px !important}.frm_option_key input[type=checkbox]+input[type=text],.frm_option_key input[type=radio]+input[type=text]{margin-left:30px !important}li.ui-state-default.selected .frm-show-click,li.ui-state-default.selected.edit_field_type_divider .frm-show-click{display:inline;vertical-align:top}.frm_field_box:not(.edit_field_type_divider):hover>.frm_inner_field_container>.frm-show-hover,.frm_field_box .divider_section_only:hover>.frm_inner_field_container>.frm-show-hover,li.ui-state-default.selected>.frm_inner_field_container>.frm-show-hover,li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-show-hover{opacity:100}li.frm_field_box>ul.frm_grid_container{position:relative}.frm_sorting span.ui-icon{width:16px}body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) .frm_image_options .frm_image_option_container{--field-border-width: 1px;--border-color: var(--grey-300);--border-color-active: var(--primary-500);--border-radius: var(--small-radius)}#form_show_entry_page .frm_file_link,#form_show_entry_page .frm_image_option_container{display:inline-flex;flex-wrap:nowrap;flex-direction:column;text-align:center;align-items:center;width:150px;margin-right:10px;margin-bottom:10px}#form_show_entry_page .frm_image_option_container img{width:150px;height:150px;object-fit:cover}#form_show_entry_page .frm_file_link img{max-width:150px;height:auto}#form_show_entry_page .frm_file_link~br{display:none}#form_show_entry_page .frm_upload_label{padding:10px}#form_show_entry_page.frm_wrap .postbox{overflow:hidden}.frm_image_option_container .frm_image_placeholder_icon svg{height:150px}.frm_list_entry_page .frm_file_link,.frm_list_entry_page .frm_image_option_container.frm_label_with_image{display:block;text-align:center}.frm_list_entry_page .frm_image_option_container img{width:75px;height:75px;object-fit:cover}.frm_list_entry_page img{max-width:100%;height:auto}.frm_image_option_container .frm_empty_url{background-color:var(--sidebar-color)}.frm_list_entry_page .frm_image_option_container .frm_text_label_for_image{display:block;padding:5px 0 10px}.frm_list_entry_page .frm_upload_label,.frm-summary-page-wrapper .frm_text_label_for_image{display:block}#frm-welcome .frm_image_options .frm_image_option_container,#form_global_settings .frm_image_options .frm_image_option_container{background:var(--sidebar-color)}#frm-welcome .frm_image_option_container svg,#form_global_settings .frm_image_option_container svg{max-width:calc(100% - 20px)}#frm-new-template .frm_image_option_container svg{height:50px;margin:10px auto 0}.frm_image_option_container{position:relative}.frm_text_label_for_image>svg{width:30px;position:absolute;top:5px;right:calc(50% - 15px)}.frm_single_option .frm_option_key{margin-top:17px}.frm_single_option .frm_option_key.frm_image_preview_wrapper{margin-top:var(--gap-xs)}.frm_image_data{margin-left:var(--gap-sm);display:flex;flex-direction:column;font-size:var(--text-sm);justify-content:space-around;min-width:0}.frm_image_styling_frame{display:flex;align-items:stretch;margin-left:36px;margin-bottom:var(--gap-xs);width:100%}.frm_image_styling_frame img{height:54px;width:54px;min-width:auto;min-height:auto;border-radius:3px;object-fit:cover;object-position:center}.frm_image_styling_frame .frm_email_attachment_icon img{height:auto;width:auto;max-width:54px}.frm_image_preview_title{color:var(--grey-500);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0;flex:1 1 auto}.frm_wrap .frm_choose_image_box{cursor:pointer;color:var(--primary-500);background-color:#fff;margin-left:32px;text-align:center;width:100%}.frm-type-ranking .frm_option_key .frm_choose_image_box{margin-left:11px !important}.frm_wrap .frm_choose_image_box:hover{background:#fff}a.frm_remove_image_option,.frm_remove_image_option{color:var(--grey-400);cursor:pointer}a.frm_remove_image_option:hover .frmsvg,a.frm_remove_image_option:hover,.frm_remove_image_option:hover{color:rgba(40,47,54,.8)}.frm-form-setting-tabs{margin-top:var(--gap-sm) !important}.frm-right-panel>.postbox{background-color:rgba(0,0,0,0);border:none;box-shadow:none;margin:0}.frm-right-panel .postbox.frm_with_icons .inside,.frm-right-panel .postbox .inside,.frm-right-panel .inside{font-size:var(--text-md);padding:15px 20px 20px;color:var(--grey-700)}.frm-right-panel .misc-pub-section{padding:var(--gap-xs) 0;position:relative}.frm-right-panel .inside a,.frm-form-setting-tabs a{font-size:var(--text-md);color:var(--grey-700);padding:var(--gap-sm);display:block}.frm-form-setting-tabs a{color:var(--grey-900);padding:var(--gap-sm) var(--gap-md)}.frm-right-panel .inside a{padding:0;color:var(--primary-500);display:inline-block}.frm-right-panel .inside a:hover{color:var(--primary-700)}.frm-form-setting-tabs a:hover{background:var(--sidebar-hover);color:var(--grey-900)}.frm-right-panel .inside i,.frm-form-setting-tabs a i,.frm-form-setting-tabs a .frmsvg{margin:0 5px;display:inline-block;width:20px;height:20px;color:var(--grey-500)}.frm-form-setting-tabs a .frmsvg{margin:0}.frm-right-panel .inside a:hover i,.frm-right-panel .inside a:hover .frmsvg,.frm-form-setting-tabs a:hover .frmsvg,.frm-form-setting-tabs a:hover span{color:var(--grey-700)}.frm_settings_form .tabs-panel{padding:0 25px}#form_settings_page .tabs-panel,.frm_settings_form .tabs-panel{max-height:initial !important;min-height:50px !important}#frm_adv_info .tabs-panel{min-height:0 !important;overflow-x:hidden;padding:0;border:none;background:rgba(0,0,0,0)}select.frm_cancelnew,input.frm_enternew{width:175px}.frm_posttax_opt_list{border:1px solid var(--grey-300);padding:var(--gap-md);border-radius:var(--small-radius);margin:5px 0 5px var(--gap-md)}.frm-right-panel .wp-picker-open+.wp-picker-input-wrap{position:absolute;margin-left:calc((100% - 35px)*-1);margin-top:1px;width:calc(100% - 36px)}.frm-right-panel .wp-picker-container input[type=text].wp-color-picker{border:none;padding:5px 8px;font-family:inherit;color:var(--grey-700);font-size:var(--text-md);width:100%;line-height:var(--leading)}.frm-right-panel .wp-picker-input-wrap .wp-picker-clear{display:none !important}.frm-right-panel .wp-picker-holder{position:absolute;z-index:999}.frm-right-panel .wp-picker-input-wrap label{margin-bottom:0}.frm-right-panel .wp-picker-container .wp-color-result.button{width:100%;overflow:hidden;margin:0 !important;height:var(--h-md) !important;padding:0 0 0 var(--gap-lg) !important;border-radius:var(--small-radius);border-color:var(--grey-300)}.frm-right-panel .wp-color-result-text{line-height:var(--leading) !important;font-size:var(--text-md);background:#fff !important;color:var(--grey-900);padding:5px 8px;border-color:var(--grey-300);text-align:left}.frm-right-panel .color-alpha{width:var(--gap-lg) !important}.frm_grid_container .wp-picker-container{width:100%;position:relative}.wp-picker-container button.wp-color-result{border:1px solid var(--grey-300) !important}.wp-picker-container .wp-picker-input-wrap input.hex.wp-color-picker{max-width:100%;position:relative}.frm_end .wp-picker-holder{margin-left:-145px}.frm_end.frm6 .wp-picker-holder{margin-left:-86px}.frm_toggle_opt{padding:0;white-space:normal;display:inline;vertical-align:middle;font-weight:400}.frm_on_label,.frm_off_label{color:var(--grey-700)}.frm_toggle{position:relative;display:inline-block;width:40px;height:var(--h-xs);vertical-align:middle}.frm_toggle_block{display:inline-flex !important;gap:var(--gap-xs);align-items:center}.frm_toggle input,.frm_toggle_block input{display:none !important}.frm_toggle_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--grey-200);transition:.4s;border-radius:30px}.frm_toggle_slider::before{box-sizing:border-box;content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none'%3E%3Cpath stroke='%2398A2B3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m10.063 3.938-6.126 6.124M3.938 3.938l6.124 6.124'/%3E%3C/svg%3E");position:absolute;left:2px;bottom:2px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:20px;line-height:20px;background-color:#fff;border-radius:50%;transition:.4s;box-shadow:var(--box-shadow-md)}input:checked+.frm_toggle .frm_toggle_slider{background-color:var(--primary-500)}input:focus+.frm_toggle .frm_toggle_slider{box-shadow:var(--box-shadow-md)}input:checked+.frm_toggle .frm_toggle_slider::before{transform:translateX(16px);content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none'%3E%3Cpath stroke='%234199FD' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4.52 7.437 1.313 1.459L9.48 5.104'/%3E%3C/svg%3E")}input[disabled]+.frm_toggle_slider,input[disabled]+.frm_toggle .frm_toggle_slider{pointer-events:none;cursor:text;opacity:.5}.frm_toggle_opt~.frm_toggle .frm_toggle_slider::before{content:"" !important}.rtl .frm_toggle_opt{padding:0 8px}.rtl .frm_toggle_slider::before{left:17px}.rtl input:checked+.frm_toggle .frm_toggle_slider::before{transform:none !important;left:1px}.frm_toggle_off,.frm_toggle_on{display:none;color:#fff;z-index:999;position:absolute;font-size:10px;line-height:20px;left:6px}.frm_toggle_off{display:inline;left:auto;right:5px;color:var(--dark-grey)}.frm_toggle_long{width:80% !important;height:28px;display:inline-block !important}.frm_toggle_long .frm_toggle_slider{background:var(--primary-700);box-shadow:0 0 0 2px var(--primary-700)}.frm_toggle_long .frm_toggle_off,.frm_toggle_long .frm_toggle_on{width:50%;text-align:center;font-size:13px;line-height:28px}.frm_toggle_long .frm_toggle_on{left:0}.frm_toggle_long .frm_toggle_off{right:0}.frm_toggle_long .frm_toggle_slider::before{width:50%;left:0;top:0;border-radius:var(--border-radius) 0 0 var(--border-radius);height:100%;background-color:#fff;color:var(--primary-color);content:"" !important}.frm_toggle_long input:checked+.frm_toggle_slider::before{transform:translateX(101%);border-radius:0 var(--border-radius) var(--border-radius) 0}input:checked+.frm_toggle_slider+.frm_toggle_on{display:inline}input:checked+.frm_toggle_slider+.frm_toggle_on+.frm_toggle_off{display:none}.frm_toggle_long .frm_toggle_on,.frm_toggle_long input:checked+.frm_toggle_slider+.frm_toggle_on+.frm_toggle_off{display:inline;color:var(--primary-500);font-weight:400}.frm_toggle_long .frm_toggle_off,.frm_toggle_long input:checked+.frm_toggle_slider+.frm_toggle_on{color:#fff;font-weight:700}.tabs-panel{height:auto !important;min-height:260px}.tabs-panel.panel_secondary{min-height:20px;margin-top:10px;margin-left:150px}label.frm-example-icon{margin-right:20px !important;display:inline-block !important}#frm_stripe_icon{border-radius:5px}#captcha_settings .frm_primary_label{margin-top:var(--gap-sm)}.frm-long-icon-buttons{display:flex;gap:var(--gap-md)}.frm-long-icon-buttons>label{border:1px solid var(--grey-300);color:var(--grey-700);border-radius:var(--small-radius);display:flex;padding:var(--gap-sm);gap:var(--gap-sm);justify-content:center;align-items:center;width:calc(33% - var(--gap-sm));box-sizing:border-box}.frm-long-icon-buttons>label:hover{color:var(--primary-500)}.frm-long-icon-buttons input[type=radio]{display:none}.frm-long-icon-buttons input[type=radio]:checked+label{border-color:var(--primary-500);box-shadow:0 0 0 1px var(--primary-color)}.frm-long-icon-buttons label>svg{height:21px}.frm-example-icon .frmsvg,.frm-example-icon i{height:20px;width:20px;font-size:20px;color:var(--grey-700)}.frm_license_msg{margin-top:0}.frm_authorized_box .frm-show-unauthorized,.frm_unauthorized_box .frm-show-authorized{display:none}.edd_frm_status_icon.frmsvg{margin:0 5px}.edd_frm_license_row .frm_action_success .frmsvg{color:green}.edd_frm_license_row .frm_action_error .frmsvg{color:#d54e21}#form_global_settings .tabs-panel .num svg{display:none}.frm_no_items{margin:0 auto 50px;text-align:center;color:var(--grey-700);max-width:500px}.frm-subscribe{margin:var(--gap-lg) 0}.frm_inbox_count{color:#fff;border-radius:50%;display:inline-block;margin-right:8px;font-size:11px;text-align:center;min-width:18px;height:18px;margin-left:2px;vertical-align:text-bottom}#payments_settings .frm_payments_section .form-table td{padding-left:0;padding-right:0}#payments_settings .frm_payments_section .form-table{margin-top:0}#frm_authnet_general_settings>tr:first-of-type>td:first-of-type{padding-top:0}#frm_authnet_general_settings h3{margin-bottom:0}.frm_payment_settings_tab .frmsvg{height:22px}.frm_payment_settings_tab[for=frm_toggle_paypal_settings] .frmsvg{width:83px}.frm_payment_settings_tab[for=frm_toggle_authorize_net_settings] .frmsvg{width:99px}.frm_payment_settings_tab[for=frm_toggle_square_settings] .frmsvg{width:89px}.frm_payment_settings_tab[for=frm_toggle_stripe_settings] .frmsvg{width:53px}.frm-lite .xml_opts .frm-export-xml-items{display:none}.csv_opts #frm_csv_col_sep{width:45px}#frm_advanced td.frm_left_label{width:20%;padding-right:2px}#frm_where_options select{max-width:200px}#frm_where_options select.frm_insert_where_options{width:30%}#frm_where_options select.frm_where_is_options{width:20%}#frm_where_options span.frm_where_val{width:32%;display:inline-block;position:relative}#frm_where_options span.frm_where_val .frm_tooltip_icon,#frm_where_options span.frm_where_val .frm_help{left:-4px;position:absolute}#frm_where_options span.frm_where_val.frm_hidden{display:none}#frm_where_options span.frm_where_val input,#frm_where_options span.frm_where_val select{width:90%;margin-left:10px}#frm_where_options{min-height:31px}.tabs-panel.active .tabs-panel,.frm_settings_form .tabs-panel .tabs-panel{border:none;padding:0}.frm-feature-banner{background:var(--grey-700);color:#fff;border-radius:var(--small-radius);padding:20px;margin:10px 0}.frm-feature-banner p{font-size:var(--text-sm)}.frm-feature-banner .dismiss{margin-top:-10px;margin-right:-10px}.frm-feature-banner .dismiss svg{color:#fff}.frm-feature-banner .frm-big-icon{padding-right:20px;float:left;min-height:60px}.frm-big-icon svg{height:60px;width:60px}.frm-feature-banner p{margin-top:0}.frm_98_width{width:100% !important}h2.frm-h2,.frm_form_settings h2{border-bottom:1px solid var(--grey-300);color:var(--grey-900);font-weight:400 !important;padding:9px 0 5px;margin:0}.frm_settings_form h3,.frm_form_settings h3,.frm_form_settings span.frm_add_logic_link{font-size:var(--text-md);border-top:1px solid var(--grey-300);padding-top:var(--gap-sm);margin:var(--gap-sm) 0;font-weight:400;text-transform:uppercase;color:var(--medium-grey);display:block}.frm_form_settings .howto{color:var(--grey-500);font-size:var(--text-sm);margin-top:8px}.frm_form_settings .advanced_settings .form-table{margin-top:0}.frm_form_settings td.frm_175_width{width:175px}.frm_form_settings #success_url{width:95%}.frm_wrap .ui-autocomplete{padding:3px 0;max-height:310px}.frm_wrap .ui-widget{font-family:inherit}.frm_wrap .ui-autocomplete li{padding:2px 4px;background:none;color:var(--grey-700);border:none;font-weight:400}.frm_wrap .ui-autocomplete .ui-menu-item-wrapper.ui-state-active{border:none;font-weight:inherit}.frm_select_with_label{margin:7px 0 0}#frm-insert-fields-box,#frm-conditionals{max-height:none}#frm-conditionals,#frm-adv-info-tab{display:none;max-height:355px}#frm-insert-fields-box ul.subsubsub,#frm-conditionals ul.subsubsub{float:right;margin:0}#frm-insert-fields-box ul.alignleft,#frm-conditionals ul.alignleft{margin:4px 0 0}#frm_adv_info ul.frm_code_list.frm-full-hover{clear:both;max-height:215px;overflow:auto}#frm-insert-fields-box ul.frm_code_list li.clear.frm_block{height:10px}#frm_adv_info .frm_noallow{display:none}#frm_adv_info #frm-conditionals .frm_noallow{display:block}#frm_html_tab.frm_hidden{display:none}#frm_html_tab.active{display:inline}.frm_email_reply_container select,.frm_email_reply_container input,.form-table td.frm_150_width{width:170px}#frm_notification_settings .frm_no_top_padding{padding-top:0}.frm_email_settings.frm_email_settings.widgets-holder-wrap{overflow:auto;box-shadow:none}#frm_notification_settings .widget-top .widget-action,#frm_form_editor_container .widget-top .widget-action{border:0;margin:0;padding:8px;background:0 0;cursor:pointer;outline:0}#frm_notification_settings .widget-top .widget-action{padding-top:13.5px}#frm_email_addon_menu{border:1px solid var(--grey-300);padding:var(--gap-sm);border-radius:4px;margin:var(--gap-md) 0 var(--gap-sm)}#frm_email_addon_menu .frm-search{float:right;margin:0}#frm_email_addon_menu h3.frm-no-border{clear:none;padding-top:7px}.frm_email_settings .widget .widget-top{background-color:var(--sidebar-color)}.frm_email_settings .widget .widget-top,.frm_email_settings .widget .widget-top h3{cursor:pointer !important}.frm_email_settings .widget{margin-bottom:var(--gap-sm)}.frm_form_action_settings .widget-top{box-shadow:none;border-color:var(--grey-300);border-radius:var(--small-radius);background:var(--lightest-grey);color:var(--grey-700)}.frm_form_action_settings:hover .widget-top{border-color:var(--grey)}.frm_form_action_settings.open .widget-top{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}.frm_form_action_settings.open:hover .widget-top{border-color:var(--grey-300)}.frm_form_action_settings>.widget-inside{display:none}.frm_form_action_settings.open>.widget-inside{display:block}.frm_form_action_settings .widget-inside{min-height:25px;padding:15px;border-color:var(--grey-300);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.frm_form_action_settings .widget-title h4,.frm_form_action_settings .widget-title h3{display:inline-block;border-bottom:none;padding:10px 10px 5px;font-size:var(--text-md);font-weight:500}#frm_email_addon_menu h3{margin:0 0 var(--gap-sm);clear:both}.frm_single_api_settings p>label{display:inline}.frm_form_action_icon{margin-right:5px}.frm_actions_list{margin:0;display:inline}.frm_actions_list li{float:left;width:15.6%;margin:10px .5% 15px;height:100px;text-align:center}.frm-limited-actions .frm-group-heading,.frm-limited-actions #frm-hide-groups,.frm-all-actions #frm-show-groups,.frm-limited-actions .frm-not-installed:not(.frm-search-result):not(.frm-default-show){display:none}label.frm_action_events{padding-left:15px}#frm-hide-groups,#frm-show-groups{font-size:var(--text-md);float:right}.frm_actions_list a:active,.frm_actions_list a:focus{outline:none}.frm_actions_list a{font-size:var(--text-sm);color:var(--grey-700);word-break:break-word}.frm_actions_list span.frm-outer-circle{background-color:var(--grey-100);padding:10px;text-align:center;border-radius:50%;display:block;width:30px;height:30px;margin:0 auto 15px;line-height:1}.frm_email_settings .widget-title h4{color:var(--grey-700)}.frm_disabled_action .widget-title h4{color:var(--grey)}.frm_actions_list a .frmsvg,.frm_actions_list a i{height:18px;width:18px;font-size:18px;padding:2px;color:var(--lightest-grey)}span.frm-inner-circle,.frm_email_settings .widget-title .frm_form_action_icon{background-color:var(--grey-400);border-radius:50%;display:inline-block;text-align:center;line-height:1}span.frm-inner-circle{background-color:var(--primary-700);height:22px;width:22px;padding:4px;color:#fff}.frm-inner-circle svg{fill:currentColor}.frm_email_settings .widget-title .frm_form_action_icon{height:15px;width:15px;padding:5px;color:#fff;vertical-align:middle}.frm_actions_list .frmsvg,.frm_actions_list i::before,.frm_email_settings .widget-title .frm_form_action_icon i,.frm_email_settings .widget-title .frm_form_action_icon .frmsvg{height:15px;width:15px;vertical-align:text-top}.frm_actions_list i::before{vertical-align:middle}.frm_email_settings .widget-title:hover .frm_form_action_icon{background-color:var(--grey)}span.frm-inner-circle.frm-inverse{background-color:rgba(0,0,0,0);color:var(--primary-700);padding:0;height:30px;width:100%}.frm_actions_list span.frm-inverse i,.frm_actions_list span.frm-inverse .frmsvg{color:var(--primary-700);height:30px;width:30px;font-size:30px;padding:0}.frm_actions_list i.frm-inverse::before{height:30px;width:100%;font-size:30px}.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse{background:#fff;padding:0;height:24px;width:24px}.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse .frmsvg,.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse i::before{color:var(--grey-400);height:24px;width:24px;font-size:24px}.frm_email_settings .widget-title:hover .frm_form_action_icon.frm-inverse .frmsvg,.frm_email_settings .widget-title:hover .frm_form_action_icon.frm-inverse i::before{color:var(--grey-500)}.frm_email_icons{padding:10px 0 5px 6px;font-size:20px}.frm_email_icons a{margin-left:8px;color:var(--grey);opacity:0;transition:all .2s ease}.frm_email_icons a .frmsvg{color:var(--grey)}.frm_email_icons a:hover,.widget-top:hover .frm_email_icons a{opacity:1}.frm_actions_list a.frm_inactive_action{color:var(--grey)}.frm_inactive_action .frm-inner-circle,.frm_actions_list .frm_inactive_action i{opacity:.4}table td,.form-table tr td{vertical-align:top}#new_fields .form-table tr td{display:block;padding:7px 0 0}#new_fields .form-table tr td:first-child{margin:0}#new_fields .form-table tr td:last-child{margin-bottom:9px}.form-table #list-table th{text-align:center}#form_settings_page th,#form_settings_page td,.frm_settings_form td,#frm_notification_settings .frm_form_action_settings td p{padding:7px 0}#permissions_settings_settings .frm_grid_container{align-items:center}#frm_notification_settings .form-table>tbody>tr>th{width:150px;font-weight:400;padding-right:10px}#frm_notification_settings .frm_single_email_settings .form-table>tbody>tr>th{width:80px}#frm_notification_settings table tr td:first-child{padding-left:0}#frm_notification_settings table tr td:last-child{padding-right:0}#frm_notification_settings .frm_left_label{float:none;width:auto !important}.frm-fields .frm_autoresponder_rows select{width:auto}#frm_notification_settings .frm_with_left_label,#frm_notification_settings .frm_left_label+textarea,#frm_notification_settings .frm_left_label+select,#frm_notification_settings .frm_left_label+input[type=text]{width:100%}#frm_notification_settings .frm_email_buttons{padding:var(--gap-2xs);background:var(--light-blue);color:var(--primary-700);border-radius:var(--small-radius);border-color:var(--blue-border);line-height:1;height:auto;min-height:12px;font-size:var(--text-xs);box-shadow:none}p.frm_bcc_cc_container,p.frm_reply_to_container{float:right;z-index:1;position:relative}p.frm_bcc_cc_container{margin:14px 0 0}p.frm_reply_to_container{margin:-4px 0 0}.frm_email_row .frm_cancel1_icon::before{vertical-align:bottom}.frm_cc_row.frm_email_row .frm-with-right-icon,.frm_bcc_row.frm_email_row .frm-with-right-icon,.frm_reply_to_row.frm_email_row .frm-with-right-icon{width:calc(100% - 20px);display:inline-block}.frm_email_row .frm_remove_field .frm_close_icon{position:relative;fill:var(--grey-500);vertical-align:middle}.frm-inline-select,p.frm-inline-select,.frm_logic_rows .frm-collapse-me{line-height:var(--h-md) !important}.frm_logic_row{padding:var(--gap-xs) 0 0}.frm-single-settings ul.frm_sortable_field_opts{border-bottom:1px solid var(--grey-200);padding-bottom:var(--gap-xs);margin-bottom:var(--gap-xs)}.frm-single-settings .frm-add-other svg.frm_add_tag{position:relative;top:5px;margin-right:4px}.frm-single-settings .frm_single_option .frm_remove_tag::before{content:""}.frm-single-settings input[type=checkbox][readonly]{opacity:.5;pointer-events:none}.advanced_settings .frm_logic_row{margin:14px 0}.advanced_settings .frm_logic_row select,.advanced_settings .frm_logic_row input{max-width:30% !important}.frm_form_action_settings .frm_logic_row p{margin-top:0;margin-bottom:0;padding:0}#poststuff .widgets-holder-wrap .frm_form_action_settings .widget-inside{padding-bottom:0}#poststuff .frm_form_settings .widgets-holder-wrap .widget-inside{padding-left:15px;padding-right:15px}#form_global_settings h3{font-size:var(--text-sm);margin-top:25px}#form_global_settings .tabs-panel+h3{margin-top:0;border:none}#poststuff .frm_form_settings .widget-inside h3,#poststuff .frm_form_settings .advanced_settings h3,#poststuff .frm_settings_form h3,#frm_advanced .inside h3{border-top:1px solid #eee;border-bottom:none;margin:15px -15px 0;padding:8px 15px;font-size:var(--text-sm)}#poststuff .frm_form_settings h3.frm_first_h3,#poststuff h3.frm_first_h3{border:none;margin-top:0}h3.frm_add_logic_link{margin-bottom:0 !important}a.frm_add_logic_link.frm_hidden{display:none}a.frm_add_logic_link.frm_hidden+.frm_logic_rows{height:auto}.frm_icon_font{color:#a0a0a0;color:var(--grey)}.frm-fields label .frm_icon_font{font-size:inherit}.misc-pub-revisions.frm_icon_font,.misc-pub-revisions.frm_icon_font:hover{color:inherit}.postbox.frm_with_icons .inside{padding:0;margin:0}.frm_add_tag::before{content:"\e602"}.frm_remove_tag::before{content:"\e600"}.frm_logic_row .frm1>.frm_remove_tag{padding:0}.frm_tooltip_icon::before{font-size:13px;vertical-align:top}.frm_help svg,.frm_help .frmsvg{height:13px;width:13px;vertical-align:top;color:var(--grey-400)}.form-field input[type=text].frm_other_input{width:30%;margin-left:10px}.frm-add-other{text-align:right}.frm-add-other .frm_add_tag{vertical-align:20%}.frm_action_icon{margin:5px 0 0 5px}span.frm_action_icon{margin:0 4px 0 0}.frm_action_icon:active{outline:none}a.frm_action_icon:hover{text-decoration:none}.frm_action_icon.frm_error_icon::before{content:"\e608"}.frm_inactive_icon.frm_action_icon.frm_error_icon::before{content:"\e606"}.frm-field-action-icons{text-align:right;position:absolute;top:2px;right:2px;max-width:100%}.frm-field-action-icons .frm-field-id{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:80px;max-width:calc(100% - 50px);position:relative;top:2px}.frm-field-action-icons>a{font-size:var(--text-md);width:17px}.frm-field-action-icons a:hover{text-decoration:none}.frm-field-action-icons .dropdown{display:inline-block}.frm-field-action-icons>a .frmsvg{color:var(--grey-500) !important;font-size:17px;width:17px;height:17px}.frm-field-action-icons>a .frmsvg,.frm-field-action-icons>div>a .frmsvg{vertical-align:baseline}.edit_field_type_end_divider .frm-field-action-icons{display:none !important}.frm-move{cursor:grab}span.howto{display:inline}.frm_import_message{margin:15px 0;line-height:2.5}.frm_sorting .form-field .widget input[type=text],.frm_sorting .form-field .widget input[type=number],.frm_sorting .form-field .widget select,#wpcontent .frm_sorting .form-field .widget select,.frm_sorting .form-field .widget textarea{width:auto}.tagchecklist span.no_taglist{display:inline;float:none;line-height:15px;margin-right:0;font-size:inherit}.tagchecklist .frm_exclude_cat_list span{display:inline}.tagchecklist span a::before{line-height:23px;text-align:start}.frm_form_action_settings .frm_email_row .frm_tooltip_icon{position:relative;bottom:2px}.frm_no_entries_form{padding:60px 0}.frm_no_entries_form .frm_no_entries_header{font-size:20px;margin-bottom:10px}.frm_no_entries_form .frm_no_entries_text{line-height:var(--leading)}#form_entries_page #the-list .no-items{height:240px}#form_reports_page img.frm_no_reports{max-width:100%}.frm_wrap .google-visualization-table .gradient,.frm_wrap .google-visualization-table-tr-head,.frm_wrap .google-visualization-table-tr-odd,.frm_wrap .google-visualization-table-tr-odd.google-visualization-table-tr-over{background:var(--lightest-grey)}.frm_wrap .google-visualization-table-tr-over{background:#fff}.frm_wrap .google-visualization-table-table th,.frm_wrap .google-visualization-table-table td{border-right-width:0;padding:10px !important}.frm_wrap .google-visualization-table-tr-head,.frm_wrap .google-visualization-table-tr-head th{white-space:pre-wrap;font-size:var(--text-md);font-weight:400 !important;text-align:left}.frm_wrap .google-visualization-table-td-number{text-align:inherit}#form_reports_page .postbox{text-align:center;float:none;display:inline-block;margin-right:2%;width:20%;min-width:175px}#form_views_page img.frm_no_views{max-width:100%}.frm_field_opts_popup{min-width:300px;background-color:#fff}.frm_field_opts_popup #wpadminbar{display:none}.frm_prepop{width:100%;list-style:none;overflow:auto;margin:0;max-height:295px}.frm_prepop li{margin:0}.frm_prepop li a{display:block;text-decoration:none;cursor:pointer;padding:5px 20px}.frm_prepop li a:hover{background:var(--sidebar-color)}#frm_form_editor_container #frm_form_key_box{width:13em;max-width:30%}#frm_form_editor_container #frm_form_desc{width:70%}#frm_form_editor_container .ui-widget-content{display:none;padding:15px}#frm_form_editor_container .ui-widget-content label{float:left;width:170px;text-align:right;padding-right:5px;clear:both}#frm_form_editor_container .ui-widget-content label.nofloat{clear:none;float:none;margin-left:10px}#frm_form_editor_container .ui-state-default{color:#333 !important}.frm_green{color:var(--green) !important}#frm_form_editor_container .ui-state-default a.frm_orange,.frm-right-panel a.frm_orange,#postbox-container-1 a.frm_orange{color:#d54e21}#styling_settings input[type=checkbox],#styling_settings input[type=radio]{border:solid 1px #bbb}#styling_settings .widget .widget-top,#frm_form_editor_container .widget .widget-top{cursor:pointer}.frm_sorting .widget,.frm_settings_page .widget{background:#fff}.frm_sorting .widget-title h4{font-weight:400}.frm_sorting .widget,#postbox-container-1 .widget,.frm-right-panel .widget,.frm_settings_page .widget{margin-bottom:0}.frm_settings_page .widget-inside{padding:0 5px 5px}.frm_sorting .widget,.widget-inside,.frm_sorting .form-field .widget{display:none}#frm-show-fields{min-height:350px;padding:0 0 35px;margin:0;position:relative}.frm-has-fields #frm-show-fields{min-height:50px}#frm_builder_page .frm-lite-credit-card-element,body.frm-admin-page-styles .frm-lite-credit-card-element{position:relative}#frm_builder_page .frm-lite-credit-card-element>div,body.frm-admin-page-styles .frm-lite-credit-card-element>div{position:absolute;top:calc(50% - 1px);transform:translateY(-50%);right:10px;color:#d0d4dd}#frm_builder_page #frm_field_group_controls{position:absolute;padding:5px;border-radius:4px 4px 0 0;text-align:right;box-sizing:border-box;right:0;top:-28px;height:28px;z-index:3}.frm-field-group-hover-target,.frm-has-open-field-group-popup,#frm_builder_page #frm_field_group_controls,.frm-selected-field-group{background:rgba(65,153,253,.04)}.frm-selected-field-group{position:relative}#frm_builder_page #frm_field_group_controls>span:first-child{margin-right:5px}#frm_builder_page #frm_field_group_controls svg{pointer-events:none}#frm_field_group_controls{visibility:hidden}.frm-field-group-hover-target #frm_field_group_controls{visibility:visible}#frm_field_group_controls .dropdown-item a span{color:var(--grey-700)}#frm_field_group_controls .dropdown-item a:hover{text-decoration:none}.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider{display:none !important}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default,.frm_sorting>li.ui-state-default,.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider:hover{border:1px solid rgba(0,0,0,0);font-weight:400 !important;background-color:rgba(0,0,0,0);background-image:none;padding:5px;margin:0;box-shadow:none;display:block;text-align:inherit !important;overflow:visible;position:relative}#frm-show-fields li.frm_cancel_sort{display:none}.divider_drop{text-align:center}.divider_drop .howto .frm_icon_font{font-style:normal}.show_repeat_sec{display:none}.repeat_section .show_repeat_sec{display:inline-block;margin:5px 0 0}.repeat_section tr.show_repeat_sec{display:table-row}.repeat_format .frm_repeat_label,.repeat_formattext .frmsvg,.repeat_formattext i{display:none}.frm_button{text-decoration:none;border:1px solid #eee;padding:5px;color:#444;vertical-align:middle;box-shadow:none !important}a.frm_button:hover{text-decoration:none !important}.frm_button,.frm_button .frm_icon_font::before{font-size:13px;vertical-align:middle}.frm_button .frmsvg{width:13px;height:13px}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default{padding:0;margin:0}ul.start_divider{padding:8px 13px 0 8px;min-height:115px;transition:all .4s linear}.frm-section-collapsed .frm_no_section_fields,.frm-section-collapsed ul.start_divider{height:0;min-height:0 !important}.frm-section-collapsed ul.start_divider{overflow:hidden}.frm-section-collapsed .frm_no_section_fields{overflow:hidden;padding:0;opacity:0}.frm-section-collapsed .divider_section_only .frm-collapsed-label{display:inline}.frm-page-collapsed .frm_clone_icon,.frm-page-collapsed .frm_delete_field,.frm-page-collapsed .frm_clone_field,.frm-section-collapsed .frm_clone_icon{opacity:.5;cursor:not-allowed}.edit_field_type_summary .frm_more_options_li:nth-child(2){display:none !important}.edit_field_type_submit .frm_more_options_li:not(:last-child){display:none !important}.frm_no_section_fields:not(.frm_block)+ul.start_divider{padding:0;min-height:132px}.frm_sorting li.ui-state-default .divider_section_only{padding:6px;margin-top:-10px;border:2px solid rgba(0,0,0,0);border-radius:var(--small-radius);z-index:2;position:relative}.divider_section_only>.frm_inner_field_container{padding:5px 0;margin:0}.frm-collapsed-label,.divider_section_only>.frm_inner_field_container .frm_form_fields{display:none}.frm-section-collapsed .divider_section_only::after,.divider_section_only::before{content:"";display:block;padding:2px 0;line-height:1px;border-top:2px solid var(--grey-300);top:-2px;position:absolute;width:100%;transition:.5s border-color ease-in-out}.frm-section-collapsed .divider_section_only::after{top:auto;bottom:-6px}.frm-section-collapsed .divider_section_only:hover::after,li.selected.frm-section-collapsed .divider_section_only::before,li.selected.frm-section-collapsed .divider_section_only::after,.divider_section_only:hover::before,li.selected .divider_section_only::before{border-color:rgba(0,0,0,0)}.frm_sorting li.ui-state-default.edit_field_type_divider{overflow:visible;position:relative;padding:0 0 0 20px;margin:25px 0 0 -5px;border-left:1px solid var(--primary-700);transition:border .7s ease-out}.frm-section-collapsed{border-left-color:rgba(0,0,0,0) !important}.frm_sorting li.edit_field_type_end_divider,.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider:hover{margin:0 0 var(--gap-sm)}.frm-first-page .frm_prev_page{display:none}#frm_builder_page .frm_remove_form_row.frm_button,#frm_builder_page .frm_add_form_row.frm_button{border-radius:var(--small-radius);border:1px solid var(--blue-border)}#frm_builder_page .frm_remove_form_row .frmsvg,#frm_builder_page .frm_remove_form_row i::before,#frm_builder_page .frm_add_form_row .frmsvg,#frm_builder_page .frm_add_form_row i::before{color:var(--primary-700)}.frm-preview-buttons .frm_button_submit{margin:0 5px}.frm-page-break{border-top:1px dashed var(--primary-700);margin-top:var(--gap-lg);position:relative}.frm-page-break::before,.frm-page-break::after{content:"";position:absolute;background-color:#fff;border-radius:50%;border:1px solid var(--primary-700);text-rendering:auto;-webkit-font-smoothing:antialiased}.edit_field_type_divider .frm-divider-icon.frmsvg{padding:2px;position:absolute;left:-12px;color:#fff;background-color:var(--primary-700);border-radius:50%}.edit_field_type_divider .start_divider .frm-divider-icon.frmsvg{height:8px;width:8px;padding:0;bottom:-4px;left:-24.5px;color:var(--primary-700);background-color:#fff}.edit_field_type_divider.selected .frm-divider-icon.frmsvg,.edit_field_type_divider:hover .frm-divider-icon.frmsvg{background:var(--primary-500)}.edit_field_type_divider.selected .start_divider .frm-divider-icon.frmsvg,.edit_field_type_divider:hover .start_divider .frm-divider-icon.frmsvg{background-color:#fff;color:var(--primary-500)}.frm-page-break::before,.frm-page-break::after{width:8px;height:8px;top:-6px;border-color:var(--grey)}.frm-page-break::after{right:0}#frm-fake-page .frm-page-break{border-color:var(--grey)}#frm-fake-page{padding:0 5px}.frm_sorting li.edit_field_type_divider:hover,.frm_sorting li.edit_field_type_divider.selected{border-left-color:var(--primary-500)}.frm-section-collapsed::after{border-color:rgba(0,0,0,0) !important;color:rgba(0,0,0,0)}.frm-page-break .frm-collapse-page.button{margin-left:46%;margin-top:-16px;padding:6px 12px !important}#frm-fake-page.frm-page-collapsed{margin-bottom:0}.frm-page-collapsed{position:relative;overflow:visible !important;margin-bottom:var(--gap-lg)}.frm-collapse-page .frmsvg,.frm-collapse-page .frm_arrowdown6_icon{width:var(--text-sm);height:var(--text-sm);font-size:var(--text-sm);text-align:center;margin-left:2px;color:currentColor;transition:transform 300ms ease-in-out}.frm-page-collapsed .frm-collapse-page .frmsvg{transform:rotate(180deg)}#frm-fake-page .frm_arrowdown6_icon{color:currentColor}.frm-collapsed i::before,.frm-page-collapsed .frm_arrowdown6_icon::before{content:"\e913"}.frm-collapse-section svg{fill:var(--primary-color);transition:transform .2s ease-out,fill .2s ease-out}.frm-collapse-section:hover svg{fill:var(--primary-700)}.frm-section-collapsed .frm-collapse-section svg{transform:rotate(-90deg)}.open .widget-top .widget-title-action button .frmsvg{transform:rotate(90deg)}.widget-top .widget-title-action button .frmsvg use{color:var(--grey)}.frm-collapsed+.frm-collapse-me{overflow:hidden !important}.frm-collapse-me{padding-bottom:10px}.frm-collapse-me.frm_grid_container:has(.dropdown-toggle.multiselect){position:relative;z-index:1}.frm-collapsed+div{height:0;padding:0}.frm-collapsed+div.frm-collapse-me{display:none}.frm-collapsible{display:flex;justify-content:space-between;align-items:center;font-weight:700;padding:var(--gap-xs) 0;margin:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.frm-collapsible.frm-collapsed{font-weight:400}.frm-collapsible:not(.frm-collapsed) .frmsvg{transform:rotate(-180deg)}h4.frm-collapsible{font-size:var(--text-md)}.frm-collapsible+.frm-collapse-me{padding-bottom:0}.frm-collapsible:focus-visible{outline:1px solid var(--primary-500)}.frm_sorting .divider_section_only>.frm_ipe_field_label{font-size:116%}#frm_form_editor_container .edit_field_type_break .frm_primary_label.frm_ipe_field_label.button{width:150px;text-align:center;margin-bottom:3px;display:block}tr.frm_options_heading td{padding-bottom:0}.frm_sorting .widget-inside .form-table td p,.frm_sorting .widget-inside .form-wrap label{padding:10px 0}.frm_no_fields,.frm_no_section_fields{text-align:center;position:absolute;color:var(--medium-grey);font-size:var(--text-md);box-sizing:border-box;border:1px dashed var(--grey-300);outline:2px solid rgba(0,0,0,0)}.frm-over-droppable+.frm_no_fields{border-style:solid;border-color:var(--primary-500);outline-color:var(--primary-500)}.frm_no_section_fields{display:none;margin:0;padding:20px 0 0;width:calc(100% - 20px);height:121px;transition:all .4s linear}.frm-empty-fields .frm_updated_message~.frm_no_fields{top:60px}#frm_form_editor_container:not(.frm-has-fields) #frm-show-fields>.frm_field_box:last-child{visibility:hidden}.frm-has-fields .frm_no_fields{display:none}#frm_form_editor_container:not(.frm-has-fields) #frm_drag_placeholder{display:none}#frm-form-button{display:none;margin:0 7px 25px}.frm-has-fields #frm-form-button{display:block}.frm-large-plus.frmsvg{color:var(--primary-700);height:45px;width:45px}.frm_no_section_fields p{color:var(--grey);font-size:15px}.frm_no_fields{top:0;width:calc(100% - 24px);min-height:320px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-md);padding:var(--gap-md);border:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Crect width='99%25' height='99%25' fill='none' stroke='%23D0D5DD' stroke-width='1' stroke-dasharray='8,8' rx='8' ry='8' x='0.5%25' y='0.5%25' stroke-linecap='square' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");border-radius:var(--medium-radius);margin:var(--gap-sm) 12px}.frm_no_fields img{margin-left:calc(-1*var(--gap-lg))}.frm_no_fields .frm_drag_inst{font-size:20px;font-weight:600;margin:0 0 12px}.frm_no_fields p{color:var(--grey-600);font-size:var(--text-md);margin:0}.frm_product_price_wrapper{display:inline-block;vertical-align:middle}.frm_prod_type_single .frm_product_price_wrapper{width:100%}#new_fields .frm_product_price_wrapper input:first-child{width:60% !important;float:left}#new_fields .frm_product_price_wrapper input:nth-child(2){width:37% !important;float:right}li.frm_single_option{padding-bottom:var(--gap-sm);border-bottom:0}.frm_prod_type_single input[type=radio],.frm_prod_type_single .frm_drag_icon,.frm_prod_type_single .frm_sortable_field_opts li:nth-child(n+3),.frm_prod_type_single .frm_sortable_field_opts .frm_remove_tag,.frm_prod_type_single .frm_form_field:not(.frm_product_type):not(.frm_sep_val_product),.frm_prod_type_single .frm-bulk-edit-link,.frm_prod_type_user_def.frm_grid_container,.frm_prod_options_heading.frm_prod_user_def{display:none}.frm_prod_type_single .frm-ai-generate-options-modal-trigger{display:none !important}.frm_prod_type_single .frm_option_key{margin-left:0 !important}.frm_prod_type_single .frm_option_key input[type=checkbox]+input[type=text],.frm_prod_type_single .frm_option_key input[type=radio]+input[type=text]{margin-left:0 !important}.plugin-card-bottom .frm-trash{color:#a00}.frm-fields p>.frm_inline_label,.frm_inline_label{padding-left:3px;margin-right:12px;display:inline-block}.frm_left_label{clear:both;float:left;width:32% !important;margin-right:2% !important;line-height:2em}table td.frm_left_label{float:none;line-height:inherit;padding:5px 0 5px 2%}.frm_left_label.frm_alignright{padding-right:10px;text-align:right}.frm-fields .frm_left_label+textarea,.frm-fields .frm_left_label+select,.frm-fields .frm_left_label+input[type=text],.frm_with_left_label{width:66%}td.frm_left_label+td{width:66%;padding-top:0}#html_settings label{display:block}#html_settings .frm_field_html_box{width:100%}.frm-has-required .frm-required{color:var(--error-500)}ul.frm-category-tabs{margin-top:2px}.frm-category-tabs>li a,.frm-category-tabs>li a:active{outline:none;box-shadow:none;display:flex;gap:var(--gap-xs);align-items:center}.frm-category-tabs>li.active .frmsvg,.frm-category-tabs>li.active i,.frm-category-tabs>li.active span,.frm-category-tabs>li.active a{color:var(--primary-500)}.frm_wrap .manage-menus{margin-top:0;border:none;border-bottom:1px solid var(--grey-300);background:var(--lightest-grey)}.general_settings .postbox .manage-menus{border-top:none;border-left:none;border-right:none}.frm-postbox-no-h3{padding-top:10px}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default{color:var(--grey-900)}.no_repeat_section .frm_sorting>li.ui-state-default.edit_field_type_end_divider:hover{box-shadow:none}.frm-selected-field-group li.ui-state-default,.start_divider.frm_sorting li.ui-state-default.frm_not_divider.selected,.start_divider.frm_sorting li.ui-state-default.frm_not_divider:hover,.frm_sorting li.ui-state-default.frm_not_divider:hover,.frm_sorting li.ui-state-default.ui-sortable-helper,.frm_sorting li.ui-state-default.edit_field_type_divider .divider_section_only:hover,.frm_sorting .repeat_section li.ui-state-default.edit_field_type_end_divider:hover,.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only,.frm_update_msg,.frm_sorting li.ui-state-default.frm_not_divider.selected,.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only{border-color:var(--primary-500);transition:.5s border-color ease-in-out}.frm_sorting li.ui-state-default.frm_not_divider.selected{box-shadow:0 0 1px 0 var(--primary-500)}.frm_sorting li.ui-state-default{transition:.7s box-shadow ease-in-out,.7s height linear}.frm_sorting li.ui-state-default.frm-newly-added{box-shadow:inset 0 0 2px 1px var(--blue-border)}.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-show-hover{visibility:visible !important;display:inline !important}.edit_field_type_end_divider>label{display:none !important}.frm_email_actions.feature-filter{font-weight:700;border:1px solid #dfdfdf;background-color:#eee;padding:3px 5px 2px;font-size:var(--text-md);line-height:20px}.frm_update_msg{border-style:solid;margin:10px 0;color:#21759b;padding:8px 15px;border-radius:4px}.frm_update_msg.wrap{margin:10px 20px 0 2px}#frm-insert-fields-box .frm_update_msg{margin-right:.9em}.frm_update_msg a{font-weight:700}.widefat td{width:auto}.widefat .column-id{width:3.7em}.widefat .column-show_count{width:5em}.widefat .column-shortcode{width:9em}.toplevel_page_formidable .column-shortcode div{display:flex;gap:var(--gap-xs)}.widefat .column-entries,.widefat .column-link{width:10%;text-align:center}.widefat .column-form_key,.widefat .column-created_at{width:10%}.frm-white-body .search-box,.frm_wrap .frm-search{float:right;margin:0;clear:right}.frm-white-body .search-box,.frm-search{min-width:32%;position:relative;display:flex;gap:var(--gap-sm);align-items:center}.frm-inline-modal .frm-search,#frm_adv_info .frm-search{float:none;width:100%;clear:both;margin:var(--gap-xs) 0}.frm-button-group a{margin:0 7px !important}.frm_has_textarea .frm-with-right-icon{display:block}.frm-with-left-icon,.frm-with-right-icon{position:relative;display:block}i.frm-show-box,i.frm-show-inline-modal,.frm-with-left-icon i,.frm-with-right-icon i:not([class*=mce-]),.frmsvg.frm-show-box,.frmsvg.frm-show-inline-modal,.frm-with-left-icon .frmsvg,.frm-with-right-icon .frmsvg,.frm-search>.frmsvg,.frm-search span:not(.multiselect-selected-text):not(.multiselect-native-select){position:absolute;padding:0 14px;pointer-events:none;left:0;color:var(--grey-400);font-size:var(--text-xs)}.frm-search>.frmsvg,.frm-search span:not(.multiselect-selected-text):not(.multiselect-native-select){padding-left:var(--gap-xs);padding-right:var(--gap-xs)}.frm-search>.frmsvg{box-sizing:unset}.frm-with-right-icon .frmsvg,.frm-with-right-icon i:not([class*=mce-]){right:0;top:-3px;left:auto;padding:0 10px 0 5px}.frm_form_settings .frm-with-right-icon .frmsvg{top:0}.frm_form_settings .wp-editor-container .frm-with-right-icon .frmsvg,#frm_builder_page .wp-editor-container .frm-with-right-icon .frmsvg{top:auto;bottom:var(--gap-sm)}.frm_form_settings .tmce-active .wp-editor-container .frm-with-right-icon .frmsvg,#frm_builder_page .tmce-active .wp-editor-container .frm-with-right-icon .frmsvg{bottom:var(--gap-lg)}.frm_form_settings .frm_has_textarea .frm-with-right-icon .frmsvg{top:auto;bottom:6px}.frmsvg.frm-show-box,.frmsvg.frm-show-inline-modal,i.frm-show-box,i.frm-show-inline-modal{top:auto;background-color:var(--primary-50);color:var(--primary-500);border-radius:6px;padding:var(--gap-2xs);margin:5px;margin-bottom:0;z-index:1;cursor:pointer;pointer-events:initial}.frm-open+.frm-inline-modal{top:-10px;margin-bottom:0}.frm-open+.frm-inline-modal.frm-modal-no-dismiss .inside>.frm-search:first-child{margin-top:var(--gap-sm)}.frm_grid_container>.frm-open+.frm-inline-modal{top:-4px}.frm_grid_container>.frm-open+.frm-inline-modal.frm-modal-no-dismiss{top:0 !important}.frm-with-left-icon input{padding-left:37px !important}.frm_wrap .frm-with-right-icon textarea,.frm_wrap .frm-with-right-icon input,.frm_wrap .frm-with-right-icon input[type=text]{padding-right:var(--gap-md)}#frm-show-fields .frm-with-left-icon .frmsvg,#frm-show-fields .frm-with-left-icon i{padding-top:10px}.frm-search input[name=s],.frm-search .dropdown-toggle,.frm-search input.frm-search-input{color:var(--grey-800);border-color:var(--grey-300);border-radius:var(--small-radius);box-shadow:var(--box-shadow-xs)}.frm-search input[type=search],.frm-search input[type=text]{padding-left:var(--gap-lg) !important}.frm-search .dropdown-toggle{width:100%;float:none;max-width:200px;background:rgba(0,0,0,0);padding:7px;padding-left:33px !important;min-height:32px;text-align:inherit;overflow:hidden;text-overflow:ellipsis}.frm-search #search-submit a{color:var(--grey-800)}.frm-search #search-submit .caret{opacity:.7}.frm-white-body .search-box input[name=s],#wpwrap .frm-search input[type=search]{flex:1;font-size:var(--text-md);line-height:var(--text-xl);padding:var(--gap-xs)}span.multiselect-selected-text{white-space:nowrap;display:inline-block;max-width:90%;text-overflow:ellipsis;overflow:hidden}.frm-not-set input{color:var(--primary-500) !important;font-size:13px}.frm-not-set .frmsvg,.frm-not-set i{color:var(--primary-700);opacity:1}.post-type-frm_display select[name=m]+#post-query-submit,select[name=m]{display:none}.frm_shortcode_select optgroup option{margin-left:1em}.frm_shortcode_select optgroup{padding-top:5px}.frm_shortcode_select .frm_subopt{margin-left:2em}.misc-pub-section a.edit-frm_shortcode,.misc-pub-section a.edit-form-status{float:none;font-size:13px}.frm-grid{border-collapse:collapse;border:none;margin-right:10px}.frm-grid td,.frm-grid th{padding:5px;border:1px solid #000}.post-type-frm_display #poststuff #post-body.columns-2{margin-right:var(--big-sidebar)}.post-type-frm_display #post-body.columns-2 #postbox-container-1{margin-right:calc(var(--big-sidebar)*-1);width:calc(var(--big-sidebar) - 40px)}.post-type-frm_display #poststuff #post-body.columns-2 #side-sortables{width:100%}#frm_dyncontent .hndle,#frm_dyncontent .handlediv{display:none !important}.post-type-frm_display .meta-box-sortables .frm_form_nav>li>a,.post-type-frm_display .frm_form_nav .nav-tab-active{padding:0 2px 5px;line-height:1.4}.post-type-frm_display #advanced-sortables h2.hndle,.post-type-frm_display #side-sortables h2.hndle,.post-type-frm_display #normal-sortables h2.hndle{border-bottom:1px solid var(--grey-300);margin:10px 0 0 !important;padding:0 25px 8px}.post-type-frm_display #side-sortables h2.hndle{margin-top:0 !important;padding-top:10px}.post-type-frm_display #post-body-content{margin-top:var(--gap-lg)}.post-type-frm_display.edit-php #wpbody-content>.wrap{margin:0}.post-type-frm_display .postbox .hndle,.post-type-frm_display .postbox{border-color:var(--grey-300)}.post-type-frm_display #postbox-container-1 .postbox,.post-type-frm_display #postbox-container-2 .postbox{border-radius:var(--small-radius);border-color:var(--grey-300);box-shadow:none}.post-type-frm_display #side-sortables .postbox{border-radius:0;border-top-width:0;margin-bottom:0}.post-type-frm_display #side-sortables .misc-pub-section{padding:15px 20px 10px}.post-type-frm_display .misc-pub-section .frmsvg,.post-type-frm_display #post-body .misc-pub-post-status::before,.post-type-frm_display #post-body #visibility::before,.post-type-frm_display .curtime #timestamp::before,.post-type-frm_display #post-body .misc-pub-revisions::before,.post-type-frm_display span.wp-media-buttons-icon::before{color:var(--grey)}.post-type-frm_display #frm_top_bar+#poststuff #submitdiv #publishing-action,.post-type-frm_display #frm_top_bar+#poststuff #submitdiv #minor-publishing-actions,.post-type-frm_display #frm_top_bar+#poststuff #edit-slug-box,.post-type-frm_display .wrap h1.wp-heading-inline,.post-type-frm_display .wrap>.page-title-action{display:none}.post-type-frm_display #poststuff h2.nav-tab-wrapper{padding-left:10px;margin-bottom:0;padding-bottom:0}.post-type-frm_display .nav-menus-php .wrap{margin:10px 0 0}.post-type-frm_display .nav-menus-php .wrap p{padding-left:12px;padding-right:12px}.post-type-frm_display .nav-tab{display:inline-block;background-color:#f4f4f4}.post-type-frm_display .nav-tab.frm_hidden{display:none}.post-type-frm_display .nav-tab:hover{background-color:#e4e4e4}.frm_order_row,.frm_where_row{margin-bottom:7px;line-height:30px}.frm-single-settings .frm_prod_field_opt_cont{margin-top:initial;margin-bottom:20px}select.texture{display:none}.post-type-frm_display #wp-content-editor-tools,#wp-content-editor-tools{background-color:rgba(0,0,0,0)}.post-type-frm_display #major-publishing-actions{border-color:var(--grey-300);background:var(--sidebar-color)}.post-type-frm_display #frm_adv_info{width:calc(var(--big-sidebar) - 40px);height:calc(100vh - 32px);overflow:hidden}.post-type-frm_display #frm_adv_info:not(.frm_fixed){top:0 !important}.post-type-frm_display #frm_adv_info.frm_fixed{position:fixed;z-index:9999;top:32px}.post-type-frm_display #frm_adv_info ul.frm_code_list.frm-full-hover{max-height:calc(100vh - 180px)}.frm_col_one{margin-right:4%;clear:both}ul .frm_col_one{float:left}ul .frm_col_two{float:right}ul.frm_two_col{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:var(--gap-sm)}.frm_two_col li{margin-bottom:0}.frm-info-modal a,.frm-info-modal ul,.frm-info-modal p,.frm-info-modal,.settings-lite-cta a,.settings-lite-cta ul,.settings-lite-cta{color:var(--grey-500);font-size:var(--text-md);box-shadow:none !important}.frm-info-modal h3,.settings-lite-cta h3{font-size:17px !important}.frm-green-icons .frmsvg{color:var(--green)}.frm-info-modal .postbox .inside,.settings-lite-cta .postbox .inside{padding:var(--gap-md);margin:0}.cta-inside a{color:var(--orange)}.info-modal-inside a.frm-standard-link{color:var(--primary-500)}.info-modal-inside a.frm-standard-link:hover{color:var(--primary-700)}.frm_no_p_margin>p{margin:0}.frm_code_list a.button{display:block;text-align:center;font-size:11px;overflow:hidden}#frm-navbarDrop+.frm_code_list.frm-full-hover{margin:var(--gap-xs) 0 0;min-width:300px;max-height:256px}.frm_code_list.frm-full-hover li{margin:0}.frm-select-list-item,.frm_wrap .ui-autocomplete li>div,.multiselect-container button.multiselect-option,.frm-dropdown-menu>.dropdown-item>a,.frm-dropdown-menu>.dropdown-item>a:visited,.frm-dropdown-menu>.dropdown-item>a:link,.frm-dropdown-menu .frm_dropdown_li,.frm_code_list.frm-full-hover a{display:flex;color:var(--grey-700);padding:5px 10px;font-size:var(--text-md);gap:var(--gap-xs);align-items:center}.multiselect-container button.multiselect-option.disabled{opacity:.5}.frm_code_list.frm-full-hover a span{max-width:83px;margin-right:var(--gap-xs);margin-left:auto}.frm_code_list.frm-full-hover a{border-radius:var(--small-radius)}.frm_code_list.frm-full-hover a:not(#frm-insert-condition),.frm_code_list.frm-full-hover a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.frm_code_list.frm-full-hover a:focus span:last-child{outline:1px solid var(--primary-500);outline-offset:var(--gap-2xs)}.frm_code_list.frm-full-hover.frmcenter a{display:block}#frm-layout-classes frm-full-hover a span{max-width:45%}.frm-select-list-item.active,.frm-select-list-item:hover,.frm_wrap .ui-autocomplete li div.ui-state-active,.frm_wrap .ui-autocomplete li.ui-state-focus,.multiselect-container button.multiselect-option.active,.multiselect-container button.multiselect-option:hover,.frm-dropdown-menu>.dropdown-item>a:hover,.frm_code_list.frm-full-hover a:hover span,.frm_code_list.frm-full-hover a:hover{background:var(--primary-25);color:var(--primary-500)}.frm-select-list-item .frmsvg,.frm-dropdown-menu>.dropdown-item>a .frmsvg{opacity:.8}.frm-select-list-item:hover .frmsvg,.frm-dropdown-menu>.dropdown-item>a:hover .frmsvg{opacity:1}.frm-dropdown-menu.frm_code_list>li>a{padding:3px 15px;width:300px}#frm_edit_box_content_modal .frm-with-search,.frm-dropdown-menu .frm-with-search{padding:var(--gap-xs) 10px 0}.frm-dropdown-menu .subsubsub{padding:0 10px}.frm_grid_container{overflow:visible}.frm_code_list.frm_grid_container{grid-gap:var(--gap-xs)}.frm_code_list.frm_grid_container li{width:auto;margin:0}.frm_code_list.frm_grid_container a{display:block;font-size:var(--text-md) !important;font-weight:500;text-align:center;color:var(--primary-500);background-color:var(--light-blue);border:1px solid var(--primary-300);border-radius:var(--small-radius);padding:10px 0;box-shadow:var(--box-shadow-sm)}.frm_code_list.frm_grid_container a:hover{background-color:var(--primary-500);color:#fff}.frm_code_list.frm_grid_container a:focus-visible{outline:2px solid var(--primary-500);outline-offset:-1px}.frm-single-settings .frm_code_list.frm-full-hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover{padding:0;margin:var(--gap-xs) -10px 0}.frm-single-settings .frm_code_list.frm-full-hover>li>a,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a{font-size:var(--text-md);color:var(--grey-900);padding:var(--gap-xs) 12px}.frm-single-settings .frm_code_list.frm-full-hover>li>a span,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span{margin:0}.frm-single-settings .frm_code_list.frm-full-hover>li>a span:first-child,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span:first-child{max-width:130px}.frm-single-settings .frm_code_list.frm-full-hover>li>a span:last-child,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span:last-child{max-width:120px;margin-left:auto}.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover{font-weight:500}.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover,.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover .frmsvg,.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover span,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover .frmsvg,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover span{color:var(--primary-500)}#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover{margin:var(--gap-xs) 0 0}#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover a .frmsvg{width:20px;height:20px}.frm_field_list #frm-insert-fields{max-height:none;font-size:var(--text-sm)}.frm_field_list #frm-insert-fields .button a{display:block;max-width:95%;overflow:hidden}#frm-insert-fields{padding:0 var(--gap-xs);overflow:hidden}#frm-insert-fields .frm-search{float:none;margin:0 0 var(--gap-md);width:auto}#frm-insert-fields li,#frm-insert-fields li a{text-decoration:none;font-weight:500;font-size:var(--text-md) !important;color:var(--grey-900)}#frm-insert-fields li.frm_show_upgrade{cursor:pointer;opacity:.5}#frm-insert-fields li span:not(.frm-new-pill){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}#frm-insert-fields li a.disabled:hover{cursor:not-allowed}#frm-insert-fields li.ui-draggable-disabled{opacity:.5}#frm-insert-fields li a:not(.disabled):hover .frmsvg,#frm-insert-fields li a:not(.disabled):hover i{color:var(--grey-600)}#frm-insert-fields li.frm_show_upgrade,#frm-insert-fields li a{text-decoration:none;display:inline-flex !important;gap:var(--gap-xs);align-items:center;border-radius:var(--small-radius) !important;padding:11px var(--gap-md) 11px var(--gap-xs) !important;color:var(--grey-900) !important}#frm-insert-fields li a{display:flex !important;transition:background-color .2s ease-out,box-shadow .2s ease-out}#frm-insert-fields li a:not(.disabled):hover{background:#fff;box-shadow:var(--box-shadow-md)}#frm-insert-fields li a:focus-visible{outline:1px solid var(--primary-500)}#frm-insert-fields li.frm_show_upgrade.frm_hidden{display:none !important}#frm-insert-fields .frm-with-line{padding:12px var(--gap-md);font-weight:500;font-size:var(--text-sm)}#frm-insert-fields .frm-with-line::before{margin-left:calc(-1*var(--gap-sm));width:calc(100% + var(--gap-md))}.frm_code_list{clear:both}.frm_code_list.frm-full-hover a.frm_hidden,.frm_code_list .frmkeys{display:none}.frmsvg{fill:currentColor;width:18px;height:18px;vertical-align:middle}.frmsvg svg{pointer-events:none}.frmsvg.frm_svg40{width:40px;height:40px}.frmsvg.frm_svg24{width:24px;height:24px}.frmsvg.frm_svg20{width:20px;height:20px}.frmsvg.frm_svg15{width:15px;height:15px}.frmsvg.frm_svg14{width:14px !important;height:14px !important}.frmsvg.frm_svg13{width:13px;height:13px}.frmsvg.frm_svg12{width:12px;height:12px}.frmsvg.frm_svg9{width:9px;height:9px}input[disabled]{pointer-events:none}.frmbutton.ui-sortable-helper .frmsvg,.field_type_list li.frmbutton .frmsvg,.frmbutton.ui-sortable-helper i,.field_type_list li.frmbutton i,.frm_code_list a .frmsvg,.frm_code_list a i{color:var(--grey-500);display:inline-block;vertical-align:middle;width:var(--text-md);font-size:var(--text-md)}.field_type_list.frm_grid_container{gap:10px;margin:13px 0}.field_type_list li{margin:0;padding:0}.field_type_list li.frmbutton .frmsvg{width:24px;height:24px;font-size:24px}.frm_code_list i::before{font-size:inherit}.frmbutton.ui-draggable-dragging{pointer-events:none}.frmbutton.ui-draggable-dragging a{color:var(--grey-900) !important;background:var(--grey-100);text-decoration:none;display:inline-flex !important;gap:var(--gap-xs);align-items:center;border-radius:var(--small-radius) !important;padding:11px var(--gap-md) 11px var(--gap-xs) !important;box-shadow:var(--box-shadow-md)}.frmbutton.ui-draggable-dragging a{border:1px solid var(--grey-300);box-shadow:var(--box-shadow-md)}.frmbutton.ui-draggable-dragging span{font-size:15px}#frm-show-fields .frmbutton.ui-sortable-helper i,.frmbutton.ui-draggable-dragging i,.frmbutton.ui-draggable-dragging .frmsvg{color:#fff !important}.frmbutton.ui-draggable-dragging i,.frmbutton.ui-draggable-dragging .frmsvg{color:var(--grey-700) !important}.frm_sorting li.ui-state-default.ui-sortable-helper,.frmbutton.ui-sortable-helper{transition:opacity .2s;opacity:1;position:fixed;z-index:99999}#frm-insert-fields .frmbutton.ui-sortable-helper a,#frm-show-fields .frmbutton.ui-sortable-helper a{min-width:100px}li.frm_noallow.button,.frm_noallow{opacity:.5}.frm_actions_list a.frm_show_upgrade.frm_inactive_action::before,li.frm_noallow.button.frm_show_upgrade{cursor:pointer}.field_type_list li.frm_noallow.button.frm_show_upgrade:hover{border-color:inherit}.frm_noallow a{color:inherit}#frm_upgrade_modal_image{max-width:200px}#frm_upgrade_modal .frm-upgrade-message img{margin-top:10px;width:100%}.frm-tab-message{max-width:600px;margin:20px auto;color:rgba(63,75,91,.8)}.frm-settings-screenshot-toolbar{min-height:39px;display:flex}.frm-settings-screenshot-toolbar .frm-minmax-icon{height:8px;width:8px;border-radius:50%;align-self:center;margin-left:10px}.frm-settings-screenshot-toolbar .frm-minmax-icon:first-of-type{margin-left:20px}.frm-settings-screenshot-toolbar img{object-fit:contain;align-self:flex-end;margin-left:25px}.frm-settings-screenshot-toolbar+div{background:#fff;padding-top:25px;border-radius:0 0 16px 16px}.frm-settings-screenshot-toolbar+div img{max-width:calc(100% - 40px)}.frm-settings-screenshot-wrapper{max-width:700px;margin:50px auto 0;box-shadow:0 4px 4px rgba(189,196,205,.25),0 12px 56px rgba(42,57,75,.25);border-radius:16px;background:#ebecf1}.frm-dialog{z-index:100;padding:0 !important;border-radius:16px;border:none;background-color:#fff;max-width:100% !important}.frm-dialog .postbox{background:rgba(0,0,0,0);box-shadow:none;border:none;line-height:var(--leading)}.frm-dialog input[type=text],.frm-dialog textarea{font-size:var(--text-md)}.frm-dialog textarea{height:75px}.frm-dialog button.frm-button-primary{margin-right:10px}.frm-dialog .frm-sub-label,.frm-sub-label{color:var(--grey);text-transform:none;padding-left:8px}h2 .frm-sub-label{font-size:var(--text-md)}.frm-views-editor-body .ui-widget-overlay,.frm-white-body .ui-widget-overlay,.toplevel_page_formidable .ui-widget-overlay,body[class*=formidable-payments] .ui-widget-overlay,body.plugins-php .ui-widget-overlay{position:fixed;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background:var(--grey-500);opacity:.5;z-index:2}.frm-circled-icon{width:60px;height:60px;border-radius:50%;background-color:var(--primary-25)}.frm-circled-icon-large{width:80px;height:80px}.frm-circled-icon-green{background-color:var(--success-50)}.frm-circled-icon .frmsvg{width:21px;height:24px}.frm-circled-icon-large .frmsvg{width:24px}.frm-circled-icon .frmsvg use{color:var(--primary-500)}.frm-circled-icon-green .frmsvg use{color:var(--success-500)}.frm-border-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--grey-300);border-radius:var(--small-radius)}.frm-upgrade-message img{max-width:100%}a.frm-link-secondary{color:#c4c4c4;font-size:var(--text-sm);text-decoration:underline}.field_type_list li.button.frm_noallow,.field_type_list li.button.frm_noallow:hover,.button.frm_noallow,.button.frm_noallow:hover{color:inherit;border-color:#ccc;background:inherit}iframe#dyncontent_ifr{min-height:150px}/*! * Bootstrap v4.6.1 */.tooltip{position:absolute;display:block;margin:0;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0;z-index:9999999;pointer-events:none}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem;margin-left:0 !important}.tooltip .arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-tooltip-top,.bs-tooltip-auto[x-placement^=top]{padding:.4rem 0}.bs-tooltip-top .arrow,.bs-tooltip-auto[x-placement^=top] .arrow{bottom:0}.bs-tooltip-top .arrow::before,.bs-tooltip-auto[x-placement^=top] .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-right,.bs-tooltip-auto[x-placement^=right]{padding:0 .4rem}.bs-tooltip-right .arrow,.bs-tooltip-auto[x-placement^=right] .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-right .arrow::before,.bs-tooltip-auto[x-placement^=right] .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-bottom,.bs-tooltip-auto[x-placement^=bottom]{padding:.4rem 0}.bs-tooltip-bottom .arrow,.bs-tooltip-auto[x-placement^=bottom] .arrow{top:0}.bs-tooltip-bottom .arrow::before,.bs-tooltip-auto[x-placement^=bottom] .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-left,.bs-tooltip-auto[x-placement^=left]{padding:0 .4rem}.bs-tooltip-left .arrow,.bs-tooltip-auto[x-placement^=left] .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-left .arrow::before,.bs-tooltip-auto[x-placement^=left] .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.frm-dropdown-menu.show{display:block}.frm-single-settings .frm-dropdown-menu.show{background:#fff}.preview.dropdown .dropdown-menu{min-width:205px}.frm_clear{clear:both}.frm_clearfix::after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.frm_clearfix{display:block}.frm_admin_progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.frm_admin_progress_bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);transition:width .6s ease;background-color:#04a4cc}.tooltip.frm_tooltip{position:fixed;top:auto !important;bottom:0 !important;left:0 !important;max-width:none;width:100% !important;z-index:99999}.tooltip.frm_tooltip.bottom{padding:0}.frm_tooltip .tooltip-inner{max-width:none;min-height:40px !important;text-align:left;box-shadow:5px 5px 25px rgba(0,0,0,.5);padding:10px 40px;border-top-color:#ccc;background:var(--sidebar-color);color:var(--grey-700);border-radius:0;opacity:1;font-size:var(--text-sm)}#frm_custom_css_box{width:100%}.frmdates_add_blackout_date_link,.frmdates_add_exception_link,.frm_form_field.frm_scroll_box .frm_opt_container,.frm-white-body .wrap input[type=text],.frm-white-body .wrap input[type=search],.frm-white-body .wrap input[type=number],.frm-white-body .wrap select,#frm-form-templates-modal select,.frm-white-body .wrap textarea,button.frm_choose_image_box,#titlediv input[type=text],.frm-fields button.btn,.frm_wrap textarea,.frm_wrap input[type=tel],.frm_wrap input[type=text],.frm_wrap input[type=email] .frm_wrap input[type=search],.frm_wrap input[type=number],.frm_wrap input[type=date],.frm_wrap select,.wp-admin .frm_wrap select,.field-group textarea,.field-group input[type=text],.field-group select,.frm-fields .frm-input-field{outline:0;box-shadow:var(--box-shadow-xs);border-radius:var(--small-radius);padding:5px 14px;border-color:var(--grey-300);color:var(--grey-800);font-size:var(--text-md);margin:0;background-color:#fff;line-height:var(--leading)}.frm_input_with_suffix{border-radius:var(--small-radius);border:1px solid var(--grey-300);display:inline-block;padding-right:14px}.frm_input_with_suffix input{border:0 !important;padding-right:5px !important}.frm_wrap ::-webkit-datetime-edit{line-height:var(--leading)}.frm-white-body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) textarea:focus,.frm-white-body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) input:focus,.frm-white-body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) select:focus,.frm_wrap input:focus,.frm_wrap select:focus,.wp-core-ui .frm_wrap select:focus,#frm-form-templates-modal select:focus,.frm-btn-group .multiselect.dropdown-toggle:focus,.frm_wrap textarea:focus{border-color:var(--primary-500) !important;box-shadow:none !important}.wp-admin .frm_fields_container textarea:focus,.wp-admin .frm_fields_container input:focus,.wp-admin .frm_fields_container select:focus{border-color:var(--primary-500);box-shadow:none}#postbox-container-2 textarea,.frm_wrap textarea,.field-group textarea{line-height:2}.frm_wrap input[type=number]{height:auto}.frm_wrap select{padding:2px}.wp-admin .frm_wrap select,#frm-form-templates-modal select{max-width:100%}.frm_form_field.frm_scroll_box .frm_opt_container{padding:10px 12px}.frm_wrap input[disabled],.frm_wrap select[disabled],.frm_wrap textarea[disabled],.frm_wrap input[readonly],.frm_wrap select[readonly],.frm_wrap textarea[readonly],.frm_wrap input::placeholder{color:var(--grey-500)}textarea[id^=frm_calc_]::placeholder{font-size:var(--text-sm);line-height:var(--leading);font-style:italic;color:var(--grey-400);padding-top:5px}.frm_wrap .frm-button-primary.frm-disabled{opacity:.5;cursor:default}#postcustomstuff table td>div{padding-top:0 !important}.wp-admin .frm_wrap .form-table select{vertical-align:top}.frm_wrap .frm_form_builder select{line-height:var(--leading);height:var(--text-md);width:100%}#postbox-container-2 select,.wp-admin .frm_wrap select,.frm_wrap .frm_form_builder select,#frm-form-templates-modal select{height:auto}.frm-white-body .tablenav select,.frm-white-body .tablenav input[type=text],.wp-admin .frm_wrap .tablenav select,.frm_wrap .tablenav input[type=date],.frm_wrap .tablenav input[type=text]{padding-top:0;padding-bottom:0;line-height:1}.frm_wrap .tablenav ::-webkit-datetime-edit{line-height:1}.frm-fields button.btn,.frm-fields textarea,.frm-fields input[type=text],.frm-fields select,.field-group textarea,.field-group input[type=text],.field-group select,.accordion-container input.hex,.frm-fields .frm-input-field{width:100%;outline:0}.frm-fields button.btn{height:var(--h-md);text-align:inherit}.global-font .field-group input[type=text]{width:auto}.wp-core-ui .frm_grey.frm-button-primary.disabled,.wp-core-ui .frm_grey.frm-button-primary,#frm-welcome .frm_grey{opacity:.5;background:#f6f6f6 !important;border-color:#ddd !important;color:#9fa5aa !important}.windows::-webkit-scrollbar,.windows ::-webkit-scrollbar{width:7px;background:rgba(0,0,0,0)}.windows::-webkit-scrollbar-thumb,.windows ::-webkit-scrollbar-thumb{background:var(--grey-300);-webkit-border-radius:var(--border-radius);-webkit-box-shadow:none}.windows::-webkit-scrollbar-corner,.windows ::-webkit-scrollbar-corner{background:rgba(0,0,0,0)}.frm-scrollbar-wrapper,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list,#frm_builder_page #frm_adv_info .frm_code_list,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div,.frm-single-settings .frm_field_opts_list{overflow-x:hidden;overflow-y:auto !important;-ms-overflow-style:none;scrollbar-color:rgba(0,0,0,0) rgba(0,0,0,0);scrollbar-width:thin}.frm-scrollbar-wrapper:hover,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list:hover,#frm_builder_page #frm_adv_info .frm_code_list:hover,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div:hover,.frm-single-settings .frm_field_opts_list:hover{scrollbar-color:var(--grey-300) rgba(0,0,0,0)}.frm-scrollbar-wrapper:hover::-webkit-scrollbar-thumb,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list:hover::-webkit-scrollbar-thumb,#frm_builder_page #frm_adv_info .frm_code_list:hover::-webkit-scrollbar-thumb,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div:hover::-webkit-scrollbar-thumb,.frm-single-settings .frm_field_opts_list:hover::-webkit-scrollbar-thumb{background:var(--grey-300)}.frm-scrollbar-wrapper::-webkit-scrollbar,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list::-webkit-scrollbar,#frm_builder_page #frm_adv_info .frm_code_list::-webkit-scrollbar,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div::-webkit-scrollbar,.frm-single-settings .frm_field_opts_list::-webkit-scrollbar{width:3px}.frm-scrollbar-wrapper::-webkit-scrollbar-track,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list::-webkit-scrollbar-track,#frm_builder_page #frm_adv_info .frm_code_list::-webkit-scrollbar-track,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div::-webkit-scrollbar-track,.frm-single-settings .frm_field_opts_list::-webkit-scrollbar-track{background:rgba(0,0,0,0);border-radius:100vw}.frm-scrollbar-wrapper::-webkit-scrollbar-thumb,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list::-webkit-scrollbar-thumb,#frm_builder_page #frm_adv_info .frm_code_list::-webkit-scrollbar-thumb,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div::-webkit-scrollbar-thumb,.frm-single-settings .frm_field_opts_list::-webkit-scrollbar-thumb{background:rgba(0,0,0,0);border-radius:100vw}.frm-scrollbar-wrapper::-webkit-scrollbar-thumb:hover,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list::-webkit-scrollbar-thumb:hover,#frm_builder_page #frm_adv_info .frm_code_list::-webkit-scrollbar-thumb:hover,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div::-webkit-scrollbar-thumb:hover,.frm-single-settings .frm_field_opts_list::-webkit-scrollbar-thumb:hover{background:var(--grey-300)}.rtl h3{font-weight:inherit !important}.rtl.js .accordion-section-title::after{left:10px;right:auto}.rtl #frm_top_bar #frm_bs_dropdown{padding-left:15px}.rtl .frm-full-close,.rtl .frm_wrap .columns-2 .frm-right-panel+div,.rtl .frm-right-panel{border-left-width:0;border-right:1px solid var(--grey-300)}.rtl .frm-full-close{padding-left:0;padding-right:var(--gap-md)}.rtl .frm-text-right{text-align:left}.rtl .frm_wrap #frm_adv_info ul.category-tabs li:first-child{border-left-width:1px}.rtl .frm-dropdown-menu{text-align:right}.rtl .frm_actions_dropdown .frm_icon_font{float:right;margin-right:0;margin-left:3px}.rtl #frm-insert-fields-box,.rtl #frm-conditionals{padding-right:.9em}.rtl #html_settings .frm_field_html_box{margin-right:0}.rtl .frm_list_entry_page h2{float:right}.rtl .frm_scale{float:right;margin-left:10px;margin-right:0}.rtl .frm-page-break .frm-collapse-page.button{margin-left:0;margin-right:46%}.rtl .frm-field-action-icons{right:unset;left:2px}.rtl .frm_has_shortcodes>i{right:auto;left:5px}.rtl p.frm_reply_to_container,.rtl p.frm_bcc_cc_container{float:left}.rtl .frm-with-right-icon:not(.frm-token-container) .frmsvg{right:auto;left:0}.rtl .frm-inline-modal>a.dismiss{left:13px;right:auto}.rtl.wp-admin .frm_wrap select{padding-left:var(--gap-lg) !important;padding-right:5px !important;background-position:left 11px top 55%}.rtl .frm_code_list.frm-full-hover a span{margin-left:var(--gap-xs)}.rtl .frm-style-tabs-wrapper .frm-tabs-navs ul li:first-child{margin-left:unset;margin-right:var(--gap-xs)}.rtl .frm-style-tabs-wrapper .frm-tabs-navs ul li:last-child{margin-right:unset;margin-left:var(--gap-xs)}.rtl .frm-style-tabs-wrapper .frm-tabs-active-underline{left:unset !important;right:0}.rtl .frm-style-tabs-wrapper .frm-tabs-active-underline.frm-first{right:var(--gap-xs)}.rtl .frm-style-tabs-wrapper .frm-tabs-active-underline.frm-last{right:calc(-1*var(--gap-xs))}.rtl .frm-unit-input .frm-input-group-suffix{right:unset;left:1px;padding-right:unset;padding-left:var(--gap-xs)}.rtl .frm-unit-input .frm-input-group-suffix select{text-align:left;background-position:left 0 top 50%;padding-left:21px !important}span.clear{display:block}.clearfix::after{content:".";display:block;height:0;clear:both;visibility:hidden}.clearfix{display:inline-block}.frm_form_fields .clear{height:auto}* html .clearfix{height:1%}.clearfix{display:block}#frm_small_device_message_container{display:none}@media only screen and (max-width: 1200px){.frm-addons{grid-template-columns:1fr 1fr}#frm_top_bar h1{min-width:0}}@media only screen and (max-width: 1050px){.frm-white-body,.frm_wrap{--biggest-sidebar: 390px}#form_settings_page .columns-2{margin:0}.frm_actions_list{margin-left:0}#frm_bs_dropdown .frm_bstooltip{display:none !important}}@media only screen and (max-width: 960px){.frm-white-body,.frm_wrap{--gap-sm: 8px;--gap-md: 16px;--gap-2xl: 24px}.frm-settings-panel{--gap-sm: 16px;--gap-md: 24px;--gap-2xl: 32px}.auto-fold #adminmenuwrap{width:36px}.frm_wrap #postbox-container-1 #frm_adv_info{min-width:220px}p.howto{display:inline-block}.auto-fold.frm-admin-page-styles:not(.frm-full-screen) .frm_page_container,.auto-fold:not(.frm-full-screen) .frm_wrap .frm_page_container{left:36px}}@media only screen and (max-width: 850px){.frm-white-body,.frm_wrap{--biggest-sidebar: 350px;--big-sidebar: 350px}.frm_col_one{clear:none}.frm-fields p>.frm_inline_label,.frm_inline_label{display:block;margin:5px 0}#frm_top_bar h1{width:auto;max-width:200px}#frm-publishing{width:auto}#frm_form_editor_container,.frm-entry-container{margin:0 20px}.frm_wrap .frm-search{float:none !important;width:auto;clear:both}.post-type-frm_display #frm_adv_info{top:auto !important;position:static;width:auto}.frm_wrap .frm-right-panel #frm_adv_info,.frm_wrap #postbox-container-1 #frm_adv_info{min-width:275px}.frm_wrap #frm_adv_info ul.category-tabs li,.frm_wrap #frm_adv_info ul.category-tabs li.tabs{border:none}.frm_wrap #frm_adv_info ul.category-tabs li:first-child{margin-left:12px}.frm_wrap #frm_adv_info ul.category-tabs li.tabs{border-bottom:2px solid #5b9dd9;padding-bottom:8px}.post-type-frm_display #poststuff{padding:10px 25px}.post-type-frm_display #side-sortables .postbox{margin-bottom:20px;border-radius:var(--small-radius);border-top-width:1px}#frm_top_bar .frm_form_nav{box-shadow:0 -0.47px 10px 0 rgba(16,24,40,.0588235294)}#frm_top_bar ul.frm_form_nav{padding:1em 0;position:fixed;bottom:0;width:100%;background:#fff;z-index:99;transform:translate(-50%, 0);left:50%}.frm_page_container>.columns-2,#frm_styler_wrapper{padding-bottom:64px}#frm_style_preview .frm_floating_style_button:not(.frm_hidden){position:static;display:inline-block}.frm_wrap .columns-2 .frm-right-panel{padding-bottom:0}#frm-publishing{margin-left:auto}#frm_top_bar>.frm-full-close:last-child{margin-left:0}#frm_bs_dropdown{display:block}#frm_bs_dropdown .frm_bstooltip{display:block !important}}@media only screen and (max-width: 782px){.frm-white-body,.frm_wrap{--small-sidebar: 20%;--medium-sidebar: 35% }#form_settings_page .advanced_settings .form-table td,.form-table th{display:table-cell;width:auto !important}.frm-white-body #publishing-action,.frm_wrap #publishing-action{line-height:normal}.frm-white-body #screen-meta-links{display:none}.frm_wrap .misc-pub-section{padding:6px 0}.frm_wrap .misc-pub-section>a{float:none;white-space:nowrap}.frm-form-setting-tabs a{position:relative;padding:10px 5px 10px 40px}.frm-form-setting-tabs a .frmsvg,.frm-form-setting-tabs a i{position:absolute;left:13px;top:calc(50% - 10px);margin:0}#frm-insert-fields .button,#frm-insert-fields .button a,.frmbutton.ui-sortable-helper a{line-height:26px;max-height:28px}a.frm_add_logic_link{margin-left:0;margin-right:0;width:100%;box-sizing:border-box}a.frm_add_logic_link:not([id^=logic_]) .frmsvg,a.frm_add_logic_link i{display:none}#new_fields .frm_single_option select,#new_fields .frm_single_option input[type=text]{width:calc(100% - 83px)}.frm_single_entry_page .frm_form_fields input[type=text],.frm_single_entry_page .frm_form_fields select,.frm_single_entry_page .frm_form_fields textarea{width:100%}.with_frm_style .frm_radio input[type=radio],.with_frm_style .frm_checkbox input[type=checkbox]{width:25px !important}.frm_single_entry_page .with_frm_style .frm_radio input[type=radio],.frm_single_entry_page .with_frm_style .frm_checkbox input[type=checkbox]{width:18px !important}.wp-list-table.toplevel_page_formidable .column-entries,.wp-list-table.toplevel_page_formidable .column-form_key,.wp-list-table.toplevel_page_formidable .column-shortcode,.wp-list-table.toplevel_page_formidable .column-created_at{display:none !important}.wp-list-table.toplevel_page_formidable td.column-entries,.wp-list-table.toplevel_page_formidable td.column-form_key,.wp-list-table.toplevel_page_formidable td.column-shortcode,.wp-list-table.toplevel_page_formidable td.column-created_at{padding:3px 8px 3px 35%;text-align:left}#form_entries_page .wp-list-table th.frm_hidden,#form_entries_page .wp-list-table td.frm_hidden{display:none !important}.frm-white-body.auto-fold #wpcontent{padding-left:0}.frm_right_addon .frm_remove_field{bottom:11px}.frm-addons{grid-template-columns:1fr}.frm-admin-page-styles .frm_page_container,.frm_wrap .frm_page_container{left:0 !important}.frm_single_entry_page.frm_wrap .columns-2{display:block;border-bottom:none}.frm_single_entry_page .wrap.frm-with-margin{margin:10px 20px}.frm_single_entry_page #post-body-content+.frm-right-panel{width:auto;margin:0 20px;border:1px solid var(--sidebar-hover);border-radius:6px}#wp-content-media-buttons a.frm_insert_form{padding:0 var(--gap-sm)}.frm-white-body input[type=checkbox]:checked::before,.frm_wrap input[type=checkbox]:checked::before{width:1.2rem;height:1.2rem}}@media only screen and (max-width: 700px){.frm-white-body,.frm_wrap{--biggest-sidebar: 50%;--big-sidebar: 50%}}@media only screen and (max-width: 600px){.frm-white-body,.frm_wrap{--small-sidebar: 45px}.frm-form-setting-tabs a{visibility:collapse;font-size:0;padding:0 var(--gap-sm)}.frm-form-setting-tabs a .frmsvg,.frm-form-setting-tabs a i{visibility:visible;position:initial;font-size:18px}#frm_builder_page #frm-insert-fields{padding:0}.frm_wrap #frm_adv_info ul.category-tabs li{display:inline-block;padding:0;margin:2px 0;border-bottom:2px solid rgba(0,0,0,0)}.frm_wrap #frm_adv_info ul.category-tabs li.tabs,.frm_wrap #frm_adv_info ul.category-tabs li:first-child{margin-left:0;padding:0}.field_type_list li{text-align:center}#frm-insert-fields li a{padding:5px}#frm_form_editor_container .frm_primary_label{clear:both}#frm_builder_page .frm_code_list a.button{padding:2px}#frm_builder_page .frm_actions_dropdown>.frm-dropdown-menu{right:0;left:auto}.frm-right-panel h3.accordion-section-title{padding-right:10px;padding-left:10px;font-size:20px;white-space:nowrap;overflow:hidden}.frm-right-panel .accordion-section-title::before{margin-left:0;margin-right:3px}.rtl #frm_builder_page .frm_actions_dropdown>.frm-dropdown-menu{right:auto;left:0}.frm_on_submit_type svg{display:none}}@media only screen and (max-width: 475px){#frm_bs_dropdown{float:none}#frm-nav-tabs{padding:0;white-space:nowrap}#frm-nav-tabs a{margin-right:0}#frm_small_device_message_container{display:flex;flex-direction:column;align-items:center;justify-content:center;position:fixed;top:0;width:100%;height:100%;z-index:999999;background:var(--primary-500)}#frm_small_device_message{text-align:center;display:flex;flex-direction:column;align-items:center;width:80%;padding:1rem;background:#fff;border:solid 1px #fff;border-radius:var(--medium-radius)}#frm_small_device_message::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-78%, -65%);width:900px;height:900px;background-color:#0d7dfc;border-radius:50%;z-index:-1;opacity:.3}#frm_small_device_message>svg{padding-bottom:1rem}.toplevel_page_formidable:has(#frm_small_device_message_container) #posts-filter,.post-type-frm_display:has(#frm_small_device_message_container) #posts-filter{display:none}}@media print{a,.misc-pub-section a{color:#000 !important}.add-new-h2,#frm_top_bar,.dashicons,#adminmenuwrap,#adminmenuback,#wphead,#button_bar,#submitdiv,.button-secondary,#screen-metas,#screen-meta-links,#footer,#wpfooter,.inner-sidebar,.frm_form_nav,.frm_flash_graph,.frm_no_print,object,.error{visibility:hidden;display:none !important}.widget,.postbox,.stuffbox,.postbox h3{border-width:0 !important;border-color:#fff}.postbox{background:#fff !important;border:none;position:static}.postbox h3,.postbox h4{background:#fff !important}#wpbody-content{float:none}#wpcontent,#post-body-content,.has-right-sidebar #post-body,#poststuff .columns-2{margin:0 !important}.frm_wrap #poststuff .columns-2{display:block}#post-body-content+.frm-right-panel,.frm_wrap .columns-2 .frm-right-panel,.frm-right-panel{border:none;width:auto;display:block;padding:20px}.frm_wrap .columns-2,.frm_wrap .frm_page_container{height:auto;display:block}.misc-pub-section>span{padding:0}.frm-right-panel .postbox .inside{padding-left:12px;padding-right:12px}.curtime #timestamp::before{display:none;content:none !important}.frm_charts .alignleft{float:none}.pg_odd,.pg_even{page-break-inside:avoid;max-width:600px}.form-table td,.form-table th{padding:0}.frm_file_container a{display:block;width:100%}}.frm-admin-page-styles #frm-publishing #save_menu_header,.frm-admin-page-styles2 #frm-publishing #save_menu_header{display:inline-block}.edit_form_item .frm_combo_inputs_container[data-name-layout=last_first] .frm_form_subfield-first{order:2}.frm-video-wrapper iframe{width:100%;max-width:843px;border-radius:var(--border-radius)}#frm_field_group_popup{position:absolute;top:0;right:0;width:366px;max-height:231px;border-radius:8px;background:#fff;box-shadow:0 20px 48px rgba(40,47,54,.15);z-index:3;box-sizing:border-box;padding:24px 0;text-align:left}.rtl #frm_field_group_popup{text-align:right}.frm-merge-fields-into-row #frm_field_group_popup{top:unset;bottom:50px;height:196px}#frm_field_group_popup>hr{margin:12px 0}#frm_field_group_popup .frm-cancel-custom-field-group-layout,#frm_field_group_popup .frm-save-custom-field-group-layout{padding:4px 18px}#frm_field_group_popup .frm-cancel-custom-field-group-layout:hover{border-color:var(--primary-500) !important;color:var(--primary-500);background-color:rgba(0,0,0,0) !important}.frm-merge-fields-into-row #frm_field_group_popup .frm-break-field-group{display:none}.frm-merge-fields-into-row>a{color:rgba(40,47,54,.85);position:relative;top:2px}.frm-row-layout-title{font-weight:600;font-size:11px;line-height:15px;text-transform:uppercase;color:rgba(40,47,54,.45);margin-bottom:27px}.frm-row-layout-option{background:#f6f7fb;box-sizing:border-box;border-radius:2px;padding:15px 10px}#frm_field_group_popup .frm-row-layout-option .frm_grid_container{grid-gap:0 5%;grid-template-columns:repeat(12, auto)}#frm_field_group_popup .frm-row-layout-option{cursor:pointer;border:2px solid rgba(0,0,0,0)}#frm_field_group_popup .frm-row-layout-option.frm-active-row-layout,#frm_field_group_popup .frm-row-layout-option:hover{border-color:var(--primary-500)}.frm-custom-field-group-layout,.frm-break-field-group{padding:4px 24px;cursor:pointer;font-size:var(--text-sm);line-height:19px;color:#484e54}.frm-custom-field-group-layout:hover,.frm-break-field-group:hover{background-color:rgba(245,245,245,.9607843137)}.frm-custom-field-group-layout svg,.frm-break-field-group svg{margin-right:5px}#frm_field_multiselect_popup{background:#fff;height:48px;position:fixed;border-radius:4px;box-shadow:0 8px 24px rgba(40,47,54,.15);color:rgba(40,47,54,.85);font-size:13px;right:30px;bottom:10px;z-index:2}#frm_field_multiselect_popup>div{display:inline-block;line-height:48px;vertical-align:top}#frm_field_multiselect_popup.frm-unmergable>.frm-merge-fields-into-row,#frm_field_multiselect_popup.frm-unmergable>.frm-multiselect-popup-separator{display:none}#frm_field_multiselect_popup>div:not(.frm-multiselect-popup-separator){padding:0 20px;cursor:pointer}#frm_field_multiselect_popup>div:not(.frm-multiselect-popup-separator):hover{background:rgba(245,245,245,.9607843137)}.frm-builder-popup-heading{font-weight:600;font-size:11px;line-height:15px;text-transform:uppercase;color:rgba(40,47,54,.45);margin-bottom:7px}.frm-builder-popup-subheading{font-size:12px;line-height:16px;color:rgba(40,47,54,.45)}#frm_field_group_popup input[type=text]{height:30px;border-radius:3px;font-size:14px;padding:8px;color:#545f6e;border-color:rgba(40,47,54,.2)}.frm-multiselect-popup-separator{height:36px;width:1px;position:relative;top:6px;background:#c4c4c4}.frm-sortable-helper,.frm-multiselect-key-is-down li.form-field:not(.edit_field_type_divider){pointer-events:none}.frm-sortable-helper{z-index:99}#frm_banner{width:100%;color:#fff;background:var(--primary-500);height:40px;line-height:40px;text-align:center;position:relative}.frm-banner-emoji{font-size:19px}.frm-banner-emoji,.frm-banner-title{margin-right:5px;vertical-align:top}.frm-banner-cta a{text-decoration:underline !important}#frm_banner .frm-banner-cta a.frm_inbox_dismiss{display:none}.frm-banner-dismiss{cursor:pointer;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.frm-banner-dismiss .frmsvg{vertical-align:top}.frm-ready-made-solution:not(.frm-search-result){display:none !important}#frm_leave_email_wrapper .frmsvg{top:0}#frm-add-my-email-address{margin-top:30px}.frm-ready-made-solution h3~a{color:var(--primary-500)}.frm-ready-made-solution img{max-width:100%;display:block;box-shadow:var(--box-shadow-lg)}.frm_single_on_submit_settings .frm_form_field{margin:22px 0}.frm_on_submit_type_setting{padding:8px 0}.frm_on_submit_type label{display:flex;border:1px solid var(--grey-border);border-radius:var(--small-radius);gap:16px;padding:16px;align-items:center;justify-content:center}.frm_on_submit_type input{opacity:0 !important;position:absolute;z-index:-1}.frm_on_submit_type input[type=radio]:checked+label{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color)}#form_settings_page .frm_on_submit_type label:hover,.frm_on_submit_type input[type=radio]:checked+label svg{color:var(--primary-color)}.frm_pro_tip,.frm-cta{justify-content:space-between;align-items:center;gap:var(--gap-2xl);padding:var(--gap-xs) var(--gap-sm);border-radius:var(--small-radius);background:var(--primary-25)}.frm-cta.frm-cta-border{border:1px solid var(--primary-200)}.frm-cta.frm-cta-border .frm-cta-footer{background-color:#fff;padding:12px var(--gap-sm);border-top:1px solid var(--primary-200);border-bottom-left-radius:var(--small-radius);border-bottom-right-radius:var(--small-radius);margin-top:12px;margin-bottom:calc(-1*var(--gap-sm));margin-left:calc(-1*var(--gap-sm));margin-right:calc(-1*var(--gap-sm))}.frm-cta h4{font-weight:600;margin-top:0;margin-bottom:var(--gap-2xs)}.frm-cta-green{background-color:var(--success-25)}.frm-cta-green .frm-banner-title{gap:calc(var(--gap-2xs) + 1px);color:var(--grey-700)}.frm-cta-green.frm-cta-border{border-color:var(--success-100)}.frm-cta-green.frm-cta-border .frm-cta-footer{border-color:var(--success-100)}.frm-cta-red{background-color:var(--error-25)}.frm-cta-red.frm-cta-border{border-color:var(--error-100)}.frm-cta-icon{padding:3px 15px 3px 0;border-right:1px solid currentColor}#frm-upgrade-banner{gap:0}#frm-upgrade-banner .frm-cta-icon+.frm-cta-content{margin-right:auto;padding-left:15px}#frm-upgrade-banner.frm-gradient h4,#frm-upgrade-banner.frm-gradient p{color:currentColor}#frm-upgrade-banner.frm-gradient h4{font-size:16px;font-weight:600}#frm-upgrade-banner.frm-gradient p{font-size:14px}.frm-right-panel .inside .frm_pro_tip,.frm_pro_tip{color:var(--grey-700);background:#ffe7de;margin:0 auto;display:flex;gap:var(--gap-xs)}.frm_field_list .frm_pro_tip{margin:10px 15px;position:relative;width:calc(100% - 30px);box-sizing:border-box;font-size:14px}.frm_pro_tip .frmsvg,.frm_pro_tip i{color:var(--orange)}.frm-tip-info{flex:1;text-align:left}.frm-tip-cta{color:var(--orange)}.frm-gradient .frm-tip-cta,.frm-light-tip .frm-gradient .frm-tip-cta{color:currentColor;font-weight:700}.frm-tip-badge{font-size:9px;font-weight:700;text-transform:uppercase;color:#1e63d5;background-color:#fff;line-height:1;border-radius:4px;padding:3px 4px}.frm-light-tip .frm_pro_tip{background:var(--primary-25)}.frm-light-tip .frm_pro_tip .frmsvg,.frm-light-tip .frm_pro_tip i,.frm-light-tip .frm-tip-cta{color:var(--primary-500)}.nav-tab-wrapper .frm_pro_tip{float:right}#frm-form-templates-modal textarea{height:108px}#frm-form-templates-modal .frm-fields button.btn{border-color:var(--grey-300);color:var(--grey-900);cursor:pointer}#frm-form-templates-modal .frm-fields button.btn .frmsvg{color:var(--grey-400);width:14px;height:14px}#frm-form-templates-modal .frm-form-templates-modal-fieldset{position:relative}#frm-form-templates-modal .frm-form-templates-modal-fieldset .frm-with-left-icon .frmsvg{padding:0;top:0;left:13px}#frm-form-templates-modal .postbox{display:block !important}#frm_empty_inbox #frm-leave-email-modal{margin-top:var(--gap-2xl)}#frm-name-your-form-modal .frm_modal_top{padding-top:var(--gap-sm)}#frm-field-group-message{position:absolute;bottom:32px;right:calc(50% - var(--biggest-sidebar));padding:var(--gap-xs) var(--gap-sm);border-radius:100px;background-color:var(--primary-25)}#frm-field-group-message .frm-field-group-message-text{gap:10px;color:var(--grey-800)}#frm-field-group-message-dismiss{margin-left:var(--gap-xs)}#frm-field-group-message-dismiss .frmsvg{color:var(--grey-800);width:15px;height:15px;cursor:pointer;transition:color 300ms ease-in-out}#frm-field-group-message-dismiss .frmsvg:hover{color:var(--grey-500)}.frm-card-item{display:flex;border:1px solid var(--grey-200);border-radius:var(--small-radius);padding:var(--gap-sm);box-shadow:var(--box-shadow-xs);background:#fff}.frm-card-item:not(.frm-counter-card){gap:10px}.frm-compact-card-item{padding:var(--gap-sm) 35px 10px 35px}.frm-card-bottom{background-color:var(--grey-50);margin-left:calc(var(--gap-sm)*-1);margin-bottom:calc(var(--gap-sm)*-1);margin-right:calc(var(--gap-sm)*-1);padding:var(--gap-sm);border-radius:0 0 var(--small-radius) var(--small-radius)}#welcome-panel:has(#frm_form_pf_importer){background-color:#fff;margin:var(--gap-sm) var(--gap-md) var(--gap-md);line-height:2}#welcome-panel:has(#frm_form_pf_importer) .welcome-panel-content{text-align:start !important;min-height:unset;display:block}#frm_form_pf_importer div{margin:10px 0 !important}#frm_form_pf_importer button{border:1px solid var(--primary-500);padding:7px 16px;min-height:28px;line-height:var(--leading);margin-bottom:0;background:var(--primary-500);color:#fff !important}#frm_form_pf_importer button:hover{background:#135e96;border-color:#135e96}.frm-option-box{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:500;background-color:#fff;padding:12px var(--gap-sm);border:1px solid var(--grey-200);border-radius:var(--small-radius);margin-bottom:var(--gap-xs);transition:background-color 100ms ease-out;cursor:pointer}.frm-option-box:hover{background-color:var(--grey-25)}.frm-option-box.frm-checked{background-color:var(--primary-25);border-color:var(--primary-200)}.frm-option-box.frm-disabled{cursor:default}.frm-option-box input[type=checkbox]{margin:0}.frm-option-box.frm-disabled input[type=checkbox]{opacity:.5}.frm-option-box .frm_help .frmsvg{width:12px;height:12px}.frm-validation-error:not(.frm_hidden){display:flex}.frm-validation-error{gap:calc(var(--gap-xs) + var(--gap-2xs))}.frm-validation-error span{color:var(--error-500)}.frm-validation-error span[frm-error]{display:none}.frm-validation-error[frm-error=empty] span[frm-error=empty],.frm-validation-error[frm-error=invalid] span[frm-error=invalid],.frm-validation-error[frm-error=custom] span[frm-error=custom]{display:inline-block}.frm-box{padding:var(--gap-sm);border:1px solid var(--grey-200);border-radius:var(--small-radius)}.frm-link-with-external-icon{display:flex;align-items:center;gap:var(--gap-2xs);font-size:var(--text-xs)}.frm-link-with-external-icon .frmsvg{width:16px;height:16px;transform:rotate(45deg)}#wpbody-content .frm-page-skeleton ul,#wpbody-content .frm-page-skeleton li{margin:0}#wpbody-content .frm-page-skeleton .frm-right-panel{padding:2px;overflow-y:initial}#wpbody-content .frm-page-skeleton .frm-scrollbar-wrapper{padding:var(--gap-md) var(--gap-sm)}#wpbody-content .frm-page-skeleton .frm-search{float:none;padding:0 var(--gap-2xs)}#wpbody-content .frm-page-skeleton .frm-search>svg{left:var(--gap-2xs)}#wpbody-content .frm-page-skeleton .frm-search>input{width:100%}.frm-page-skeleton-cat{cursor:pointer;padding:var(--gap-xs);border-radius:var(--small-radius);background-color:rgba(0,0,0,0);transition:background-color 250ms ease-out}.frm-page-skeleton-cat:hover{background-color:var(--grey-100)}.frm-page-skeleton-cat>*{z-index:2}.frm-page-skeleton-cat-text{color:var(--grey-900);text-transform:capitalize}.frm-page-skeleton-cat-count{color:var(--grey-400)}.frm-current .frm-page-skeleton-cat-text,.frm-current .frm-page-skeleton-cat-count{color:var(--primary-500)}.frm-list-grid-layout{display:grid;grid-template-columns:repeat(auto-fill, minmax(303px, 1fr));grid-auto-rows:max-content;gap:var(--gap-sm)}.frm-list-grid-layout>*{grid-column:span 1}#frm-page-skeleton-empty-state{height:100%;margin-top:calc(-1*var(--gap-md))}#frm-page-skeleton-empty-state .frm-page-skeleton-text{max-width:420px}.frm-page-skeleton-divider{border-top:1px solid var(--grey-200);margin:0}.field_type_list .frm_tsubmit{display:none !important}#frm_style_sidebar .accordion-section-title::after,#frm_view_editor_left .accordion-section-title::after{content:""}a[href="#square_settings"] svg.frmsvg{width:23px !important;height:22px !important}#frm_square_test_setup_modal a:focus{box-shadow:none !important}@media only screen and (max-width: 900px){#square_settings .frm_grid_container:has(.frm-card-item){grid-template-columns:repeat(1, 1fr)}#square_settings .frm-card-item+.frm-card-item{margin-top:var(--gap-sm)}}#frm_sale_banner{display:flex;height:90px;flex-direction:row;align-items:center;gap:var(--gap-sm);cursor:pointer;position:relative}#frm_sale_banner>div:first-child{align-self:flex-end;width:150px;height:100%;display:flex;justify-content:center}#frm_sale_banner>div:first-child img{align-self:center}#frm_sale_banner>div:nth-child(3){margin-left:auto;margin-right:50px}#frm_sale_banner>div:nth-child(2)>div:last-child{opacity:.8}#frm_sale_banner a:not(.dismiss){text-shadow:none;border-radius:30px;border:1px rgba(0,0,0,0);font-size:var(--text-sm);padding:7px 16px;height:auto;min-height:28px;outline:none;line-height:var(--leading);box-sizing:border-box;margin-bottom:0;display:inline-block;font-weight:700;background-color:#fff;color:#000}#frm_sale_banner .dismiss{position:absolute;color:#fff;opacity:.6;right:15px;top:10px}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: #fff"]{background-color:#f0f0f0 !important}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: rgba(241, 90, 36, 1)"]{background-color:#e6470f !important}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: rgba(239, 58, 78, 1)"]{background-color:#ed1d34 !important}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: rgba(33, 2, 14, 1)"]{background-color:#3e041a !important}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: rgba(72, 51, 64, 1)"]{background-color:#362630 !important}.frm-lookup-box-label{display:none}.frm-inline-modal[id^=frm-lookup-box]{background-color:rgba(0,0,0,0);border:0;box-shadow:none}.frm-inline-modal[id^=frm-lookup-box] .frm-nav-tabs,.frm-inline-modal[id^=frm-lookup-box] .dismiss{display:none}.frm_single_option a.frm_remove_tag svg,.frm_single_option a.frm_add_opt svg{width:15px;height:15px}#frm_builder_page #frm-options-panel .frm-single-settings.frm-type-ranking .frm_image_styling_frame{margin-left:12px} diff --git a/js/formidable-settings-components.js b/js/formidable-settings-components.js index d46bd0f4f1..0c136a267d 100644 --- a/js/formidable-settings-components.js +++ b/js/formidable-settings-components.js @@ -1 +1 @@ -(()=>{"use strict";var e=window.frmGlobal,t=(e.url,e.nonce,"frm_hidden"),n="frm_disabled",i=(Promise.resolve(),window.frmDom.util),r=(i.onClickPreventDefault,i.documentOn),a=(new URL(window.location.href).searchParams,function(e){return null==e?void 0:e.classList.remove(t)});function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function l(e,t){for(var n=0;n=r)){var a=i.querySelector("select").value,o=this.calculateValue(r,n,this.getMaxValue(a,t));i.querySelector('.frm-slider-value input[type="text"]').value=o,i.querySelector(".frm-slider-bullet .frm-slider-value-label").innerText=o,i.querySelector(".frm-slider-active-track").style.width="".concat(n,"px"),this.initChildSlidersWidth(i,n,t,o+a),this.options[t].translateX=n,this.options[t].value=o+a,this.options[t].fullValue=this.updateValue(i,this.options[t].value),this.valueChangeDebouncer(t)}}}},{key:"getMaxValue",value:function(e,t){return"%"===e?100:this.options[t].maxValue}},{key:"enableDragging",value:function(e,t){e.target.classList.add("frm-dragging"),this.options[t].dragging=!0,this.options[t].startX=e.clientX-this.options[t].translateX}},{key:"disableDragging",value:function(e,t){!1!==this.options[e].dragging&&(t.target.classList.remove("frm-dragging"),this.options[e].dragging=!1,this.triggerValueChange(e))}},{key:"triggerValueChange",value:function(e){var t=this;if(null===this.options[e].dependentUpdater){var n=this.sliderElements[e].classList.contains("frm-has-multiple-values")?this.sliderElements[e].closest(".frm-style-component").querySelector('input[type="hidden"]'):this.sliderElements[e].querySelectorAll('.frm-slider-value input[type="hidden"]');n instanceof NodeList?n.forEach((function(n){n.dispatchEvent(t.eventsChange[e])})):n.dispatchEvent(this.eventsChange[e])}else this.options[e].dependentUpdater.updateAllDependentElements(this.options[e].fullValue)}},{key:"calculateValue",value:function(e,t,n){var i=Math.ceil(this.sliderBulletWidth*(t/e)),r=Math.ceil((t+i)/e*n);return Math.min(r,n)}},{key:"updateValue",value:function(e,t){var n=this;if(e.classList.contains("frm-base-font-size")){var i=document.querySelector('input[name="frm_style_setting[post_content][use_base_font_size]"]');null!==i&&(i.value="true")}if(e.classList.contains("frm-has-multiple-values")){var r=e.closest(".frm-style-component").querySelector('input[type="hidden"]'),a=r.value.split(" "),o=e.dataset.type;switch(a[2]||(a[2]="0px"),a[3]||(a[3]="0px"),o){case"vertical":a[0]=t,a[2]=t;break;case"horizontal":a[1]=t,a[3]=t;break;case"top":a[0]=t;break;case"bottom":a[2]=t;break;case"left":a[3]=t;break;case"right":a[1]=t}var l=a.join(" ");return r.value=l,this.getSliderGroupItems(e).forEach((function(e){var i=n.getUnitMeasureFromValue(t);e.querySelector('.frm-slider-value input[type="text"]').value=parseInt(t,10),e.querySelector("select").value=i})),l}if(e.classList.contains("frm-has-independent-fields")){var c=e.querySelectorAll('.frm-slider-value input[type="hidden"]'),s=e.querySelectorAll('.frm-slider-value input[type="text"]');return c.forEach((function(e,n){e.value=t,s[n+1].value=parseInt(t,10)})),t}return e.querySelector('.frm-slider-value input[type="hidden"]').value=t,t}},{key:"getUnitMeasureFromValue",value:function(e){return["%","px","em"].find((function(t){return e.includes(t)}))||""}}])&&h(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n}();function g(e){return g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function b(e,t){for(var n=0;n li"),this.slideTrackLine=this.wrapper.querySelector(".frm-tabs-active-underline"),this.slideTrack=this.wrapper.querySelector(".frm-tabs-slide-track"),this.slides=this.wrapper.querySelectorAll(".frm-tabs-slide-track > div"),this.isRTL="rtl"===document.documentElement.dir||"rtl"===document.body.dir,this.init()))},(t=[{key:"init",value:function(){var e=this;null!==this.wrapper&&this.navs.length&&null!==this.slideTrackLine&&null!==this.slideTrack&&this.slides.length&&(this.initDefaultSlideTrackerWidth(),this.navs.forEach((function(t,n){t.addEventListener("click",(function(t){return e.onNavClick(t,n)}))})))}},{key:"onNavClick",value:function(e,t){var n=e.currentTarget;e.preventDefault(),this.removeActiveClassnameFromNavs(),n.classList.add("frm-active"),this.initSlideTrackUnderline(n,t),this.changeSlide(t);var i,r,a=n.querySelector("a");a&&"frm_insert_fields_tab"===a.id&&!a.closest("#frm_adv_info")&&(null===(i=window.frmAdminBuild)||void 0===i||null===(r=i.clearSettingsBox)||void 0===r||r.call(i))}},{key:"initDefaultSlideTrackerWidth",value:function(){this.slideTrackLine.dataset.initialWidth&&(this.slideTrackLine.style.width="".concat(this.slideTrackLine.dataset.initialWidth,"px"))}},{key:"initSlideTrackUnderline",value:function(e,t){this.slideTrackLine.classList.remove("frm-first","frm-last");var n=void 0!==e?e:this.navs.filter((function(e){return e.classList.contains("frm-active")})),i=this.isRTL?-(n.parentElement.offsetWidth-n.offsetLeft-n.offsetWidth):n.offsetLeft;this.slideTrackLine.style.transform="translateX(".concat(i,"px)"),this.slideTrackLine.style.width=n.clientWidth+"px"}},{key:"changeSlide",value:function(e){this.removeActiveClassnameFromSlides();var t=0==e?"0px":"calc( ( ".concat(100*e,"% + ").concat(parseInt(this.flexboxSlidesGap,10)*e,"px ) * ").concat(this.isRTL?1:-1," )");"0px"!==t?this.slideTrack.style.transform="translateX(".concat(t,")"):this.slideTrack.style.removeProperty("transform"),e in this.slides&&this.slides[e].classList.add("frm-active")}},{key:"removeActiveClassnameFromSlides",value:function(){this.slides.forEach((function(e){return e.classList.remove("frm-active")}))}},{key:"removeActiveClassnameFromNavs",value:function(){this.navs.forEach((function(e){return e.classList.remove("frm-active")}))}}])&&b(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function E(e){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},E(e)}function w(e,t){for(var n=0;n0))return e.style.paddingLeft="",e.style.paddingTop="",void(e.style.height="");var i=t.offsetHeight;if(Math.max(1,Math.ceil(i/36))>1){var r=function(e){if(!e.length)return 0;var t=0;return e.forEach((function(e){t+=e.offsetWidth})),(t+=4*(e.length-1))+4}(function(e){if(!e.length)return[];var t=Array.from(e),n=-1;t.forEach((function(e){var t=e.getBoundingClientRect().bottom;t>n&&(n=t)}));return t.filter((function(e){var t=e.getBoundingClientRect();return Math.abs(t.bottom-n)<=2}))}(n));e.style.height="".concat(i,"px"),e.style.paddingTop="".concat(i-36+4,"px"),e.style.paddingLeft=r?"".concat(r+8,"px"):""}else e.style.height="",e.style.paddingTop="",e.style.paddingLeft="".concat(t.offsetWidth-4,"px")}}function D(e,t,n){e&&n&&t&&(n.innerHTML="",X(e).forEach((function(e){return function(e,t){var n=O({className:C,children:[O({text:e,className:A}),O({className:T,child:W({href:"#frm_close_icon"})})]});t.appendChild(n)}(e,n)})),j(t,n),t.focus())}function M(e,t,n){if(!e||!t||!n)return!1;var i=X(t.value);return i.includes(e)?(F(n),!1):(i.push(e),N(t,i),F(n),!0)}function R(e,t,n){if(e&&t&&n){var i=e.querySelector(".".concat(A)).textContent;N(t,X(t.value).filter((function(e){return e!==i}))),e.remove(),n.focus()}}function X(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return(e=e.trim())?e.split(/\s+/).filter(Boolean):[]}function N(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e&&(e.value=t.join(" "),jQuery(e).trigger("change"))}function F(e){e&&(e.value="",e.focus())}function U(){var e=document.querySelectorAll(".".concat("frm-token-input-field"));if(e.length){var n=new Set;e.forEach((function(e){n.has(e.id)||(function(e){var n=function(e){var n=e.closest(".".concat("frm-with-right-icon"));if(n.querySelector(".".concat(x)))return null;n.classList.add(_);var i=O({className:x});n.insertBefore(i,n.firstChild);var r=B("input",{className:P,id:"".concat(e.id,"-proxy-input")});return r.type="text",e.parentNode.insertBefore(r,e.nextSibling),e.classList.add(t),n}(e);if(n){var i=n.querySelector(".".concat(P)),r=n.querySelector(".".concat(x));D(e.value,i,r),function(e,t,n){jQuery(e).on("change",(function(){return D(e.value,t,n)})),t.addEventListener("keydown",(function(i){return function(e,t,n,i){var r=e.key,a=n.value.trim();switch(r){case"Backspace":a||(e.preventDefault(),R(i.querySelector(".".concat(C,":last-child")),t,n));break;case" ":case",":case"Enter":e.preventDefault(),M(a,t,n)}j(n,i)}(i,e,t,n)})),t.addEventListener("blur",(function(){return M(t.value.trim(),e,t)})),n.addEventListener("click",(function(n){return function(e,t,n){var i=e.target.closest(".".concat(T));if(i){var r=i.closest(".".concat(C));if(r){var a=r.parentElement;R(r,t,n),j(n,a)}}}(n,e,t)}))}(e,i,r)}}(e),n.add(e.id))}))}}var G,z="frm-toggle-group",H="frm_toggle_block",J="data-group-name";function Q(e){var t=e.target,n=t.closest(".".concat(z));n&&K(t,n)}function K(e,i){var r,a=(null===(r=i.closest(".".concat("frm-single-settings")))||void 0===r?void 0:r.dataset.fid)||i.dataset.fid,o=e.checked,l=e.getAttribute("data-show");l&&document.querySelectorAll(Y(l,a)).forEach((function(e){return e.classList.toggle(t,!o)}));var c=e.getAttribute("data-disable");c&&document.querySelectorAll(Y(c,a)).forEach((function(e){e.classList.toggle(n,o),e.querySelectorAll("input, select, textarea").forEach((function(e){return e.disabled=o}))}));var s=e.getAttribute("data-enable");s&&document.querySelectorAll(Y(s,a)).forEach((function(e){return e.classList.toggle(n,!o)}));var u=e.closest(".".concat(H));Array.from(i.querySelectorAll(".".concat(H))).filter((function(e){return e!==u})).forEach((function(e){e.classList.toggle(n,o);var t=e.querySelector(".frm_toggle");t.tabIndex=o?-1:0,t.setAttribute("aria-disabled",o)}))}function Y(e,t){return e.replace(/{id}/g,t)}function Z(e){var t,n=null===(t=e.target.closest("[data-fid]"))||void 0===t?void 0:t.dataset.fid;if(n){var i=document.getElementById("frm_calc_".concat(n));i&&(i.value="");var r=document.getElementById("frm-text-toggle-name=field_options[calc_type_".concat(n,"]-0")),a=document.getElementById("frm-text-toggle-name=field_options[calc_type_".concat(n,"]-1"));r&&(r.checked=!1),a&&(a.checked=!0)}}function $(e){var t,n=null===(t=e.target.closest("[data-fid]"))||void 0===t?void 0:t.dataset.fid;if(n){var i=document.getElementById("frm_date_calc_".concat(n));i&&(i.value="");var r=document.getElementById("frm_date_calc_diff_".concat(n));r&&(r.value="")}}function ee(e){var t,n=null===(t=e.target.closest("[data-fid]"))||void 0===t?void 0:t.dataset.fid;if(n){var i=document.getElementById("get_values_form_".concat(n));i&&(i.value="");var r=document.getElementById("get_values_field_".concat(n));r&&(r.value="");var a=document.getElementById("frm_watch_lookup_label_".concat(n));a&&a.classList.add("frm_hidden!");var o=document.getElementById("frm_watch_lookup_block_".concat(n));o&&(o.innerHTML="");var l=document.getElementById("get_most_recent_value_".concat(n));l&&(l.checked=!1)}}function te(e){var t,n=e.target,i=null===(t=n.closest("[data-fid]"))||void 0===t?void 0:t.dataset.fid;if(i){var r=document.querySelector('[name="field_options[enable_conditional_logic_'.concat(i,']"]'));r&&(r.value=n.checked?"1":"0")}}function ne(e){var t=e.target.closest(".frm-unit-input"),n=t.querySelector(".frm-unit-input-control"),i=t.querySelector("select").value;e.target.matches("select")&&(n.type=""===i?"text":"number");var r=n.value.trim();t.querySelector('input[type="hidden"]').value=""!==r?r+i:""}G=function(){var e,t;new s,new y,new q,null===(t=document.getElementById("frm-form-add-field"))||void 0===t||t.addEventListener("click",(function(e){var t;e.preventDefault(),null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click()})),U(),document.addEventListener("frm_added_field",U),wp.hooks.addAction("frmShowedFieldSettings","formidable-token-input",I),(e=document.querySelectorAll(".".concat(z))).length&&e.forEach((function(e){var t=e.querySelector("[".concat(J,"]:checked"));t&&K(t,e)})),r("change",".".concat(z," [").concat(J,"]"),Q),r("change",'[id^="frm-default-type-calc-"]:not(:checked)',Z),r("change",'[id^="frm-default-type-date_calc-"]:not(:checked)',$),r("change",'[id^="frm-default-type-get_values_field-"]:not(:checked)',ee),r("change",'[id^="frm-enable-conditional-logic"]',te),r("change",".frm-unit-input .frm-unit-input-control",ne),r("change",".frm-unit-input select",ne)},"undefined"!=typeof document&&("complete"!==document.readyState&&"interactive"!==document.readyState?document.addEventListener("DOMContentLoaded",G):G())})(); \ No newline at end of file +(()=>{"use strict";var e=window.frmGlobal,t=(e.url,e.nonce,"frm_hidden"),n="frm_disabled",i=(Promise.resolve(),window.frmDom.util),r=(i.onClickPreventDefault,i.documentOn),a=(new URL(window.location.href).searchParams,function(e){return null==e?void 0:e.classList.remove(t)});function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function l(e,t){for(var n=0;n=r)){var a=i.querySelector("select").value,o=this.calculateValue(r,n,this.getMaxValue(a,t));i.querySelector('.frm-slider-value input[type="text"]').value=o,i.querySelector(".frm-slider-bullet .frm-slider-value-label").innerText=o,i.querySelector(".frm-slider-active-track").style.width="".concat(n,"px"),this.initChildSlidersWidth(i,n,t,o+a),this.options[t].translateX=n,this.options[t].value=o+a,this.options[t].fullValue=this.updateValue(i,this.options[t].value),this.valueChangeDebouncer(t)}}}},{key:"getMaxValue",value:function(e,t){return"%"===e?100:this.options[t].maxValue}},{key:"enableDragging",value:function(e,t){e.target.classList.add("frm-dragging"),this.options[t].dragging=!0,this.options[t].startX=e.clientX-this.options[t].translateX}},{key:"disableDragging",value:function(e,t){!1!==this.options[e].dragging&&(t.target.classList.remove("frm-dragging"),this.options[e].dragging=!1,this.triggerValueChange(e))}},{key:"triggerValueChange",value:function(e){var t=this;if(null===this.options[e].dependentUpdater){var n=this.sliderElements[e].classList.contains("frm-has-multiple-values")?this.sliderElements[e].closest(".frm-style-component").querySelector('input[type="hidden"]'):this.sliderElements[e].querySelectorAll('.frm-slider-value input[type="hidden"]');n instanceof NodeList?n.forEach((function(n){n.dispatchEvent(t.eventsChange[e])})):n.dispatchEvent(this.eventsChange[e])}else this.options[e].dependentUpdater.updateAllDependentElements(this.options[e].fullValue)}},{key:"calculateValue",value:function(e,t,n){var i=Math.ceil(this.sliderBulletWidth*(t/e)),r=Math.ceil((t+i)/e*n);return Math.min(r,n)}},{key:"updateValue",value:function(e,t){var n=this;if(e.classList.contains("frm-base-font-size")){var i=document.querySelector('input[name="frm_style_setting[post_content][use_base_font_size]"]');null!==i&&(i.value="true")}if(e.classList.contains("frm-has-multiple-values")){var r=e.closest(".frm-style-component").querySelector('input[type="hidden"]'),a=r.value.split(" "),o=e.dataset.type;switch(a[2]||(a[2]="0px"),a[3]||(a[3]="0px"),o){case"vertical":a[0]=t,a[2]=t;break;case"horizontal":a[1]=t,a[3]=t;break;case"top":a[0]=t;break;case"bottom":a[2]=t;break;case"left":a[3]=t;break;case"right":a[1]=t}var l=a.join(" ");return r.value=l,this.getSliderGroupItems(e).forEach((function(e){var i=n.getUnitMeasureFromValue(t);e.querySelector('.frm-slider-value input[type="text"]').value=parseInt(t,10),e.querySelector("select").value=i})),l}if(e.classList.contains("frm-has-independent-fields")){var s=e.querySelectorAll('.frm-slider-value input[type="hidden"]'),c=e.querySelectorAll('.frm-slider-value input[type="text"]');return s.forEach((function(e,n){e.value=t,c[n+1].value=parseInt(t,10)})),t}return e.querySelector('.frm-slider-value input[type="hidden"]').value=t,t}},{key:"getUnitMeasureFromValue",value:function(e){return["%","px","em"].find((function(t){return e.includes(t)}))||""}}])&&h(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,n}();function g(e){return g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function b(e,t){for(var n=0;n li"),this.slideTrackLine=this.wrapper.querySelector(".frm-tabs-active-underline"),this.slideTrack=this.wrapper.querySelector(".frm-tabs-slide-track"),this.slides=this.wrapper.querySelectorAll(".frm-tabs-slide-track > div"),this.isRTL="rtl"===document.documentElement.dir||"rtl"===document.body.dir,this.init()))},(t=[{key:"init",value:function(){var e=this;null!==this.wrapper&&this.navs.length&&null!==this.slideTrackLine&&null!==this.slideTrack&&this.slides.length&&(this.initDefaultSlideTrackerWidth(),this.navs.forEach((function(t,n){t.addEventListener("click",(function(t){return e.onNavClick(t,n)}))})))}},{key:"onNavClick",value:function(e,t){var n=e.currentTarget;e.preventDefault(),this.removeActiveClassnameFromNavs(),n.classList.add("frm-active"),this.initSlideTrackUnderline(n,t),this.changeSlide(t);var i,r,a=n.querySelector("a");a&&"frm_insert_fields_tab"===a.id&&!a.closest("#frm_adv_info")&&(null===(i=window.frmAdminBuild)||void 0===i||null===(r=i.clearSettingsBox)||void 0===r||r.call(i))}},{key:"initDefaultSlideTrackerWidth",value:function(){this.slideTrackLine.dataset.initialWidth&&(this.slideTrackLine.style.width="".concat(this.slideTrackLine.dataset.initialWidth,"px"))}},{key:"initSlideTrackUnderline",value:function(e,t){this.slideTrackLine.classList.remove("frm-first","frm-last");var n=void 0!==e?e:this.navs.filter((function(e){return e.classList.contains("frm-active")})),i=this.isRTL?-(n.parentElement.offsetWidth-n.offsetLeft-n.offsetWidth):n.offsetLeft;this.slideTrackLine.style.transform="translateX(".concat(i,"px)"),this.slideTrackLine.style.width=n.clientWidth+"px"}},{key:"changeSlide",value:function(e){this.removeActiveClassnameFromSlides();var t=0==e?"0px":"calc( ( ".concat(100*e,"% + ").concat(parseInt(this.flexboxSlidesGap,10)*e,"px ) * ").concat(this.isRTL?1:-1," )");"0px"!==t?this.slideTrack.style.transform="translateX(".concat(t,")"):this.slideTrack.style.removeProperty("transform"),e in this.slides&&this.slides[e].classList.add("frm-active")}},{key:"removeActiveClassnameFromSlides",value:function(){this.slides.forEach((function(e){return e.classList.remove("frm-active")}))}},{key:"removeActiveClassnameFromNavs",value:function(){this.navs.forEach((function(e){return e.classList.remove("frm-active")}))}}])&&b(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}();function E(e){return E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},E(e)}function w(e,t){for(var n=0;n0))return e.style.paddingLeft="",e.style.paddingTop="",void(e.style.height="");var i=t.offsetHeight;if(Math.max(1,Math.ceil(i/36))>1){var r=function(e){if(!e.length)return 0;var t=0;return e.forEach((function(e){t+=e.offsetWidth})),(t+=4*(e.length-1))+4}(function(e){if(!e.length)return[];var t=Array.from(e),n=-1;t.forEach((function(e){var t=e.getBoundingClientRect().bottom;t>n&&(n=t)}));return t.filter((function(e){var t=e.getBoundingClientRect();return Math.abs(t.bottom-n)<=2}))}(n));e.style.height="".concat(i,"px"),e.style.paddingTop="".concat(i-36+4,"px"),e.style.paddingLeft=r?"".concat(r+8,"px"):""}else e.style.height="",e.style.paddingTop="",e.style.paddingLeft="".concat(t.offsetWidth-4,"px")}}function R(e,t,n){e&&n&&t&&(n.innerHTML="",X(e).forEach((function(e){return function(e,t){var n=W({className:A,children:[W({text:e,className:T}),W({className:P,child:_({href:"#frm_close_icon"})})]});t.appendChild(n)}(e,n)})),M(t,n),t.focus())}function B(e,t,n){if(!e||!t||!n)return!1;var i=X(t.value);return i.includes(e)?(F(n),!1):(i.push(e),N(t,i),F(n),!0)}function I(e,t,n){if(e&&t&&n){var i=e.querySelector(".".concat(T)).textContent;N(t,X(t.value).filter((function(e){return e!==i}))),e.remove(),n.focus()}}function X(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return(e=e.trim())?e.split(/\s+/).filter(Boolean):[]}function N(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e&&(e.value=t.join(" "),jQuery(e).trigger("change"))}function F(e){e&&(e.value="",e.focus())}function U(){var e=document.querySelectorAll(".".concat("frm-token-input-field"));if(e.length){var n=new Set;e.forEach((function(e){n.has(e.id)||(function(e){var n=function(e){var n=e.closest(".".concat("frm-with-right-icon"));if(n.querySelector(".".concat(C)))return null;n.classList.add(x);var i=W({className:C});n.insertBefore(i,n.firstChild);var r=j("input",{className:V,id:"".concat(e.id,"-proxy-input")});return r.type="text",e.parentNode.insertBefore(r,e.nextSibling),e.classList.add(t),n}(e);if(n){var i=n.querySelector(".".concat(V)),r=n.querySelector(".".concat(C));R(e.value,i,r),function(e,t,n){jQuery(e).on("change",(function(){return R(e.value,t,n)})),t.addEventListener("keydown",(function(i){return function(e,t,n,i){var r=e.key,a=n.value.trim();switch(r){case"Backspace":a||(e.preventDefault(),I(i.querySelector(".".concat(A,":last-child")),t,n));break;case" ":case",":case"Enter":e.preventDefault(),B(a,t,n)}M(n,i)}(i,e,t,n)})),t.addEventListener("blur",(function(){return B(t.value.trim(),e,t)})),n.addEventListener("click",(function(n){return function(e,t,n){var i=e.target.closest(".".concat(P));if(i){var r=i.closest(".".concat(A));if(r){var a=r.parentElement;I(r,t,n),M(n,a)}}}(n,e,t)}))}(e,i,r)}}(e),n.add(e.id))}))}}var G,z="frm-toggle-group",H="frm_toggle_block",J="data-group-name";function Q(e){var t=e.target,n=t.closest(".".concat(z));n&&K(t,n)}function K(e,i){var r,a=(null===(r=i.closest(".".concat("frm-single-settings")))||void 0===r?void 0:r.dataset.fid)||i.dataset.fid,o=e.checked,l=e.getAttribute("data-show");l&&document.querySelectorAll(Y(l,a)).forEach((function(e){return e.classList.toggle(t,!o)}));var s=e.getAttribute("data-disable");s&&document.querySelectorAll(Y(s,a)).forEach((function(e){e.classList.toggle(n,o),e.querySelectorAll("input, select, textarea").forEach((function(e){return e.disabled=o}))}));var c=e.getAttribute("data-enable");c&&document.querySelectorAll(Y(c,a)).forEach((function(e){return e.classList.toggle(n,!o)}));var u=e.closest(".".concat(H));Array.from(i.querySelectorAll(".".concat(H))).filter((function(e){return e!==u})).forEach((function(e){e.classList.toggle(n,o);var t=e.querySelector(".frm_toggle");t.tabIndex=o?-1:0,t.setAttribute("aria-disabled",o)}))}function Y(e,t){return e.replace(/{id}/g,t)}function Z(e){var t=e.target.closest(".frm-unit-input"),n=t.querySelector(".frm-unit-input-control"),i=t.querySelector("select").value;e.target.matches("select")&&(n.type=""===i?"text":"number");var r=n.value.trim();t.querySelector('input[type="hidden"]').value=""!==r?r+i:""}G=function(){var e,t;new c,new y,new q,null===(t=document.getElementById("frm-form-add-field"))||void 0===t||t.addEventListener("click",(function(e){var t;e.preventDefault(),null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click()})),U(),document.addEventListener("frm_added_field",U),wp.hooks.addAction("frmShowedFieldSettings","formidable-token-input",D),(e=document.querySelectorAll(".".concat(z))).length&&e.forEach((function(e){var t=e.querySelector("[".concat(J,"]:checked"));t&&K(t,e)})),r("change",".".concat(z," [").concat(J,"]"),Q),r("change",".frm-unit-input .frm-unit-input-control",Z),r("change",".frm-unit-input select",Z)},"undefined"!=typeof document&&("complete"!==document.readyState&&"interactive"!==document.readyState?document.addEventListener("DOMContentLoaded",G):G())})(); \ No newline at end of file diff --git a/js/formidable_admin.js b/js/formidable_admin.js index 6cac7c974e..9f9f93c6a1 100644 --- a/js/formidable_admin.js +++ b/js/formidable_admin.js @@ -1 +1 @@ -(()=>{function e(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||t(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r1&&(e="",t=""):0===i.indexOf("frm_postmeta_")&&(jQuery("#frm_postmeta_rows .frm_postmeta_row").length<2&&(e=".frm_add_postmeta_row.button"),jQuery(".frm_toggle_cf_opts").length&&jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().length&&(""!==e&&(e+=","),e+="#"+jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().attr("id")+" .frm_toggle_cf_opts"));var o=document.getElementById(i),a=jQuery(o);return a.fadeOut(300,(function(){var r;a.remove(),Mi(),""!==t&&jQuery(t).hide(),""!==e&&jQuery(e+" a,"+e).removeClass("frm_hidden").fadeIn("slow"),this.closest(".frm_form_action_settings")&&function(e){si(e);var t={type:e};wp.hooks.doAction("frm_after_action_removed",t)}(this.closest(".frm_form_action_settings").querySelector(".frm_action_name").value),null===(r=document.querySelector(".tooltip"))||void 0===r||r.remove()})),void 0!==r&&(r=jQuery(r)).fadeOut(400,(function(){r.remove()})),""!==e&&jQuery(this).closest(".frm_logic_rows").fadeOut("slow"),wp.hooks.doAction("frm_after_remove_this_tag",i,o),!1}}function $(e,t){void 0===t&&(t=this),Ze(t,!1);var r=jQuery(t).closest(".frm_form_action_settings"),n=e.target;if(r.length&&void 0!==n){var i=n.parentElement.className;if("string"==typeof i&&(i.indexOf("frm_email_icons")>-1||i.indexOf("frm_toggle")>-1))return void e.stopPropagation()}var o=r.children(".widget-inside");if(r.length&&o.find("p, div, table").length<1){var a=r.find('input[name$="[ID]"]').val(),l=r.find('input[name$="[post_excerpt]"]').val();l&&(o.html(''),r.find(".spinner").fadeIn("slow"),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_form_action_fill",action_id:a,action_type:l,nonce:frmGlobal.nonce},success:function(e){o.html(e),lo(),Yn("#"+r.attr("id")),jo(o),jQuery(t).trigger("frm-action-loaded"),wp.hooks.doAction("frm_filled_form_action",o)}}))}jQuery(t).closest(".frm_field_box").siblings().find(".widget-inside").slideUp("fast"),void 0!==t.className&&-1!==t.className.indexOf("widget-action")||jQuery(t).closest(".start_divider").length<1||((o=jQuery(t).closest("div.widget").children(".widget-inside")).is(":hidden")?o.slideDown("fast"):o.slideUp("fast"))}function W(){var e=this.getAttribute("href");if(void 0===e)return!1;var t=e.replace("#","."),r=jQuery(this);r.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),r.closest("div").children(".tabs-panel").not(e).not(t).hide();var n=document.getElementById(e.replace("#",""));return n&&(n.style.display="block"),"frm_insert_fields_tab"!==this.id||this.closest("#frm_adv_info")||Ke(),!1}function U(e,t){var r=(e=jQuery(e)).attr("href");if(void 0!==r){var n,i,o=r.replace("#",".");if(e.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),e.closest("div").find(".tabs-panel").length)e.closest("div").children(".tabs-panel").not(r).not(o).hide();else if(null!==document.getElementById("form_global_settings")){var a=e.data("frmajax");e.closest(".frm_wrap").find(".tabs-panel, .hide_with_tabs").hide(),void 0!==a&&"1"==a&&(n=r.replace("#",""),(i=jQuery(".frm_"+n+"_ajax")).length&&jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_settings_tab",tab:n.replace("_settings",""),nonce:frmGlobal.nonce},success:function(e){i.replaceWith(e)}}))}else jQuery("#frm-categorydiv .tabs-panel, .hide_with_tabs").hide();jQuery(r).show(),jQuery(o).show(),Wi(),"auto"!==t&&(jQuery(".frm_updated_message").hide(),jQuery(".frm_warning_style").hide()),jQuery(e).closest("#frm_adv_info").length||(jQuery(".frm_form_settings").length?jQuery(".frm_form_settings").attr("action","?page=formidable&frm_action=settings&id="+jQuery('.frm_form_settings input[name="id"]').val()+"&t="+r.replace("#","")):jQuery(".frm_settings_form").attr("action","?page=formidable-settings&t="+r.replace("#","")))}}function V(e){var t,r;document.querySelectorAll(e).forEach((function(e){K(e),Array.from(e.children).forEach((function(e){return X(e,".frm-move")}));var t=jQuery(e).children('[data-type="divider"]').children(".divider_section_only");t.length&&K(t)})),t=jQuery("#frm_builder_page"),r={items:".frm_sortable_field_opts li",axis:"y",opacity:.65,forcePlaceholderSize:!1,handle:".frm-drag",helper:function(e,t){return x=t.clone().insertAfter(t),t.clone()},stop:function(e,t){x&&x.remove(),rn(t.item.attr("id").replace("frm_delete_field_","").replace("-"+t.item.data("optkey")+"_container","")),Mi()}},jQuery(t).sortable(r)}function K(e){jQuery(e).droppable({accept:".frmbutton, li.frm_field_box",deactivate:ne,over:J,out:Y,tolerance:"pointer"})}function J(e,t){var r=function(e){return e.classList.contains("divider_section_only")&&(e=jQuery(e).nextAll(".start_divider.frm_sorting").get(0)),e}(e.target);if(!Qe(t.draggable[0],r,e))return r.classList.remove("frm-over-droppable"),void jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable");document.querySelectorAll(".frm-over-droppable").forEach((function(e){return e.classList.remove("frm-over-droppable")})),r.classList.add("frm-over-droppable"),jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable")}function Y(e){e.target.classList.remove("frm-over-droppable")}function X(e,t){var r={helper:Z,revert:"invalid",delay:10,start:ee,stop:te,drag:re,cursor:"grabbing",refreshPositions:!0,cursorAt:{top:1,left:70}};"string"==typeof t&&(r.handle=t),jQuery(e).draggable(r)}function Z(e){var t,r=e.delegateTarget;if(Ee(r)){var n=document.getElementById("frm-insert-fields").querySelector(".frm_ttext").cloneNode(!0);return n.querySelector("use").setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_field_group_layout_icon"),n.querySelector("span").textContent=B("Field Group","formidable"),n.classList.add("frm_field_box"),n.classList.add("ui-sortable-helper"),n}if(r.classList.contains("frmbutton"))return(t=r.cloneNode(!0)).classList.add("ui-sortable-helper"),r.classList.add("frm-new-field"),t;if(r.hasAttribute("data-ftype")){var i=r.getAttribute("data-ftype");if((t=(t=document.getElementById("frm-insert-fields").querySelector(".frm_t"+i)).cloneNode(!0)).classList.add("form-field"),t.classList.add("ui-sortable-helper"),t)return t.cloneNode(!0)}return d({className:"frmbutton"})}function ee(e,t){q.dragging=!0;var r,n=h;n.classList.add("frm-dragging-field"),document.body.classList.add("frm-dragging"),t.helper.addClass("frm-sortable-helper"),t.helper.initialOffset=n.scrollTop,e.target.classList.add("frm-drag-fade"),gr(),(r=document.querySelectorAll("ul.start_divider")).length&&r.forEach((function(e){[].slice.call(e.children).forEach((function(e){(0===e.children.length||1===e.children.length&&"ul"===e.firstElementChild.nodeName.toLowerCase()&&0===e.firstElementChild.children.length)&&e.remove()}))})),Me(),Te(),R()}function te(){h.classList.remove("frm-dragging-field"),document.body.classList.remove("frm-dragging");var e=document.querySelector(".frm-drag-fade");e&&e.classList.remove("frm-drag-fade")}function re(e,t){!function(e){v.scrollTop((function(t,r){var n=e.clientY,i=h.offsetHeight,o=e.clientY-h.offsetTop,a=o-i/2;return o>i-50&&n>5?r+.1*a:o<70&&n<130?r-Math.abs(.1*a):r}))}(e);var r=e.target,n=function(){for(var e=document.getElementById("frm-show-fields");e.querySelector(".frm-over-droppable");)e=e.querySelector(".frm-over-droppable");return"frm-show-fields"!==e.id||e.classList.contains("frm-over-droppable")||(e=!1),e}(),i=document.getElementById("frm_drag_placeholder");if(Qe(r,n,e)){i||(i=s("li",{id:"frm_drag_placeholder",className:"sortable-placeholder"}));var o,a=t.helper.get(0);if((a.classList.contains("form-field")||a.classList.contains("frm_field_box"))&&(a.style.transform="translateY("+(o=t.helper,h.scrollTop-o.initialOffset+"px)")),"frm-show-fields"===n.id||n.classList.contains("start_divider"))return i.style.left=0,void function(e){var t,r=e.y,n=e.placeholder,i=jQuery(e.droppable);if($children=i.children().not(".edit_field_type_end_divider"),0===$children.length)i.prepend(n),t=0;else{var o=ie(i,r);if(o===$children.length){var a=jQuery($children.get(o-1));t=a.offset().top+a.outerHeight(),i.append(n);var l=i.children(".edit_field_type_end_divider");l.length&&i.append(l)}else t=jQuery($children.get(o)).offset().top,jQuery($children.get(o)).before(n)}t-=i.offset().top,n.style.top=t+"px"}({droppable:n,y:e.clientY,placeholder:i});i.style.top="",function(e){var t,r=e.x,n=e.placeholder,i=jQuery(e.droppable),o=ae(i);if(o.length){var a=function(e,t){var r,n,i,o,a=ae(e);for(o=0,r=a.length-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().left)){o=r,t>i+jQuery(n).outerWidth()/2&&(o=r+1);break}return o}(i,r);if(a===o.length){var l=jQuery(o.get(a-1));t=l.offset().left+l.outerWidth(),i.append(n)}else t=jQuery(o.get(a)).offset().left,jQuery(o.get(a)).before(n),t-=0===a?4:8;t-=i.offset().left,n.style.left=t+"px"}}({droppable:n,x:e.clientX,placeholder:i})}else i&&i.remove()}function ne(e,t){if(q.dragging){q.dragging=!1;var r=t.draggable[0],n=document.getElementById("frm_drag_placeholder");if(!n)return t.helper.remove(),void y();!function(e){if(e.previousElementSibling&&e.previousElementSibling.classList.contains("frm-is-collapsed")){var t=jQuery(e).prevUntil('[data-type="break"]');if(t.length){var r=t.find(".frm-collapse-page").get(0);r&&r.click()}}}(n);var i=t.helper.parent(),o=t.helper.get(0).closest("ul.start_divider"),a=n.closest("ul.start_divider");r.classList.contains("frm-new-field")?function(e){if(ge(e))wp.hooks.doAction("frm_stopped_inserting_by_dragging",e);else{var t=document.getElementById("frm_drag_placeholder"),r=e.replace("|","-")+"_"+we(),n=s("li",{id:r,className:"frm-wait frmbutton_loadingnow"}),i=jQuery(n),o=fe(jQuery(t)),a=ue(o),l=me(o);t.parentNode.insertBefore(n,t),t.remove(),le(i);var d=0;"summary"===e&&(d=jQuery(".frmbutton_loadingnow#"+r).prevAll('li[data-type="break"]').length?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:pe(e,l,a,d),success:function(t){ye(t,i);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:a})},error:je})}}(r.id):(function(e,t){t.parentNode.insertBefore(e,t)}(r,n),function(e){if("UL"===e.nodeName&&!e.classList.contains("start_divider")&&"frm-show-fields"!==e.id){var t=e.closest("li");t&&!t.classList.contains("ui-draggable")&&X(t,".frm-move")}}(n.parentElement));var l=o?parseInt(o.closest(".edit_field_type_divider").getAttribute("data-fid")):0,d=a?parseInt(a.closest(".edit_field_type_divider").getAttribute("data-fid")):0;n.remove(),t.helper.remove();var c=i.length?ae(i):[];!function(e,t){var r;e.length&&(t.length?le(t.first()):(r=e.get(0).closest("li.frm_field_box"))&&!r.classList.contains("edit_field_type_divider")&&r.remove())}(i,c),function(e,t){0===t.length&&1===ae(jQuery(e.parentNode)).length||le(jQuery(e))}(r,c),l!==d&&_e(jQuery(r),o),y()}}function ie(e,t){var r,n,i,o,a=e.children().not(".edit_field_type_end_divider"),l=a.length;if(!document.querySelector(".frm-has-fields .frm_no_fields"))return 0;for(o=0,r=l-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().top)){o=r,t>i+jQuery(n).outerHeight()/2&&(o=r+1);break}return o}function oe(){document.querySelectorAll("ul#frm-show-fields, ul.start_divider").forEach((function(e){e.childNodes.forEach((function(e){void 0!==e.classList&&(e.classList.contains("edit_field_type_end_divider")||void 0!==e.classList&&e.classList.contains("form-field")&&We(e))}))})),xn(),document.querySelectorAll(".edit_field_type_end_divider").forEach((function(e){return e.parentNode.appendChild(e)})),document.querySelectorAll("li.form_field_box:not(.form-field)").forEach((function(e){return!e.children.length&&e.remove()})),Qn();var e=new Event("frm_sync_after_drag_and_drop",{bubbles:!1});document.dispatchEvent(e)}function ae(e){var t=jQuery(),r=e.get(0);return r.children?(Array.from(r.children).forEach((function(e){if("none"!==e.style.display){var r=e.classList;!r.contains("form-field")||r.contains("edit_field_type_end_divider")||r.contains("frm-sortable-helper")||(t=t.add(e))}})),t):t}function le(e,t){var r,n,i,o;void 0===t&&(t="even"),r=e.parent().children("li.form-field, li.frmbutton_loadingnow").not(".edit_field_type_end_divider"),n=r.length,i=["frm_full","frm_half","frm_third","frm_fourth","frm_sixth","frm_two_thirds","frm_three_fourths","frm1","frm2","frm3","frm4","frm5","frm6","frm7","frm8","frm9","frm10","frm11","frm12"],"even"===t&&5!==n?r.each(ce(i,Ut(n))):"clear"===t?r.each(ce(i,"")):(o=-1!==["left","right","middle","even"].indexOf(t)?function(e){return Wt(n,t,e)}:function(e){return ar(t[e])},r.each(ce(i,o))),se(e.parent(),r.length)}function se(e,t){var r,n;if(void 0!==e.offset()){if(r=t>=2,null===(n=document.getElementById("frm_field_group_controls"))){if(!r)return;(n=d()).id="frm_field_group_controls",n.setAttribute("role","group"),n.setAttribute("tabindex",0),function(e){var t,r;(t=document.createElement("span")).innerHTML='';var n=B("Set Row Layout","formidable");de(t,n),zt(t,n),(r=document.createElement("span")).innerHTML='',r.classList.add("frm-move");var i=B("Move Field Group","formidable");de(r,i),zt(r,i),e.innerHTML="",e.appendChild(t),e.appendChild(r),e.appendChild(function(){var e=c({className:"dropdown"}),t=f({className:"frm_bstooltip frm-hover-icon frm-dropdown-toggle dropdown-toggle",children:[c({child:u({href:"#frm_thick_more_vert_icon"})}),c({className:"screen-reader-text",text:B("Toggle More Options Dropdown","formidable")})]});frmDom.setAttributes(t,{title:B("More Options","formidable"),"data-toggle":"dropdown","data-container":"body"}),zt(t,B("More Options","formidable")),e.appendChild(t);var r=d({className:"frm-dropdown-menu dropdown-menu dropdown-menu-right"});return r.setAttribute("role","menu"),e.appendChild(r),e}())}(n),D.appendChild(n)}e.append(n),n.style.display=r?"block":"none"}}function de(e,t){e.setAttribute("data-toggle","tooltip"),e.setAttribute("data-container","body"),e.setAttribute("title",t),e.addEventListener("mouseover",(function(){null===e.getAttribute("data-original-title")&&jQuery(e).tooltip()}))}function ce(e,t){return function(r){var n,i,o,a,l,s,d;for(n="function"==typeof t?t(r):t,i=e.length,l=!1,o=0;ot.childElementCount-1:s<=jQuery(t.querySelector(".edit_field_type_submit").closest("#frm-show-fields > li")).index()}if(a)return!(t.classList.contains("start_divider")||!xe(t.parentElement)&&(!xe(t.parentElement.nextElementSibling)||e.parentElement.querySelector("li.frm_field_box:not(.edit_field_type_submit)")));if(t.classList.contains("start_divider")&&(e.classList.contains("edit_field_type_gdpr")||"gdpr"===e.id)&&t.closest(".repeat_section"))return!1;if(!t.classList.contains("start_divider")){if(n=ae(jQuery(t)),i=jQuery(e),!(n.length<6)&&(n.length>6||(o=i.attr("data-fid"),1!==jQuery(n).filter('[data-fid="'+o+'"]').length)))return!1;if("divider"===e.id&&t.closest(".start_divider"))return!1}return e.classList.contains("frm-new-field")?function(e,t){var r=e.classList,n=r.contains("frm_tbreak"),i=r.contains("frm_thidden"),o=r.contains("frm_tdivider"),a=r.contains("frm_tform"),l=r.contains("frm_tuser_id");return"frm-show-fields"===t.id||t.classList.contains("start_divider")?!(n||i||o||a)||(!(t.classList.contains("start_divider")||null!==t.closest(".start_divider"))||!a&&!o):!(ke(t)||i||n||l)}(e,t):function(e,t){if(Ee(e))return function(e,t){return!(!t.classList.contains("start_divider")||null!==e.querySelector(".start_divider"))}(e,t);if(e.classList.contains("edit_field_type_break"))return!1;if(t.classList.contains("start_divider"))return function(e){return!e.classList.contains("edit_field_type_form")&&!e.querySelector(".edit_field_type_form")&&!(e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"))}(e);var r=e.classList.contains("edit_field_type_hidden"),n=e.classList.contains("edit_field_type_user_id");return!r&&!n&&function(e,t){if(ke(t))return!1;if(jQuery(e).children("ul.frm_sorting").not(".start_divider").length>0)return!1;var r=e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"),n=e.classList.contains("edit_field_type_form");return null===t.closest(".start_divider")||!r&&!n}(e,t)}(e,t)}function xe(e){return e&&e.matches("#frm-show-fields > li:last-child")}function Ee(e){return e.classList.contains("frm_field_box")&&!e.classList.contains("form-field")}function ke(e){return null!==e.querySelector(".edit_field_type_break, .edit_field_type_hidden, .edit_field_type_user_id")}function Le(e){var t=document.getElementById(e),r=jQuery(t),n=[],i=function(e){var t=e.querySelector(".frm_hidden_fdata");e.classList.add("frm_load_now"),null!==t&&n.push(t.innerHTML)},o=t;i(o);for(var a=Se(o);a&&n.length<15;)i(a),o=a,a=Se(a);jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_load_field",field:n,form_id:k,nonce:frmGlobal.nonce},success:function(e){return function(e,t,r){var n,i;if(0===(e=e.replace(/^\s+|\s+$/g,"")).indexOf("{")){for(n in e=JSON.parse(e))jQuery("#frm_field_id_"+n).replaceWith(e[n]),V("#frm_field_id_"+n+".edit_field_type_divider ul.frm_sorting"),X(document.getElementById("frm_field_id_"+n));((i=t.nextAll(".frm_field_loading:not(.frm_load_now)")).length||(i=jQuery(document.getElementById("frm-show-fields")).find(".frm_field_loading:not(.frm_load_now)")).length)&&Le(i.attr("id")),lo(),Tr(),Be();var o=new Event("frm_ajax_loaded_field",{bubbles:!1});o.frmFields=r.map((function(e){return JSON.parse(e)})),document.dispatchEvent(o)}else jQuery(".frm_load_now").removeClass(".frm_load_now").html("Error")}(e,r,n)}})}function Se(e){var t;return e.nextElementSibling?e.nextElementSibling:null===(t=e.parentNode)||void 0===t||null===(t=t.closest(".frm_field_box"))||void 0===t||null===(t=t.nextElementSibling)||void 0===t?void 0:t.querySelector(".form-field")}function Ae(){var e=jQuery(this);if(e.hasClass("disabled"))return!1;var t=e.closest(".frmbutton").attr("id");if(!ge(t)){var r=0;"summary"===t&&(r=j.children('li[data-type="break"]').length>0?1:0);var n=k;return jQuery.ajax({type:"POST",url:ajaxurl,data:pe(t,0,n,r),success:function(e){Ie(e);var r=he(e);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:e,fieldId:r,fieldType:t,form_id:n})},error:je}),!1}}function Ie(e){document.getElementById("frm_form_editor_container").classList.add("frm-has-fields");var t=$e(e),r=j[0].querySelector(".edit_field_type_submit");r?jQuery(r.closest(".frm_field_box:not(.form-field)")).before(t):j.append(t),Ue(e,!0),t.each((function(){K(this.querySelector("ul.frm_sorting")),X(this.querySelector(".form-field"),".frm-move")}))}function Be(){var e=!0,t=document.querySelectorAll(".frmjs_prod_field_opt_cont");j.find("li.edit_field_type_product").length>1&&(e=!1);for(var r=0;r',i.appendChild(document.createTextNode(" ")),i.appendChild(o),n.appendChild(i),e.appendChild(n)}))}(t,!0===e),(r=jQuery(t)).offset().left>jQuery(window).width()-r.outerWidth()&&(t.style.left=-r.outerWidth()+"px");var n=t.firstElementChild.querySelector("a");n&&n.focus()}}),0)}function Pe(){He(!0)}function ze(e){var t=e.target.closest(".frm-section-collapsed");t&&("show"===e.type?t.style.zIndex=3:t.style.zIndex=1)}function Re(e){var t={class:"frm_delete",icon:"frm_delete_icon"};return t.label=B(e?"Delete Group":"Delete","formidable"),t}function Ge(e){var t={class:"frm_clone",icon:"frm_clone_icon"};return t.label=B(e?"Duplicate Group":"Duplicate","formidable"),t}function $e(e){var t=d();"string"==typeof e?t.innerHTML=e:t.appendChild(e);var r=jQuery();return Array.from(t.children).forEach((function(e){r=r.add(jQuery("
        • ").addClass("frm_field_box").html(jQuery("
            ").addClass("frm_grid_container frm_sorting").append(e)))})),r}function We(e){var t=s("ul",{className:"frm_grid_container frm_sorting"}),r=s("li",{className:"frm_field_box",child:t});e.replaceWith(r),t.appendChild(e),K(t),X(r,".frm-move")}function Ue(e,t){var r,n,i=/id="(\S+)"/.exec(e),o=document.getElementById(i[1]),a="#"+i[1]+".edit_field_type_divider ul.frm_sorting.start_divider",l=jQuery(a),s=o.getAttribute("data-type");r=e,(n=d()).innerHTML=r,n.querySelectorAll(".form-field").forEach(Ve);var c,f,u=!1;if(Mi(),V(a),"quantity"===s&&function(e){var t=e.getAttribute("data-fid"),r=document.getElementById("field_options[product_field_"+t+"]");null!==r&&(rt(r),ii(document.getElementById("frm-single-settings-"+t)))}(o),"product"!==s&&"quantity"!==s||Be(),l.length)l.parent(".frm_field_box").children(".frm_no_section_fields").addClass("frm_block");else{var m=jQuery(o).closest("ul.frm_sorting.start_divider");m.length&&(En(m),u=!0)}if(-1!==e.indexOf("frm-collapse-page")&&Tr(),f="frm-newly-added",(c=o).classList?c.classList.add(f):c.className+=" "+f,setTimeout((function(){o.classList.remove("frm-newly-added")}),1e3),t){var _=o.getBoundingClientRect(),p=document.getElementById("post-body-content");_.top>=0&&_.left>=0&&_.right<=(window.innerWidth||document.documentElement.clientWidth)&&_.bottom<=(window.innerHeight||document.documentElement.clientHeight)||p.scroll({top:p.scrollHeight,left:0,behavior:"smooth"}),!1===u&&En(l)}Je(),lo(),document.getElementById("frm-show-fields").classList.remove("frm-over-droppable");var g=new Event("frm_added_field",{bubbles:!1});g.frmField=o,g.frmSection=a,g.frmType=s,g.frmToggles=u,document.dispatchEvent(g)}function Ve(e){if(e.dataset.fid){var t=document.getElementById("draft_fields");t&&(""===t.value?t.value=e.dataset.fid:t.value.split(",").includes(e.dataset.fid)||(t.value+=","+e.dataset.fid))}}function Ke(e){jQuery("#new_fields .frm-single-settings").addClass("frm_hidden"),jQuery("#frm-options-panel > .frm-single-settings").removeClass("frm_hidden"),Je(e)}function Je(e){jQuery("li.ui-state-default.selected").removeClass("selected"),jQuery(".frm-show-field-settings.selected").removeClass("selected"),e||gr()}function Ye(){var e=this.value,t=function(e){var t,r=[],n=e.split(""),i=n.length,o=["{","[","("],l={"}":"{",")":"(","]":"["},s=[];for(t=0;t0||s.length>0?a.unmatched_parens+"\n\n":""}(e);t+=function(e,t){var r=function(e,t){var r="";return function(e){return jQuery(e).siblings('label[for^="calc_type"]').children("input").prop("checked")}(t)||/\[(date|time|email|ip)\]/.test(e)&&(r=a.text_shortcodes+"\n\n"),r}(e,t);return r+=function(e){var t="";return/\[id\]|\[key\]|\[if\s\w+\]|\[foreach\s\w+\]|\[created-at(\s*)?/g.test(e)&&(t+=a.view_shortcodes+"\n\n"),t}(e)}(e,this),""!==t&&H(e+"\n\n"+t)}function Xe(e,t){for(var r,n,i,o=!1,a=0;a"+l[t].fieldName+"")):(r=r?" checked":"",i.push('"));e.innerHTML=i.join("")}function nt(){for(var e=document.querySelectorAll(".frmjs_prod_field_opt"),t=0;t'):(n.innerHTML=mn(r),"TEXTAREA"===n.nodeName&&n.classList.contains("wp-editor-area")&&jQuery(n).trigger("change"),n.classList.contains("frm_primary_label")&&"break"===n.nextElementSibling.getAttribute("data-ftype")&&(n.nextElementSibling.querySelector(".frm_button_submit").textContent=r)))}function at(e){var t=parseFloat(e.getAttribute("max")),r=parseFloat(e.getAttribute("min"));return(t-r)/2+r}function lt(){var e,t=this.getAttribute("data-fid"),r="";["field_options_max_","frm_format_"].forEach((function(e){var n=document.getElementById(e+t);n&&(r+=n.value)})),"text"===(e=document.getElementsByName("field_options[type_"+t+"]")[0]).options[e.selectedIndex].value&&dt(""!==r,".frm_invalid_msg"+t)}function st(){var e=this.id.replace("frm_","").replace("req_field_",""),t=this.checked,r=jQuery("#field_label_"+e+" .frm_required");if(dt(t,".frm_required_details"+e),t){var n=jQuery('input[name="field_options[required_indicator_'+e+']"]');""===n.val()&&n.val("*"),r.removeClass("frm_hidden")}else r.addClass("frm_hidden")}function dt(e,t){if($msg=jQuery(t),e)$msg.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast");else{var r=$msg.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not("+t+"):visible").length;r.css("display",""),0===n&&$msg.closest(".frm_validation_msg").fadeOut("fast")}}function ct(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(".frm_unique_details"+e);if(this.checked)t.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast"),$unqDetail=jQuery(".frm_unique_details"+e+" input"),""===$unqDetail.val()&&$unqDetail.val(a.default_unique);else{var r=t.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not(.frm_unique_details"+e+"):visible").length;r.css("display",""),0===n&&t.closest(".frm_validation_msg").fadeOut("fast")}}function ft(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(this).val(),r=jQuery(document.getElementById("frm_field_id_"+e));if(dt(""!==t,".frm_conf_details"+e),""!==t){var n=jQuery(".frm_validation_box .frm_conf_details"+e+" input");""===n.val()&&n.val(a.default_conf),function(e){var t=document.getElementsByName("field_options[type_"+e+"]")[0].value;ut(document.getElementById("field_description_"+e),"field_options[description_"+e+"]",a["enter_"+t]),ut(document.getElementById("conf_field_description_"+e),"field_options[conf_desc_"+e+"]",a["confirm_"+t])}(e),"inline"===t?r.removeClass("frm_conf_below").addClass("frm_conf_inline"):"below"===t&&r.removeClass("frm_conf_inline").addClass("frm_conf_below"),jQuery(".frm-conf-box-"+e).removeClass("frm_hidden")}else jQuery(".frm-conf-box-"+e).addClass("frm_hidden"),setTimeout((function(){r.removeClass("frm_conf_inline frm_conf_below")}),200)}function ut(e,t,r){e.innerHTML===a.desc&&(e.innerHTML=r,document.getElementsByName(t)[0].value=r)}function mt(e){var t=JSON.parse(this.getAttribute("data-opts"));return e.preventDefault(),document.getElementById("frm_bulk_options").value=t.join("\n"),!1}function _t(){var e,t=jQuery(this).closest(".frm-single-settings").data("fid"),r=jQuery("#frm_field_"+t+"_opts .frm_option_template").prop("outerHTML"),n=jQuery(this).data("opttype"),i=0,o=function(e){for(var t=0,r=0,n=jQuery("#frm_field_"+e+"_opts li"),i=0;ti||"000"===i)&&(i=r)}return i}(t);if("000"!==o&&(i=o+1),"other"===n){document.getElementById("other_input_"+t).value=1;var a=jQuery(this).data("ftype");"radio"!==a&&"select"!==a||jQuery(this).fadeOut("slow");var l={action:"frm_add_field_option",field_id:t,opt_key:i,opt_type:n,nonce:frmGlobal.nonce};jQuery.post(ajaxurl,l,(function(e){jQuery(document.getElementById("frm_field_"+t+"_opts")).append(e),rn(t)}))}else r=(r=(r=(r=(r=r.replace(new RegExp('optkey="000"',"g"),'optkey="'+i+'"')).replace(new RegExp("-000_","g"),"-"+i+"_")).replace(new RegExp('-000"',"g"),"-"+i+'"')).replace(new RegExp("\\[000\\]","g"),"["+i+"]")).replace("frm_hidden frm_option_template",""),zo(t,r={newOption:r}),this.closest(".frm_single_option").after(r.newOption),rn(t);null===(e=this.closest(".frm_sortable_field_opts"))||void 0===e||null===(e=e.querySelectorAll(".frm_remove_tag.frm_disabled"))||void 0===e||e.forEach((function(e){return e.classList.remove("frm_disabled")})),Mi()}function pt(){gt(jQuery(this).closest(".frm-single-settings").data("fid"),this.value)}function gt(e,t){var r=jQuery(".frm_multiple_cont_"+e);"select"===t?r.fadeIn("fast"):r.fadeOut("fast")}function yt(){var e=jQuery(this).closest(".frm-single-settings").data("fid");Oo(jQuery(".field_"+e+"_option_key")),jQuery(".field_"+e+"_option").toggleClass("frm_with_key")}function ht(){var e,t,r=jQuery(this).closest(".frm-single-settings"),n=r.data("fid"),i=document.getElementById("frm_field_id_"+n);wt(jQuery(this)),Oo(jQuery(".field_"+n+"_image_id")),Oo(jQuery(".frm_toggle_image_options_"+n)),Oo(jQuery(".frm_image_size_"+n)),Oo(jQuery(".frm_alignment_"+n)),Oo(jQuery(".frm-add-other#frm_add_field_"+n)),(e=gn(n))?(bt(n,"inline"),vt(i),t=tn(n),i.classList.add("frm_image_options"),i.classList.add("frm_image_size_"+t),r.find(".frm-bulk-edit-link").hide()):(i.classList.remove("frm_image_options"),vt(i),bt(n,"block"),r.find(".frm-bulk-edit-link").show()),wp.hooks.doAction("frm_image_options_toggled",r[0],e)}function vt(e){e.classList.remove("frm_image_size_","frm_image_size_small","frm_image_size_medium","frm_image_size_large","frm_image_size_xlarge")}function bt(e,t){jQuery("#field_options_align_"+e).val(t).trigger("change")}function jt(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);Qt(),gn(e)&&(vt(t),t.classList.add("frm_image_options"),t.classList.add("frm_image_size_"+tn(e)))}function wt(e){var t=e.closest(".frm-single-settings").data("fid");jQuery(".field_"+t+"_option").trigger("change")}function Qt(){wt(jQuery(this))}function xt(e){var t=e.target.closest(".frm_image_preview_wrapper");e.preventDefault(),wp.media.model.settings.post.id=0;var r=wp.media.frames.file_frame=wp.media({multiple:!1,library:{type:["image"]}});r.on("select",(function(){var e=r.state().get("selection").first().toJSON(),n=t.querySelector("img");n.setAttribute("src",e.url),n.classList.remove("frm_hidden"),n.removeAttribute("srcset"),t.querySelector(".frm_image_preview_frame").style.display="block",t.querySelector(".frm_image_preview_title").textContent=e.filename,t.querySelector(".frm_choose_image_box").style.display="none";var i=jQuery(t);i.siblings('input[name*="[label]"]').data("frmimgurl",e.url),i.find("input.frm_image_id").val(e.id).trigger("change"),wp.media.model.settings.post.id=0})),r.open()}function Et(e){var t=jQuery(this).closest(".frm_image_preview_wrapper");e.preventDefault(),e.stopPropagation(),t.find("img").attr("src",""),t.find(".frm_image_preview_frame").hide(),t.find(".frm_choose_image_box").show(),t.find("input.frm_image_id").val(0).trigger("change")}function kt(){var e=jQuery(this).closest("li").find(".frm_form_fields select");this.checked?e.attr("multiple","multiple"):e.removeAttr("multiple")}function Lt(){var e=document.getElementById("dropform-search-input");null!==e&&setTimeout((function(){e.focus()}),100)}function St(e){var t=e.target,r=t.closest(".frm_warning_style");jQuery(r).fadeOut(400,(function(){return r.remove()}));var n=t.dataset.action,i=new FormData;g(n,i)}function At(e){e.preventDefault()}function It(){var e,t=this.parentNode,r=t.parentNode,n=r.querySelectorAll("li:not(.frm_hidden)");2===n.length&&(null===(e=Array.from(n).find((function(e){return e!==t})).querySelector(".frm_remove_tag"))||void 0===e||e.classList.add("frm_disabled"));var i,o=this.getAttribute("data-fid");jQuery(t).fadeOut("fast",(function(){wp.hooks.doAction("frm_before_delete_field_option",this),jQuery(t).remove(),jQuery(r).find(".frm_other_option").length<1&&(null!==(i=document.getElementById("other_input_"+o))&&(i.value=0),jQuery("#other_button_"+o).fadeIn("fast"))})),Mi()}function Bt(){var e,t,r,n;(e=jQuery(this)).is(":checked")&&(t=function(){setTimeout((function(){e.prop("checked",!1)}),0)},r=function(){e.off("mouseup",n)},n=function(){t(),r()},e.on("mouseup",n),e.one("mouseout",r))}function Ct(){this.value===a.new_option&&(this.setAttribute("data-value-on-focus",this.value),this.value="")}function qt(e){return C(B("Are you sure you want to delete these %1$s selected field(s)?","formidable"),e)}function Nt(){var e=a.conf_delete,t=this.parentNode.parentNode.parentNode.parentNode.parentNode,r=t.parentNode,n=jQuery(this).closest("li.form-field"),i=n.data("fid");if("divider"===n.data("ftype")){var o=document.querySelectorAll(".frm-field-group-hover-target .start_divider .frm_field_box"),l=0;o.forEach((function(e){var t=e.querySelectorAll("li.form-field");t&&(l+=t.length)})),l&&(e=qt(++l))}return r.classList.contains("frm-section-collapsed")||r.classList.contains("frm-page-collapsed")||("divider_section_only"===t.className&&(e=a.conf_delete_sec),this.setAttribute("data-frmverify",e),this.setAttribute("data-frmverify-btn","frm-button-red"),this.setAttribute("data-deletefield",i),Te(),F(this)),!1}function Tt(){this.closest("li.form-field").click()}function Ot(){var e,t;null!==(e=document.querySelector(".frm-field-group-hover-target"))&&(e.classList.add("frm-selected-field-group"),(t=document.createElement("div")).classList.add("frm-delete-field-groups","frm_hidden"),document.body.appendChild(t),t.click())}function Dt(){var e=document.querySelector(".frm-field-group-hover-target");if(null!==e){var t="frm_field_group_"+we(),r=document.createTextNode("");We(r);var n=jQuery(r).closest("li").get(0);n.classList.add("frm_hidden");var i=n.querySelector("ul");i.id=t,jQuery(e.closest("li.frm_field_box")).after(n);var o=ae(jQuery(e)),a=[],l=[],s=o.length,d={},c=0;jQuery(n).on("frm_added_duplicated_field_to_row",(function(e,t){if(d[jQuery(t.duplicatedFieldHtml).attr("data-fid")]=t.originalFieldId,!(s>++c)){var r=jQuery(i),o=ae(r);l.forEach((function(e){e.remove()}));for(var f=0;f0&&ir(Ut(t)))&&l>=12&&(l=Math.floor(12/t)),s=0;s',""),t);e.prepend(r),document.getElementById("frm-field-group-message-dismiss").addEventListener("click",(function(){mr(document.getElementById("frm-field-group-message"))}))}}(),"ul"===e.originalEvent.target.nodeName.toLowerCase()){var t=document.querySelector(".frm-field-group-hover-target");if(t){var r=e.ctrlKey||e.metaKey,n=e.shiftKey,i=t.classList.contains("frm-selected-field-group"),o=function(){var e=jQuery(".frm-selected-field-group");if(e.length)return e;var t=_r();if(t){var r=t.closest("ul");if(r&&1===ae(jQuery(r)).length)return r.classList.add("frm-selected-field-group"),jQuery(r)}return jQuery()}(),a=o.length;if(r||n){var l=_r();if(null===l||jQuery(l).siblings("li.form-field").length||(l.parentNode.classList.add("frm-selected-field-group"),++a),r){if(i)return--a,t.classList.remove("frm-selected-field-group"),void pr(a);++a}else if(n&&!i){++a;var s=o.first();(s.parent().index()=2||1===e&&ae(jQuery(document.querySelector(".frm-selected-field-group"))).length>1?function(){var e,t,r,n,i;if(null!==(e=document.getElementById("frm_field_multiselect_popup")))return e.classList.toggle("frm-unmergable",!hr()),e;(e=d()).id="frm_field_multiselect_popup",hr()||e.classList.add("frm-unmergable"),(t=d()).classList.add("frm-merge-fields-into-row"),t.textContent=B("Merge into row","formidable"),(r=document.createElement("a")).style.marginLeft="5px",r.classList.add("frm_icon_font","frm_arrowdown6_icon"),r.setAttribute("href","#"),t.appendChild(r),e.appendChild(t),(n=d()).classList.add("frm-multiselect-popup-separator"),e.appendChild(n),(i=d()).classList.add("frm-delete-field-groups"),i.appendChild(Rt("frm_trash_svg")),e.appendChild(i),document.getElementById("post-body-content").appendChild(e),jQuery(e).hide().fadeIn()}():yr(),Me()}function gr(e){if(void 0!==e){if(null!==e.originalEvent.target.closest("#frm-show-fields"))return;if(e.originalEvent.target.classList.contains("frm-merge-fields-into-row"))return;if(null!==e.originalEvent.target.closest(".frm-merge-fields-into-row"))return;if(e.originalEvent.target.classList.contains("frm-custom-field-group-layout"))return;if(e.originalEvent.target.classList.contains("frm-cancel-custom-field-group-layout"))return}jQuery(".frm-selected-field-group").removeClass("frm-selected-field-group"),jQuery(document).off("click",gr),yr()}function yr(){var e=document.getElementById("frm_field_multiselect_popup");null!==e&&e.remove()}function hr(){var e,t,r,n,i;if(1===(r=(e=document.querySelectorAll(".frm-selected-field-group")).length))return!1;for(t=0,n=0;n6)return!1}return!0}function vr(e){var t;null===e.originalEvent.target.closest("#frm_field_group_popup")&&(e.originalEvent.target.classList.contains("frm-custom-field-group-layout")||(t=Pt(br(),document.querySelector(".frm-selected-field-group").firstChild),this.appendChild(t)))}function br(){var e=0;return jQuery(document.querySelectorAll(".frm-selected-field-group")).each((function(){e+=ae(jQuery(this)).length})),e}function jr(){var e,t,r,n;n=[],jQuery(".frm-selected-field-group > li.form-field").each((function(){n.push(this.dataset.fid)})),t=function(e){return function(t){t.preventDefault(),function(e){e.forEach((function(e){Qr(e)}))}(e)}}(e=n),null!==(r=document.getElementById("frm_field_multiselect_popup"))&&r.remove(),this.setAttribute("data-frmverify",qt(e.length)),F(this);var i=document.getElementById("frm-confirmed-click");null==i||i.removeAttribute("data-deletefield"),jQuery(i).on("click",t),jQuery("#frm_confirm_modal").one("dialogclose",(function(){jQuery(i).off("click",t)}))}function wr(){Qr(this.getAttribute("data-deletefield"))}function Qr(e){var t=jQuery("#frm_field_id_"+e);xr(e),t.hasClass("edit_field_type_divider")&&t.find("li.frm_field_box[data-fid]").each((function(){xr(this.getAttribute("data-fid"))})),xn()}function xr(e){jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_delete_field",field_id:e,nonce:frmGlobal.nonce},success:function(){var t,r=jQuery(document.getElementById("frm_field_id_"+e)),n=jQuery("#frm-single-settings-"+e);n.is(":visible")&&(null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click(),document.querySelector("#frm-options-panel .frm-single-settings").classList.remove("frm_hidden")),function(e){var t=e[0].querySelectorAll(".frm-inline-modal[data-fills]");t.length&&t.forEach((function(e){e.classList.add("frm_hidden"),e.removeAttribute("data-fills"),e.closest("form").appendChild(e)}))}(n),n.remove(),r.fadeOut("slow",(function(){var e,t=r.closest(".start_divider"),n=r.data("type"),i=r.siblings("li.form-field");if(i.length||(r.is(".edit_field_type_end_divider")?i.length=r.closest("li.form-field").siblings():e=r.closest("ul.frm_sorting").parent()),r.remove(),"break"===n?Tr():"product"===n&&(Be(),nt()),i.length?le(i.first()):e.remove(),0===jQuery("#frm-show-fields li").length||function(){if(j.get(0).childElementCount>1)return!1;var e=j.get(0).firstElementChild.firstElementChild.querySelectorAll("li.frm_field_box");return!(e.length>1)&&e[0].classList.contains("edit_field_type_submit")}()){var o=document.getElementById("frm_form_editor_container");o.classList.remove("frm-has-fields"),o.classList.add("frm-empty-fields")}else t.length&&En(t);R()})),r.length&&wp.hooks.doAction("frm_after_delete_field",r[0])}})}function Er(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_logic_row_"+e).querySelectorAll(".frm_logic_row");return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_logic_row",form_id:t,field_id:e,nonce:frmGlobal.nonce,meta_name:kr(r,"frm_logic_"+e+"_"),fields:tt()},success:function(t){jQuery(document.getElementById("logic_"+e)).fadeOut("fast",(function(){var r=document.getElementById("frm_logic_row_"+e);r.insertAdjacentHTML("beforeend",t);var n=r.querySelector(".frm_logic_row:last-child .frm-logic-rule-text");n&&(n.textContent=r.dataset.ruleText);var i=r.closest(".frm_logic_rows");i.style.height="auto",jQuery(i).fadeIn("fast")}))}}),!1}function kr(e,t,r){return e.length?parseInt(e[e.length-1].id.replace(t,""),10)+1:void 0!==r?r:0}function Lr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_watch_lookup_block_"+e).children;return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_watch_lookup_row",form_id:t,field_id:e,row_key:kr(r,"frm_watch_lookup_"+e+"_"),nonce:frmGlobal.nonce},success:function(t){var r,n=jQuery(document.getElementById("frm_watch_lookup_block_"+e));n.append(t),n.fadeIn("slow"),null===(r=document.getElementById("frm_watch_lookup_label_".concat(e)))||void 0===r||r.classList.remove("frm_hidden!")}}),!1}function Sr(e){var t,r,n=jQuery(e).closest(".frm-single-settings").attr("data-fid"),i=jQuery(e).closest("ul").get(0).querySelectorAll(".field_"+n+"_option");for(t in i)if((r=i[t]).id!==e.id&&r.value===e.value&&"true"!==r.getAttribute("data-duplicate"))return!0;return!1}function Ar(){var e,t;null===this.getAttribute("data-value-on-load")&&(this.setAttribute("data-value-on-load",this.value),t=jQuery(this).closest(".frm-single-settings").attr("data-fid"),(e=document.createElement("input")).value=this.value,e.setAttribute("type","hidden"),e.setAttribute("name","optionmap["+t+"]["+this.value+"]"),this.parentNode.appendChild(e),void 0===S[t]&&(S[t]={}),S[t][this.value]=e),"true"===this.getAttribute("data-duplicate")&&(this.removeAttribute("data-duplicate"),Sr(this))?this.setAttribute("data-value-on-focus",this.getAttribute("data-value-on-load")):""===this.value&&a.new_option===this.getAttribute("data-value-on-focus")||this.setAttribute("data-value-on-focus",this.value)}function Ir(e){var t,r=e.closest(".frm_single_option");return e.parentElement.classList.contains("frm_single_option")?{newValue:r.querySelector('.frm_option_key input[type="text"]').value,newLabel:t=e.value}:(t=r.querySelector('input[type="text"]').value,{newValue:e.value,newLabel:t})}function Br(){var e,t,r,n,i,o,a,l,s,d,c,f,u=function(e){var t=function(e){var t,r,n=null!==(t=null===(r=e.closest(".frm-single-settings").querySelector(".frm_toggle_sep_values"))||void 0===r?void 0:r.checked)&&void 0!==t&&t,i=e.closest(".frm_single_option");return n&&e.parentElement.classList.contains("frm_single_option")?{oldValue:i.querySelector('.frm_option_key input[type="text"]').getAttribute("data-value-on-focus"),oldLabel:e.getAttribute("data-value-on-focus")}:{oldValue:e.getAttribute("data-value-on-focus"),oldLabel:i.querySelector('input[type="text"]').getAttribute("data-value-on-focus")}}(e),r=t.oldValue,n=t.oldLabel,i=Ir(e);return{oldValue:r,oldLabel:n,newValue:i.newValue,newLabel:i.newLabel}}(this),m=u.oldValue,_=u.oldLabel,p=u.newValue,g=u.newLabel;if(m!==p||_!==g){var y=this.closest(".frm-single-settings");if(t=y.getAttribute("data-fid"),e=this.getAttribute("data-value-on-load"),Sr(this))return this.setAttribute("data-duplicate","true"),void(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=e));for(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=p),s=[],rows=D.querySelectorAll(".frm_logic_row"),o=rows.length,a=0;a1)for(document.getElementById("frm-fake-page").style.display="block",e=0;e0&&(t+=250,e.style.setProperty("--slide-height","".concat(t,"px")),e.style.setProperty("--slide-time","".concat(Math.ceil(.8*t),"ms")))}}function zr(){if(this.id){var e=document.querySelectorAll('[data-changeme="'+this.id+'"]')[0],t=this.id.replace("field_label_",""),r=document.getElementById("field_options_type_"+t),n=r.value;void 0!==e&&(n=function(e){return"divider"===e?e="section":"range"===e?e="slider":"data"===e?e="dynamic":"form"===e&&(e="embed form"),e}(n="SELECT"===r.tagName?r.options[r.selectedIndex].text.toLowerCase():n.replace("_"," ")),setTimeout((function(){e.value.toLowerCase()===n?e.select():e.focus()}),50))}}function Rr(){var e=document.querySelectorAll('[data-changeme="'+this.id+'"]')[0];void 0!==e&&setTimeout((function(){e.focus(),Gr(e)}),50)}function Gr(e){var t=e.closest(".frm-collapse-me");null!==t&&t.previousElementSibling.classList.remove("frm-collapsed")}function $r(e){var t,r;(t=e.target.classList).contains("frm-collapse-page")||t.contains("frm-sub-label")||null!==e.target.closest(".dropdown")||(null!==this.closest(".start_divider")&&e.stopPropagation(),this.classList.contains("edit_field_type_divider")&&null!==(r=e.originalEvent.target.closest("ul.frm_sorting"))&&(r.classList.contains("edit_field_type_divider")||r.parentNode.parentNode.classList.contains("start_divider"))||function(e){var t=jQuery(e);-1===e.className.indexOf("selected")&&(-1!==e.className.indexOf("edit_field_type_end_divider")&&t.closest(".edit_field_type_divider").hasClass("no_repeat_section")||(Je(),t.addClass("selected"),function(e){var t,r,n,i=e.getAttribute("data-fid"),o=e.getAttribute("data-type"),a=document.querySelectorAll(".frm-single-settings:not(.frm_hidden)");for(r=0;r200)&&(H(a.repeat_limit_min),this.value="")}function Jr(){var e=this.value;""!==e&&(e<1||e>200)&&(H(a.checkbox_limit),this.value="")}function Yr(e,t){jQuery(e).closest(".frm_field_box").find(".frm_"+t+"_form_row .frm_repeat_label").text(e.value)}function Xr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=this.value,r=document.getElementById("frm_show_selected_fields_"+e),n=document.getElementById("frm_show_selected_forms_"+e);jQuery(n).find("select").val(""),"form"===t?(n.style.display="inline",function(e){if(null!==e)for(;e.firstChild;)e.removeChild(e.firstChild)}(r)):(r.style.display="none",n.style.display="none",wn(t,e))}function Zr(){var e,t;(e=en(this))&&(t=jQuery(this).closest(".frm_single_option"),function(e,t,r){var n,i,o,a,l,s,c=r.data("optkey"),f=pn(e),u=jQuery('label[for="field_'+t+"-"+c+'"]'),m="field_options[options_"+e+"]["+c+"]",_=jQuery('input[name="'+m+'[label]"]');if(u.length<1)return rn(e),void((o=r.find('input[name^="default_value_"]')).is(":checked")&&_.length>0&&jQuery('select[name^="item_meta['+e+']"]').val(_.val()));if(a=u.children("input"),n=_.length<1?(_=jQuery('input[name="'+m+'"]')).val():f?jQuery('input[name="'+m+'[value]"]').val():_.val(),!(_.length<1)){if(i=u[0].childNodes,gn(e))l=function(e,t,r){var n,i,o;return(n=e.find("img"))&&(i=n.attr("src")),o=yn(t),fn(t),_n(r.val(),o,i)}(r,e,_),(s=u.find(".frm_image_option_container")).length>0?s.replaceWith(l):(i[i.length-1].nodeValue="",u.append(l));else{var p=!1;i.forEach((function(t,r){if(!1===p)"INPUT"===t.tagName&&(p=r);else if(r===p+1){var n="";!function(e){var t=document.getElementsByName("field_options[image_options_"+e+"]"),r=Array.from(t).find((function(e){return e.checked&&"buttons"===e.value}));return void 0!==r}(e)?t.nodeValue=" "+_.val():(n=d({className:"frm_label_button_container",text:" "+_.val()}),u[0].replaceChild(n,t))}else u[0].removeChild(t)}))}a.val(n),o=r.find('input[name^="default_value_"]'),a.prop("checked",!!o.is(":checked"))}}(e.fieldId,e.fieldKey,t))}function en(e){var t;return!!(t=jQuery(e).closest(".frm_sortable_field_opts")).length&&{fieldId:t.attr("id").replace("frm_field_","").replace("_opts",""),fieldKey:t.data("key")}}function tn(e){var t,r=document.getElementById("field_options_image_size_"+e),n="";return null!==r&&""!==(t=r.value)&&(n=t),n}function rn(e){var t,r,n,i,o,a=jQuery('[name^="item_meta['+e+']"]');if(!(a.length<1)){if(a.is("select"))null!==(i=document.getElementById("frm_placeholder_"+e))&&""===i.value?sn(a[0],{sourceID:e}):sn(a[0],{sourceID:e,placeholder:i.value});else{r=cn(e),jQuery("#field_"+e+"_inner_container > .frm_form_fields").html(""),o=en(jQuery("#frm_delete_field_"+e+"-000_container"));var l=jQuery("#field_"+e+"_inner_container > .frm_form_fields"),s=gn(e),d=s?tn(e):"",c=s?"frm_image_option frm_image_"+d+" ":"",f=Ho(e);for(n="hidden"===a.attr("type")?a.data("field-type"):a.attr("type"),t=0;t=0;a--){var u;l=d[a];var m=null===(u=document.getElementById("frm_field_"+e+"_opts").querySelector('.frm_option_key input[type="text"]'))||void 0===u?void 0:u.value;m||(m=l),s=i.querySelector('option[value="'+m+'"]');var _=nn(e,l),p=_.newValue,g=_.newLabel,y=document.querySelectorAll("#frm_field_"+e+"_opts input[data-value-on-focus]"),h=Array.from(y).find((function(e){return e.value===l}));if(h){var v=h.dataset.valueOnFocus;if(v&&i.querySelector('option[value="'+v+'"]'))continue}an(i,s,p,g)}null!==(s=i.querySelector('option[value=""]'))&&i.prepend(s)}}function an(e,t,r,n){null!==t||e.querySelector('option[value="'+r+'"]')||((t=frmDom.tag("option",{text:n})).value=r),e.prepend(t)}function ln(e,t,r,n,i,o){var a,l="",s=-1!==t.key.indexOf("other"),d="field_"+n+"-"+t.key,c="scale"===e?"radio":e;return a='',this.getSingle=function(){return""!==(l=wp.hooks.applyFilters("frm_admin.build_single_option_template",l,{opt:t,type:e,fieldId:r,classes:o,id:d}))?l:'
            "+(s?a:"")+"
            "},this.getSingle()}function sn(e,t){if(null!==e){var r=t.sourceID,n=t.placeholder,i=Ho(r),o=t.other;!function(e){var t;if(void 0!==e.options)for(t=e.options.length-1;t>=0;t--)e.remove(t)}(e);for(var a=cn(r),l=void 0!==n,s=0;s0||d[t].name.indexOf("[value]")>0||d[t].name.indexOf("[image]")>0||d[t].name.indexOf("[price]")>0||(i=r=d[t].value,o=d[t].name.replace("field_options[options_"+e+"][","").replace("[label]","").replace("]",""),m&&(n=d[t].name.replace("[label]","[value]"),r=jQuery('input[name="'+n+'"]').val()),u&&(i=_n(i,f,un(d[t]),fn(e))),a={saved:r,label:i=frmAdminBuild.hooks.applyFilters("frm_choice_field_label",i,e,d[t],u),checked:(l=d[t].id,field=jQuery("#"+l),0!==field.length&&(checkbox=field.siblings("input[type=checkbox]"),checkbox.length&&checkbox.prop("checked"))),key:o},c&&(n=d[t].name.replace("[label]","[price]"),a.price=jQuery('input[name="'+n+'"]').val()),s.push(a));return s}function fn(e){var t=document.getElementById("frm-single-settings-"+e);return null===t?"radio":t.classList.contains("frm-type-checkbox")?"checkbox":"radio"}function un(e){var t,r=jQuery(e).siblings(".frm_image_preview_wrapper");return r.length&&(t=r.find("img")).length?t.attr("src"):""}function mn(e){(e instanceof Element||e instanceof Document)&&(e=e.outerHTML);var t=jQuery.parseHTML(e).reduce((function(e,t){var r=frmDom.cleanNode(t);return"#text"===r.nodeName?e+r.textContent:e+r.outerHTML}),"");return t!==e?mn(t):t}function _n(e,t,r,n){var i,o,l,c=e;return c=mn(c),r?o=m({src:r,alt:c}):(o=d({className:"frm_empty_url"})).innerHTML=a.image_placeholder_icon,i=t?" frm_label_with_image":"",(l=s("span",{className:"frm_text_label_for_image_inner"})).innerHTML=c,s("span",{className:"frm_image_option_container"+i,children:[o,s("span",{className:"frm_text_label_for_image",child:l})]})}function pn(e){return hn("separate_value_"+e)}function gn(e){for(var t=!1,r=document.getElementsByName("field_options[image_options_"+e+"]"),n=0;n=0&&(r.splice(t,1),e.val(r),e.next(".btn-group").find('.multiselect-container input[value=""]').prop("checked",!1))}(jQuery(this))}function An(e){e.val(""),e.next(".btn-group").find('.multiselect-container input[value!=""]').prop("checked",!1)}function In(){jQuery(".frm-hide-empty").each((function(){0===jQuery(this).text().trim().length&&jQuery(this).remove()}))}function Bn(e){e.preventDefault(),Cn(this)}function Cn(e,t){var r=document.getElementById(e.getAttribute("data-open")),n=jQuery(e).closest("p,ul"),i=void 0!==t;n.hasClass("frm-open")?(n.removeClass("frm-open"),r.classList.add("frm_hidden")):(i||(t=Gi(e)),null!==t&&(i||t.focus(),n.after(r),r.setAttribute("data-fills",t.id.replace("-proxy-input","")),0===r.id.indexOf("frm-calc-box")&&Ze(r,!0)),n.addClass("frm-open"),r.classList.remove("frm_hidden"),wp.hooks.doAction("frm_show_inline_modal",r,e))}function qn(e){e.preventDefault(),this.parentNode.classList.add("frm_hidden"),jQuery('.frm-open [data-open="'+this.parentNode.id+'"]').closest(".frm-open").removeClass("frm-open")}function Nn(e){var t=e.target;t.closest(".frm-inline-modal.frm-modal-no-dismiss")||t.closest(".frm-show-inline-modal")||t.closest("#frm_adv_info")||t.closest(".frm-token-proxy-input")||document.querySelectorAll(".frm-inline-modal.frm-modal-no-dismiss:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden"),e.previousElementSibling.classList.remove("frm-open")}))}function Tn(){var e,t,r,n,i,o,a,l=this.getAttribute("data-frmchange").split(",");for(e=0;e',r)),o.innerHTML=c,e.dataset.upsellImage&&o.appendChild(m({src:e.dataset.upsellImage,alt:e.dataset.upgrade})),a.href=function(e,t){var r=e.getAttribute("data-link");return null!=r&&""!==r||(r=t.getAttribute("data-default")),r}(e,a),s.style.display="none",i.style.display=_,l.style.display="block"===_?"inline-block":_,o.style.display=u,a.style.display="block"===f?"inline-block":f}function Yn(e){void 0===e&&(e=""),function(e){var t,r=jQuery(e+" :not(.frm_has_shortcodes) .frm_not_email_message, "+e+" :not(.frm_has_shortcodes) .frm_not_email_to, "+e+" :not(.frm_has_shortcodes) .frm_not_email_subject");for(t=0;t').before('')}function Xn(){var e="success";"options[edit_action]"===this.name&&(e="edit");var t=jQuery(this).val();jQuery("."+e+"_action_box").hide(),"redirect"===t?jQuery("."+e+"_action_redirect_box."+e+"_action_box").fadeIn("slow"):"page"===t?jQuery("."+e+"_action_page_box."+e+"_action_box").fadeIn("slow"):jQuery("."+e+"_action_message_box."+e+"_action_box").fadeIn("slow")}function Zn(e){if(m=e.target,p=jQuery(m),g=p.closest(".frm_form_action_settings"),(y=g.find(".widget-inside")).find("p, div, table").length||((_=g.find(".widget-top")).on("frm-action-loaded",(function(){p.trigger("click"),g.removeClass("open"),y.hide()})),_.trigger("click"),0)){var t=e.target.closest(".frm_form_action_settings"),r=t.querySelectorAll(".wp-editor-area");r.length&&r.forEach((function(e){tinymce.EditorManager.execCommand("mceRemoveEditor",!0,e.id)}));var n=jQuery(t).clone(),i=n.attr("id").replace("frm_form_action_",""),o=ei(i);n.find(".frm_action_id, .frm-btn-group").remove(),n.find('input[name$="['+i+'][ID]"]').val(""),n.find(".widget-inside").hide(),n.find("input[type=text], textarea, input[type=number]").prop("defaultValue",(function(){return this.value})),n.find("input[type=checkbox], input[type=radio]").prop("defaultChecked",(function(){return this.checked}));var a=new RegExp("\\["+i+"\\]","g"),l=new RegExp("_"+i+'"',"g"),s=new RegExp("-"+i+'"',"g"),c=new RegExp('"'+i+'"',"g"),f=n.html().replace(a,"["+o+"]").replace(l,"_"+o+'"');f=f.replace(s,"-"+o+'"').replace(c,'"'+o+'"');var u=d({id:"frm_form_action_"+o,className:n.get(0).className});u.setAttribute("data-actionkey",o),u.innerHTML=f,u.querySelectorAll(".wp-editor-wrap, .wp-editor-wrap *").forEach((function(e){"string"==typeof e.className&&(e.className=e.className.replace(i,o)),e.id=e.id.replace(i,o)})),u.classList.remove("open"),document.getElementById("frm_notification_settings").appendChild(u),r.length&&(r.forEach((function(e){frmDom.wysiwyg.init(e)})),u.querySelectorAll(".wp-editor-area").forEach((function(e){frmDom.wysiwyg.init(e)}))),u.classList.contains("frm_single_on_submit_settings")&&u.querySelector("input.frm-page-search")&&jo(u),lo(),wp.hooks.doAction("frm_after_duplicate_action",u)}var m,_,p,g,y}function ei(e){var t=parseInt(e,10)+11;return null!==document.getElementById("frm_form_action_"+t)&&(t=ei(++t)),t}function ti(){var e,t=jQuery(this).data("actiontype");if(!di(t)){var r=(e=kr(document.querySelectorAll(".frm_form_action_settings"),"frm_form_action_"),void 0!==document.getElementById("frm_form_action_"+e)&&(e+=100),A>=e&&(e=A+1),A=e,e),n=k,i=document.createElement("div");i.classList.add("frm_single_"+t+"_settings");var o=document.getElementById("frm_notification_settings");o.appendChild(i),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_action",type:t,list_id:r,form_id:n,nonce:frmGlobal.nonce},success:function(e){Mi(),i.remove(),document.querySelectorAll(".frm_form_action_settings.open").forEach((function(e){return e.classList.remove("open")}));var n=d();n.innerHTML=e;var a=n.querySelector(".widget-top");Array.from(n.children).forEach((function(e){return o.appendChild(e)})),jQuery(".frm_form_action_settings").fadeIn("slow");var l=document.getElementById("frm_form_action_"+r);l.classList.add("open"),document.getElementById("post-body-content").scroll({top:l.offsetTop+10,left:0,behavior:"smooth"}),si(t),Yn("#frm_form_action_"+r),lo(),jo(l),a&&jQuery(a).trigger("frm-action-loaded"),frmAdminBuild.hooks.doAction("frm_added_form_action",l)}})}}function ri(){var e=document.getElementById("frm_email_addon_menu").classList,t=document.getElementById("actions-search-input");e.contains("frm-all-actions")?(e.remove("frm-all-actions"),e.add("frm-limited-actions")):(e.add("frm-all-actions"),e.remove("frm-limited-actions")),t.value="",Io(t,"input")}function ni(e){e.on("Change",(function(){!function(e){var t,r;(t=document.querySelector(".frm-single-settings:not(.frm_hidden)"))&&null!==(r=t.querySelector(".wp-editor-wrap"))&&r.classList.contains("tmce-active")&&!tinyMCE.activeEditor.isHidden()&&(e.targetElm.value=e.getContent(),jQuery(e.targetElm).trigger("change"))}(e)}))}function ii(e){var t=this;if(null!==e)return this.fragment=document.createDocumentFragment(),this.initOnceInAllInstances=function(){void 0===ii.prototype.endMarker&&(ii.prototype.endMarker=document.getElementById("frm-end-form-marker"))},this.append=function(e){var r=null!==e?e.parentElement.classList:"";null!==e&&(r.contains("frm_field_box")||r.contains("divider_section_only"))&&t.fragment.appendChild(e)},this.moveFields=function(){w.insertBefore(t.fragment,ii.prototype.endMarker)},this.initOnceInAllInstances(),void 0!==e?(this.append(e),void this.moveFields()):{append:this.append,moveFields:this.moveFields}}function oi(){var e=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),t=this.getAttribute("data-emailrow");jQuery("#frm_form_action_"+e+" .frm_"+t+"_row").fadeIn("slow"),jQuery(this).fadeOut("slow")}function ai(){var e=jQuery(this).closest(".frm_form_action_settings"),t=this.getAttribute("data-emailrow"),r=".frm_"+t+"_row",n=".frm_"+t+"_button";jQuery(e).find(n).fadeIn("slow"),jQuery(e).find(r).fadeOut("slow",(function(){jQuery(e).find(r+" input").val("")}))}function li(){var e=jQuery(this).closest(".frm_form_action_settings"),t=".frm_from_to_match_row";e.find('input[name$="[post_content][from]"]').val()===e.find('input[name$="[post_content][email_to]"]').val()?jQuery(e).find(t).fadeIn("slow"):jQuery(e).find(t).fadeOut("slow")}function si(e){var t,r,n=document.querySelectorAll(".frm_"+e+"_action");di(e)?(t=n,r=ci(e)>0,t.forEach((function(e){e.classList.remove("frm_active_action"),e.classList.add("frm_inactive_action"),r&&e.classList.add("frm_already_used")}))):n.forEach((function(e){e.querySelector(".frm_show_upgrade")||(e.classList.remove("frm_inactive_action","frm_already_used"),e.classList.add("frm_active_action"))}))}function di(e){var t=function(e){return jQuery(".frm_single_"+e+"_settings").length}(e)>=ci(e),r={type:e};return wp.hooks.applyFilters("frm_action_at_limit",t,r)}function ci(e){return parseInt(jQuery(".frm_"+e+"_action").data("limit"),10)}function fi(){var e=a.only_one_action,t=this.dataset.limit;void 0!==t&&((t=parseInt(t))>1?e=e.replace(1,t).trim():e+=" "+a.edit_action_text),H(e)}function ui(){var e=jQuery(this).data("emailkey"),t=jQuery(this).closest(".frm_form_action_settings").find(".frm_action_name").val(),r=document.getElementById("form_id").value,n=document.getElementById("frm_logic_row_"+e),i=kr(n.querySelectorAll(".frm_logic_row"),"frm_logic_"+e+"_"),o=d({id:"frm_logic_"+e+"_"+i,className:"frm_logic_row frm_hidden"});return n.appendChild(o),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_logic_row",email_id:e,form_id:r,meta_name:i,type:t,nonce:frmGlobal.nonce},success:function(t){jQuery(document.getElementById("logic_link_"+e)).fadeOut("slow",(function(){o.insertAdjacentHTML("beforebegin",t),o.remove(),jQuery(n).parent(".frm_logic_rows").fadeIn("slow")}))}}),!1}function mi(){var e=jQuery("select.frm_single_post_field");e.css("border-color","");var t=this,r=jQuery(t).val();if(""===r||"checkbox"===r)return!1;e.each((function(){if(jQuery(this).val()===r&&this.name!==t.name)return this.style.borderColor="red",jQuery(t).val(""),H(a.field_already_used),!1}))}function _i(){var e=jQuery(this).val();""===e?(jQuery(".frm_post_content_opt, select.frm_dyncontent_opt").hide().val(""),jQuery(".frm_dyncontent_opt").hide()):"post_content"===e?(jQuery(".frm_post_content_opt").show(),jQuery(".frm_dyncontent_opt").hide(),jQuery("select.frm_dyncontent_opt").val("")):(jQuery(".frm_post_content_opt").hide().val(""),jQuery("select.frm_dyncontent_opt, .frm_form_field.frm_dyncontent_opt").show())}function pi(){var e=jQuery(this).val(),t=jQuery(document.getElementById("frm_dyncontent"));""===e||"new"===e?(t.val(""),jQuery(".frm_dyncontent_opt").show()):jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_display_get_content",id:e,nonce:frmGlobal.nonce},success:function(e){t.val(e),jQuery(".frm_dyncontent_opt").show()}})}function gi(){var e,t,r=document.getElementById("frm_posttax_rows").childNodes,n=document.querySelector(".frm_post_parent_field"),o=document.querySelector(".frm_post_menu_order_field"),a=this.value;jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_replace_posttax_options",post_type:a,nonce:frmGlobal.nonce},success:function(n){for(i=0;i
        • ');var e=jQuery(this).closest(".frm_form_action_settings").find('select[name$="[post_content][post_type]"]').val(),t=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),r=jQuery(this).closest(".frm_posttax_row").attr("id").replace("frm_posttax_",""),n=jQuery(this).val(),i=jQuery(document.getElementById(r+"_show_exclude")).is(":checked")?1:0,o=jQuery('select[name$="[post_category]['+r+'][field_id]"]').val(),a=jQuery('input[name="id"]').val();jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_posttax_row",form_id:a,post_type:e,tax_key:r,action_key:t,meta_name:n,field_id:o,show_exclude:i,nonce:frmGlobal.nonce},success:function(e){jQuery(document.getElementById("frm_posttax_"+r)).replaceWith(e)}})}}function wi(){var e=jQuery(this).closest(".frm_postmeta_row"),t=e.find(".frm_cancelnew"),r=e.find(".frm_enternew");return e.find("select.frm_cancelnew").is(":visible")?(t.hide(),r.show()):(t.show(),r.hide()),e.find("input.frm_enternew, select.frm_cancelnew").val(""),!1}function Qi(){var e=jQuery(this),t=e.val();"checkbox"===e.attr("type")&&!1===this.checked&&(t="");var r=e.data("toggleclass");""===t?jQuery("."+r).hide():(jQuery("."+r).show(),jQuery(".hide_"+r+"_"+t).hide())}function xi(){Rn()||(Wn(this),Hn(document.querySelector(".frm_form_settings")))}function Ei(e){return e.preventDefault(),ki(jQuery(this),this.getAttribute("data-code")),!1}function ki(e,t){var r=!1,i=e;if("object"===n(e)){if(e.hasClass("frm_noallow"))return;void 0===(i=jQuery(e).closest("[data-fills]").attr("data-fills"))&&void 0!==(i=e.closest("div").attr("class"))&&(i=i.split(" ")[1])}if(void 0===i){var o=document.activeElement;"search"===o.type?null===(i=o.id.replace("-search-input","")).match(/\d/gi)&&(i=(o=jQuery(".frm-single-settings:visible ."+i)).attr("id")):i=o.id}i&&(r=jQuery("#wp-"+i+"-wrap.wp-editor-wrap").length>0);var a=jQuery(document.getElementById(i));if(void 0===e.attr("data-shortcode")&&(!a.length||void 0===a.attr("data-shortcode"))){var l=e.parents("ul.frm_code_list").attr("data-shortcode");"undefined"!==l&&"no"===l||(t="["+t+"]")}if(r&&(wpActiveEditor=i),!a.length)return!1;if("[default-html]"===t||"[default-plain]"===t){var s=0;"[default-plain]"===t&&(s=1),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_get_default_html",form_id:jQuery('input[name="id"]').val(),plain_text:s,nonce:frmGlobal.nonce},elementId:i,success:function(e){if(r){var t=document.createElement("p");t.innerText=e,send_to_editor(t.innerHTML)}else Li(a,e)}})}else t=function(e,t,r){return"object"===n(t)&&t instanceof jQuery&&0===r[0].id.indexOf("success_url_")&&(t=t[0]).closest("#frm-insert-fields-box")?(t.parentNode.classList.contains("frm_insert_url")||(e=e.replace("]"," sanitize_url=1]")),e):e}(t,e,a),r?send_to_editor(t):Li(a,t);return!1}function Li(e,t){if(document.selection)e[0].focus(),document.selection.createRange().text=t;else{obj=e[0];var r=obj.selectionEnd;t=function(e,t,r,n){var i=e.data("sep");if(void 0===i)return t;var o=e.val();if(!o.trim().length)return t;var a=new RegExp(i+"\\s*$"),l=new RegExp("^\\s*"+i);return o.substr(0,r).trim().length&&!1===a.test(o.substr(0,r))&&(t=i+t),o.substr(n,o.length).trim().length&&!1===l.test(o.substr(n,o.length))&&(t+=i),t}(e,t,obj.selectionStart,r),obj.value=obj.value.substr(0,obj.selectionStart)+t+obj.value.substr(obj.selectionEnd,obj.value.length);var n=r+t.length;!function(e,t){if(e.classList.contains("frm_classes")&&Si(t)){var r=e.value.split(" ").filter(Si);r.length&&(e.value=function(e,t,r){var n=e.split(" ").filter((function(e){return(e=e.trim()).length&&!t.includes(e)}));return n.includes(r)||n.push(r),n.join(" ")}(e.value,r,t.trim()))}}(obj,t),obj.focus(),obj.setSelectionRange(n,n)}Pn(e)}function Si(e){return["frm_half","frm_third","frm_two_thirds","frm_fourth","frm_three_fourths","frm_fifth","frm_sixth","frm2","frm3","frm4","frm6","frm8","frm9","frm10","frm12"].includes(e.trim())}function Ai(){var e=document.getElementById("frm-id-condition"),t=document.getElementById("frm-key-condition");"id"===this.value?(e.classList.remove("frm_hidden"),t.classList.add("frm_hidden"),Io(t,"change")):(e.classList.add("frm_hidden"),t.classList.remove("frm_hidden"),Io(e,"change"))}function Ii(){var e,t,r=document.getElementById("frm-id-key-condition-id").checked?"frm-id-condition":"frm-key-condition",n=document.getElementById("frm-is-condition").value,i=document.getElementById("frm-text-condition").value,o=document.getElementById("frm-insert-condition");t="if "+(e=(r=document.getElementById(r)).options[r.selectedIndex].value)+" "+n+'="'+i+'"]',o.setAttribute("data-code",t+a.conditional_text+"[/if "+e),o.innerHTML="["+t+"[/if "+e+"]"}function Bi(){Cn($i(this),this)}function Ci(e){e.preventDefault(),e.stopPropagation(),Oi(this)}function qi(e){!function(e){var t;if(e.id.startsWith("field_options_type_")){var r=e.id.split("_"),n=r.length&&r[r.length-1];null!==(t=document.querySelector("#frm-single-settings-".concat(n)))&&void 0!==t&&t.classList.contains("frm-type-".concat(e.value))||Ni()}}(e.target)}function Ni(e){var t;void 0===e&&(e=B("You are changing the field type. Not all field settings will appear as expected until you reload the page. Would you like to reload the page now?","formidable")),frmDom.modal.maybeCreateModal("frmSaveAndReloadModal",{title:B("Save and Reload?","formidable"),content:(t=d(e),t.style.padding="var(--gap-md)",t),footer:function(){var e=frmDom.modal.footerButton({text:B("Save and Reload","formidable"),buttonType:"primary"});_(e,(function(){Pi()}));var t=frmDom.modal.footerButton({text:B("Cancel","formidable"),buttonType:"cancel"});return t.classList.add("dismiss"),frmDom.div({children:[t,e]})}()})}function Ti(e){var t;if(e instanceof Event){var r=document.querySelectorAll(".frm-single-settings .frm-show-box.frmsvg use"),n=Array.from(r).find((function(e){return"#frm_close_icon"===e.getAttribute("href")}));if(void 0===n)return;t=n.parentElement}else t=e;var i=t.getBoundingClientRect(),o=document.getElementById("frm_adv_info"),a=o.parentElement.getBoundingClientRect();o.style.top=i.top-a.top+32+"px",o.style.left=i.left-a.left-280+"px"}function Oi(e,r){var n=Gi(e),i=document.getElementById("frm_adv_info"),o=e.className;if("svg"===e.tagName&&(e=e.firstElementChild),"use"===e.tagName&&null===(o=e.getAttributeNS("http://www.w3.org/1999/xlink","href"))&&(o=e.getAttribute("href")),-1!==o.indexOf("frm_close_icon"))Wi(i);else{if(Ti(e),jQuery(".frm_code_list a").removeClass("frm_noallow"),n.classList.contains("frm_not_email_to")?jQuery("#frm-insert-fields-box .frm_code_list li:not(.show_frm_not_email_to) a").addClass("frm_noallow"):n.classList.contains("frm_not_email_subject")&&jQuery(".frm_code_list li.hide_frm_not_email_subject a").addClass("frm_noallow"),i.setAttribute("data-fills",n.id),i.style.display="block","use"===e.tagName)if(e.hasAttributeNS("http://www.w3.org/1999/xlink","href"))e.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon");else{var l=document.createElementNS("http://www.w3.org/2000/svg","use");l.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon"),e.parentNode.replaceChild(l,e)}else e.className=o.replace("frm_more_horiz_solid_icon","frm_close_icon");"nofocus"!==r&&("none"!==n.style.display?n.focus():jQuery(tinymce.get(n.id)).trigger("focus")),function(e){["address","body"].forEach((function(r){!function(e,r){var n,i;n=a.contextualShortcodes[r+"Selector"],i=a.contextualShortcodes[r];var o,l=e.matches(n),s=function(e){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=t(e))){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw o}}}}(i);try{for(s.s();!(o=s.n()).done;){var d,c=o.value,f=null===(d=document.querySelector('#frm-adv-info-tab .frm_code_list [data-code="'+c+'"]'))||void 0===d?void 0:d.closest("li");null==f||f.classList.toggle("frm_hidden",!l)}}catch(e){s.e(e)}finally{s.f()}}(e,r)}))}(n)}}function Di(e){return 0===a.contextualShortcodes.length||!function(e){var t=e.querySelector("a");if(!t)return!1;var r=t.dataset.code;return a.contextualShortcodes.address.includes(r)||a.contextualShortcodes.body.includes(r)}(e)||function(e){var t=e.querySelector("a").dataset.code,r=document.getElementById("frm_adv_info").dataset.fills,n=document.getElementById(r),i=a.contextualShortcodes;return i.address.includes(t)?n.matches(i.addressSelector):n.matches(i.bodySelector)}(e)}function Mi(){E||(E=1,window.addEventListener("beforeunload",zi))}function Fi(){E=0}function Hi(){E=0}function Pi(){var e=document.getElementById("frm_submit_side_top");e.classList.contains("frm_submit_ajax")&&e.setAttribute("data-new-addon-installed",!0),e.click()}function zi(e){E&&(e.preventDefault(),e.returnValue="")}function Ri(e,t){var r={my:"top",at:"top+"+t,of:window};e.dialog("option","position",r)}function Gi(e){for(var t,r=e.nextElementSibling;null!==r&&("INPUT"!==r.tagName&&"TEXTAREA"!==r.tagName||r.classList.contains("frm-token-input-field"));)r=Gi(r);return r||(r=null===(t=e.closest(".frm-field-formula"))||void 0===t?void 0:t.querySelector(".frm-calc-field")),r}function $i(e){for(var t=e.previousElementSibling;null!==t&&"I"!==t.tagName&&"svg"!==t.tagName;)t=$i(t);return t}function Wi(e){var t,r,n,i;if((void 0!==e||null!==(e=document.getElementById("frm_adv_info")))&&null===document.getElementById("frm_dyncontent")){for(e.style.display="none",n=document.querySelectorAll(".frm-show-box.frm_close_icon"),t=0;t"+r.data.name+": "+r.data.msg+"

          ":'

          Imported '+r.data.name+"

          ",e.find(".status").prepend(n),e.find(".status").show(),N.importQueue=jQuery.grep(N.importQueue,(function(e){return e!=t})),N.imported++,0===N.importQueue.length?(e.find(".process-count").hide(),e.find(".forms-completed").text(N.imported),e.find(".process-completed").show()):(e.find(".form-current").text(N.imported+1),Xi(e)))}))}function Zi(e){e.preventDefault();var t=!1,r=jQuery('input[name="frm_export_forms[]"]');jQuery('input[name="frm_export_forms[]"]:checked').val()||(r.closest(".frm-table-box").addClass("frm_blank_field"),t="stop");var n=jQuery('input[name="type[]"]');if(jQuery('input[name="type[]"]:checked').val()||"checkbox"!==n.attr("type")||(n.closest("p").addClass("frm_blank_field"),t="stop"),"stop"===t)return!1;e.stopPropagation(),this.submit()}function eo(){var e=jQuery(this).closest(".frm_blank_field");if(void 0!==e){var t=this.name;("type[]"===t&&jQuery('input[name="type[]"]:checked').val()||"frm_export_forms[]"===t&&jQuery(this).val())&&e.removeClass("frm_blank_field")}}function to(){null!==jQuery(this).val().match(/\.csv$/i)?jQuery(".show_csv").fadeIn():jQuery(".show_csv").fadeOut()}function ro(){var e=document.querySelector('select[name="format"]');return e?e.value:""}function no(e){var t,r,n=e.target.value;oo(n),io.call(e.target),t=n,r=document.getElementById("frm-export-select-all"),"csv"===t?(r.checked=!1,r.disabled=!0):r.disabled=!1}function io(){var e=jQuery(this),t=e.find(":selected"),r=t.data("support"),n=r.indexOf("|");jQuery('input[name="type[]"]').each((function(){this.checked=!1,r.indexOf(this.value)>=0?(this.disabled=!1,-1===n&&(this.checked=!0)):this.disabled=!0})),"csv"===e.val()?(jQuery(".csv_opts").show(),jQuery(".xml_opts").hide()):(jQuery(".csv_opts").hide(),jQuery(".xml_opts").show());var i=t.data("count"),o=jQuery('input[name="frm_export_forms[]"]');"single"===i?(o.prop("multiple",!1),o.prop("checked",!1)):(o.prop("multiple",!0),o.prop("disabled",!1)),e.trigger("change")}function oo(e){if(""!==e){var t=document.querySelectorAll(".frm-is-repeater");t.length&&("csv"===e?t.forEach((function(e){e.classList.remove("frm_hidden")})):t.forEach((function(e){e.classList.add("frm_hidden")})),Lo.call(document.querySelector(".frm-auto-search")))}}function ao(){var e=jQuery("select[name=format]").find(":selected").data("count"),t=jQuery('input[name="frm_export_forms[]"]');"single"===e&&this.checked?(t.prop("disabled",!0),this.removeAttribute("disabled")):t.prop("disabled",!1)}function lo(){jQuery(".frm_multiselect").hide().each(frmDom.bootstrap.multiselect.init)}function so(e){e.preventDefault(),uo(this,"frm_multiple_addons")}function co(e){e.preventDefault(),uo(this,"frm_activate_addon")}function fo(e){e.preventDefault(),uo(this,"frm_install_addon")}function uo(e,t){var r,n,i,o;jQuery(".frm-addon-error").remove(),n=(r=jQuery(e)).attr("rel"),i=r.parent(),o=i.parent().find(".addon-status-label"),r.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:t,nonce:frmGlobal.nonce,plugin:n},success:function(e){var n,a,l;"string"!=typeof(e=null!==(n=null===(a=e)||void 0===a?void 0:a.data)&&void 0!==n?n:e)&&"string"==typeof e.message&&(void 0!==e.saveAndReload&&(l=e.saveAndReload),e=e.message);var s=go(e);s?yo(s,i,r):(_o(e,r,o,i,l,t),wp.hooks.doAction("frm_update_addon_state",e))},error:function(){r.removeClass("frm_loading_button")}})}function mo(e){e.preventDefault();var t=jQuery(this),r=t.parent().parent(),n=t.attr("rel");t.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:"frm_install_addon",nonce:a.nonce,plugin:n,hostname:r.find("#hostname").val(),username:r.find("#username").val(),password:r.find("#password").val()},success:function(e){var n,i,o=go(e=null!==(n=null===(i=e)||void 0===i?void 0:i.data)&&void 0!==n?n:e);o?yo(o,r,t):_o(e,t,message,r)},error:function(){t.removeClass("frm_loading_button")}})}function _o(e,t,r,n,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"frm_activate_addon",l=document.querySelectorAll(".frm-addon-status");l.forEach((function(t){t.textContent=e,t.style.display="block"})),t.css({opacity:"0"}),document.querySelectorAll(".frm-oneclick").forEach((function(e){e.style.display="none"})),jQuery("#frm_upgrade_modal h2").hide(),jQuery("#frm_upgrade_modal .frm_lock_icon").addClass("frm_lock_open_icon"),jQuery("#frm_upgrade_modal .frm_lock_icon use").attr("xlink:href","#frm_lock_open_icon");var s={frm_activate_addon:{class:"frm-addon-active",message:a.active},frm_deactivate_addon:{class:"frm-addon-installed",message:a.installed},frm_uninstall_addon:{class:"frm-addon-not-installed",message:a.not_installed}};s.frm_install_addon=s.frm_activate_addon;var c=r[0];c&&(c.textContent=s[o].message);var f=n[0].parentElement;f.classList.remove("frm-addon-not-installed","frm-addon-installed","frm-addon-active"),f.classList.add(s[o].class),t[0].classList.remove("frm_loading_button"),document.querySelectorAll(".frm-admin-page-import, #frm-admin-smtp, #frm-welcome").length>0?window.location.reload():["settings","form_builder"].includes(i)&&l.forEach((function(e){var t=null!==e.closest("#frm_upgrade_modal");e.appendChild(function(e,t){var r=[po(e)];return t&&r.push(function(){var e=document.createElement("a");return e.setAttribute("href","#"),e.classList.add("button","button-secondary","frm-button-secondary","dismiss"),e.textContent=B("Close","formidable"),e}()),d({className:"frm-save-and-reload-options",children:r})}(i,t))}))}function po(e){var t=document.createElement("button");return t.classList.add("frm-save-and-reload","button","button-primary","frm-button-primary"),t.textContent=B("Save and Reload","formidable"),t.addEventListener("click",(function(){var t,r;"form_builder"===e?Pi():"settings"===e&&null!==(t=document.getElementById("form_settings_page"))&&null!==(r=t.querySelector("form.frm_form_settings"))&&(E=0,r.submit())})),t}function go(e){return"string"!=typeof e&&(void 0===e.success||!e.success)&&(e.form&&jQuery(e.form).is("#message")?{message:jQuery(e.form).find("p").html()}:e)}function yo(e,t,r){e.form?(jQuery(".frm-inline-error").remove(),r.closest(".frm-card").html(e.form).css({padding:5}).find("#upgrade").attr("rel",r.attr("rel")).on("click",mo)):(t.append('

          '+e.message+"

          "),r.removeClass("frm_loading_button"),jQuery(".frm-addon-error").delay(4e3).fadeOut())}function ho(){bo()}function vo(e){!function(e,t,r){var n=jQuery("#frm_leave_email_error");n.removeClass("frm_hidden").attr("frm-error",r),jQuery("#frm_leave_email").one("keyup",(function(){n.addClass("frm_hidden")}))}(0,0,e)}function bo(){var e=document.getElementById("frmapi-email-form");jQuery.ajax({dataType:"json",url:e.getAttribute("data-url"),success:function(t){var r=t.renderedHtml;r=r.replace(/]*(formidableforms.css|action=frmpro_css)[^>]*>/gi,""),e.innerHTML=r}})}function jo(e){frmDom.autocomplete.initSelectionAutocomplete(e)}function wo(e){var t=this.parentNode.parentNode,r=t.elements.type.value;e.preventDefault(),this.classList.add("frm_loading_button"),xo(t,r,this)}function Qo(e){var t=this.elements.type.value,r=this.querySelector("button");e.preventDefault(),r.classList.add("frm_loading_button"),xo(this,t,r)}function xo(e,t,r){var n=function(e){var t,r,n={},i=e.elements;for(r=0;r=0||So(l,n)?(s&&Di(o[e])&&o[e].classList.remove("frm_hidden"),o[e].classList.add("frm-search-result")):(o[e].classList.add("frm_hidden"),o[e].classList.remove("frm-search-result"))}(t=document.querySelector("#frm-insert-fields"))&&t.querySelectorAll(":scope > .frm-with-line").forEach((function(e){var t=e.nextElementSibling;if(t){var r=t.querySelectorAll(":scope > li.frmbutton"),n=Array.from(r).every((function(e){return e.classList.contains("frm_hidden")}));e.classList.toggle("frm_hidden",n)}})),jQuery(this).trigger("frmAfterSearch")}function So(e,t){return"s"!==t&&"s"!==e[e.length-1]&&(e+"s").indexOf(t)>=0}function Ao(e){e.stopPropagation()}function Io(e,t){var r=document.createEvent("HTMLEvents");r.initEvent(t,!1,!0),e.dispatchEvent(r)}function Bo(e,t){var r,n=new XMLHttpRequest,i="string"==typeof e?e:Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&");return n.open("post",ajaxurl,!0),n.onreadystatechange=function(){if(n.readyState>3&&200==n.status){r=n.responseText;try{r=JSON.parse(r)}catch(e){}t(r)}},n.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.setRequestHeader("Content-type","application/x-www-form-urlencoded"),n.send(i),n}function Co(e,t){e.classList.add("frm-fade"),setTimeout(t,1e3)}function qo(e){jQuery(e).css("visibility","hidden")}function No(e){jQuery(e).css("visibility","visible")}function To(e,t){var r=jQuery(e);if(!r.length)return!1;void 0===t&&(t="550px");var n={dialogClass:"frm-dialog",modal:!0,autoOpen:!1,closeOnEscape:!0,width:t,resizable:!1,draggable:!1,open:function(){var e,t;jQuery(".ui-dialog-titlebar").addClass("frm_hidden").removeClass("ui-helper-clearfix"),jQuery("#wpwrap").addClass("frm_overlay"),jQuery(".frm-dialog").removeClass("ui-widget ui-widget-content ui-corner-all"),r.removeClass("ui-dialog-content ui-widget-content"),e=r,t=function(){e.dialog("close")},jQuery(".ui-widget-overlay").on("click",t),e.on("click","a.dismiss",t)},close:function(){jQuery("#wpwrap").removeClass("frm_overlay"),jQuery(".spinner").css("visibility","hidden"),this.removeAttribute("data-option-type");var e=document.getElementById("bulk-option-type");e&&(e.value="")}};return r.dialog(n),r}function Oo(e,t){if("#"===t){var r=document.getElementById(e),n=r.style.display;r.style.display="none"===n?"block":"none"}else e.is(":visible")?e.hide():e.show()}function Do(){window.onbeforeunload=null;var e=jQuery(window);e.off("beforeunload.widgets"),e.off("beforeunload.edit-post")}function Mo(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);if(null!==t&&"form"===t.dataset.type)if(t=jQuery(t),this.options[this.selectedIndex].value){t.find(".frm-not-set")[0].classList.add("frm_hidden");var r=t.find(".frm-embed-message");r.html(r.data("embedmsg")+this.options[this.selectedIndex].text),t.find(".frm-embed-field-placeholder")[0].classList.remove("frm_hidden")}else t.find(".frm-not-set")[0].classList.remove("frm_hidden"),t.find(".frm-embed-field-placeholder")[0].classList.add("frm_hidden")}function Fo(){var e=jQuery(this).closest(".frm-single-settings"),t=e.find(".frmjs_product_choices"),r=e.find(".frm_prod_options_heading"),n=this.options[this.selectedIndex].value;t.removeClass("frm_prod_type_single frm_prod_type_user_def"),r.removeClass("frm_prod_user_def"),"single"===n?t.addClass("frm_prod_type_single"):"user_def"===n&&(t.addClass("frm_prod_type_user_def"),r.addClass("frm_prod_user_def"))}function Ho(e){var t=document.getElementById("frm_field_id_"+e);return null!==t&&"product"===t.getAttribute("data-type")}function Po(){var t=function(e,t){return window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]},r=function(e,t,r){window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]=r},n=[1,2,3,4,5,6,7,8,9,10,11,12].map((function(e){return"frm"+e})),i=["first","middle","last"];document.addEventListener("change",(function(o){o.target.matches(".frm_name_layout_dropdown")&&function(o){var a,l=o.target.value.split("_"),s=o.target.dataset.fieldId,d=document.querySelector("#field_"+s+"_inner_container .frm_combo_inputs_container"),c=(a=l.length,"frm"+parseInt(12/a));i.forEach((function(t){var i,o=d.querySelector('[data-sub-field-name="'+t+'"]');o&&(o.classList.add("frm_hidden"),(i=o.classList).remove.apply(i,e(n)),r(s,t,o))})),l.forEach((function(e){var r=t(s,e);r&&(r.classList.remove("frm_hidden"),r.classList.add(c),d.append(r))})),i.forEach((function(e){var t=document.querySelector(".frm_sub_field_options-"+e+'[data-field-id="'+s+'"]');t&&(t.classList.add("frm_hidden"),r(s,e+"_options",t))})),l.forEach((function(e){var r=t(s,e+"_options");r&&r.classList.remove("frm_hidden")}))}(o)}),!1)}function zo(e,t){var r,n,i,o=!1,a=!1;(r=t.newOption?(new DOMParser).parseFromString(t.newOption,"text/html").body.childNodes[0]:t).querySelectorAll("svg").forEach((function(e,t){(n=e.getElementsByTagNameNS("http://www.w3.org/2000/svg","use")[0])&&("#frm_drag_icon"===(i=n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("href"))&&(o=!0),"#frm_save_icon"===i&&(a=!0))})),o||r.prepend(b.drag.cloneNode(!0)),r.querySelector("[id^=field_key_".concat(e,"-]"))&&!a&&r.querySelector("[id^=field_key_".concat(e,"-]")).after(b.save.cloneNode(!0)),t.newOption&&(t.newOption=r)}function Ro(){var e=document.getElementById("frm_leave_email").value.trim();if(""!==e)if(!1!==/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e)){var t=jQuery("#frmapi-email-form").find("form"),r=t.find('[type="email"]').not(".frm_verify");if(r.length){if(document.getElementById("frm_empty_inbox")){document.getElementById("frm-add-my-email-address").remove();var n=document.getElementById("frm_leave_email_wrapper");if(n){n.classList.add("frm_hidden");var i=c({className:"frm-wait frm_spinner"});i.style.visibility="visible",i.style.float="none",i.style.width="unset",n.parentElement.insertBefore(i,n.nextElementSibling)}}r.val(e),jQuery.ajax({type:"POST",url:t.attr("action"),data:t.serialize()+"&action=frm_forms_preview"}).done((function(e){if(-1!==jQuery(e).find(".frm_message").text().trim().indexOf("Thanks!")){var t=document.getElementById("frmapi-email-form").parentElement.querySelector(".frm_spinner");t&&t.remove(),wp.hooks.applyFilters("frm_thank_you_on_signup",!0)&&document.getElementById("frm_leave_email_wrapper").replaceWith(c(B("Thank you for signing up!","formidable")))}else vo("invalid")}))}}else vo("invalid");else vo("empty")}function Go(e){if(D||e.stopPropagation(),!(e.target.classList.contains("frm-show-box")||e.target.parentElement&&e.target.parentElement.classList.contains("frm-show-box"))){var t=document.getElementById("frm_adv_info");t&&(t.dataset.fills===e.target.id&&void 0!==e.target.id||e.target.closest("#frm_adv_info")||"none"===t.style.display||Wi(t))}}return{init:function(){var t,r,n,i,o,a,l;!function(){jQuery(document).on("click","#frm-add-my-email-address",(function(e){e.preventDefault(),Ro()}));var e=document.getElementById("frm_empty_inbox"),t=document.getElementById("frm_leave_email");if(e&&t){var r=document.getElementById("frm-leave-email-modal");r.classList.remove("frm_hidden"),r.querySelector(".frm_modal_footer").classList.add("frm_hidden"),t.addEventListener("keyup",(function(e){if("Enter"===e.key){var t=document.getElementById("frm-add-my-email-address");t&&t.click()}}))}}(),r=document.querySelector(".frm-admin-footer-links"),n=null!==(t=document.querySelector(".frm_page_container"))&&void 0!==t?t:document.getElementById("wpbody-content"),r&&n&&(n.appendChild(r),r.classList.remove("frm_hidden")),N={},jQuery(".wp-admin").on("click",(function(e){var t=jQuery(e.target),r=jQuery(".dropdown.open");!r.length||t.hasClass("dropdown")||t.closest(".dropdown").length||r.removeClass("open")})),jQuery("#frm_bs_dropdown:not(.open) a").on("click",Lt),void 0===k&&(k=jQuery(document.getElementById("form_id")).val()),document.querySelectorAll(".frm-warning-dismiss").forEach((function(e){_(e,St)})),frmAdminBuild.inboxBannerInit(),j.length>0?frmAdminBuild.buildInit():null!==document.getElementById("frm_notification_settings")?frmAdminBuild.settingsInit():null!==document.getElementById("frm_styling_form")?frmAdminBuild.styleInit():null!==document.getElementById("form_global_settings")?frmAdminBuild.globalSettingsInit():null!==document.getElementById("frm_export_xml")?frmAdminBuild.exportInit():null!==document.querySelector(".frm-inbox-wrapper")?frmAdminBuild.inboxInit():null!==document.getElementById("frm-welcome")?frmAdminBuild.solutionInit():(function(){if(document.body.classList.contains("frm-admin-page-entries")){var e=document.getElementById("screen-options-wrap");if(e){var t=d({className:"frm_warning_style",text:B("Only 10 columns can be selected at a time.","formidable")});t.style.margin=0;var r=e.querySelector("legend");r.parentNode.insertBefore(t,r.nextElementSibling);var n=Array.from(e.querySelectorAll('input[type="checkbox"]')),i=function(){n.reduce((function(e,t){return t.checked?e+1:e}),0)>=10?(t.classList.remove("frm_hidden"),n.forEach((function(e){e.checked||(e.parentNode.classList.add("frm_noallow"),e.disabled=!0)}))):t.classList.add("frm_hidden")};i(),n.forEach((function(e){e.addEventListener("change",(function(e){e.target.checked?i():(t.classList.add("frm_hidden"),n.forEach((function(e){e.parentNode.classList.remove("frm_noallow"),e.disabled=!1})))}))}))}}}(),jo(),jQuery("[data-frmprint]").on("click",(function(){return window.print(),!1}))),jQuery(document).on("change","select[data-toggleclass], input[data-toggleclass]",Qi),function(){function e(e){var t=e.options[e.selectedIndex];e.querySelectorAll("option[data-dependency]:not([data-dependency-skip])").forEach((function(e){var r=document.querySelector(e.dataset.dependency);null==r||r.classList.toggle("frm_hidden",t!==e)}))}document.querySelectorAll("select.frm_select_with_dependency").forEach(e),frmDom.util.documentOn("change","select.frm_select_with_dependency",(function(t){return e(t.target)}))}(),(jQuery(document.getElementById("frm_adv_info")).length>0||jQuery(".frm_field_list").length>0)&&frmAdminBuild.panelInit(),i=jQuery(".wrap, .frm_wrap"),o=document.getElementById("frm_confirm_modal"),a=!1,l=!1,jQuery(o).on("click","[data-deletefield]",wr),jQuery(o).on("click","[data-removeid]",G),jQuery(o).on("click","[data-trashtemplate]",ko),i.on("click",".frm_remove_tag, .frm_remove_form_action",G),i.on("click","a[data-frmverify]",M),i.on("click","a[data-frmtoggle]",P),i.on("click","a[data-frmhide], a[data-frmshow]",z),i.on("change","input[data-frmhide], input[data-frmshow]",z),i.on("click",".widget-top,a.widget-action",$),i.on("mouseenter.frm",".frm_bstooltip, .frm_help",(function(){jQuery(this).off("mouseenter.frm"),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(this).tooltip("show")})),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(document).on("click","#doaction, #doaction2",(function(e){var t="doaction"===this.id?"top":"bottom",r=document.getElementById("bulk-action-selector-"+t),n=document.getElementById("confirm-bulk-delete-"+t);if(null!==r&&null!==n){if(a=this,!l&&"bulk_delete"===r.value)return e.preventDefault(),F(n),!1}else a=!1})),jQuery(document).on("click","#frm-confirmed-click",(function(e){if(!1!==a&&!e.target.classList.contains("frm-btn-inactive"))return"confirm-bulk-delete"===this.getAttribute("href")?(e.preventDefault(),l=!0,a.click(),!1):void 0})),function(){var e=To("#frm_upgrade_modal");function t(t){var r,n,i;if((r=t.target).classList){var o=r.classList.contains("frm_show_expired_modal")||null!==r.querySelector(".frm_show_expired_modal")||r.closest(".frm_show_expired_modal");if("change"===t.type&&r.classList.contains("frm_select_with_upgrade")){var a=r.options[r.selectedIndex];a&&a.dataset.upgrade&&(r=a)}if(!r.dataset.upgrade){var l=r.closest("[data-upgrade]");if(!l){if(!(l=r.closest(".frm_field_box")))return;r.dataset.upgrade=""}r=l}if(o)wp.hooks.doAction("frm_show_expired_modal",r);else{var s=r.dataset.upgrade;if(s&&!r.classList.contains("frm_show_upgrade_tab")){t.preventDefault();var d=e.get(0),c=d.querySelector(".frm_lock_icon");c&&(c.style.display="block",c.classList.remove("frm_lock_open_icon"),c.querySelector("use").setAttribute("href","#frm_lock_icon"));var f="frm_upgrade_modal_image",u=document.getElementById(f);u&&u.remove(),r.dataset.image&&(c&&(c.style.display="none"),c.parentNode.insertBefore(m({id:f,src:frmGlobal.url+"/images/"+r.dataset.image}),c));var _=d.querySelector(".license-level");_&&(_.textContent=Vn(r)),Jn(r,"modal",s),d.querySelector(".frm_are_not_installed").style.display=r.dataset.image?"none":"inline-block",d.querySelector(".frm_feature_label").textContent=s,d.querySelector("h2").style.display="block",e.dialog("open");var p=d.querySelector(".button-primary:not(.frm-oneclick-button)");n=p.getAttribute("href").replace(/(medium=)[a-z_-]+/gi,"$1"+r.getAttribute("data-medium")),null===(i=r.getAttribute("data-content"))&&(i=""),n=n.replace(/(content=)[a-z_-]+/gi,"$1"+i),p.setAttribute("href",n)}}}}!1!==e&&(document.addEventListener("click",t),frmDom.util.documentOn("change","select.frm_select_with_upgrade",t))}(),frmDom.util.documentOn("click","[data-modal-title]",Un);var s=jQuery(document.getElementById("frm_shortcodediv"));s.length>0&&(jQuery("a.edit-frm_shortcode").on("click",(function(){return s.is(":hidden")&&(s.slideDown("fast"),this.style.display="none"),!1})),jQuery(".cancel-frm_shortcode","#frm_shortcodediv").on("click",(function(){return s.slideUp("fast"),s.siblings("a.edit-frm_shortcode").show(),!1}))),jQuery(document).on("click","#frm-nav-tabs a",W),jQuery(".post-type-frm_display .frm-nav-tabs a, .frm-category-tabs a").on("click",(function(){var e=this.classList.contains("frm_show_upgrade_tab");if(!this.classList.contains("frm_noallow")||e)return e&&Kn(this),U(this),!1})),U(jQuery(".starttab a"),"auto"),jQuery(document).on("click","#frm-fid-search-menu a",(function(){var e=this.id.replace("fid-","");return jQuery('select[name="fid"]').val(e),Hn(document.getElementById("posts-filter")),!1})),jQuery(".frm_select_box").on("click focus",(function(){this.select()})),jQuery(document).on("input search change",".frm-auto-search:not(#frm-form-templates-page #template-search-input)",Lo),jQuery(document).on("focusin click",".frm-auto-search",Ao);var c=jQuery(".frm-auto-search");""!==c.val()&&c.trigger("keyup"),FrmFormsConnect.init(),jQuery(document).on("click",".frm-install-addon",fo),jQuery(document).on("click",".frm-activate-addon",co),jQuery(document).on("click",".frm-solution-multiple",so),jQuery("button, input[type=submit]").on("click",Do),document.addEventListener("click",(function(e){if("LABEL"===e.target.nodeName){var t=e.target.getAttribute("for");if(t){var r=document.getElementById(t);if(r&&r.nextElementSibling){var n=r.nextElementSibling.querySelector("button.dropdown-toggle.multiselect");n&&setTimeout((function(){return n.click()}),0)}}}})),frmAdminBuild.hooks.addFilter("frm_before_embed_modal",(function(e,t){var r,n,i=t.element;if("form"!==t.type)return e;var o=i.closest("tr");if(o)r=parseInt(o.querySelector(".column-id").textContent),n=o.querySelector(".column-form_key").textContent;else{r=document.getElementById("form_id").value;var a=document.getElementById("frm_form_key");if(a)n=a.value;else{var l=document.getElementById("frm-previewDrop");l&&(n=l.nextElementSibling.querySelector(".dropdown-item a").getAttribute("href").split("form=")[1])}}return[r,n]})),document.querySelectorAll("#frm-show-fields > li, .frm_grid_container li").forEach((function(t,r){t.addEventListener("click",(function(){var t,r,n;r=(null===(t=this.querySelector("li"))||void 0===t?void 0:t.dataset.fid)||this.dataset.fid,(n=document.querySelectorAll("[id^=frm_delete_field_".concat(r,"-]"))).length<2||e(n).slice(1).forEach((function(e,t){e.classList.contains("frm_other_option")||zo(r,e)}))}))}));var f=document.getElementById("frm_small_screen_proceed_button");f&&_(f,(function(){var e;null===(e=document.getElementById("frm_small_device_message_container"))||void 0===e||e.remove(),g("small_screen_proceed",new FormData)}));var u=document.getElementById("frm_sale_banner"),p=null==u?void 0:u.querySelector(".dismiss");u&&(_(u,(function(e){e.target.closest(".dismiss")||(window.location.href=u.getAttribute("data-url"))})),p&&_(p,(function(){u.remove();var e=new FormData;g("sale_banner_dismiss",e)})))},buildInit:function(){var e,t,r;jQuery("#frm_builder_page").on("mouseup","*:not(.frm-show-box)",Go),y=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return frmDom.util.debounce(e,t)}(oe,10),h=document.getElementById("post-body-content"),v=jQuery(h),jQuery(".frm_field_loading").length&&Le(jQuery(".frm_field_loading").first().attr("id")),V("ul.frm_sorting"),document.querySelectorAll(".field_type_list > li:not(.frm_show_upgrade)").forEach(X),jQuery("ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a").disableSelection(),jQuery(".frm_submit_ajax").on("click",Fn),jQuery(".frm_submit_no_ajax").on("click",zn),Gn(),jQuery("a.edit-form-status").on("click",kn),jQuery(".cancel-form-status").on("click",Ln),jQuery(".save-form-status").on("click",(function(){var e=jQuery(document.getElementById("form_change_status")).val();return jQuery('input[name="new_status"]').val(e),jQuery(document.getElementById("form-status-display")).html(e),jQuery(".cancel-form-status").trigger("click"),!1})),jQuery(".frm_form_builder form").first().on("submit",(function(){jQuery(".inplace_field").trigger("blur")})),lo(),Tr(),e=jQuery(w),t=document.getElementById("frm_form_editor_container"),e.on("click",".frm_add_logic_row",Er),e.on("click",".frm_add_watch_lookup_row",Lr),e.on("change",".frm_get_values_form",qr),e.on("change",".frm_logic_field_opts",bn),e.on("frm-multiselect-changed",'select[name^="field_options[admin_only_"]',Sn),jQuery(document.getElementById("frm-insert-fields")).on("click",".frm_add_field",Ae),j.on("click",".frm_clone_field",Ce),e.on("blur",'input[id^="frm_calc"]',Ye),e.on("change","input.frm_format_opt, input.frm_max_length_opt",lt),e.on("change click","[data-changeme]",ot),e.on("click","input.frm_req_field",st),e.on("click",".frm_mark_unique",ct),e.on("change",".frm_repeat_format",Vr),e.on("change",".frm_repeat_limit",Kr),e.on("change",".frm_js_checkbox_limit",Jr),e.on("input",'input[name^="field_options[add_label_"]',(function(){Yr(this,"add")})),e.on("input",'input[name^="field_options[remove_label_"]',(function(){Yr(this,"remove")})),e.on("change",'select[name^="field_options[data_type_"]',Nr),jQuery(t).on("click",".frm-collapse-page",Or),jQuery(t).on("click",".frm-collapse-section",Fr),e.on("click",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",Hr),e.on("keydown",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",(function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),Hr.call(this,e))})),jQuery(t).on("show.bs.dropdown hide.bs.dropdown",ze),e.on("click",".frm_toggle_sep_values",yt),e.on("click",".frm_toggle_image_options",ht),e.on("click",".frm_remove_image_option",Et),e.on("click",".frm_choose_image_box",xt),e.on("change",".frm_hide_image_text",Qt),e.on("change",".frm_field_options_image_size",jt),e.on("click",".frm_multiselect_opt",kt),j.on("mousedown","input, textarea, select",At),j.on("click","input[type=radio], input[type=checkbox]",At),j.on("click",".frm_delete_field",Nt),j.on("click",".frm_select_field",Tt),jQuery(document).on("click",".frm_delete_field_group",Ot),jQuery(document).on("click",".frm_clone_field_group",Dt),jQuery(document).on("click","#frm_field_group_controls > span:first-child",Mt),jQuery(document).on("click",".frm-row-layout-option",Yt),jQuery(document).on("click",".frm-merge-fields-into-row .frm-row-layout-option",Xt),jQuery(document).on("click",".frm-custom-field-group-layout",er),jQuery(document).on("click",".frm-merge-fields-into-row .frm-custom-field-group-layout",rr),jQuery(document).on("click",".frm-break-field-group",lr),j.on("click","#frm_field_group_popup .frm_grid_container input",sr),jQuery(document).on("click",".frm-cancel-custom-field-group-layout",dr),jQuery(document).on("click",".frm-save-custom-field-group-layout",fr),j.on("click","ul.frm_sorting",ur),jQuery(document).on("click",".frm-merge-fields-into-row",vr),jQuery(document).on("click",".frm-delete-field-groups",jr),j.on("click",'.frm-field-action-icons [data-toggle="dropdown"]',(function(){this.closest("li.form-field").classList.add("frm-field-settings-open"),jQuery(document).on("click","#frm_builder_page",Oe)})),j.on("mousemove","ul.frm_sorting",De),j.on("show.bs.dropdown",".frm-field-action-icons",He),jQuery(document).on("show.bs.dropdown","#frm_field_group_controls",Pe),e.on("click",".frm_single_option a[data-removeid]",It),e.on("mousedown",".frm_single_option input[type=radio]",Bt),e.on("focusin",".frm_single_option input[type=text]",Ct),e.on("click",".frm_add_opt",_t),e.on("change",".frm_single_option input",Zr),e.on("change",".frm_image_id",Zr),e.on("change",".frm_toggle_mult_sel",pt),e.on("focusin",".frm_classes + .frm-token-proxy-input",Bi),j.on("click",".frm_primary_label",zr),j.on("click",".frm_description",Rr),j.on("click","li.ui-state-default:not(.frm_noallow)",$r),j.on("dblclick","li.ui-state-default",Ur),e.on("change",".frm_tax_form_select",Xr),e.on("change","select.conf_field",ft),e.on("change",".frm_get_field_selection",jn),e.on("click",".frm-show-inline-modal",Bn),e.on("click",".frm-inline-modal .dismiss",qn),jQuery(document).on("change","[data-frmchange]",Tn),document.addEventListener("click",Nn),e.on("change",".frm_include_extras_field",et),e.on("change",'select[name^="field_options[form_select_"]',Mo),jQuery(document).on("submit","#frm_js_build_form",Fi),jQuery(document).on("change","#frm_builder_page input:not(.frm-search-input):not(.frm-custom-grid-size-input), #frm_builder_page select, #frm_builder_page textarea",Mi),nt(),jQuery(document).on("change",".frmjs_prod_data_type_opt",Fo),jQuery(document).on("focus",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Ar),jQuery(document).on("blur",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Br),frmDom.util.documentOn("click",".frm-show-field-settings",$r),frmDom.util.documentOn("change","select.frm_format_dropdown, select.frm_phone_type_dropdown",Wr),e.on("keydown",'.frm_single_option input[name^="field_options["], .frm_single_option input[name^="rows_"]',(function(e){"Enter"===e.key&&function(e){var t=e.closest(".frm_single_option").parentElement.querySelectorAll('.frm_single_option input[name^="field_options[" ], .frm_single_option input[name^="rows_"]'),r=Array.from(t),n=r.indexOf(e);if(!(n<0)){var i=r.slice(n+1).find((function(e){return null!==e.offsetParent}));if(i){i.focus();var o=i.value.length;i.setSelectionRange(o,o)}}}(e.currentTarget)})),!1!==(r=To("#frm-bulk-modal","700px"))&&(jQuery(".frm-insert-preset").on("click",mt),jQuery(w).on("click","a.frm-bulk-edit-link",(function(e){e.preventDefault();var t,n,i,o,a,l="",s=jQuery(this).closest("[data-fid]").data("fid"),d=pn(s),c=Ho(s);if(o=document.getElementById("frm_field_"+s+"_opts")){for(a=o.getElementsByTagName("li"),document.getElementById("bulk-field-id").value=s,t=0;t=a.length-1&&(document.getElementById("frm_bulk_options").value=l);return r.dialog("open"),!1}})),jQuery("#frm-update-bulk-opts").on("click",(function(){var e=document.getElementById("bulk-field-id").value;document.getElementById("bulk-option-type").value||(this.classList.add("frm_loading_button"),frmAdminBuild.updateOpts(e,document.getElementById("frm_bulk_options").value,r),Mi())}))),In(),document.addEventListener("frm_added_field",In),Be(),Po(),xn(),frmDom.util.documentOn("change",".frm_show_password_setting_input",(function(e){var t=e.target.getAttribute("data-fid"),r=document.getElementById("frm_field_id_"+t);r&&r.classList.toggle("frm_disabled_show_password",!e.target.checked)})),document.addEventListener("scroll",Ti,!0),document.addEventListener("change",qi),document.querySelector(".frm_form_builder").addEventListener("mousedown",(function(e){e.shiftKey&&e.preventDefault()})),wp.hooks.addAction("frmShowedFieldSettings","formidableAdmin",(function(e,t){t.querySelectorAll(".frm-collapse-me").forEach(Pr)}),9999)},settingsInit:function(){var e,t,r,n,i=jQuery(document.getElementById("frm_notification_settings"));i.on("click",".frm_email_buttons",oi),i.on("click",".frm_remove_field",ai),i.on("change",".frm_to_row, .frm_from_row",li),i.on("change",".frm_tax_selector",ji),i.on("change","select.frm_single_post_field",mi),i.on("change","select.frm_toggle_post_content",_i),i.on("change","select.frm_dyncontent_opt",pi),i.on("change",".frm_post_type",gi),i.on("click",".frm_add_postmeta_row",vi),i.on("click",".frm_add_posttax_row",hi),i.on("click",".frm_toggle_cf_opts",wi),i.on("click",".frm_duplicate_form_action",Zn),jQuery(".frm_actions_list").on("click",".frm_active_action",ti),jQuery("#frm-show-groups, #frm-hide-groups").on("click",ri),lo(),jQuery("ul.frm_actions_list li").each((function(){si(jQuery(this).children("a").data("actiontype"));var e=jQuery(this).find("i");"none"!==e.css("background-image")&&e.addClass("frm-inverse")})),jQuery(".frm_submit_settings_btn").on("click",xi),Gn(),(e=jQuery(".frm_form_settings")).on("click",".frm_add_form_logic",ui),e.on("click",".frm_already_used",fi),document.addEventListener("click",(function(e){var t=e.target;t.closest(".frm_image_preview_wrapper")&&(t.closest(".frm_choose_image_box")?xt.bind(t)(e):t.closest(".frm_remove_image_option")&&Et.bind(t)(e))})),e.on("mouseup","*:not(.frm-show-box)",Go),jQuery(document.getElementById("no_save")).on("change",(function(){this.checked&&!0!==confirm(a.no_save_warning)&&jQuery(this).attr("checked",!1)})),jQuery('select[name="options[edit_action]"]').on("change",Xn),t=document.getElementById("logged_in"),jQuery(t).on("change",(function(){this.checked?No(".hide_logged_in"):qo(".hide_logged_in")})),r=jQuery(document.getElementById("frm_cookie_expiration")),jQuery(document.getElementById("frm_single_entry_type")).on("change",(function(){"cookie"===this.value?r.fadeIn("slow"):r.fadeOut("slow")}));var o=document.getElementById("single_entry");jQuery(o).on("change",(function(){this.checked?No(".hide_single_entry"):qo(".hide_single_entry"),this.checked&&"cookie"===jQuery(document.getElementById("frm_single_entry_type")).val()?r.fadeIn("slow"):r.fadeOut("slow")})),jQuery(".hide_save_draft").hide();var l=jQuery(document.getElementById("save_draft"));l.on("change",(function(){this.checked?jQuery(".hide_save_draft").fadeIn("slow"):jQuery(".hide_save_draft").fadeOut("slow")})),Pn(l),n=document.getElementById("editable"),jQuery(n).on("change",(function(){this.checked?(jQuery(".hide_editable").fadeIn("slow"),Pn(document.getElementById("edit_action"))):(jQuery(".hide_editable").fadeOut("slow"),jQuery(".edit_action_message_box").fadeOut("slow"))})),jQuery(document).on("change","#protect_files",(function(){this.checked?jQuery(".hide_protect_files").fadeIn("slow"):jQuery(".hide_protect_files").fadeOut("slow")})),jQuery(document).on("frm-multiselect-changed","#protect_files_role",Sn),jQuery(document).on("submit",".frm_form_settings",Hi),jQuery(document).on("change","#form_settings_page input:not(.frm-search-input), #form_settings_page select, #form_settings_page textarea",Mi),jo(),jQuery(document).on("frm-action-loaded",Vi),frmDom.util.documentOn("change",'.frm_on_submit_type input[type="radio"]',(function(e){if(e.target.checked){var t=e.target.closest(".frm_form_action_settings");t.querySelectorAll(".frm_on_submit_dependent_setting:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden")})),t.querySelectorAll(".frm_on_submit_dependent_setting[data-show-if-"+e.target.value+"]").forEach((function(e){e.classList.remove("frm_hidden")})),t.setAttribute("data-on-submit-type",e.target.value)}}))},panelInit:function(){var e,t,r,n;jQuery(".frm_wrap, #postbox-container-1").on("click",".frm_insert_code",Ei),jQuery(document).on("change",".frm_insert_val",(function(){ki(jQuery(this).data("target"),jQuery(this).val()),jQuery(this).val("")})),jQuery(document).on("click change",'[name="frm-id-key-condition"]',Ai),jQuery(document).on("keyup change",".frm-build-logic",Ii),Yn(),jQuery(document).on("frmElementAdded",(function(e,t){Yn(t)})),jQuery(document).on("mousedown",".frm-show-box",Ci),t=document.getElementById("form_settings_page"),r=document.body.classList.contains("post-type-frm_display"),n=document.getElementById("frm_insert_fields_tab"),(null!==t||r||D)&&jQuery(document).on("focusin","form input, form textarea",(function(e){var i,o,a,l;if(e.stopPropagation(),(o=this).parentNode.parentNode.classList.contains("frm_has_shortcodes")&&(Wi(),"use"===(a=$i(o)).tagName?-1===(a=a.firstElementChild).getAttributeNS("http://www.w3.org/1999/xlink","href").indexOf("frm_close_icon")&&Oi(a,"nofocus"):a.classList.contains("frm_close_icon")||Oi(a,"nofocus")),jQuery(this).is(":not(:submit, input[type=button], .frm-search-input, input[type=checkbox])")){if(jQuery(e.target).closest("#frm_adv_info").length)return;if(null!==t||D)i=jQuery("#frm_html_tab"),jQuery(this).closest("#html_settings").length>0?(i.show(),i.siblings().hide(),jQuery("#frm_html_tab a").trigger("click"),function(e){var t,r=e.id;void 0!==r&&-1===r.indexOf("-search-input")&&(jQuery("#frm-adv-info-tab").attr("data-fills",r.trim()),e.classList.contains("field_custom_html")&&(r="field_custom_html"),t=["after_html","before_html","submit_html","field_custom_html"],jQuery.inArray(r,t)>=0&&(jQuery(".frm_code_list li:not(.show_"+r+")").addClass("frm_hidden"),jQuery(".frm_code_list li.show_"+r).removeClass("frm_hidden")))}(this)):((l=jQuery(".frm-category-tabs li"))[0]&&(l[0].style.display=""),n.click(),i.hide(),i.siblings().show());else if(r){var s=new CustomEvent("frm_legacy_views_handle_field_focus");s.frmData={idAttrValue:this.id},document.dispatchEvent(s)}}})),jQuery(".frm_wrap, #postbox-container-1").on("mousedown","#frm_adv_info a, .frm_field_list a",(function(e){e.preventDefault()})),(e=jQuery("#frm_adv_info")).on("click",".subsubsub a.frmids",(function(e){Ui("frmids",e)})),e.on("click",".subsubsub a.frmkeys",(function(e){Ui("frmkeys",e)}))},inboxInit:function(){var e;jQuery(".frm_inbox_dismiss").on("click",(function(e){var t=this.parentNode.parentNode,r=t.getAttribute("data-message"),n=this.getAttribute("href"),i=t.cloneNode(!0),o=document.querySelector(".frm-dismissed-inbox-messages");if("free_templates"!==r||this.classList.contains("frm_inbox_dismiss")){e.preventDefault(),data={action:"frm_inbox_dismiss",key:r,nonce:frmGlobal.nonce};var a="frm_inbox_slide_in"===t.id;a&&(t.classList.remove("s11-fadein"),t.classList.add("s11-fadeout"),t.addEventListener("animationend",(function(){return t.remove()}),{once:!0})),Bo(data,(function(){if(!a)return"#"!==n?(window.location=n,!0):void Co(t,(function(){var e;null!==o&&(i.classList.remove("frm-fade"),null===(e=i.querySelector(".frm-inbox-message-heading"))||void 0===e||e.removeChild(i.querySelector(".frm-inbox-message-heading .frm_inbox_dismiss")),o.append(i)),1===t.parentNode.querySelectorAll(".frm-inbox-message-container").length&&(document.getElementById("frm_empty_inbox").classList.remove("frm_hidden"),t.parentNode.closest(".frm-active").classList.add("frm-empty-inbox"),ho()),t.parentNode.removeChild(t)}))}))}})),!1===(null===(e=document.getElementById("frm_empty_inbox"))||void 0===e?void 0:e.classList.contains("frm_hidden"))&&ho()},solutionInit:function(){jQuery(document).on("submit","#frm-new-template",Qo)},styleInit:function(){var e=jQuery(".frm_image_preview_wrapper");e.on("click",".frm_choose_image_box",xt),e.on("click",".frm_remove_image_option",Et),wp.hooks.doAction("frm_style_editor_init")},customCSSInit:function(){console.warn("Calling frmAdminBuild.customCSSInit is deprecated.")},globalSettingsInit:function(){var e;jQuery(document).on("click","[data-frmuninstall]",Ki),lo(),null!==(e=document.getElementById("licenses_settings"))&&jQuery(e).on("click",".edd_frm_save_license",Ji),jQuery(document).on("click","#frm-new-template button",wo),jQuery("#frm-dismissable-cta .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_lite_settings_upgrade",nonce:frmGlobal.nonce}),jQuery(".settings-lite-cta").remove()}));var t=document.getElementById("frm_re_type");t&&t.addEventListener("change",Eo),document.querySelector(".frm_captchas").addEventListener("change",(function(e){var t,r=null===(t=document.querySelector('.frm_captchas input[checked="checked"]'))||void 0===t?void 0:t.value,n=e.target.value!==r;document.querySelector(".captcha_settings .frm_note_style").classList.toggle("frm_hidden",!n)})),frmDom.util.documentOn("submit",".frm_settings_form",(function(){return E=0}));var r=document.getElementById("manage_styles_settings");r&&r.addEventListener("change",(function(e){var t=e.target;"SELECT"===t.nodeName&&t.dataset.name&&!t.getAttribute("name")&&t.setAttribute("name",t.dataset.name)}));var n=document.getElementById("payments_settings"),i=null==n?void 0:n.querySelectorAll('[name="frm_payment_section"]');i&&i.forEach((function(e){e.addEventListener("change",(function(){if(e.checked){var t=n.querySelector('label[for="'.concat(e.id,'"]'));t&&t.setAttribute("aria-selected","true"),i.forEach((function(t){if(t!==e){var r=n.querySelector('label[for="'.concat(t.id,'"]'));r&&r.setAttribute("aria-selected","false")}}))}}))}))},exportInit:function(){jQuery(".frm_form_importer").on("submit",Yi),jQuery(document.getElementById("frm_export_xml")).on("submit",Zi),jQuery("#frm_export_xml input, #frm_export_xml select").on("change",eo),jQuery('input[name="frm_import_file"]').on("change",to),document.querySelector('select[name="format"]').addEventListener("change",no),jQuery('input[name="frm_export_forms[]"]').on("click",ao),lo(),jQuery(".frm-feature-banner .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_dismiss_migrator",plugin:this.id,nonce:frmGlobal.nonce}),this.parentElement.remove()})),oo(ro()),document.querySelector("#frm-export-select-all").addEventListener("change",(function(e){document.querySelectorAll('[name="frm_export_forms[]"]').forEach((function(t){return t.checked=e.target.checked}))}))},inboxBannerInit:function(){var e=document.getElementById("frm_banner");if(e){var t=e.querySelector(".frm-banner-dismiss");document.addEventListener("click",(function(r){r.target===t&&Bo({action:"frm_inbox_dismiss",key:e.dataset.key,nonce:frmGlobal.nonce},(function(){jQuery(e).fadeOut(400,(function(){e.remove()}))}))}))}},updateOpts:function(e,t,r){var n=pn(e),i=Ho(e)?"frm_bulk_products":"frm_import_options";jQuery.ajax({type:"POST",url:ajaxurl,data:{action:i,field_id:e,opts:t,separate:n,nonce:frmGlobal.nonce},success:function(t){document.getElementById("frm_field_"+e+"_opts").innerHTML=t,wp.hooks.doAction("frm_after_bulk_edit_opts",e),rn(e),void 0!==r&&(r.dialog("close"),document.getElementById("frm-update-bulk-opts").classList.remove("frm_loading_button"))}})},triggerRemoveLogic:function(e,t){jQuery("#frm_logic_"+e+"_"+t+" .frm_remove_tag").trigger("click")},downloadXML:function(e,t,r){var n=ajaxurl+"?action=frm_"+e+"_xml&ids="+t;null!==r&&(n=n+"&is_template="+r),location.href=n},hooks:{applyFilters:function(e){for(var t,r=arguments.length,n=new Array(r>1?r-1:0),i=1;i1?r-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r){var n=k,i=0;"summary"===e&&(i=j.children('li[data-type="break"]').length>0?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:Object.assign(pe(e,0,n,i),{field_options:t}),success:function(t){r(t),setTimeout((function(){Qn(),Ue(t,!0);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:n})}),10)},error:je})}))},confirmLinkClick:F,handleInsertFieldByDraggingResponse:ye,handleAddFieldClickResponse:Ie,syncLayoutClasses:le}}(),jQuery(document).ready((function(){var e;frmAdminBuild.init(),frmDom.bootstrap.setupBootstrapDropdowns((function(e){var t,r,n=e.querySelector(".frm-dropdown-toggle");n&&(n.hasAttribute("role")||n.setAttribute("role","button"),n.hasAttribute("tabindex")||n.setAttribute("tabindex",0)),"UL"===e.tagName&&(r=(r=(r=(r=(r=(r=(t=e).outerHTML).replace("
            ","")).replaceAll("
          • ",'
          • ",""),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file +(()=>{function e(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||t(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r1&&(e="",t=""):0===i.indexOf("frm_postmeta_")&&(jQuery("#frm_postmeta_rows .frm_postmeta_row").length<2&&(e=".frm_add_postmeta_row.button"),jQuery(".frm_toggle_cf_opts").length&&jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().length&&(""!==e&&(e+=","),e+="#"+jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().attr("id")+" .frm_toggle_cf_opts"));var o=document.getElementById(i),a=jQuery(o);return a.fadeOut(300,(function(){var r;a.remove(),Mi(),""!==t&&jQuery(t).hide(),""!==e&&jQuery(e+" a,"+e).removeClass("frm_hidden").fadeIn("slow"),this.closest(".frm_form_action_settings")&&function(e){si(e);var t={type:e};wp.hooks.doAction("frm_after_action_removed",t)}(this.closest(".frm_form_action_settings").querySelector(".frm_action_name").value),null===(r=document.querySelector(".tooltip"))||void 0===r||r.remove()})),void 0!==r&&(r=jQuery(r)).fadeOut(400,(function(){r.remove()})),""!==e&&jQuery(this).closest(".frm_logic_rows").fadeOut("slow"),wp.hooks.doAction("frm_after_remove_this_tag",i,o),!1}}function $(e,t){void 0===t&&(t=this),Ze(t,!1);var r=jQuery(t).closest(".frm_form_action_settings"),n=e.target;if(r.length&&void 0!==n){var i=n.parentElement.className;if("string"==typeof i&&(i.indexOf("frm_email_icons")>-1||i.indexOf("frm_toggle")>-1))return void e.stopPropagation()}var o=r.children(".widget-inside");if(r.length&&o.find("p, div, table").length<1){var a=r.find('input[name$="[ID]"]').val(),l=r.find('input[name$="[post_excerpt]"]').val();l&&(o.html(''),r.find(".spinner").fadeIn("slow"),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_form_action_fill",action_id:a,action_type:l,nonce:frmGlobal.nonce},success:function(e){o.html(e),lo(),Yn("#"+r.attr("id")),jo(o),jQuery(t).trigger("frm-action-loaded"),wp.hooks.doAction("frm_filled_form_action",o)}}))}jQuery(t).closest(".frm_field_box").siblings().find(".widget-inside").slideUp("fast"),void 0!==t.className&&-1!==t.className.indexOf("widget-action")||jQuery(t).closest(".start_divider").length<1||((o=jQuery(t).closest("div.widget").children(".widget-inside")).is(":hidden")?o.slideDown("fast"):o.slideUp("fast"))}function W(){var e=this.getAttribute("href");if(void 0===e)return!1;var t=e.replace("#","."),r=jQuery(this);r.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),r.closest("div").children(".tabs-panel").not(e).not(t).hide();var n=document.getElementById(e.replace("#",""));return n&&(n.style.display="block"),"frm_insert_fields_tab"!==this.id||this.closest("#frm_adv_info")||Ke(),!1}function U(e,t){var r=(e=jQuery(e)).attr("href");if(void 0!==r){var n,i,o=r.replace("#",".");if(e.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),e.closest("div").find(".tabs-panel").length)e.closest("div").children(".tabs-panel").not(r).not(o).hide();else if(null!==document.getElementById("form_global_settings")){var a=e.data("frmajax");e.closest(".frm_wrap").find(".tabs-panel, .hide_with_tabs").hide(),void 0!==a&&"1"==a&&(n=r.replace("#",""),(i=jQuery(".frm_"+n+"_ajax")).length&&jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_settings_tab",tab:n.replace("_settings",""),nonce:frmGlobal.nonce},success:function(e){i.replaceWith(e)}}))}else jQuery("#frm-categorydiv .tabs-panel, .hide_with_tabs").hide();jQuery(r).show(),jQuery(o).show(),Wi(),"auto"!==t&&(jQuery(".frm_updated_message").hide(),jQuery(".frm_warning_style").hide()),jQuery(e).closest("#frm_adv_info").length||(jQuery(".frm_form_settings").length?jQuery(".frm_form_settings").attr("action","?page=formidable&frm_action=settings&id="+jQuery('.frm_form_settings input[name="id"]').val()+"&t="+r.replace("#","")):jQuery(".frm_settings_form").attr("action","?page=formidable-settings&t="+r.replace("#","")))}}function V(e){var t,r;document.querySelectorAll(e).forEach((function(e){K(e),Array.from(e.children).forEach((function(e){return X(e,".frm-move")}));var t=jQuery(e).children('[data-type="divider"]').children(".divider_section_only");t.length&&K(t)})),t=jQuery("#frm_builder_page"),r={items:".frm_sortable_field_opts li",axis:"y",opacity:.65,forcePlaceholderSize:!1,handle:".frm-drag",helper:function(e,t){return x=t.clone().insertAfter(t),t.clone()},stop:function(e,t){x&&x.remove(),rn(t.item.attr("id").replace("frm_delete_field_","").replace("-"+t.item.data("optkey")+"_container","")),Mi()}},jQuery(t).sortable(r)}function K(e){jQuery(e).droppable({accept:".frmbutton, li.frm_field_box",deactivate:ne,over:J,out:Y,tolerance:"pointer"})}function J(e,t){var r=function(e){return e.classList.contains("divider_section_only")&&(e=jQuery(e).nextAll(".start_divider.frm_sorting").get(0)),e}(e.target);if(!Qe(t.draggable[0],r,e))return r.classList.remove("frm-over-droppable"),void jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable");document.querySelectorAll(".frm-over-droppable").forEach((function(e){return e.classList.remove("frm-over-droppable")})),r.classList.add("frm-over-droppable"),jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable")}function Y(e){e.target.classList.remove("frm-over-droppable")}function X(e,t){var r={helper:Z,revert:"invalid",delay:10,start:ee,stop:te,drag:re,cursor:"grabbing",refreshPositions:!0,cursorAt:{top:1,left:70}};"string"==typeof t&&(r.handle=t),jQuery(e).draggable(r)}function Z(e){var t,r=e.delegateTarget;if(Ee(r)){var n=document.getElementById("frm-insert-fields").querySelector(".frm_ttext").cloneNode(!0);return n.querySelector("use").setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_field_group_layout_icon"),n.querySelector("span").textContent=B("Field Group","formidable"),n.classList.add("frm_field_box"),n.classList.add("ui-sortable-helper"),n}if(r.classList.contains("frmbutton"))return(t=r.cloneNode(!0)).classList.add("ui-sortable-helper"),r.classList.add("frm-new-field"),t;if(r.hasAttribute("data-ftype")){var i=r.getAttribute("data-ftype");if((t=(t=document.getElementById("frm-insert-fields").querySelector(".frm_t"+i)).cloneNode(!0)).classList.add("form-field"),t.classList.add("ui-sortable-helper"),t)return t.cloneNode(!0)}return d({className:"frmbutton"})}function ee(e,t){q.dragging=!0;var r,n=h;n.classList.add("frm-dragging-field"),document.body.classList.add("frm-dragging"),t.helper.addClass("frm-sortable-helper"),t.helper.initialOffset=n.scrollTop,e.target.classList.add("frm-drag-fade"),gr(),(r=document.querySelectorAll("ul.start_divider")).length&&r.forEach((function(e){[].slice.call(e.children).forEach((function(e){(0===e.children.length||1===e.children.length&&"ul"===e.firstElementChild.nodeName.toLowerCase()&&0===e.firstElementChild.children.length)&&e.remove()}))})),Me(),Te(),R()}function te(){h.classList.remove("frm-dragging-field"),document.body.classList.remove("frm-dragging");var e=document.querySelector(".frm-drag-fade");e&&e.classList.remove("frm-drag-fade")}function re(e,t){!function(e){v.scrollTop((function(t,r){var n=e.clientY,i=h.offsetHeight,o=e.clientY-h.offsetTop,a=o-i/2;return o>i-50&&n>5?r+.1*a:o<70&&n<130?r-Math.abs(.1*a):r}))}(e);var r=e.target,n=function(){for(var e=document.getElementById("frm-show-fields");e.querySelector(".frm-over-droppable");)e=e.querySelector(".frm-over-droppable");return"frm-show-fields"!==e.id||e.classList.contains("frm-over-droppable")||(e=!1),e}(),i=document.getElementById("frm_drag_placeholder");if(Qe(r,n,e)){i||(i=s("li",{id:"frm_drag_placeholder",className:"sortable-placeholder"}));var o,a=t.helper.get(0);if((a.classList.contains("form-field")||a.classList.contains("frm_field_box"))&&(a.style.transform="translateY("+(o=t.helper,h.scrollTop-o.initialOffset+"px)")),"frm-show-fields"===n.id||n.classList.contains("start_divider"))return i.style.left=0,void function(e){var t,r=e.y,n=e.placeholder,i=jQuery(e.droppable);if($children=i.children().not(".edit_field_type_end_divider"),0===$children.length)i.prepend(n),t=0;else{var o=ie(i,r);if(o===$children.length){var a=jQuery($children.get(o-1));t=a.offset().top+a.outerHeight(),i.append(n);var l=i.children(".edit_field_type_end_divider");l.length&&i.append(l)}else t=jQuery($children.get(o)).offset().top,jQuery($children.get(o)).before(n)}t-=i.offset().top,n.style.top=t+"px"}({droppable:n,y:e.clientY,placeholder:i});i.style.top="",function(e){var t,r=e.x,n=e.placeholder,i=jQuery(e.droppable),o=ae(i);if(o.length){var a=function(e,t){var r,n,i,o,a=ae(e);for(o=0,r=a.length-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().left)){o=r,t>i+jQuery(n).outerWidth()/2&&(o=r+1);break}return o}(i,r);if(a===o.length){var l=jQuery(o.get(a-1));t=l.offset().left+l.outerWidth(),i.append(n)}else t=jQuery(o.get(a)).offset().left,jQuery(o.get(a)).before(n),t-=0===a?4:8;t-=i.offset().left,n.style.left=t+"px"}}({droppable:n,x:e.clientX,placeholder:i})}else i&&i.remove()}function ne(e,t){if(q.dragging){q.dragging=!1;var r=t.draggable[0],n=document.getElementById("frm_drag_placeholder");if(!n)return t.helper.remove(),void y();!function(e){if(e.previousElementSibling&&e.previousElementSibling.classList.contains("frm-is-collapsed")){var t=jQuery(e).prevUntil('[data-type="break"]');if(t.length){var r=t.find(".frm-collapse-page").get(0);r&&r.click()}}}(n);var i=t.helper.parent(),o=t.helper.get(0).closest("ul.start_divider"),a=n.closest("ul.start_divider");r.classList.contains("frm-new-field")?function(e){if(ge(e))wp.hooks.doAction("frm_stopped_inserting_by_dragging",e);else{var t=document.getElementById("frm_drag_placeholder"),r=e.replace("|","-")+"_"+we(),n=s("li",{id:r,className:"frm-wait frmbutton_loadingnow"}),i=jQuery(n),o=fe(jQuery(t)),a=ue(o),l=me(o);t.parentNode.insertBefore(n,t),t.remove(),le(i);var d=0;"summary"===e&&(d=jQuery(".frmbutton_loadingnow#"+r).prevAll('li[data-type="break"]').length?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:pe(e,l,a,d),success:function(t){ye(t,i);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:a})},error:je})}}(r.id):(function(e,t){t.parentNode.insertBefore(e,t)}(r,n),function(e){if("UL"===e.nodeName&&!e.classList.contains("start_divider")&&"frm-show-fields"!==e.id){var t=e.closest("li");t&&!t.classList.contains("ui-draggable")&&X(t,".frm-move")}}(n.parentElement));var l=o?parseInt(o.closest(".edit_field_type_divider").getAttribute("data-fid")):0,d=a?parseInt(a.closest(".edit_field_type_divider").getAttribute("data-fid")):0;n.remove(),t.helper.remove();var c=i.length?ae(i):[];!function(e,t){var r;e.length&&(t.length?le(t.first()):(r=e.get(0).closest("li.frm_field_box"))&&!r.classList.contains("edit_field_type_divider")&&r.remove())}(i,c),function(e,t){0===t.length&&1===ae(jQuery(e.parentNode)).length||le(jQuery(e))}(r,c),l!==d&&_e(jQuery(r),o),y()}}function ie(e,t){var r,n,i,o,a=e.children().not(".edit_field_type_end_divider"),l=a.length;if(!document.querySelector(".frm-has-fields .frm_no_fields"))return 0;for(o=0,r=l-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().top)){o=r,t>i+jQuery(n).outerHeight()/2&&(o=r+1);break}return o}function oe(){document.querySelectorAll("ul#frm-show-fields, ul.start_divider").forEach((function(e){e.childNodes.forEach((function(e){void 0!==e.classList&&(e.classList.contains("edit_field_type_end_divider")||void 0!==e.classList&&e.classList.contains("form-field")&&We(e))}))})),xn(),document.querySelectorAll(".edit_field_type_end_divider").forEach((function(e){return e.parentNode.appendChild(e)})),document.querySelectorAll("li.form_field_box:not(.form-field)").forEach((function(e){return!e.children.length&&e.remove()})),Qn();var e=new Event("frm_sync_after_drag_and_drop",{bubbles:!1});document.dispatchEvent(e)}function ae(e){var t=jQuery(),r=e.get(0);return r.children?(Array.from(r.children).forEach((function(e){if("none"!==e.style.display){var r=e.classList;!r.contains("form-field")||r.contains("edit_field_type_end_divider")||r.contains("frm-sortable-helper")||(t=t.add(e))}})),t):t}function le(e,t){var r,n,i,o;void 0===t&&(t="even"),r=e.parent().children("li.form-field, li.frmbutton_loadingnow").not(".edit_field_type_end_divider"),n=r.length,i=["frm_full","frm_half","frm_third","frm_fourth","frm_sixth","frm_two_thirds","frm_three_fourths","frm1","frm2","frm3","frm4","frm5","frm6","frm7","frm8","frm9","frm10","frm11","frm12"],"even"===t&&5!==n?r.each(ce(i,Ut(n))):"clear"===t?r.each(ce(i,"")):(o=-1!==["left","right","middle","even"].indexOf(t)?function(e){return Wt(n,t,e)}:function(e){return ar(t[e])},r.each(ce(i,o))),se(e.parent(),r.length)}function se(e,t){var r,n;if(void 0!==e.offset()){if(r=t>=2,null===(n=document.getElementById("frm_field_group_controls"))){if(!r)return;(n=d()).id="frm_field_group_controls",n.setAttribute("role","group"),n.setAttribute("tabindex",0),function(e){var t,r;(t=document.createElement("span")).innerHTML='';var n=B("Set Row Layout","formidable");de(t,n),zt(t,n),(r=document.createElement("span")).innerHTML='',r.classList.add("frm-move");var i=B("Move Field Group","formidable");de(r,i),zt(r,i),e.innerHTML="",e.appendChild(t),e.appendChild(r),e.appendChild(function(){var e=c({className:"dropdown"}),t=f({className:"frm_bstooltip frm-hover-icon frm-dropdown-toggle dropdown-toggle",children:[c({child:u({href:"#frm_thick_more_vert_icon"})}),c({className:"screen-reader-text",text:B("Toggle More Options Dropdown","formidable")})]});frmDom.setAttributes(t,{title:B("More Options","formidable"),"data-toggle":"dropdown","data-container":"body"}),zt(t,B("More Options","formidable")),e.appendChild(t);var r=d({className:"frm-dropdown-menu dropdown-menu dropdown-menu-right"});return r.setAttribute("role","menu"),e.appendChild(r),e}())}(n),D.appendChild(n)}e.append(n),n.style.display=r?"block":"none"}}function de(e,t){e.setAttribute("data-toggle","tooltip"),e.setAttribute("data-container","body"),e.setAttribute("title",t),e.addEventListener("mouseover",(function(){null===e.getAttribute("data-original-title")&&jQuery(e).tooltip()}))}function ce(e,t){return function(r){var n,i,o,a,l,s,d;for(n="function"==typeof t?t(r):t,i=e.length,l=!1,o=0;ot.childElementCount-1:s<=jQuery(t.querySelector(".edit_field_type_submit").closest("#frm-show-fields > li")).index()}if(a)return!(t.classList.contains("start_divider")||!xe(t.parentElement)&&(!xe(t.parentElement.nextElementSibling)||e.parentElement.querySelector("li.frm_field_box:not(.edit_field_type_submit)")));if(t.classList.contains("start_divider")&&(e.classList.contains("edit_field_type_gdpr")||"gdpr"===e.id)&&t.closest(".repeat_section"))return!1;if(!t.classList.contains("start_divider")){if(n=ae(jQuery(t)),i=jQuery(e),!(n.length<6)&&(n.length>6||(o=i.attr("data-fid"),1!==jQuery(n).filter('[data-fid="'+o+'"]').length)))return!1;if("divider"===e.id&&t.closest(".start_divider"))return!1}return e.classList.contains("frm-new-field")?function(e,t){var r=e.classList,n=r.contains("frm_tbreak"),i=r.contains("frm_thidden"),o=r.contains("frm_tdivider"),a=r.contains("frm_tform"),l=r.contains("frm_tuser_id");return"frm-show-fields"===t.id||t.classList.contains("start_divider")?!(n||i||o||a)||(!(t.classList.contains("start_divider")||null!==t.closest(".start_divider"))||!a&&!o):!(ke(t)||i||n||l)}(e,t):function(e,t){if(Ee(e))return function(e,t){return!(!t.classList.contains("start_divider")||null!==e.querySelector(".start_divider"))}(e,t);if(e.classList.contains("edit_field_type_break"))return!1;if(t.classList.contains("start_divider"))return function(e){return!e.classList.contains("edit_field_type_form")&&!e.querySelector(".edit_field_type_form")&&!(e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"))}(e);var r=e.classList.contains("edit_field_type_hidden"),n=e.classList.contains("edit_field_type_user_id");return!r&&!n&&function(e,t){if(ke(t))return!1;if(jQuery(e).children("ul.frm_sorting").not(".start_divider").length>0)return!1;var r=e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"),n=e.classList.contains("edit_field_type_form");return null===t.closest(".start_divider")||!r&&!n}(e,t)}(e,t)}function xe(e){return e&&e.matches("#frm-show-fields > li:last-child")}function Ee(e){return e.classList.contains("frm_field_box")&&!e.classList.contains("form-field")}function ke(e){return null!==e.querySelector(".edit_field_type_break, .edit_field_type_hidden, .edit_field_type_user_id")}function Le(e){var t=document.getElementById(e),r=jQuery(t),n=[],i=function(e){var t=e.querySelector(".frm_hidden_fdata");e.classList.add("frm_load_now"),null!==t&&n.push(t.innerHTML)},o=t;i(o);for(var a=Se(o);a&&n.length<15;)i(a),o=a,a=Se(a);jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_load_field",field:n,form_id:k,nonce:frmGlobal.nonce},success:function(e){return function(e,t,r){var n,i;if(0===(e=e.replace(/^\s+|\s+$/g,"")).indexOf("{")){for(n in e=JSON.parse(e))jQuery("#frm_field_id_"+n).replaceWith(e[n]),V("#frm_field_id_"+n+".edit_field_type_divider ul.frm_sorting"),X(document.getElementById("frm_field_id_"+n));((i=t.nextAll(".frm_field_loading:not(.frm_load_now)")).length||(i=jQuery(document.getElementById("frm-show-fields")).find(".frm_field_loading:not(.frm_load_now)")).length)&&Le(i.attr("id")),lo(),Tr(),Be();var o=new Event("frm_ajax_loaded_field",{bubbles:!1});o.frmFields=r.map((function(e){return JSON.parse(e)})),document.dispatchEvent(o)}else jQuery(".frm_load_now").removeClass(".frm_load_now").html("Error")}(e,r,n)}})}function Se(e){var t;return e.nextElementSibling?e.nextElementSibling:null===(t=e.parentNode)||void 0===t||null===(t=t.closest(".frm_field_box"))||void 0===t||null===(t=t.nextElementSibling)||void 0===t?void 0:t.querySelector(".form-field")}function Ae(){var e=jQuery(this);if(e.hasClass("disabled"))return!1;var t=e.closest(".frmbutton").attr("id");if(!ge(t)){var r=0;"summary"===t&&(r=j.children('li[data-type="break"]').length>0?1:0);var n=k;return jQuery.ajax({type:"POST",url:ajaxurl,data:pe(t,0,n,r),success:function(e){Ie(e);var r=he(e);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:e,fieldId:r,fieldType:t,form_id:n})},error:je}),!1}}function Ie(e){document.getElementById("frm_form_editor_container").classList.add("frm-has-fields");var t=$e(e),r=j[0].querySelector(".edit_field_type_submit");r?jQuery(r.closest(".frm_field_box:not(.form-field)")).before(t):j.append(t),Ue(e,!0),t.each((function(){K(this.querySelector("ul.frm_sorting")),X(this.querySelector(".form-field"),".frm-move")}))}function Be(){var e=!0,t=document.querySelectorAll(".frmjs_prod_field_opt_cont");j.find("li.edit_field_type_product").length>1&&(e=!1);for(var r=0;r',i.appendChild(document.createTextNode(" ")),i.appendChild(o),n.appendChild(i),e.appendChild(n)}))}(t,!0===e),(r=jQuery(t)).offset().left>jQuery(window).width()-r.outerWidth()&&(t.style.left=-r.outerWidth()+"px");var n=t.firstElementChild.querySelector("a");n&&n.focus()}}),0)}function Pe(){He(!0)}function ze(e){var t=e.target.closest(".frm-section-collapsed");t&&("show"===e.type?t.style.zIndex=3:t.style.zIndex=1)}function Re(e){var t={class:"frm_delete",icon:"frm_delete_icon"};return t.label=B(e?"Delete Group":"Delete","formidable"),t}function Ge(e){var t={class:"frm_clone",icon:"frm_clone_icon"};return t.label=B(e?"Duplicate Group":"Duplicate","formidable"),t}function $e(e){var t=d();"string"==typeof e?t.innerHTML=e:t.appendChild(e);var r=jQuery();return Array.from(t.children).forEach((function(e){r=r.add(jQuery("
          • ").addClass("frm_field_box").html(jQuery("
              ").addClass("frm_grid_container frm_sorting").append(e)))})),r}function We(e){var t=s("ul",{className:"frm_grid_container frm_sorting"}),r=s("li",{className:"frm_field_box",child:t});e.replaceWith(r),t.appendChild(e),K(t),X(r,".frm-move")}function Ue(e,t){var r,n,i=/id="(\S+)"/.exec(e),o=document.getElementById(i[1]),a="#"+i[1]+".edit_field_type_divider ul.frm_sorting.start_divider",l=jQuery(a),s=o.getAttribute("data-type");r=e,(n=d()).innerHTML=r,n.querySelectorAll(".form-field").forEach(Ve);var c,f,u=!1;if(Mi(),V(a),"quantity"===s&&function(e){var t=e.getAttribute("data-fid"),r=document.getElementById("field_options[product_field_"+t+"]");null!==r&&(rt(r),ii(document.getElementById("frm-single-settings-"+t)))}(o),"product"!==s&&"quantity"!==s||Be(),l.length)l.parent(".frm_field_box").children(".frm_no_section_fields").addClass("frm_block");else{var m=jQuery(o).closest("ul.frm_sorting.start_divider");m.length&&(En(m),u=!0)}if(-1!==e.indexOf("frm-collapse-page")&&Tr(),f="frm-newly-added",(c=o).classList?c.classList.add(f):c.className+=" "+f,setTimeout((function(){o.classList.remove("frm-newly-added")}),1e3),t){var _=o.getBoundingClientRect(),p=document.getElementById("post-body-content");_.top>=0&&_.left>=0&&_.right<=(window.innerWidth||document.documentElement.clientWidth)&&_.bottom<=(window.innerHeight||document.documentElement.clientHeight)||p.scroll({top:p.scrollHeight,left:0,behavior:"smooth"}),!1===u&&En(l)}Je(),lo(),document.getElementById("frm-show-fields").classList.remove("frm-over-droppable");var g=new Event("frm_added_field",{bubbles:!1});g.frmField=o,g.frmSection=a,g.frmType=s,g.frmToggles=u,document.dispatchEvent(g)}function Ve(e){if(e.dataset.fid){var t=document.getElementById("draft_fields");t&&(""===t.value?t.value=e.dataset.fid:t.value.split(",").includes(e.dataset.fid)||(t.value+=","+e.dataset.fid))}}function Ke(e){jQuery("#new_fields .frm-single-settings").addClass("frm_hidden"),jQuery("#frm-options-panel > .frm-single-settings").removeClass("frm_hidden"),Je(e)}function Je(e){jQuery("li.ui-state-default.selected").removeClass("selected"),jQuery(".frm-show-field-settings.selected").removeClass("selected"),e||gr()}function Ye(){var e=this.value,t=function(e){var t,r=[],n=e.split(""),i=n.length,o=["{","[","("],l={"}":"{",")":"(","]":"["},s=[];for(t=0;t0||s.length>0?a.unmatched_parens+"\n\n":""}(e);t+=function(e,t){var r=function(e,t){var r="";return function(e){return jQuery(e).siblings('label[for^="calc_type"]').children("input").prop("checked")}(t)||/\[(date|time|email|ip)\]/.test(e)&&(r=a.text_shortcodes+"\n\n"),r}(e,t);return r+=function(e){var t="";return/\[id\]|\[key\]|\[if\s\w+\]|\[foreach\s\w+\]|\[created-at(\s*)?/g.test(e)&&(t+=a.view_shortcodes+"\n\n"),t}(e)}(e,this),""!==t&&H(e+"\n\n"+t)}function Xe(e,t){for(var r,n,i,o=!1,a=0;a"+l[t].fieldName+"")):(r=r?" checked":"",i.push('"));e.innerHTML=i.join("")}function nt(){for(var e=document.querySelectorAll(".frmjs_prod_field_opt"),t=0;t'):(n.innerHTML=mn(r),"TEXTAREA"===n.nodeName&&n.classList.contains("wp-editor-area")&&jQuery(n).trigger("change"),n.classList.contains("frm_primary_label")&&"break"===n.nextElementSibling.getAttribute("data-ftype")&&(n.nextElementSibling.querySelector(".frm_button_submit").textContent=r)))}function at(e){var t=parseFloat(e.getAttribute("max")),r=parseFloat(e.getAttribute("min"));return(t-r)/2+r}function lt(){var e,t=this.getAttribute("data-fid"),r="";["field_options_max_","frm_format_"].forEach((function(e){var n=document.getElementById(e+t);n&&(r+=n.value)})),"text"===(e=document.getElementsByName("field_options[type_"+t+"]")[0]).options[e.selectedIndex].value&&dt(""!==r,".frm_invalid_msg"+t)}function st(){var e=this.id.replace("frm_","").replace("req_field_",""),t=this.checked,r=jQuery("#field_label_"+e+" .frm_required");if(dt(t,".frm_required_details"+e),t){var n=jQuery('input[name="field_options[required_indicator_'+e+']"]');""===n.val()&&n.val("*"),r.removeClass("frm_hidden")}else r.addClass("frm_hidden")}function dt(e,t){if($msg=jQuery(t),e)$msg.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast");else{var r=$msg.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not("+t+"):visible").length;r.css("display",""),0===n&&$msg.closest(".frm_validation_msg").fadeOut("fast")}}function ct(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(".frm_unique_details"+e);if(this.checked)t.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast"),$unqDetail=jQuery(".frm_unique_details"+e+" input"),""===$unqDetail.val()&&$unqDetail.val(a.default_unique);else{var r=t.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not(.frm_unique_details"+e+"):visible").length;r.css("display",""),0===n&&t.closest(".frm_validation_msg").fadeOut("fast")}}function ft(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(this).val(),r=jQuery(document.getElementById("frm_field_id_"+e));if(dt(""!==t,".frm_conf_details"+e),""!==t){var n=jQuery(".frm_validation_box .frm_conf_details"+e+" input");""===n.val()&&n.val(a.default_conf),function(e){var t=document.getElementsByName("field_options[type_"+e+"]")[0].value;ut(document.getElementById("field_description_"+e),"field_options[description_"+e+"]",a["enter_"+t]),ut(document.getElementById("conf_field_description_"+e),"field_options[conf_desc_"+e+"]",a["confirm_"+t])}(e),"inline"===t?r.removeClass("frm_conf_below").addClass("frm_conf_inline"):"below"===t&&r.removeClass("frm_conf_inline").addClass("frm_conf_below"),jQuery(".frm-conf-box-"+e).removeClass("frm_hidden")}else jQuery(".frm-conf-box-"+e).addClass("frm_hidden"),setTimeout((function(){r.removeClass("frm_conf_inline frm_conf_below")}),200)}function ut(e,t,r){e.innerHTML===a.desc&&(e.innerHTML=r,document.getElementsByName(t)[0].value=r)}function mt(e){var t=JSON.parse(this.getAttribute("data-opts"));return e.preventDefault(),document.getElementById("frm_bulk_options").value=t.join("\n"),!1}function _t(){var e,t=jQuery(this).closest(".frm-single-settings").data("fid"),r=jQuery("#frm_field_"+t+"_opts .frm_option_template").prop("outerHTML"),n=jQuery(this).data("opttype"),i=0,o=function(e){for(var t=0,r=0,n=jQuery("#frm_field_"+e+"_opts li"),i=0;ti||"000"===i)&&(i=r)}return i}(t);if("000"!==o&&(i=o+1),"other"===n){document.getElementById("other_input_"+t).value=1;var a=jQuery(this).data("ftype");"radio"!==a&&"select"!==a||jQuery(this).fadeOut("slow");var l={action:"frm_add_field_option",field_id:t,opt_key:i,opt_type:n,nonce:frmGlobal.nonce};jQuery.post(ajaxurl,l,(function(e){jQuery(document.getElementById("frm_field_"+t+"_opts")).append(e),rn(t)}))}else r=(r=(r=(r=(r=r.replace(new RegExp('optkey="000"',"g"),'optkey="'+i+'"')).replace(new RegExp("-000_","g"),"-"+i+"_")).replace(new RegExp('-000"',"g"),"-"+i+'"')).replace(new RegExp("\\[000\\]","g"),"["+i+"]")).replace("frm_hidden frm_option_template",""),zo(t,r={newOption:r}),this.closest(".frm_single_option").after(r.newOption),rn(t);null===(e=this.closest(".frm_sortable_field_opts"))||void 0===e||null===(e=e.querySelectorAll(".frm_remove_tag.frm_disabled"))||void 0===e||e.forEach((function(e){return e.classList.remove("frm_disabled")})),Mi()}function pt(){gt(jQuery(this).closest(".frm-single-settings").data("fid"),this.value)}function gt(e,t){var r=jQuery(".frm_multiple_cont_"+e);"select"===t?r.fadeIn("fast"):r.fadeOut("fast")}function yt(){var e=jQuery(this).closest(".frm-single-settings").data("fid");Oo(jQuery(".field_"+e+"_option_key")),jQuery(".field_"+e+"_option").toggleClass("frm_with_key")}function ht(){var e,t,r=jQuery(this).closest(".frm-single-settings"),n=r.data("fid"),i=document.getElementById("frm_field_id_"+n);wt(jQuery(this)),Oo(jQuery(".field_"+n+"_image_id")),Oo(jQuery(".frm_toggle_image_options_"+n)),Oo(jQuery(".frm_image_size_"+n)),Oo(jQuery(".frm_alignment_"+n)),Oo(jQuery(".frm-add-other#frm_add_field_"+n)),(e=gn(n))?(bt(n,"inline"),vt(i),t=tn(n),i.classList.add("frm_image_options"),i.classList.add("frm_image_size_"+t),r.find(".frm-bulk-edit-link").hide()):(i.classList.remove("frm_image_options"),vt(i),bt(n,"block"),r.find(".frm-bulk-edit-link").show()),wp.hooks.doAction("frm_image_options_toggled",r[0],e)}function vt(e){e.classList.remove("frm_image_size_","frm_image_size_small","frm_image_size_medium","frm_image_size_large","frm_image_size_xlarge")}function bt(e,t){jQuery("#field_options_align_"+e).val(t).trigger("change")}function jt(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);Qt(),gn(e)&&(vt(t),t.classList.add("frm_image_options"),t.classList.add("frm_image_size_"+tn(e)))}function wt(e){var t=e.closest(".frm-single-settings").data("fid");jQuery(".field_"+t+"_option").trigger("change")}function Qt(){wt(jQuery(this))}function xt(e){var t=e.target.closest(".frm_image_preview_wrapper");e.preventDefault(),wp.media.model.settings.post.id=0;var r=wp.media.frames.file_frame=wp.media({multiple:!1,library:{type:["image"]}});r.on("select",(function(){var e=r.state().get("selection").first().toJSON(),n=t.querySelector("img");n.setAttribute("src",e.url),n.classList.remove("frm_hidden"),n.removeAttribute("srcset"),t.querySelector(".frm_image_preview_frame").style.display="block",t.querySelector(".frm_image_preview_title").textContent=e.filename,t.querySelector(".frm_choose_image_box").style.display="none";var i=jQuery(t);i.siblings('input[name*="[label]"]').data("frmimgurl",e.url),i.find("input.frm_image_id").val(e.id).trigger("change"),wp.media.model.settings.post.id=0})),r.open()}function Et(e){var t=jQuery(this).closest(".frm_image_preview_wrapper");e.preventDefault(),e.stopPropagation(),t.find("img").attr("src",""),t.find(".frm_image_preview_frame").hide(),t.find(".frm_choose_image_box").show(),t.find("input.frm_image_id").val(0).trigger("change")}function kt(){var e=jQuery(this).closest("li").find(".frm_form_fields select");this.checked?e.attr("multiple","multiple"):e.removeAttr("multiple")}function Lt(){var e=document.getElementById("dropform-search-input");null!==e&&setTimeout((function(){e.focus()}),100)}function St(e){var t=e.target,r=t.closest(".frm_warning_style");jQuery(r).fadeOut(400,(function(){return r.remove()}));var n=t.dataset.action,i=new FormData;g(n,i)}function At(e){e.preventDefault()}function It(){var e,t=this.parentNode,r=t.parentNode,n=r.querySelectorAll("li:not(.frm_hidden)");2===n.length&&(null===(e=Array.from(n).find((function(e){return e!==t})).querySelector(".frm_remove_tag"))||void 0===e||e.classList.add("frm_disabled"));var i,o=this.getAttribute("data-fid");jQuery(t).fadeOut("fast",(function(){wp.hooks.doAction("frm_before_delete_field_option",this),jQuery(t).remove(),jQuery(r).find(".frm_other_option").length<1&&(null!==(i=document.getElementById("other_input_"+o))&&(i.value=0),jQuery("#other_button_"+o).fadeIn("fast"))})),Mi()}function Bt(){var e,t,r,n;(e=jQuery(this)).is(":checked")&&(t=function(){setTimeout((function(){e.prop("checked",!1)}),0)},r=function(){e.off("mouseup",n)},n=function(){t(),r()},e.on("mouseup",n),e.one("mouseout",r))}function Ct(){this.value===a.new_option&&(this.setAttribute("data-value-on-focus",this.value),this.value="")}function qt(e){return C(B("Are you sure you want to delete these %1$s selected field(s)?","formidable"),e)}function Nt(){var e=a.conf_delete,t=this.parentNode.parentNode.parentNode.parentNode.parentNode,r=t.parentNode,n=jQuery(this).closest("li.form-field"),i=n.data("fid");if("divider"===n.data("ftype")){var o=document.querySelectorAll(".frm-field-group-hover-target .start_divider .frm_field_box"),l=0;o.forEach((function(e){var t=e.querySelectorAll("li.form-field");t&&(l+=t.length)})),l&&(e=qt(++l))}return r.classList.contains("frm-section-collapsed")||r.classList.contains("frm-page-collapsed")||("divider_section_only"===t.className&&(e=a.conf_delete_sec),this.setAttribute("data-frmverify",e),this.setAttribute("data-frmverify-btn","frm-button-red"),this.setAttribute("data-deletefield",i),Te(),F(this)),!1}function Tt(){this.closest("li.form-field").click()}function Ot(){var e,t;null!==(e=document.querySelector(".frm-field-group-hover-target"))&&(e.classList.add("frm-selected-field-group"),(t=document.createElement("div")).classList.add("frm-delete-field-groups","frm_hidden"),document.body.appendChild(t),t.click())}function Dt(){var e=document.querySelector(".frm-field-group-hover-target");if(null!==e){var t="frm_field_group_"+we(),r=document.createTextNode("");We(r);var n=jQuery(r).closest("li").get(0);n.classList.add("frm_hidden");var i=n.querySelector("ul");i.id=t,jQuery(e.closest("li.frm_field_box")).after(n);var o=ae(jQuery(e)),a=[],l=[],s=o.length,d={},c=0;jQuery(n).on("frm_added_duplicated_field_to_row",(function(e,t){if(d[jQuery(t.duplicatedFieldHtml).attr("data-fid")]=t.originalFieldId,!(s>++c)){var r=jQuery(i),o=ae(r);l.forEach((function(e){e.remove()}));for(var f=0;f0&&ir(Ut(t)))&&l>=12&&(l=Math.floor(12/t)),s=0;s',""),t);e.prepend(r),document.getElementById("frm-field-group-message-dismiss").addEventListener("click",(function(){mr(document.getElementById("frm-field-group-message"))}))}}(),"ul"===e.originalEvent.target.nodeName.toLowerCase()){var t=document.querySelector(".frm-field-group-hover-target");if(t){var r=e.ctrlKey||e.metaKey,n=e.shiftKey,i=t.classList.contains("frm-selected-field-group"),o=function(){var e=jQuery(".frm-selected-field-group");if(e.length)return e;var t=_r();if(t){var r=t.closest("ul");if(r&&1===ae(jQuery(r)).length)return r.classList.add("frm-selected-field-group"),jQuery(r)}return jQuery()}(),a=o.length;if(r||n){var l=_r();if(null===l||jQuery(l).siblings("li.form-field").length||(l.parentNode.classList.add("frm-selected-field-group"),++a),r){if(i)return--a,t.classList.remove("frm-selected-field-group"),void pr(a);++a}else if(n&&!i){++a;var s=o.first();(s.parent().index()=2||1===e&&ae(jQuery(document.querySelector(".frm-selected-field-group"))).length>1?function(){var e,t,r,n,i;if(null!==(e=document.getElementById("frm_field_multiselect_popup")))return e.classList.toggle("frm-unmergable",!hr()),e;(e=d()).id="frm_field_multiselect_popup",hr()||e.classList.add("frm-unmergable"),(t=d()).classList.add("frm-merge-fields-into-row"),t.textContent=B("Merge into row","formidable"),(r=document.createElement("a")).style.marginLeft="5px",r.classList.add("frm_icon_font","frm_arrowdown6_icon"),r.setAttribute("href","#"),t.appendChild(r),e.appendChild(t),(n=d()).classList.add("frm-multiselect-popup-separator"),e.appendChild(n),(i=d()).classList.add("frm-delete-field-groups"),i.appendChild(Rt("frm_trash_svg")),e.appendChild(i),document.getElementById("post-body-content").appendChild(e),jQuery(e).hide().fadeIn()}():yr(),Me()}function gr(e){if(void 0!==e){if(null!==e.originalEvent.target.closest("#frm-show-fields"))return;if(e.originalEvent.target.classList.contains("frm-merge-fields-into-row"))return;if(null!==e.originalEvent.target.closest(".frm-merge-fields-into-row"))return;if(e.originalEvent.target.classList.contains("frm-custom-field-group-layout"))return;if(e.originalEvent.target.classList.contains("frm-cancel-custom-field-group-layout"))return}jQuery(".frm-selected-field-group").removeClass("frm-selected-field-group"),jQuery(document).off("click",gr),yr()}function yr(){var e=document.getElementById("frm_field_multiselect_popup");null!==e&&e.remove()}function hr(){var e,t,r,n,i;if(1===(r=(e=document.querySelectorAll(".frm-selected-field-group")).length))return!1;for(t=0,n=0;n6)return!1}return!0}function vr(e){var t;null===e.originalEvent.target.closest("#frm_field_group_popup")&&(e.originalEvent.target.classList.contains("frm-custom-field-group-layout")||(t=Pt(br(),document.querySelector(".frm-selected-field-group").firstChild),this.appendChild(t)))}function br(){var e=0;return jQuery(document.querySelectorAll(".frm-selected-field-group")).each((function(){e+=ae(jQuery(this)).length})),e}function jr(){var e,t,r,n;n=[],jQuery(".frm-selected-field-group > li.form-field").each((function(){n.push(this.dataset.fid)})),t=function(e){return function(t){t.preventDefault(),function(e){e.forEach((function(e){Qr(e)}))}(e)}}(e=n),null!==(r=document.getElementById("frm_field_multiselect_popup"))&&r.remove(),this.setAttribute("data-frmverify",qt(e.length)),F(this);var i=document.getElementById("frm-confirmed-click");null==i||i.removeAttribute("data-deletefield"),jQuery(i).on("click",t),jQuery("#frm_confirm_modal").one("dialogclose",(function(){jQuery(i).off("click",t)}))}function wr(){Qr(this.getAttribute("data-deletefield"))}function Qr(e){var t=jQuery("#frm_field_id_"+e);xr(e),t.hasClass("edit_field_type_divider")&&t.find("li.frm_field_box[data-fid]").each((function(){xr(this.getAttribute("data-fid"))})),xn()}function xr(e){jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_delete_field",field_id:e,nonce:frmGlobal.nonce},success:function(){var t,r=jQuery(document.getElementById("frm_field_id_"+e)),n=jQuery("#frm-single-settings-"+e);n.is(":visible")&&(null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click(),document.querySelector("#frm-options-panel .frm-single-settings").classList.remove("frm_hidden")),function(e){var t=e[0].querySelectorAll(".frm-inline-modal[data-fills]");t.length&&t.forEach((function(e){e.classList.add("frm_hidden"),e.removeAttribute("data-fills"),e.closest("form").appendChild(e)}))}(n),n.remove(),r.fadeOut("slow",(function(){var e,t=r.closest(".start_divider"),n=r.data("type"),i=r.siblings("li.form-field");if(i.length||(r.is(".edit_field_type_end_divider")?i.length=r.closest("li.form-field").siblings():e=r.closest("ul.frm_sorting").parent()),r.remove(),"break"===n?Tr():"product"===n&&(Be(),nt()),i.length?le(i.first()):e.remove(),0===jQuery("#frm-show-fields li").length||function(){if(j.get(0).childElementCount>1)return!1;var e=j.get(0).firstElementChild.firstElementChild.querySelectorAll("li.frm_field_box");return!(e.length>1)&&e[0].classList.contains("edit_field_type_submit")}()){var o=document.getElementById("frm_form_editor_container");o.classList.remove("frm-has-fields"),o.classList.add("frm-empty-fields")}else t.length&&En(t);R()})),r.length&&wp.hooks.doAction("frm_after_delete_field",r[0])}})}function Er(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_logic_row_"+e).querySelectorAll(".frm_logic_row");return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_logic_row",form_id:t,field_id:e,nonce:frmGlobal.nonce,meta_name:kr(r,"frm_logic_"+e+"_"),fields:tt()},success:function(t){jQuery(document.getElementById("logic_"+e)).fadeOut("fast",(function(){var r=document.getElementById("frm_logic_row_"+e);r.insertAdjacentHTML("beforeend",t);var n=r.querySelector(".frm_logic_row:last-child .frm-logic-rule-text");n&&(n.textContent=r.dataset.ruleText);var i=r.closest(".frm_logic_rows");i.style.height="auto",jQuery(i).fadeIn("fast")}))}}),!1}function kr(e,t,r){return e.length?parseInt(e[e.length-1].id.replace(t,""),10)+1:void 0!==r?r:0}function Lr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_watch_lookup_block_"+e).children;return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_watch_lookup_row",form_id:t,field_id:e,row_key:kr(r,"frm_watch_lookup_"+e+"_"),nonce:frmGlobal.nonce},success:function(t){var r,n=jQuery(document.getElementById("frm_watch_lookup_block_"+e));n.append(t),n.fadeIn("slow"),null===(r=document.getElementById("frm_watch_lookup_label_".concat(e)))||void 0===r||r.classList.remove("frm_hidden!")}}),!1}function Sr(e){var t,r,n=jQuery(e).closest(".frm-single-settings").attr("data-fid"),i=jQuery(e).closest("ul").get(0).querySelectorAll(".field_"+n+"_option");for(t in i)if((r=i[t]).id!==e.id&&r.value===e.value&&"true"!==r.getAttribute("data-duplicate"))return!0;return!1}function Ar(){var e,t;null===this.getAttribute("data-value-on-load")&&(this.setAttribute("data-value-on-load",this.value),t=jQuery(this).closest(".frm-single-settings").attr("data-fid"),(e=document.createElement("input")).value=this.value,e.setAttribute("type","hidden"),e.setAttribute("name","optionmap["+t+"]["+this.value+"]"),this.parentNode.appendChild(e),void 0===S[t]&&(S[t]={}),S[t][this.value]=e),"true"===this.getAttribute("data-duplicate")&&(this.removeAttribute("data-duplicate"),Sr(this))?this.setAttribute("data-value-on-focus",this.getAttribute("data-value-on-load")):""===this.value&&a.new_option===this.getAttribute("data-value-on-focus")||this.setAttribute("data-value-on-focus",this.value)}function Ir(e){var t,r=e.closest(".frm_single_option");return e.parentElement.classList.contains("frm_single_option")?{newValue:r.querySelector('.frm_option_key input[type="text"]').value,newLabel:t=e.value}:(t=r.querySelector('input[type="text"]').value,{newValue:e.value,newLabel:t})}function Br(){var e,t,r,n,i,o,a,l,s,d,c,f,u=function(e){var t=function(e){var t,r,n=null!==(t=null===(r=e.closest(".frm-single-settings").querySelector(".frm_toggle_sep_values"))||void 0===r?void 0:r.checked)&&void 0!==t&&t,i=e.closest(".frm_single_option");return n&&e.parentElement.classList.contains("frm_single_option")?{oldValue:i.querySelector('.frm_option_key input[type="text"]').getAttribute("data-value-on-focus"),oldLabel:e.getAttribute("data-value-on-focus")}:{oldValue:e.getAttribute("data-value-on-focus"),oldLabel:i.querySelector('input[type="text"]').getAttribute("data-value-on-focus")}}(e),r=t.oldValue,n=t.oldLabel,i=Ir(e);return{oldValue:r,oldLabel:n,newValue:i.newValue,newLabel:i.newLabel}}(this),m=u.oldValue,_=u.oldLabel,p=u.newValue,g=u.newLabel;if(m!==p||_!==g){var y=this.closest(".frm-single-settings");if(t=y.getAttribute("data-fid"),e=this.getAttribute("data-value-on-load"),Sr(this))return this.setAttribute("data-duplicate","true"),void(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=e));for(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=p),s=[],rows=D.querySelectorAll(".frm_logic_row"),o=rows.length,a=0;a1)for(document.getElementById("frm-fake-page").style.display="block",e=0;e200)&&(H(a.repeat_limit_min),this.value="")}function Jr(){var e=this.value;""!==e&&(e<1||e>200)&&(H(a.checkbox_limit),this.value="")}function Yr(e,t){jQuery(e).closest(".frm_field_box").find(".frm_"+t+"_form_row .frm_repeat_label").text(e.value)}function Xr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=this.value,r=document.getElementById("frm_show_selected_fields_"+e),n=document.getElementById("frm_show_selected_forms_"+e);jQuery(n).find("select").val(""),"form"===t?(n.style.display="inline",function(e){if(null!==e)for(;e.firstChild;)e.removeChild(e.firstChild)}(r)):(r.style.display="none",n.style.display="none",wn(t,e))}function Zr(){var e,t;(e=en(this))&&(t=jQuery(this).closest(".frm_single_option"),function(e,t,r){var n,i,o,a,l,s,c=r.data("optkey"),f=pn(e),u=jQuery('label[for="field_'+t+"-"+c+'"]'),m="field_options[options_"+e+"]["+c+"]",_=jQuery('input[name="'+m+'[label]"]');if(u.length<1)return rn(e),void((o=r.find('input[name^="default_value_"]')).is(":checked")&&_.length>0&&jQuery('select[name^="item_meta['+e+']"]').val(_.val()));if(a=u.children("input"),n=_.length<1?(_=jQuery('input[name="'+m+'"]')).val():f?jQuery('input[name="'+m+'[value]"]').val():_.val(),!(_.length<1)){if(i=u[0].childNodes,gn(e))l=function(e,t,r){var n,i,o;return(n=e.find("img"))&&(i=n.attr("src")),o=yn(t),fn(t),_n(r.val(),o,i)}(r,e,_),(s=u.find(".frm_image_option_container")).length>0?s.replaceWith(l):(i[i.length-1].nodeValue="",u.append(l));else{var p=!1;i.forEach((function(t,r){if(!1===p)"INPUT"===t.tagName&&(p=r);else if(r===p+1){var n="";!function(e){var t=document.getElementsByName("field_options[image_options_"+e+"]"),r=Array.from(t).find((function(e){return e.checked&&"buttons"===e.value}));return void 0!==r}(e)?t.nodeValue=" "+_.val():(n=d({className:"frm_label_button_container",text:" "+_.val()}),u[0].replaceChild(n,t))}else u[0].removeChild(t)}))}a.val(n),o=r.find('input[name^="default_value_"]'),a.prop("checked",!!o.is(":checked"))}}(e.fieldId,e.fieldKey,t))}function en(e){var t;return!!(t=jQuery(e).closest(".frm_sortable_field_opts")).length&&{fieldId:t.attr("id").replace("frm_field_","").replace("_opts",""),fieldKey:t.data("key")}}function tn(e){var t,r=document.getElementById("field_options_image_size_"+e),n="";return null!==r&&""!==(t=r.value)&&(n=t),n}function rn(e){var t,r,n,i,o,a=jQuery('[name^="item_meta['+e+']"]');if(!(a.length<1)){if(a.is("select"))null!==(i=document.getElementById("frm_placeholder_"+e))&&""===i.value?sn(a[0],{sourceID:e}):sn(a[0],{sourceID:e,placeholder:i.value});else{r=cn(e),jQuery("#field_"+e+"_inner_container > .frm_form_fields").html(""),o=en(jQuery("#frm_delete_field_"+e+"-000_container"));var l=jQuery("#field_"+e+"_inner_container > .frm_form_fields"),s=gn(e),d=s?tn(e):"",c=s?"frm_image_option frm_image_"+d+" ":"",f=Ho(e);for(n="hidden"===a.attr("type")?a.data("field-type"):a.attr("type"),t=0;t=0;a--){var u;l=d[a];var m=null===(u=document.getElementById("frm_field_"+e+"_opts").querySelector('.frm_option_key input[type="text"]'))||void 0===u?void 0:u.value;m||(m=l),s=i.querySelector('option[value="'+m+'"]');var _=nn(e,l),p=_.newValue,g=_.newLabel,y=document.querySelectorAll("#frm_field_"+e+"_opts input[data-value-on-focus]"),h=Array.from(y).find((function(e){return e.value===l}));if(h){var v=h.dataset.valueOnFocus;if(v&&i.querySelector('option[value="'+v+'"]'))continue}an(i,s,p,g)}null!==(s=i.querySelector('option[value=""]'))&&i.prepend(s)}}function an(e,t,r,n){null!==t||e.querySelector('option[value="'+r+'"]')||((t=frmDom.tag("option",{text:n})).value=r),e.prepend(t)}function ln(e,t,r,n,i,o){var a,l="",s=-1!==t.key.indexOf("other"),d="field_"+n+"-"+t.key,c="scale"===e?"radio":e;return a='',this.getSingle=function(){return""!==(l=wp.hooks.applyFilters("frm_admin.build_single_option_template",l,{opt:t,type:e,fieldId:r,classes:o,id:d}))?l:'
              "+(s?a:"")+"
              "},this.getSingle()}function sn(e,t){if(null!==e){var r=t.sourceID,n=t.placeholder,i=Ho(r),o=t.other;!function(e){var t;if(void 0!==e.options)for(t=e.options.length-1;t>=0;t--)e.remove(t)}(e);for(var a=cn(r),l=void 0!==n,s=0;s0||d[t].name.indexOf("[value]")>0||d[t].name.indexOf("[image]")>0||d[t].name.indexOf("[price]")>0||(i=r=d[t].value,o=d[t].name.replace("field_options[options_"+e+"][","").replace("[label]","").replace("]",""),m&&(n=d[t].name.replace("[label]","[value]"),r=jQuery('input[name="'+n+'"]').val()),u&&(i=_n(i,f,un(d[t]),fn(e))),a={saved:r,label:i=frmAdminBuild.hooks.applyFilters("frm_choice_field_label",i,e,d[t],u),checked:(l=d[t].id,field=jQuery("#"+l),0!==field.length&&(checkbox=field.siblings("input[type=checkbox]"),checkbox.length&&checkbox.prop("checked"))),key:o},c&&(n=d[t].name.replace("[label]","[price]"),a.price=jQuery('input[name="'+n+'"]').val()),s.push(a));return s}function fn(e){var t=document.getElementById("frm-single-settings-"+e);return null===t?"radio":t.classList.contains("frm-type-checkbox")?"checkbox":"radio"}function un(e){var t,r=jQuery(e).siblings(".frm_image_preview_wrapper");return r.length&&(t=r.find("img")).length?t.attr("src"):""}function mn(e){(e instanceof Element||e instanceof Document)&&(e=e.outerHTML);var t=jQuery.parseHTML(e).reduce((function(e,t){var r=frmDom.cleanNode(t);return"#text"===r.nodeName?e+r.textContent:e+r.outerHTML}),"");return t!==e?mn(t):t}function _n(e,t,r,n){var i,o,l,c=e;return c=mn(c),r?o=m({src:r,alt:c}):(o=d({className:"frm_empty_url"})).innerHTML=a.image_placeholder_icon,i=t?" frm_label_with_image":"",(l=s("span",{className:"frm_text_label_for_image_inner"})).innerHTML=c,s("span",{className:"frm_image_option_container"+i,children:[o,s("span",{className:"frm_text_label_for_image",child:l})]})}function pn(e){return hn("separate_value_"+e)}function gn(e){for(var t=!1,r=document.getElementsByName("field_options[image_options_"+e+"]"),n=0;n=0&&(r.splice(t,1),e.val(r),e.next(".btn-group").find('.multiselect-container input[value=""]').prop("checked",!1))}(jQuery(this))}function An(e){e.val(""),e.next(".btn-group").find('.multiselect-container input[value!=""]').prop("checked",!1)}function In(){jQuery(".frm-hide-empty").each((function(){0===jQuery(this).text().trim().length&&jQuery(this).remove()}))}function Bn(e){e.preventDefault(),Cn(this)}function Cn(e,t){var r=document.getElementById(e.getAttribute("data-open")),n=jQuery(e).closest("p,ul"),i=void 0!==t;n.hasClass("frm-open")?(n.removeClass("frm-open"),r.classList.add("frm_hidden")):(i||(t=Gi(e)),null!==t&&(i||t.focus(),n.after(r),r.setAttribute("data-fills",t.id.replace("-proxy-input","")),0===r.id.indexOf("frm-calc-box")&&Ze(r,!0)),n.addClass("frm-open"),r.classList.remove("frm_hidden"),wp.hooks.doAction("frm_show_inline_modal",r,e))}function qn(e){e.preventDefault(),this.parentNode.classList.add("frm_hidden"),jQuery('.frm-open [data-open="'+this.parentNode.id+'"]').closest(".frm-open").removeClass("frm-open")}function Nn(e){var t=e.target;t.closest(".frm-inline-modal.frm-modal-no-dismiss")||t.closest(".frm-show-inline-modal")||t.closest("#frm_adv_info")||t.closest(".frm-token-proxy-input")||document.querySelectorAll(".frm-inline-modal.frm-modal-no-dismiss:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden"),e.previousElementSibling.classList.remove("frm-open")}))}function Tn(){var e,t,r,n,i,o,a,l=this.getAttribute("data-frmchange").split(",");for(e=0;e',r)),o.innerHTML=c,e.dataset.upsellImage&&o.appendChild(m({src:e.dataset.upsellImage,alt:e.dataset.upgrade})),a.href=function(e,t){var r=e.getAttribute("data-link");return null!=r&&""!==r||(r=t.getAttribute("data-default")),r}(e,a),s.style.display="none",i.style.display=_,l.style.display="block"===_?"inline-block":_,o.style.display=u,a.style.display="block"===f?"inline-block":f}function Yn(e){void 0===e&&(e=""),function(e){var t,r=jQuery(e+" :not(.frm_has_shortcodes) .frm_not_email_message, "+e+" :not(.frm_has_shortcodes) .frm_not_email_to, "+e+" :not(.frm_has_shortcodes) .frm_not_email_subject");for(t=0;t').before('')}function Xn(){var e="success";"options[edit_action]"===this.name&&(e="edit");var t=jQuery(this).val();jQuery("."+e+"_action_box").hide(),"redirect"===t?jQuery("."+e+"_action_redirect_box."+e+"_action_box").fadeIn("slow"):"page"===t?jQuery("."+e+"_action_page_box."+e+"_action_box").fadeIn("slow"):jQuery("."+e+"_action_message_box."+e+"_action_box").fadeIn("slow")}function Zn(e){if(m=e.target,p=jQuery(m),g=p.closest(".frm_form_action_settings"),(y=g.find(".widget-inside")).find("p, div, table").length||((_=g.find(".widget-top")).on("frm-action-loaded",(function(){p.trigger("click"),g.removeClass("open"),y.hide()})),_.trigger("click"),0)){var t=e.target.closest(".frm_form_action_settings"),r=t.querySelectorAll(".wp-editor-area");r.length&&r.forEach((function(e){tinymce.EditorManager.execCommand("mceRemoveEditor",!0,e.id)}));var n=jQuery(t).clone(),i=n.attr("id").replace("frm_form_action_",""),o=ei(i);n.find(".frm_action_id, .frm-btn-group").remove(),n.find('input[name$="['+i+'][ID]"]').val(""),n.find(".widget-inside").hide(),n.find("input[type=text], textarea, input[type=number]").prop("defaultValue",(function(){return this.value})),n.find("input[type=checkbox], input[type=radio]").prop("defaultChecked",(function(){return this.checked}));var a=new RegExp("\\["+i+"\\]","g"),l=new RegExp("_"+i+'"',"g"),s=new RegExp("-"+i+'"',"g"),c=new RegExp('"'+i+'"',"g"),f=n.html().replace(a,"["+o+"]").replace(l,"_"+o+'"');f=f.replace(s,"-"+o+'"').replace(c,'"'+o+'"');var u=d({id:"frm_form_action_"+o,className:n.get(0).className});u.setAttribute("data-actionkey",o),u.innerHTML=f,u.querySelectorAll(".wp-editor-wrap, .wp-editor-wrap *").forEach((function(e){"string"==typeof e.className&&(e.className=e.className.replace(i,o)),e.id=e.id.replace(i,o)})),u.classList.remove("open"),document.getElementById("frm_notification_settings").appendChild(u),r.length&&(r.forEach((function(e){frmDom.wysiwyg.init(e)})),u.querySelectorAll(".wp-editor-area").forEach((function(e){frmDom.wysiwyg.init(e)}))),u.classList.contains("frm_single_on_submit_settings")&&u.querySelector("input.frm-page-search")&&jo(u),lo(),wp.hooks.doAction("frm_after_duplicate_action",u)}var m,_,p,g,y}function ei(e){var t=parseInt(e,10)+11;return null!==document.getElementById("frm_form_action_"+t)&&(t=ei(++t)),t}function ti(){var e,t=jQuery(this).data("actiontype");if(!di(t)){var r=(e=kr(document.querySelectorAll(".frm_form_action_settings"),"frm_form_action_"),void 0!==document.getElementById("frm_form_action_"+e)&&(e+=100),A>=e&&(e=A+1),A=e,e),n=k,i=document.createElement("div");i.classList.add("frm_single_"+t+"_settings");var o=document.getElementById("frm_notification_settings");o.appendChild(i),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_action",type:t,list_id:r,form_id:n,nonce:frmGlobal.nonce},success:function(e){Mi(),i.remove(),document.querySelectorAll(".frm_form_action_settings.open").forEach((function(e){return e.classList.remove("open")}));var n=d();n.innerHTML=e;var a=n.querySelector(".widget-top");Array.from(n.children).forEach((function(e){return o.appendChild(e)})),jQuery(".frm_form_action_settings").fadeIn("slow");var l=document.getElementById("frm_form_action_"+r);l.classList.add("open"),document.getElementById("post-body-content").scroll({top:l.offsetTop+10,left:0,behavior:"smooth"}),si(t),Yn("#frm_form_action_"+r),lo(),jo(l),a&&jQuery(a).trigger("frm-action-loaded"),frmAdminBuild.hooks.doAction("frm_added_form_action",l)}})}}function ri(){var e=document.getElementById("frm_email_addon_menu").classList,t=document.getElementById("actions-search-input");e.contains("frm-all-actions")?(e.remove("frm-all-actions"),e.add("frm-limited-actions")):(e.add("frm-all-actions"),e.remove("frm-limited-actions")),t.value="",Io(t,"input")}function ni(e){e.on("Change",(function(){!function(e){var t,r;(t=document.querySelector(".frm-single-settings:not(.frm_hidden)"))&&null!==(r=t.querySelector(".wp-editor-wrap"))&&r.classList.contains("tmce-active")&&!tinyMCE.activeEditor.isHidden()&&(e.targetElm.value=e.getContent(),jQuery(e.targetElm).trigger("change"))}(e)}))}function ii(e){var t=this;if(null!==e)return this.fragment=document.createDocumentFragment(),this.initOnceInAllInstances=function(){void 0===ii.prototype.endMarker&&(ii.prototype.endMarker=document.getElementById("frm-end-form-marker"))},this.append=function(e){var r=null!==e?e.parentElement.classList:"";null!==e&&(r.contains("frm_field_box")||r.contains("divider_section_only"))&&t.fragment.appendChild(e)},this.moveFields=function(){w.insertBefore(t.fragment,ii.prototype.endMarker)},this.initOnceInAllInstances(),void 0!==e?(this.append(e),void this.moveFields()):{append:this.append,moveFields:this.moveFields}}function oi(){var e=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),t=this.getAttribute("data-emailrow");jQuery("#frm_form_action_"+e+" .frm_"+t+"_row").fadeIn("slow"),jQuery(this).fadeOut("slow")}function ai(){var e=jQuery(this).closest(".frm_form_action_settings"),t=this.getAttribute("data-emailrow"),r=".frm_"+t+"_row",n=".frm_"+t+"_button";jQuery(e).find(n).fadeIn("slow"),jQuery(e).find(r).fadeOut("slow",(function(){jQuery(e).find(r+" input").val("")}))}function li(){var e=jQuery(this).closest(".frm_form_action_settings"),t=".frm_from_to_match_row";e.find('input[name$="[post_content][from]"]').val()===e.find('input[name$="[post_content][email_to]"]').val()?jQuery(e).find(t).fadeIn("slow"):jQuery(e).find(t).fadeOut("slow")}function si(e){var t,r,n=document.querySelectorAll(".frm_"+e+"_action");di(e)?(t=n,r=ci(e)>0,t.forEach((function(e){e.classList.remove("frm_active_action"),e.classList.add("frm_inactive_action"),r&&e.classList.add("frm_already_used")}))):n.forEach((function(e){e.querySelector(".frm_show_upgrade")||(e.classList.remove("frm_inactive_action","frm_already_used"),e.classList.add("frm_active_action"))}))}function di(e){var t=function(e){return jQuery(".frm_single_"+e+"_settings").length}(e)>=ci(e),r={type:e};return wp.hooks.applyFilters("frm_action_at_limit",t,r)}function ci(e){return parseInt(jQuery(".frm_"+e+"_action").data("limit"),10)}function fi(){var e=a.only_one_action,t=this.dataset.limit;void 0!==t&&((t=parseInt(t))>1?e=e.replace(1,t).trim():e+=" "+a.edit_action_text),H(e)}function ui(){var e=jQuery(this).data("emailkey"),t=jQuery(this).closest(".frm_form_action_settings").find(".frm_action_name").val(),r=document.getElementById("form_id").value,n=document.getElementById("frm_logic_row_"+e),i=kr(n.querySelectorAll(".frm_logic_row"),"frm_logic_"+e+"_"),o=d({id:"frm_logic_"+e+"_"+i,className:"frm_logic_row frm_hidden"});return n.appendChild(o),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_logic_row",email_id:e,form_id:r,meta_name:i,type:t,nonce:frmGlobal.nonce},success:function(t){jQuery(document.getElementById("logic_link_"+e)).fadeOut("slow",(function(){o.insertAdjacentHTML("beforebegin",t),o.remove(),jQuery(n).parent(".frm_logic_rows").fadeIn("slow")}))}}),!1}function mi(){var e=jQuery("select.frm_single_post_field");e.css("border-color","");var t=this,r=jQuery(t).val();if(""===r||"checkbox"===r)return!1;e.each((function(){if(jQuery(this).val()===r&&this.name!==t.name)return this.style.borderColor="red",jQuery(t).val(""),H(a.field_already_used),!1}))}function _i(){var e=jQuery(this).val();""===e?(jQuery(".frm_post_content_opt, select.frm_dyncontent_opt").hide().val(""),jQuery(".frm_dyncontent_opt").hide()):"post_content"===e?(jQuery(".frm_post_content_opt").show(),jQuery(".frm_dyncontent_opt").hide(),jQuery("select.frm_dyncontent_opt").val("")):(jQuery(".frm_post_content_opt").hide().val(""),jQuery("select.frm_dyncontent_opt, .frm_form_field.frm_dyncontent_opt").show())}function pi(){var e=jQuery(this).val(),t=jQuery(document.getElementById("frm_dyncontent"));""===e||"new"===e?(t.val(""),jQuery(".frm_dyncontent_opt").show()):jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_display_get_content",id:e,nonce:frmGlobal.nonce},success:function(e){t.val(e),jQuery(".frm_dyncontent_opt").show()}})}function gi(){var e,t,r=document.getElementById("frm_posttax_rows").childNodes,n=document.querySelector(".frm_post_parent_field"),o=document.querySelector(".frm_post_menu_order_field"),a=this.value;jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_replace_posttax_options",post_type:a,nonce:frmGlobal.nonce},success:function(n){for(i=0;i');var e=jQuery(this).closest(".frm_form_action_settings").find('select[name$="[post_content][post_type]"]').val(),t=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),r=jQuery(this).closest(".frm_posttax_row").attr("id").replace("frm_posttax_",""),n=jQuery(this).val(),i=jQuery(document.getElementById(r+"_show_exclude")).is(":checked")?1:0,o=jQuery('select[name$="[post_category]['+r+'][field_id]"]').val(),a=jQuery('input[name="id"]').val();jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_posttax_row",form_id:a,post_type:e,tax_key:r,action_key:t,meta_name:n,field_id:o,show_exclude:i,nonce:frmGlobal.nonce},success:function(e){jQuery(document.getElementById("frm_posttax_"+r)).replaceWith(e)}})}}function wi(){var e=jQuery(this).closest(".frm_postmeta_row"),t=e.find(".frm_cancelnew"),r=e.find(".frm_enternew");return e.find("select.frm_cancelnew").is(":visible")?(t.hide(),r.show()):(t.show(),r.hide()),e.find("input.frm_enternew, select.frm_cancelnew").val(""),!1}function Qi(){var e=jQuery(this),t=e.val();"checkbox"===e.attr("type")&&!1===this.checked&&(t="");var r=e.data("toggleclass");""===t?jQuery("."+r).hide():(jQuery("."+r).show(),jQuery(".hide_"+r+"_"+t).hide())}function xi(){Rn()||(Wn(this),Hn(document.querySelector(".frm_form_settings")))}function Ei(e){return e.preventDefault(),ki(jQuery(this),this.getAttribute("data-code")),!1}function ki(e,t){var r=!1,i=e;if("object"===n(e)){if(e.hasClass("frm_noallow"))return;void 0===(i=jQuery(e).closest("[data-fills]").attr("data-fills"))&&void 0!==(i=e.closest("div").attr("class"))&&(i=i.split(" ")[1])}if(void 0===i){var o=document.activeElement;"search"===o.type?null===(i=o.id.replace("-search-input","")).match(/\d/gi)&&(i=(o=jQuery(".frm-single-settings:visible ."+i)).attr("id")):i=o.id}i&&(r=jQuery("#wp-"+i+"-wrap.wp-editor-wrap").length>0);var a=jQuery(document.getElementById(i));if(void 0===e.attr("data-shortcode")&&(!a.length||void 0===a.attr("data-shortcode"))){var l=e.parents("ul.frm_code_list").attr("data-shortcode");"undefined"!==l&&"no"===l||(t="["+t+"]")}if(r&&(wpActiveEditor=i),!a.length)return!1;if("[default-html]"===t||"[default-plain]"===t){var s=0;"[default-plain]"===t&&(s=1),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_get_default_html",form_id:jQuery('input[name="id"]').val(),plain_text:s,nonce:frmGlobal.nonce},elementId:i,success:function(e){if(r){var t=document.createElement("p");t.innerText=e,send_to_editor(t.innerHTML)}else Li(a,e)}})}else t=function(e,t,r){return"object"===n(t)&&t instanceof jQuery&&0===r[0].id.indexOf("success_url_")&&(t=t[0]).closest("#frm-insert-fields-box")?(t.parentNode.classList.contains("frm_insert_url")||(e=e.replace("]"," sanitize_url=1]")),e):e}(t,e,a),r?send_to_editor(t):Li(a,t);return!1}function Li(e,t){if(document.selection)e[0].focus(),document.selection.createRange().text=t;else{obj=e[0];var r=obj.selectionEnd;t=function(e,t,r,n){var i=e.data("sep");if(void 0===i)return t;var o=e.val();if(!o.trim().length)return t;var a=new RegExp(i+"\\s*$"),l=new RegExp("^\\s*"+i);return o.substr(0,r).trim().length&&!1===a.test(o.substr(0,r))&&(t=i+t),o.substr(n,o.length).trim().length&&!1===l.test(o.substr(n,o.length))&&(t+=i),t}(e,t,obj.selectionStart,r),obj.value=obj.value.substr(0,obj.selectionStart)+t+obj.value.substr(obj.selectionEnd,obj.value.length);var n=r+t.length;!function(e,t){if(e.classList.contains("frm_classes")&&Si(t)){var r=e.value.split(" ").filter(Si);r.length&&(e.value=function(e,t,r){var n=e.split(" ").filter((function(e){return(e=e.trim()).length&&!t.includes(e)}));return n.includes(r)||n.push(r),n.join(" ")}(e.value,r,t.trim()))}}(obj,t),obj.focus(),obj.setSelectionRange(n,n)}Pn(e)}function Si(e){return["frm_half","frm_third","frm_two_thirds","frm_fourth","frm_three_fourths","frm_fifth","frm_sixth","frm2","frm3","frm4","frm6","frm8","frm9","frm10","frm12"].includes(e.trim())}function Ai(){var e=document.getElementById("frm-id-condition"),t=document.getElementById("frm-key-condition");"id"===this.value?(e.classList.remove("frm_hidden"),t.classList.add("frm_hidden"),Io(t,"change")):(e.classList.add("frm_hidden"),t.classList.remove("frm_hidden"),Io(e,"change"))}function Ii(){var e,t,r=document.getElementById("frm-id-key-condition-id").checked?"frm-id-condition":"frm-key-condition",n=document.getElementById("frm-is-condition").value,i=document.getElementById("frm-text-condition").value,o=document.getElementById("frm-insert-condition");t="if "+(e=(r=document.getElementById(r)).options[r.selectedIndex].value)+" "+n+'="'+i+'"]',o.setAttribute("data-code",t+a.conditional_text+"[/if "+e),o.innerHTML="["+t+"[/if "+e+"]"}function Bi(){Cn($i(this),this)}function Ci(e){e.preventDefault(),e.stopPropagation(),Oi(this)}function qi(e){!function(e){var t;if(e.id.startsWith("field_options_type_")){var r=e.id.split("_"),n=r.length&&r[r.length-1];null!==(t=document.querySelector("#frm-single-settings-".concat(n)))&&void 0!==t&&t.classList.contains("frm-type-".concat(e.value))||Ni()}}(e.target)}function Ni(e){var t;void 0===e&&(e=B("You are changing the field type. Not all field settings will appear as expected until you reload the page. Would you like to reload the page now?","formidable")),frmDom.modal.maybeCreateModal("frmSaveAndReloadModal",{title:B("Save and Reload?","formidable"),content:(t=d(e),t.style.padding="var(--gap-md)",t),footer:function(){var e=frmDom.modal.footerButton({text:B("Save and Reload","formidable"),buttonType:"primary"});_(e,(function(){Pi()}));var t=frmDom.modal.footerButton({text:B("Cancel","formidable"),buttonType:"cancel"});return t.classList.add("dismiss"),frmDom.div({children:[t,e]})}()})}function Ti(e){var t;if(e instanceof Event){var r=document.querySelectorAll(".frm-single-settings .frm-show-box.frmsvg use"),n=Array.from(r).find((function(e){return"#frm_close_icon"===e.getAttribute("href")}));if(void 0===n)return;t=n.parentElement}else t=e;var i=t.getBoundingClientRect(),o=document.getElementById("frm_adv_info"),a=o.parentElement.getBoundingClientRect();o.style.top=i.top-a.top+32+"px",o.style.left=i.left-a.left-280+"px"}function Oi(e,r){var n=Gi(e),i=document.getElementById("frm_adv_info"),o=e.className;if("svg"===e.tagName&&(e=e.firstElementChild),"use"===e.tagName&&null===(o=e.getAttributeNS("http://www.w3.org/1999/xlink","href"))&&(o=e.getAttribute("href")),-1!==o.indexOf("frm_close_icon"))Wi(i);else{if(Ti(e),jQuery(".frm_code_list a").removeClass("frm_noallow"),n.classList.contains("frm_not_email_to")?jQuery("#frm-insert-fields-box .frm_code_list li:not(.show_frm_not_email_to) a").addClass("frm_noallow"):n.classList.contains("frm_not_email_subject")&&jQuery(".frm_code_list li.hide_frm_not_email_subject a").addClass("frm_noallow"),i.setAttribute("data-fills",n.id),i.style.display="block","use"===e.tagName)if(e.hasAttributeNS("http://www.w3.org/1999/xlink","href"))e.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon");else{var l=document.createElementNS("http://www.w3.org/2000/svg","use");l.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon"),e.parentNode.replaceChild(l,e)}else e.className=o.replace("frm_more_horiz_solid_icon","frm_close_icon");"nofocus"!==r&&("none"!==n.style.display?n.focus():jQuery(tinymce.get(n.id)).trigger("focus")),function(e){["address","body"].forEach((function(r){!function(e,r){var n,i;n=a.contextualShortcodes[r+"Selector"],i=a.contextualShortcodes[r];var o,l=e.matches(n),s=function(e){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=t(e))){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw o}}}}(i);try{for(s.s();!(o=s.n()).done;){var d,c=o.value,f=null===(d=document.querySelector('#frm-adv-info-tab .frm_code_list [data-code="'+c+'"]'))||void 0===d?void 0:d.closest("li");null==f||f.classList.toggle("frm_hidden",!l)}}catch(e){s.e(e)}finally{s.f()}}(e,r)}))}(n)}}function Di(e){return 0===a.contextualShortcodes.length||!function(e){var t=e.querySelector("a");if(!t)return!1;var r=t.dataset.code;return a.contextualShortcodes.address.includes(r)||a.contextualShortcodes.body.includes(r)}(e)||function(e){var t=e.querySelector("a").dataset.code,r=document.getElementById("frm_adv_info").dataset.fills,n=document.getElementById(r),i=a.contextualShortcodes;return i.address.includes(t)?n.matches(i.addressSelector):n.matches(i.bodySelector)}(e)}function Mi(){E||(E=1,window.addEventListener("beforeunload",zi))}function Fi(){E=0}function Hi(){E=0}function Pi(){var e=document.getElementById("frm_submit_side_top");e.classList.contains("frm_submit_ajax")&&e.setAttribute("data-new-addon-installed",!0),e.click()}function zi(e){E&&(e.preventDefault(),e.returnValue="")}function Ri(e,t){var r={my:"top",at:"top+"+t,of:window};e.dialog("option","position",r)}function Gi(e){for(var t,r=e.nextElementSibling;null!==r&&("INPUT"!==r.tagName&&"TEXTAREA"!==r.tagName||r.classList.contains("frm-token-input-field"));)r=Gi(r);return r||(r=null===(t=e.closest(".frm-field-formula"))||void 0===t?void 0:t.querySelector(".frm-calc-field")),r}function $i(e){for(var t=e.previousElementSibling;null!==t&&"I"!==t.tagName&&"svg"!==t.tagName;)t=$i(t);return t}function Wi(e){var t,r,n,i;if((void 0!==e||null!==(e=document.getElementById("frm_adv_info")))&&null===document.getElementById("frm_dyncontent")){for(e.style.display="none",n=document.querySelectorAll(".frm-show-box.frm_close_icon"),t=0;t"+r.data.name+": "+r.data.msg+"

              ":'

              Imported '+r.data.name+"

              ",e.find(".status").prepend(n),e.find(".status").show(),N.importQueue=jQuery.grep(N.importQueue,(function(e){return e!=t})),N.imported++,0===N.importQueue.length?(e.find(".process-count").hide(),e.find(".forms-completed").text(N.imported),e.find(".process-completed").show()):(e.find(".form-current").text(N.imported+1),Xi(e)))}))}function Zi(e){e.preventDefault();var t=!1,r=jQuery('input[name="frm_export_forms[]"]');jQuery('input[name="frm_export_forms[]"]:checked').val()||(r.closest(".frm-table-box").addClass("frm_blank_field"),t="stop");var n=jQuery('input[name="type[]"]');if(jQuery('input[name="type[]"]:checked').val()||"checkbox"!==n.attr("type")||(n.closest("p").addClass("frm_blank_field"),t="stop"),"stop"===t)return!1;e.stopPropagation(),this.submit()}function eo(){var e=jQuery(this).closest(".frm_blank_field");if(void 0!==e){var t=this.name;("type[]"===t&&jQuery('input[name="type[]"]:checked').val()||"frm_export_forms[]"===t&&jQuery(this).val())&&e.removeClass("frm_blank_field")}}function to(){null!==jQuery(this).val().match(/\.csv$/i)?jQuery(".show_csv").fadeIn():jQuery(".show_csv").fadeOut()}function ro(){var e=document.querySelector('select[name="format"]');return e?e.value:""}function no(e){var t,r,n=e.target.value;oo(n),io.call(e.target),t=n,r=document.getElementById("frm-export-select-all"),"csv"===t?(r.checked=!1,r.disabled=!0):r.disabled=!1}function io(){var e=jQuery(this),t=e.find(":selected"),r=t.data("support"),n=r.indexOf("|");jQuery('input[name="type[]"]').each((function(){this.checked=!1,r.indexOf(this.value)>=0?(this.disabled=!1,-1===n&&(this.checked=!0)):this.disabled=!0})),"csv"===e.val()?(jQuery(".csv_opts").show(),jQuery(".xml_opts").hide()):(jQuery(".csv_opts").hide(),jQuery(".xml_opts").show());var i=t.data("count"),o=jQuery('input[name="frm_export_forms[]"]');"single"===i?(o.prop("multiple",!1),o.prop("checked",!1)):(o.prop("multiple",!0),o.prop("disabled",!1)),e.trigger("change")}function oo(e){if(""!==e){var t=document.querySelectorAll(".frm-is-repeater");t.length&&("csv"===e?t.forEach((function(e){e.classList.remove("frm_hidden")})):t.forEach((function(e){e.classList.add("frm_hidden")})),Lo.call(document.querySelector(".frm-auto-search")))}}function ao(){var e=jQuery("select[name=format]").find(":selected").data("count"),t=jQuery('input[name="frm_export_forms[]"]');"single"===e&&this.checked?(t.prop("disabled",!0),this.removeAttribute("disabled")):t.prop("disabled",!1)}function lo(){jQuery(".frm_multiselect").hide().each(frmDom.bootstrap.multiselect.init)}function so(e){e.preventDefault(),uo(this,"frm_multiple_addons")}function co(e){e.preventDefault(),uo(this,"frm_activate_addon")}function fo(e){e.preventDefault(),uo(this,"frm_install_addon")}function uo(e,t){var r,n,i,o;jQuery(".frm-addon-error").remove(),n=(r=jQuery(e)).attr("rel"),i=r.parent(),o=i.parent().find(".addon-status-label"),r.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:t,nonce:frmGlobal.nonce,plugin:n},success:function(e){var n,a,l;"string"!=typeof(e=null!==(n=null===(a=e)||void 0===a?void 0:a.data)&&void 0!==n?n:e)&&"string"==typeof e.message&&(void 0!==e.saveAndReload&&(l=e.saveAndReload),e=e.message);var s=go(e);s?yo(s,i,r):(_o(e,r,o,i,l,t),wp.hooks.doAction("frm_update_addon_state",e))},error:function(){r.removeClass("frm_loading_button")}})}function mo(e){e.preventDefault();var t=jQuery(this),r=t.parent().parent(),n=t.attr("rel");t.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:"frm_install_addon",nonce:a.nonce,plugin:n,hostname:r.find("#hostname").val(),username:r.find("#username").val(),password:r.find("#password").val()},success:function(e){var n,i,o=go(e=null!==(n=null===(i=e)||void 0===i?void 0:i.data)&&void 0!==n?n:e);o?yo(o,r,t):_o(e,t,message,r)},error:function(){t.removeClass("frm_loading_button")}})}function _o(e,t,r,n,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"frm_activate_addon",l=document.querySelectorAll(".frm-addon-status");l.forEach((function(t){t.textContent=e,t.style.display="block"})),t.css({opacity:"0"}),document.querySelectorAll(".frm-oneclick").forEach((function(e){e.style.display="none"})),jQuery("#frm_upgrade_modal h2").hide(),jQuery("#frm_upgrade_modal .frm_lock_icon").addClass("frm_lock_open_icon"),jQuery("#frm_upgrade_modal .frm_lock_icon use").attr("xlink:href","#frm_lock_open_icon");var s={frm_activate_addon:{class:"frm-addon-active",message:a.active},frm_deactivate_addon:{class:"frm-addon-installed",message:a.installed},frm_uninstall_addon:{class:"frm-addon-not-installed",message:a.not_installed}};s.frm_install_addon=s.frm_activate_addon;var c=r[0];c&&(c.textContent=s[o].message);var f=n[0].parentElement;f.classList.remove("frm-addon-not-installed","frm-addon-installed","frm-addon-active"),f.classList.add(s[o].class),t[0].classList.remove("frm_loading_button"),document.querySelectorAll(".frm-admin-page-import, #frm-admin-smtp, #frm-welcome").length>0?window.location.reload():["settings","form_builder"].includes(i)&&l.forEach((function(e){var t=null!==e.closest("#frm_upgrade_modal");e.appendChild(function(e,t){var r=[po(e)];return t&&r.push(function(){var e=document.createElement("a");return e.setAttribute("href","#"),e.classList.add("button","button-secondary","frm-button-secondary","dismiss"),e.textContent=B("Close","formidable"),e}()),d({className:"frm-save-and-reload-options",children:r})}(i,t))}))}function po(e){var t=document.createElement("button");return t.classList.add("frm-save-and-reload","button","button-primary","frm-button-primary"),t.textContent=B("Save and Reload","formidable"),t.addEventListener("click",(function(){var t,r;"form_builder"===e?Pi():"settings"===e&&null!==(t=document.getElementById("form_settings_page"))&&null!==(r=t.querySelector("form.frm_form_settings"))&&(E=0,r.submit())})),t}function go(e){return"string"!=typeof e&&(void 0===e.success||!e.success)&&(e.form&&jQuery(e.form).is("#message")?{message:jQuery(e.form).find("p").html()}:e)}function yo(e,t,r){e.form?(jQuery(".frm-inline-error").remove(),r.closest(".frm-card").html(e.form).css({padding:5}).find("#upgrade").attr("rel",r.attr("rel")).on("click",mo)):(t.append('

              '+e.message+"

              "),r.removeClass("frm_loading_button"),jQuery(".frm-addon-error").delay(4e3).fadeOut())}function ho(){bo()}function vo(e){!function(e,t,r){var n=jQuery("#frm_leave_email_error");n.removeClass("frm_hidden").attr("frm-error",r),jQuery("#frm_leave_email").one("keyup",(function(){n.addClass("frm_hidden")}))}(0,0,e)}function bo(){var e=document.getElementById("frmapi-email-form");jQuery.ajax({dataType:"json",url:e.getAttribute("data-url"),success:function(t){var r=t.renderedHtml;r=r.replace(/]*(formidableforms.css|action=frmpro_css)[^>]*>/gi,""),e.innerHTML=r}})}function jo(e){frmDom.autocomplete.initSelectionAutocomplete(e)}function wo(e){var t=this.parentNode.parentNode,r=t.elements.type.value;e.preventDefault(),this.classList.add("frm_loading_button"),xo(t,r,this)}function Qo(e){var t=this.elements.type.value,r=this.querySelector("button");e.preventDefault(),r.classList.add("frm_loading_button"),xo(this,t,r)}function xo(e,t,r){var n=function(e){var t,r,n={},i=e.elements;for(r=0;r=0||So(l,n)?(s&&Di(o[e])&&o[e].classList.remove("frm_hidden"),o[e].classList.add("frm-search-result")):(o[e].classList.add("frm_hidden"),o[e].classList.remove("frm-search-result"))}(t=document.querySelector("#frm-insert-fields"))&&t.querySelectorAll(":scope > .frm-with-line").forEach((function(e){var t=e.nextElementSibling;if(t){var r=t.querySelectorAll(":scope > li.frmbutton"),n=Array.from(r).every((function(e){return e.classList.contains("frm_hidden")}));e.classList.toggle("frm_hidden",n)}})),jQuery(this).trigger("frmAfterSearch")}function So(e,t){return"s"!==t&&"s"!==e[e.length-1]&&(e+"s").indexOf(t)>=0}function Ao(e){e.stopPropagation()}function Io(e,t){var r=document.createEvent("HTMLEvents");r.initEvent(t,!1,!0),e.dispatchEvent(r)}function Bo(e,t){var r,n=new XMLHttpRequest,i="string"==typeof e?e:Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&");return n.open("post",ajaxurl,!0),n.onreadystatechange=function(){if(n.readyState>3&&200==n.status){r=n.responseText;try{r=JSON.parse(r)}catch(e){}t(r)}},n.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.setRequestHeader("Content-type","application/x-www-form-urlencoded"),n.send(i),n}function Co(e,t){e.classList.add("frm-fade"),setTimeout(t,1e3)}function qo(e){jQuery(e).css("visibility","hidden")}function No(e){jQuery(e).css("visibility","visible")}function To(e,t){var r=jQuery(e);if(!r.length)return!1;void 0===t&&(t="550px");var n={dialogClass:"frm-dialog",modal:!0,autoOpen:!1,closeOnEscape:!0,width:t,resizable:!1,draggable:!1,open:function(){var e,t;jQuery(".ui-dialog-titlebar").addClass("frm_hidden").removeClass("ui-helper-clearfix"),jQuery("#wpwrap").addClass("frm_overlay"),jQuery(".frm-dialog").removeClass("ui-widget ui-widget-content ui-corner-all"),r.removeClass("ui-dialog-content ui-widget-content"),e=r,t=function(){e.dialog("close")},jQuery(".ui-widget-overlay").on("click",t),e.on("click","a.dismiss",t)},close:function(){jQuery("#wpwrap").removeClass("frm_overlay"),jQuery(".spinner").css("visibility","hidden"),this.removeAttribute("data-option-type");var e=document.getElementById("bulk-option-type");e&&(e.value="")}};return r.dialog(n),r}function Oo(e,t){if("#"===t){var r=document.getElementById(e),n=r.style.display;r.style.display="none"===n?"block":"none"}else e.is(":visible")?e.hide():e.show()}function Do(){window.onbeforeunload=null;var e=jQuery(window);e.off("beforeunload.widgets"),e.off("beforeunload.edit-post")}function Mo(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);if(null!==t&&"form"===t.dataset.type)if(t=jQuery(t),this.options[this.selectedIndex].value){t.find(".frm-not-set")[0].classList.add("frm_hidden");var r=t.find(".frm-embed-message");r.html(r.data("embedmsg")+this.options[this.selectedIndex].text),t.find(".frm-embed-field-placeholder")[0].classList.remove("frm_hidden")}else t.find(".frm-not-set")[0].classList.remove("frm_hidden"),t.find(".frm-embed-field-placeholder")[0].classList.add("frm_hidden")}function Fo(){var e=jQuery(this).closest(".frm-single-settings"),t=e.find(".frmjs_product_choices"),r=e.find(".frm_prod_options_heading"),n=this.options[this.selectedIndex].value;t.removeClass("frm_prod_type_single frm_prod_type_user_def"),r.removeClass("frm_prod_user_def"),"single"===n?t.addClass("frm_prod_type_single"):"user_def"===n&&(t.addClass("frm_prod_type_user_def"),r.addClass("frm_prod_user_def"))}function Ho(e){var t=document.getElementById("frm_field_id_"+e);return null!==t&&"product"===t.getAttribute("data-type")}function Po(){var t=function(e,t){return window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]},r=function(e,t,r){window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]=r},n=[1,2,3,4,5,6,7,8,9,10,11,12].map((function(e){return"frm"+e})),i=["first","middle","last"];document.addEventListener("change",(function(o){o.target.matches(".frm_name_layout_dropdown")&&function(o){var a,l=o.target.value.split("_"),s=o.target.dataset.fieldId,d=document.querySelector("#field_"+s+"_inner_container .frm_combo_inputs_container"),c=(a=l.length,"frm"+parseInt(12/a));i.forEach((function(t){var i,o=d.querySelector('[data-sub-field-name="'+t+'"]');o&&(o.classList.add("frm_hidden"),(i=o.classList).remove.apply(i,e(n)),r(s,t,o))})),l.forEach((function(e){var r=t(s,e);r&&(r.classList.remove("frm_hidden"),r.classList.add(c),d.append(r))})),i.forEach((function(e){var t=document.querySelector(".frm_sub_field_options-"+e+'[data-field-id="'+s+'"]');t&&(t.classList.add("frm_hidden"),r(s,e+"_options",t))})),l.forEach((function(e){var r=t(s,e+"_options");r&&r.classList.remove("frm_hidden")}))}(o)}),!1)}function zo(e,t){var r,n,i,o=!1,a=!1;(r=t.newOption?(new DOMParser).parseFromString(t.newOption,"text/html").body.childNodes[0]:t).querySelectorAll("svg").forEach((function(e,t){(n=e.getElementsByTagNameNS("http://www.w3.org/2000/svg","use")[0])&&("#frm_drag_icon"===(i=n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("href"))&&(o=!0),"#frm_save_icon"===i&&(a=!0))})),o||r.prepend(b.drag.cloneNode(!0)),r.querySelector("[id^=field_key_".concat(e,"-]"))&&!a&&r.querySelector("[id^=field_key_".concat(e,"-]")).after(b.save.cloneNode(!0)),t.newOption&&(t.newOption=r)}function Ro(){var e=document.getElementById("frm_leave_email").value.trim();if(""!==e)if(!1!==/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e)){var t=jQuery("#frmapi-email-form").find("form"),r=t.find('[type="email"]').not(".frm_verify");if(r.length){if(document.getElementById("frm_empty_inbox")){document.getElementById("frm-add-my-email-address").remove();var n=document.getElementById("frm_leave_email_wrapper");if(n){n.classList.add("frm_hidden");var i=c({className:"frm-wait frm_spinner"});i.style.visibility="visible",i.style.float="none",i.style.width="unset",n.parentElement.insertBefore(i,n.nextElementSibling)}}r.val(e),jQuery.ajax({type:"POST",url:t.attr("action"),data:t.serialize()+"&action=frm_forms_preview"}).done((function(e){if(-1!==jQuery(e).find(".frm_message").text().trim().indexOf("Thanks!")){var t=document.getElementById("frmapi-email-form").parentElement.querySelector(".frm_spinner");t&&t.remove(),wp.hooks.applyFilters("frm_thank_you_on_signup",!0)&&document.getElementById("frm_leave_email_wrapper").replaceWith(c(B("Thank you for signing up!","formidable")))}else vo("invalid")}))}}else vo("invalid");else vo("empty")}function Go(e){if(D||e.stopPropagation(),!(e.target.classList.contains("frm-show-box")||e.target.parentElement&&e.target.parentElement.classList.contains("frm-show-box"))){var t=document.getElementById("frm_adv_info");t&&(t.dataset.fills===e.target.id&&void 0!==e.target.id||e.target.closest("#frm_adv_info")||"none"===t.style.display||Wi(t))}}return{init:function(){var t,r,n,i,o,a,l;!function(){jQuery(document).on("click","#frm-add-my-email-address",(function(e){e.preventDefault(),Ro()}));var e=document.getElementById("frm_empty_inbox"),t=document.getElementById("frm_leave_email");if(e&&t){var r=document.getElementById("frm-leave-email-modal");r.classList.remove("frm_hidden"),r.querySelector(".frm_modal_footer").classList.add("frm_hidden"),t.addEventListener("keyup",(function(e){if("Enter"===e.key){var t=document.getElementById("frm-add-my-email-address");t&&t.click()}}))}}(),r=document.querySelector(".frm-admin-footer-links"),n=null!==(t=document.querySelector(".frm_page_container"))&&void 0!==t?t:document.getElementById("wpbody-content"),r&&n&&(n.appendChild(r),r.classList.remove("frm_hidden")),N={},jQuery(".wp-admin").on("click",(function(e){var t=jQuery(e.target),r=jQuery(".dropdown.open");!r.length||t.hasClass("dropdown")||t.closest(".dropdown").length||r.removeClass("open")})),jQuery("#frm_bs_dropdown:not(.open) a").on("click",Lt),void 0===k&&(k=jQuery(document.getElementById("form_id")).val()),document.querySelectorAll(".frm-warning-dismiss").forEach((function(e){_(e,St)})),frmAdminBuild.inboxBannerInit(),j.length>0?frmAdminBuild.buildInit():null!==document.getElementById("frm_notification_settings")?frmAdminBuild.settingsInit():null!==document.getElementById("frm_styling_form")?frmAdminBuild.styleInit():null!==document.getElementById("form_global_settings")?frmAdminBuild.globalSettingsInit():null!==document.getElementById("frm_export_xml")?frmAdminBuild.exportInit():null!==document.querySelector(".frm-inbox-wrapper")?frmAdminBuild.inboxInit():null!==document.getElementById("frm-welcome")?frmAdminBuild.solutionInit():(function(){if(document.body.classList.contains("frm-admin-page-entries")){var e=document.getElementById("screen-options-wrap");if(e){var t=d({className:"frm_warning_style",text:B("Only 10 columns can be selected at a time.","formidable")});t.style.margin=0;var r=e.querySelector("legend");r.parentNode.insertBefore(t,r.nextElementSibling);var n=Array.from(e.querySelectorAll('input[type="checkbox"]')),i=function(){n.reduce((function(e,t){return t.checked?e+1:e}),0)>=10?(t.classList.remove("frm_hidden"),n.forEach((function(e){e.checked||(e.parentNode.classList.add("frm_noallow"),e.disabled=!0)}))):t.classList.add("frm_hidden")};i(),n.forEach((function(e){e.addEventListener("change",(function(e){e.target.checked?i():(t.classList.add("frm_hidden"),n.forEach((function(e){e.parentNode.classList.remove("frm_noallow"),e.disabled=!1})))}))}))}}}(),jo(),jQuery("[data-frmprint]").on("click",(function(){return window.print(),!1}))),jQuery(document).on("change","select[data-toggleclass], input[data-toggleclass]",Qi),function(){function e(e){var t=e.options[e.selectedIndex];e.querySelectorAll("option[data-dependency]:not([data-dependency-skip])").forEach((function(e){var r=document.querySelector(e.dataset.dependency);null==r||r.classList.toggle("frm_hidden",t!==e)}))}document.querySelectorAll("select.frm_select_with_dependency").forEach(e),frmDom.util.documentOn("change","select.frm_select_with_dependency",(function(t){return e(t.target)}))}(),(jQuery(document.getElementById("frm_adv_info")).length>0||jQuery(".frm_field_list").length>0)&&frmAdminBuild.panelInit(),i=jQuery(".wrap, .frm_wrap"),o=document.getElementById("frm_confirm_modal"),a=!1,l=!1,jQuery(o).on("click","[data-deletefield]",wr),jQuery(o).on("click","[data-removeid]",G),jQuery(o).on("click","[data-trashtemplate]",ko),i.on("click",".frm_remove_tag, .frm_remove_form_action",G),i.on("click","a[data-frmverify]",M),i.on("click","a[data-frmtoggle]",P),i.on("click","a[data-frmhide], a[data-frmshow]",z),i.on("change","input[data-frmhide], input[data-frmshow]",z),i.on("click",".widget-top,a.widget-action",$),i.on("mouseenter.frm",".frm_bstooltip, .frm_help",(function(){jQuery(this).off("mouseenter.frm"),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(this).tooltip("show")})),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(document).on("click","#doaction, #doaction2",(function(e){var t="doaction"===this.id?"top":"bottom",r=document.getElementById("bulk-action-selector-"+t),n=document.getElementById("confirm-bulk-delete-"+t);if(null!==r&&null!==n){if(a=this,!l&&"bulk_delete"===r.value)return e.preventDefault(),F(n),!1}else a=!1})),jQuery(document).on("click","#frm-confirmed-click",(function(e){if(!1!==a&&!e.target.classList.contains("frm-btn-inactive"))return"confirm-bulk-delete"===this.getAttribute("href")?(e.preventDefault(),l=!0,a.click(),!1):void 0})),function(){var e=To("#frm_upgrade_modal");function t(t){var r,n,i;if((r=t.target).classList){var o=r.classList.contains("frm_show_expired_modal")||null!==r.querySelector(".frm_show_expired_modal")||r.closest(".frm_show_expired_modal");if("change"===t.type&&r.classList.contains("frm_select_with_upgrade")){var a=r.options[r.selectedIndex];a&&a.dataset.upgrade&&(r=a)}if(!r.dataset.upgrade){var l=r.closest("[data-upgrade]");if(!l){if(!(l=r.closest(".frm_field_box")))return;r.dataset.upgrade=""}r=l}if(o)wp.hooks.doAction("frm_show_expired_modal",r);else{var s=r.dataset.upgrade;if(s&&!r.classList.contains("frm_show_upgrade_tab")){t.preventDefault();var d=e.get(0),c=d.querySelector(".frm_lock_icon");c&&(c.style.display="block",c.classList.remove("frm_lock_open_icon"),c.querySelector("use").setAttribute("href","#frm_lock_icon"));var f="frm_upgrade_modal_image",u=document.getElementById(f);u&&u.remove(),r.dataset.image&&(c&&(c.style.display="none"),c.parentNode.insertBefore(m({id:f,src:frmGlobal.url+"/images/"+r.dataset.image}),c));var _=d.querySelector(".license-level");_&&(_.textContent=Vn(r)),Jn(r,"modal",s),d.querySelector(".frm_are_not_installed").style.display=r.dataset.image?"none":"inline-block",d.querySelector(".frm_feature_label").textContent=s,d.querySelector("h2").style.display="block",e.dialog("open");var p=d.querySelector(".button-primary:not(.frm-oneclick-button)");n=p.getAttribute("href").replace(/(medium=)[a-z_-]+/gi,"$1"+r.getAttribute("data-medium")),null===(i=r.getAttribute("data-content"))&&(i=""),n=n.replace(/(content=)[a-z_-]+/gi,"$1"+i),p.setAttribute("href",n)}}}}!1!==e&&(document.addEventListener("click",t),frmDom.util.documentOn("change","select.frm_select_with_upgrade",t))}(),frmDom.util.documentOn("click","[data-modal-title]",Un);var s=jQuery(document.getElementById("frm_shortcodediv"));s.length>0&&(jQuery("a.edit-frm_shortcode").on("click",(function(){return s.is(":hidden")&&(s.slideDown("fast"),this.style.display="none"),!1})),jQuery(".cancel-frm_shortcode","#frm_shortcodediv").on("click",(function(){return s.slideUp("fast"),s.siblings("a.edit-frm_shortcode").show(),!1}))),jQuery(document).on("click","#frm-nav-tabs a",W),jQuery(".post-type-frm_display .frm-nav-tabs a, .frm-category-tabs a").on("click",(function(){var e=this.classList.contains("frm_show_upgrade_tab");if(!this.classList.contains("frm_noallow")||e)return e&&Kn(this),U(this),!1})),U(jQuery(".starttab a"),"auto"),jQuery(document).on("click","#frm-fid-search-menu a",(function(){var e=this.id.replace("fid-","");return jQuery('select[name="fid"]').val(e),Hn(document.getElementById("posts-filter")),!1})),jQuery(".frm_select_box").on("click focus",(function(){this.select()})),jQuery(document).on("input search change",".frm-auto-search:not(#frm-form-templates-page #template-search-input)",Lo),jQuery(document).on("focusin click",".frm-auto-search",Ao);var c=jQuery(".frm-auto-search");""!==c.val()&&c.trigger("keyup"),FrmFormsConnect.init(),jQuery(document).on("click",".frm-install-addon",fo),jQuery(document).on("click",".frm-activate-addon",co),jQuery(document).on("click",".frm-solution-multiple",so),jQuery("button, input[type=submit]").on("click",Do),document.addEventListener("click",(function(e){if("LABEL"===e.target.nodeName){var t=e.target.getAttribute("for");if(t){var r=document.getElementById(t);if(r&&r.nextElementSibling){var n=r.nextElementSibling.querySelector("button.dropdown-toggle.multiselect");n&&setTimeout((function(){return n.click()}),0)}}}})),frmAdminBuild.hooks.addFilter("frm_before_embed_modal",(function(e,t){var r,n,i=t.element;if("form"!==t.type)return e;var o=i.closest("tr");if(o)r=parseInt(o.querySelector(".column-id").textContent),n=o.querySelector(".column-form_key").textContent;else{r=document.getElementById("form_id").value;var a=document.getElementById("frm_form_key");if(a)n=a.value;else{var l=document.getElementById("frm-previewDrop");l&&(n=l.nextElementSibling.querySelector(".dropdown-item a").getAttribute("href").split("form=")[1])}}return[r,n]})),document.querySelectorAll("#frm-show-fields > li, .frm_grid_container li").forEach((function(t,r){t.addEventListener("click",(function(){var t,r,n;r=(null===(t=this.querySelector("li"))||void 0===t?void 0:t.dataset.fid)||this.dataset.fid,(n=document.querySelectorAll("[id^=frm_delete_field_".concat(r,"-]"))).length<2||e(n).slice(1).forEach((function(e,t){e.classList.contains("frm_other_option")||zo(r,e)}))}))}));var f=document.getElementById("frm_small_screen_proceed_button");f&&_(f,(function(){var e;null===(e=document.getElementById("frm_small_device_message_container"))||void 0===e||e.remove(),g("small_screen_proceed",new FormData)}));var u=document.getElementById("frm_sale_banner"),p=null==u?void 0:u.querySelector(".dismiss");u&&(_(u,(function(e){e.target.closest(".dismiss")||(window.location.href=u.getAttribute("data-url"))})),p&&_(p,(function(){u.remove();var e=new FormData;g("sale_banner_dismiss",e)})))},buildInit:function(){var e,t,r;jQuery("#frm_builder_page").on("mouseup","*:not(.frm-show-box)",Go),y=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return frmDom.util.debounce(e,t)}(oe,10),h=document.getElementById("post-body-content"),v=jQuery(h),jQuery(".frm_field_loading").length&&Le(jQuery(".frm_field_loading").first().attr("id")),V("ul.frm_sorting"),document.querySelectorAll(".field_type_list > li:not(.frm_show_upgrade)").forEach(X),jQuery("ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a").disableSelection(),jQuery(".frm_submit_ajax").on("click",Fn),jQuery(".frm_submit_no_ajax").on("click",zn),Gn(),jQuery("a.edit-form-status").on("click",kn),jQuery(".cancel-form-status").on("click",Ln),jQuery(".save-form-status").on("click",(function(){var e=jQuery(document.getElementById("form_change_status")).val();return jQuery('input[name="new_status"]').val(e),jQuery(document.getElementById("form-status-display")).html(e),jQuery(".cancel-form-status").trigger("click"),!1})),jQuery(".frm_form_builder form").first().on("submit",(function(){jQuery(".inplace_field").trigger("blur")})),lo(),Tr(),e=jQuery(w),t=document.getElementById("frm_form_editor_container"),e.on("click",".frm_add_logic_row",Er),e.on("click",".frm_add_watch_lookup_row",Lr),e.on("change",".frm_get_values_form",qr),e.on("change",".frm_logic_field_opts",bn),e.on("frm-multiselect-changed",'select[name^="field_options[admin_only_"]',Sn),jQuery(document.getElementById("frm-insert-fields")).on("click",".frm_add_field",Ae),j.on("click",".frm_clone_field",Ce),e.on("blur",'input[id^="frm_calc"]',Ye),e.on("change","input.frm_format_opt, input.frm_max_length_opt",lt),e.on("change click","[data-changeme]",ot),e.on("click","input.frm_req_field",st),e.on("click",".frm_mark_unique",ct),e.on("change",".frm_repeat_format",Vr),e.on("change",".frm_repeat_limit",Kr),e.on("change",".frm_js_checkbox_limit",Jr),e.on("input",'input[name^="field_options[add_label_"]',(function(){Yr(this,"add")})),e.on("input",'input[name^="field_options[remove_label_"]',(function(){Yr(this,"remove")})),e.on("change",'select[name^="field_options[data_type_"]',Nr),jQuery(t).on("click",".frm-collapse-page",Or),jQuery(t).on("click",".frm-collapse-section",Fr),e.on("click",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",Hr),e.on("keydown",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",(function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),Hr.call(this,e))})),jQuery(t).on("show.bs.dropdown hide.bs.dropdown",ze),e.on("click",".frm_toggle_sep_values",yt),e.on("click",".frm_toggle_image_options",ht),e.on("click",".frm_remove_image_option",Et),e.on("click",".frm_choose_image_box",xt),e.on("change",".frm_hide_image_text",Qt),e.on("change",".frm_field_options_image_size",jt),e.on("click",".frm_multiselect_opt",kt),j.on("mousedown","input, textarea, select",At),j.on("click","input[type=radio], input[type=checkbox]",At),j.on("click",".frm_delete_field",Nt),j.on("click",".frm_select_field",Tt),jQuery(document).on("click",".frm_delete_field_group",Ot),jQuery(document).on("click",".frm_clone_field_group",Dt),jQuery(document).on("click","#frm_field_group_controls > span:first-child",Mt),jQuery(document).on("click",".frm-row-layout-option",Yt),jQuery(document).on("click",".frm-merge-fields-into-row .frm-row-layout-option",Xt),jQuery(document).on("click",".frm-custom-field-group-layout",er),jQuery(document).on("click",".frm-merge-fields-into-row .frm-custom-field-group-layout",rr),jQuery(document).on("click",".frm-break-field-group",lr),j.on("click","#frm_field_group_popup .frm_grid_container input",sr),jQuery(document).on("click",".frm-cancel-custom-field-group-layout",dr),jQuery(document).on("click",".frm-save-custom-field-group-layout",fr),j.on("click","ul.frm_sorting",ur),jQuery(document).on("click",".frm-merge-fields-into-row",vr),jQuery(document).on("click",".frm-delete-field-groups",jr),j.on("click",'.frm-field-action-icons [data-toggle="dropdown"]',(function(){this.closest("li.form-field").classList.add("frm-field-settings-open"),jQuery(document).on("click","#frm_builder_page",Oe)})),j.on("mousemove","ul.frm_sorting",De),j.on("show.bs.dropdown",".frm-field-action-icons",He),jQuery(document).on("show.bs.dropdown","#frm_field_group_controls",Pe),e.on("click",".frm_single_option a[data-removeid]",It),e.on("mousedown",".frm_single_option input[type=radio]",Bt),e.on("focusin",".frm_single_option input[type=text]",Ct),e.on("click",".frm_add_opt",_t),e.on("change",".frm_single_option input",Zr),e.on("change",".frm_image_id",Zr),e.on("change",".frm_toggle_mult_sel",pt),e.on("focusin",".frm_classes + .frm-token-proxy-input",Bi),j.on("click",".frm_primary_label",zr),j.on("click",".frm_description",Rr),j.on("click","li.ui-state-default:not(.frm_noallow)",$r),j.on("dblclick","li.ui-state-default",Ur),e.on("change",".frm_tax_form_select",Xr),e.on("change","select.conf_field",ft),e.on("change",".frm_get_field_selection",jn),e.on("click",".frm-show-inline-modal",Bn),e.on("click",".frm-inline-modal .dismiss",qn),jQuery(document).on("change","[data-frmchange]",Tn),document.addEventListener("click",Nn),e.on("change",".frm_include_extras_field",et),e.on("change",'select[name^="field_options[form_select_"]',Mo),jQuery(document).on("submit","#frm_js_build_form",Fi),jQuery(document).on("change","#frm_builder_page input:not(.frm-search-input):not(.frm-custom-grid-size-input), #frm_builder_page select, #frm_builder_page textarea",Mi),nt(),jQuery(document).on("change",".frmjs_prod_data_type_opt",Fo),jQuery(document).on("focus",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Ar),jQuery(document).on("blur",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Br),frmDom.util.documentOn("click",".frm-show-field-settings",$r),frmDom.util.documentOn("change","select.frm_format_dropdown, select.frm_phone_type_dropdown",Wr),e.on("keydown",'.frm_single_option input[name^="field_options["], .frm_single_option input[name^="rows_"]',(function(e){"Enter"===e.key&&function(e){var t=e.closest(".frm_single_option").parentElement.querySelectorAll('.frm_single_option input[name^="field_options[" ], .frm_single_option input[name^="rows_"]'),r=Array.from(t),n=r.indexOf(e);if(!(n<0)){var i=r.slice(n+1).find((function(e){return null!==e.offsetParent}));if(i){i.focus();var o=i.value.length;i.setSelectionRange(o,o)}}}(e.currentTarget)})),!1!==(r=To("#frm-bulk-modal","700px"))&&(jQuery(".frm-insert-preset").on("click",mt),jQuery(w).on("click","a.frm-bulk-edit-link",(function(e){e.preventDefault();var t,n,i,o,a,l="",s=jQuery(this).closest("[data-fid]").data("fid"),d=pn(s),c=Ho(s);if(o=document.getElementById("frm_field_"+s+"_opts")){for(a=o.getElementsByTagName("li"),document.getElementById("bulk-field-id").value=s,t=0;t=a.length-1&&(document.getElementById("frm_bulk_options").value=l);return r.dialog("open"),!1}})),jQuery("#frm-update-bulk-opts").on("click",(function(){var e=document.getElementById("bulk-field-id").value;document.getElementById("bulk-option-type").value||(this.classList.add("frm_loading_button"),frmAdminBuild.updateOpts(e,document.getElementById("frm_bulk_options").value,r),Mi())}))),In(),document.addEventListener("frm_added_field",In),Be(),Po(),xn(),frmDom.util.documentOn("change",".frm_show_password_setting_input",(function(e){var t=e.target.getAttribute("data-fid"),r=document.getElementById("frm_field_id_"+t);r&&r.classList.toggle("frm_disabled_show_password",!e.target.checked)})),document.addEventListener("scroll",Ti,!0),document.addEventListener("change",qi),document.querySelector(".frm_form_builder").addEventListener("mousedown",(function(e){e.shiftKey&&e.preventDefault()})),wp.hooks.addAction("frmShowedFieldSettings","formidableAdmin",(function(e,t){t.querySelectorAll(".frm-collapse-me").forEach(Pr)}),9999)},settingsInit:function(){var e,t,r,n,i=jQuery(document.getElementById("frm_notification_settings"));i.on("click",".frm_email_buttons",oi),i.on("click",".frm_remove_field",ai),i.on("change",".frm_to_row, .frm_from_row",li),i.on("change",".frm_tax_selector",ji),i.on("change","select.frm_single_post_field",mi),i.on("change","select.frm_toggle_post_content",_i),i.on("change","select.frm_dyncontent_opt",pi),i.on("change",".frm_post_type",gi),i.on("click",".frm_add_postmeta_row",vi),i.on("click",".frm_add_posttax_row",hi),i.on("click",".frm_toggle_cf_opts",wi),i.on("click",".frm_duplicate_form_action",Zn),jQuery(".frm_actions_list").on("click",".frm_active_action",ti),jQuery("#frm-show-groups, #frm-hide-groups").on("click",ri),lo(),jQuery("ul.frm_actions_list li").each((function(){si(jQuery(this).children("a").data("actiontype"));var e=jQuery(this).find("i");"none"!==e.css("background-image")&&e.addClass("frm-inverse")})),jQuery(".frm_submit_settings_btn").on("click",xi),Gn(),(e=jQuery(".frm_form_settings")).on("click",".frm_add_form_logic",ui),e.on("click",".frm_already_used",fi),document.addEventListener("click",(function(e){var t=e.target;t.closest(".frm_image_preview_wrapper")&&(t.closest(".frm_choose_image_box")?xt.bind(t)(e):t.closest(".frm_remove_image_option")&&Et.bind(t)(e))})),e.on("mouseup","*:not(.frm-show-box)",Go),jQuery(document.getElementById("no_save")).on("change",(function(){this.checked&&!0!==confirm(a.no_save_warning)&&jQuery(this).attr("checked",!1)})),jQuery('select[name="options[edit_action]"]').on("change",Xn),t=document.getElementById("logged_in"),jQuery(t).on("change",(function(){this.checked?No(".hide_logged_in"):qo(".hide_logged_in")})),r=jQuery(document.getElementById("frm_cookie_expiration")),jQuery(document.getElementById("frm_single_entry_type")).on("change",(function(){"cookie"===this.value?r.fadeIn("slow"):r.fadeOut("slow")}));var o=document.getElementById("single_entry");jQuery(o).on("change",(function(){this.checked?No(".hide_single_entry"):qo(".hide_single_entry"),this.checked&&"cookie"===jQuery(document.getElementById("frm_single_entry_type")).val()?r.fadeIn("slow"):r.fadeOut("slow")})),jQuery(".hide_save_draft").hide();var l=jQuery(document.getElementById("save_draft"));l.on("change",(function(){this.checked?jQuery(".hide_save_draft").fadeIn("slow"):jQuery(".hide_save_draft").fadeOut("slow")})),Pn(l),n=document.getElementById("editable"),jQuery(n).on("change",(function(){this.checked?(jQuery(".hide_editable").fadeIn("slow"),Pn(document.getElementById("edit_action"))):(jQuery(".hide_editable").fadeOut("slow"),jQuery(".edit_action_message_box").fadeOut("slow"))})),jQuery(document).on("change","#protect_files",(function(){this.checked?jQuery(".hide_protect_files").fadeIn("slow"):jQuery(".hide_protect_files").fadeOut("slow")})),jQuery(document).on("frm-multiselect-changed","#protect_files_role",Sn),jQuery(document).on("submit",".frm_form_settings",Hi),jQuery(document).on("change","#form_settings_page input:not(.frm-search-input), #form_settings_page select, #form_settings_page textarea",Mi),jo(),jQuery(document).on("frm-action-loaded",Vi),frmDom.util.documentOn("change",'.frm_on_submit_type input[type="radio"]',(function(e){if(e.target.checked){var t=e.target.closest(".frm_form_action_settings");t.querySelectorAll(".frm_on_submit_dependent_setting:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden")})),t.querySelectorAll(".frm_on_submit_dependent_setting[data-show-if-"+e.target.value+"]").forEach((function(e){e.classList.remove("frm_hidden")})),t.setAttribute("data-on-submit-type",e.target.value)}}))},panelInit:function(){var e,t,r,n;jQuery(".frm_wrap, #postbox-container-1").on("click",".frm_insert_code",Ei),jQuery(document).on("change",".frm_insert_val",(function(){ki(jQuery(this).data("target"),jQuery(this).val()),jQuery(this).val("")})),jQuery(document).on("click change",'[name="frm-id-key-condition"]',Ai),jQuery(document).on("keyup change",".frm-build-logic",Ii),Yn(),jQuery(document).on("frmElementAdded",(function(e,t){Yn(t)})),jQuery(document).on("mousedown",".frm-show-box",Ci),t=document.getElementById("form_settings_page"),r=document.body.classList.contains("post-type-frm_display"),n=document.getElementById("frm_insert_fields_tab"),(null!==t||r||D)&&jQuery(document).on("focusin","form input, form textarea",(function(e){var i,o,a,l;if(e.stopPropagation(),(o=this).parentNode.parentNode.classList.contains("frm_has_shortcodes")&&(Wi(),"use"===(a=$i(o)).tagName?-1===(a=a.firstElementChild).getAttributeNS("http://www.w3.org/1999/xlink","href").indexOf("frm_close_icon")&&Oi(a,"nofocus"):a.classList.contains("frm_close_icon")||Oi(a,"nofocus")),jQuery(this).is(":not(:submit, input[type=button], .frm-search-input, input[type=checkbox])")){if(jQuery(e.target).closest("#frm_adv_info").length)return;if(null!==t||D)i=jQuery("#frm_html_tab"),jQuery(this).closest("#html_settings").length>0?(i.show(),i.siblings().hide(),jQuery("#frm_html_tab a").trigger("click"),function(e){var t,r=e.id;void 0!==r&&-1===r.indexOf("-search-input")&&(jQuery("#frm-adv-info-tab").attr("data-fills",r.trim()),e.classList.contains("field_custom_html")&&(r="field_custom_html"),t=["after_html","before_html","submit_html","field_custom_html"],jQuery.inArray(r,t)>=0&&(jQuery(".frm_code_list li:not(.show_"+r+")").addClass("frm_hidden"),jQuery(".frm_code_list li.show_"+r).removeClass("frm_hidden")))}(this)):((l=jQuery(".frm-category-tabs li"))[0]&&(l[0].style.display=""),n.click(),i.hide(),i.siblings().show());else if(r){var s=new CustomEvent("frm_legacy_views_handle_field_focus");s.frmData={idAttrValue:this.id},document.dispatchEvent(s)}}})),jQuery(".frm_wrap, #postbox-container-1").on("mousedown","#frm_adv_info a, .frm_field_list a",(function(e){e.preventDefault()})),(e=jQuery("#frm_adv_info")).on("click",".subsubsub a.frmids",(function(e){Ui("frmids",e)})),e.on("click",".subsubsub a.frmkeys",(function(e){Ui("frmkeys",e)}))},inboxInit:function(){var e;jQuery(".frm_inbox_dismiss").on("click",(function(e){var t=this.parentNode.parentNode,r=t.getAttribute("data-message"),n=this.getAttribute("href"),i=t.cloneNode(!0),o=document.querySelector(".frm-dismissed-inbox-messages");if("free_templates"!==r||this.classList.contains("frm_inbox_dismiss")){e.preventDefault(),data={action:"frm_inbox_dismiss",key:r,nonce:frmGlobal.nonce};var a="frm_inbox_slide_in"===t.id;a&&(t.classList.remove("s11-fadein"),t.classList.add("s11-fadeout"),t.addEventListener("animationend",(function(){return t.remove()}),{once:!0})),Bo(data,(function(){if(!a)return"#"!==n?(window.location=n,!0):void Co(t,(function(){var e;null!==o&&(i.classList.remove("frm-fade"),null===(e=i.querySelector(".frm-inbox-message-heading"))||void 0===e||e.removeChild(i.querySelector(".frm-inbox-message-heading .frm_inbox_dismiss")),o.append(i)),1===t.parentNode.querySelectorAll(".frm-inbox-message-container").length&&(document.getElementById("frm_empty_inbox").classList.remove("frm_hidden"),t.parentNode.closest(".frm-active").classList.add("frm-empty-inbox"),ho()),t.parentNode.removeChild(t)}))}))}})),!1===(null===(e=document.getElementById("frm_empty_inbox"))||void 0===e?void 0:e.classList.contains("frm_hidden"))&&ho()},solutionInit:function(){jQuery(document).on("submit","#frm-new-template",Qo)},styleInit:function(){var e=jQuery(".frm_image_preview_wrapper");e.on("click",".frm_choose_image_box",xt),e.on("click",".frm_remove_image_option",Et),wp.hooks.doAction("frm_style_editor_init")},customCSSInit:function(){console.warn("Calling frmAdminBuild.customCSSInit is deprecated.")},globalSettingsInit:function(){var e;jQuery(document).on("click","[data-frmuninstall]",Ki),lo(),null!==(e=document.getElementById("licenses_settings"))&&jQuery(e).on("click",".edd_frm_save_license",Ji),jQuery(document).on("click","#frm-new-template button",wo),jQuery("#frm-dismissable-cta .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_lite_settings_upgrade",nonce:frmGlobal.nonce}),jQuery(".settings-lite-cta").remove()}));var t=document.getElementById("frm_re_type");t&&t.addEventListener("change",Eo),document.querySelector(".frm_captchas").addEventListener("change",(function(e){var t,r=null===(t=document.querySelector('.frm_captchas input[checked="checked"]'))||void 0===t?void 0:t.value,n=e.target.value!==r;document.querySelector(".captcha_settings .frm_note_style").classList.toggle("frm_hidden",!n)})),frmDom.util.documentOn("submit",".frm_settings_form",(function(){return E=0}));var r=document.getElementById("manage_styles_settings");r&&r.addEventListener("change",(function(e){var t=e.target;"SELECT"===t.nodeName&&t.dataset.name&&!t.getAttribute("name")&&t.setAttribute("name",t.dataset.name)}));var n=document.getElementById("payments_settings"),i=null==n?void 0:n.querySelectorAll('[name="frm_payment_section"]');i&&i.forEach((function(e){e.addEventListener("change",(function(){if(e.checked){var t=n.querySelector('label[for="'.concat(e.id,'"]'));t&&t.setAttribute("aria-selected","true"),i.forEach((function(t){if(t!==e){var r=n.querySelector('label[for="'.concat(t.id,'"]'));r&&r.setAttribute("aria-selected","false")}}))}}))}))},exportInit:function(){jQuery(".frm_form_importer").on("submit",Yi),jQuery(document.getElementById("frm_export_xml")).on("submit",Zi),jQuery("#frm_export_xml input, #frm_export_xml select").on("change",eo),jQuery('input[name="frm_import_file"]').on("change",to),document.querySelector('select[name="format"]').addEventListener("change",no),jQuery('input[name="frm_export_forms[]"]').on("click",ao),lo(),jQuery(".frm-feature-banner .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_dismiss_migrator",plugin:this.id,nonce:frmGlobal.nonce}),this.parentElement.remove()})),oo(ro()),document.querySelector("#frm-export-select-all").addEventListener("change",(function(e){document.querySelectorAll('[name="frm_export_forms[]"]').forEach((function(t){return t.checked=e.target.checked}))}))},inboxBannerInit:function(){var e=document.getElementById("frm_banner");if(e){var t=e.querySelector(".frm-banner-dismiss");document.addEventListener("click",(function(r){r.target===t&&Bo({action:"frm_inbox_dismiss",key:e.dataset.key,nonce:frmGlobal.nonce},(function(){jQuery(e).fadeOut(400,(function(){e.remove()}))}))}))}},updateOpts:function(e,t,r){var n=pn(e),i=Ho(e)?"frm_bulk_products":"frm_import_options";jQuery.ajax({type:"POST",url:ajaxurl,data:{action:i,field_id:e,opts:t,separate:n,nonce:frmGlobal.nonce},success:function(t){document.getElementById("frm_field_"+e+"_opts").innerHTML=t,wp.hooks.doAction("frm_after_bulk_edit_opts",e),rn(e),void 0!==r&&(r.dialog("close"),document.getElementById("frm-update-bulk-opts").classList.remove("frm_loading_button"))}})},triggerRemoveLogic:function(e,t){jQuery("#frm_logic_"+e+"_"+t+" .frm_remove_tag").trigger("click")},downloadXML:function(e,t,r){var n=ajaxurl+"?action=frm_"+e+"_xml&ids="+t;null!==r&&(n=n+"&is_template="+r),location.href=n},hooks:{applyFilters:function(e){for(var t,r=arguments.length,n=new Array(r>1?r-1:0),i=1;i1?r-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r){var n=k,i=0;"summary"===e&&(i=j.children('li[data-type="break"]').length>0?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:Object.assign(pe(e,0,n,i),{field_options:t}),success:function(t){r(t),setTimeout((function(){Qn(),Ue(t,!0);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:n})}),10)},error:je})}))},confirmLinkClick:F,handleInsertFieldByDraggingResponse:ye,handleAddFieldClickResponse:Ie,syncLayoutClasses:le}}(),jQuery(document).ready((function(){var e;frmAdminBuild.init(),frmDom.bootstrap.setupBootstrapDropdowns((function(e){var t,r,n=e.querySelector(".frm-dropdown-toggle");n&&(n.hasAttribute("role")||n.setAttribute("role","button"),n.hasAttribute("tabindex")||n.setAttribute("tabindex",0)),"UL"===e.tagName&&(r=(r=(r=(r=(r=(r=(t=e).outerHTML).replace("
                ","")).replaceAll("
              • ",'
              • ",""),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file diff --git a/resources/scss/admin/components/form/_input-icons.scss b/resources/scss/admin/components/form/_input-icons.scss index 33edeaec3e..74ef6ac422 100644 --- a/resources/scss/admin/components/form/_input-icons.scss +++ b/resources/scss/admin/components/form/_input-icons.scss @@ -9,6 +9,7 @@ .frm-with-left-icon, .frm-with-right-icon { position: relative; + display: block; } i.frm-show-box, From f13ca57af76d1d7bb2e1e22ecb0181e4d486b5a1 Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 17:18:32 +0300 Subject: [PATCH 208/230] Remove unused ajv dependency from package.json --- package-lock.json | 1 - package.json | 1 - 2 files changed, 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0019844530..142a273f0c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,7 +37,6 @@ "@wordpress/env": "^9.8.0", "@wordpress/eslint-plugin": "^15.1.0", "@wordpress/stylelint-config": "^23.14.0", - "ajv": "^8.17.1", "axe-core": "^4.9.1", "babel-loader": "^9.1.3", "babel-plugin-styled-components": "^2.1.4", diff --git a/package.json b/package.json index 79c2280c29..3a47ac7aba 100644 --- a/package.json +++ b/package.json @@ -62,7 +62,6 @@ "@wordpress/env": "^9.8.0", "@wordpress/eslint-plugin": "^15.1.0", "@wordpress/stylelint-config": "^23.14.0", - "ajv": "^8.17.1", "axe-core": "^4.9.1", "babel-loader": "^9.1.3", "babel-plugin-styled-components": "^2.1.4", From 77f3a7398a8ad126679ce84affc94a37d2a3e9cf Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 17:51:37 +0300 Subject: [PATCH 209/230] Fix ESLint error --- js/formidable.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/formidable.js b/js/formidable.js index f7db67a258..451232fdf9 100644 --- a/js/formidable.js +++ b/js/formidable.js @@ -16,7 +16,7 @@ function frmFrontFormJS() { * * @param {HTMLElement} el The HTML element. * @param {string} eventName Event name. - * @param {mixed} data The passed data. + * @param {*} data The passed data. */ function triggerCustomEvent( el, eventName, data ) { if ( typeof window.CustomEvent !== 'function' ) { From 9822328361e61506a3f3ce4f289bb98748593343 Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 17:58:03 +0300 Subject: [PATCH 210/230] Fix draggable field positioning and cursor alignment Adjust draggable cursor positioning from top:1,left:70 to top:0,left:90 to properly center the cursor on the 180px wide draggable button, fixing field group drag and drop issues. --- js/formidable_admin.js | 2 +- js/src/admin/admin.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/js/formidable_admin.js b/js/formidable_admin.js index 9f9f93c6a1..047558513d 100644 --- a/js/formidable_admin.js +++ b/js/formidable_admin.js @@ -1 +1 @@ -(()=>{function e(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||t(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r1&&(e="",t=""):0===i.indexOf("frm_postmeta_")&&(jQuery("#frm_postmeta_rows .frm_postmeta_row").length<2&&(e=".frm_add_postmeta_row.button"),jQuery(".frm_toggle_cf_opts").length&&jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().length&&(""!==e&&(e+=","),e+="#"+jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().attr("id")+" .frm_toggle_cf_opts"));var o=document.getElementById(i),a=jQuery(o);return a.fadeOut(300,(function(){var r;a.remove(),Mi(),""!==t&&jQuery(t).hide(),""!==e&&jQuery(e+" a,"+e).removeClass("frm_hidden").fadeIn("slow"),this.closest(".frm_form_action_settings")&&function(e){si(e);var t={type:e};wp.hooks.doAction("frm_after_action_removed",t)}(this.closest(".frm_form_action_settings").querySelector(".frm_action_name").value),null===(r=document.querySelector(".tooltip"))||void 0===r||r.remove()})),void 0!==r&&(r=jQuery(r)).fadeOut(400,(function(){r.remove()})),""!==e&&jQuery(this).closest(".frm_logic_rows").fadeOut("slow"),wp.hooks.doAction("frm_after_remove_this_tag",i,o),!1}}function $(e,t){void 0===t&&(t=this),Ze(t,!1);var r=jQuery(t).closest(".frm_form_action_settings"),n=e.target;if(r.length&&void 0!==n){var i=n.parentElement.className;if("string"==typeof i&&(i.indexOf("frm_email_icons")>-1||i.indexOf("frm_toggle")>-1))return void e.stopPropagation()}var o=r.children(".widget-inside");if(r.length&&o.find("p, div, table").length<1){var a=r.find('input[name$="[ID]"]').val(),l=r.find('input[name$="[post_excerpt]"]').val();l&&(o.html(''),r.find(".spinner").fadeIn("slow"),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_form_action_fill",action_id:a,action_type:l,nonce:frmGlobal.nonce},success:function(e){o.html(e),lo(),Yn("#"+r.attr("id")),jo(o),jQuery(t).trigger("frm-action-loaded"),wp.hooks.doAction("frm_filled_form_action",o)}}))}jQuery(t).closest(".frm_field_box").siblings().find(".widget-inside").slideUp("fast"),void 0!==t.className&&-1!==t.className.indexOf("widget-action")||jQuery(t).closest(".start_divider").length<1||((o=jQuery(t).closest("div.widget").children(".widget-inside")).is(":hidden")?o.slideDown("fast"):o.slideUp("fast"))}function W(){var e=this.getAttribute("href");if(void 0===e)return!1;var t=e.replace("#","."),r=jQuery(this);r.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),r.closest("div").children(".tabs-panel").not(e).not(t).hide();var n=document.getElementById(e.replace("#",""));return n&&(n.style.display="block"),"frm_insert_fields_tab"!==this.id||this.closest("#frm_adv_info")||Ke(),!1}function U(e,t){var r=(e=jQuery(e)).attr("href");if(void 0!==r){var n,i,o=r.replace("#",".");if(e.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),e.closest("div").find(".tabs-panel").length)e.closest("div").children(".tabs-panel").not(r).not(o).hide();else if(null!==document.getElementById("form_global_settings")){var a=e.data("frmajax");e.closest(".frm_wrap").find(".tabs-panel, .hide_with_tabs").hide(),void 0!==a&&"1"==a&&(n=r.replace("#",""),(i=jQuery(".frm_"+n+"_ajax")).length&&jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_settings_tab",tab:n.replace("_settings",""),nonce:frmGlobal.nonce},success:function(e){i.replaceWith(e)}}))}else jQuery("#frm-categorydiv .tabs-panel, .hide_with_tabs").hide();jQuery(r).show(),jQuery(o).show(),Wi(),"auto"!==t&&(jQuery(".frm_updated_message").hide(),jQuery(".frm_warning_style").hide()),jQuery(e).closest("#frm_adv_info").length||(jQuery(".frm_form_settings").length?jQuery(".frm_form_settings").attr("action","?page=formidable&frm_action=settings&id="+jQuery('.frm_form_settings input[name="id"]').val()+"&t="+r.replace("#","")):jQuery(".frm_settings_form").attr("action","?page=formidable-settings&t="+r.replace("#","")))}}function V(e){var t,r;document.querySelectorAll(e).forEach((function(e){K(e),Array.from(e.children).forEach((function(e){return X(e,".frm-move")}));var t=jQuery(e).children('[data-type="divider"]').children(".divider_section_only");t.length&&K(t)})),t=jQuery("#frm_builder_page"),r={items:".frm_sortable_field_opts li",axis:"y",opacity:.65,forcePlaceholderSize:!1,handle:".frm-drag",helper:function(e,t){return x=t.clone().insertAfter(t),t.clone()},stop:function(e,t){x&&x.remove(),rn(t.item.attr("id").replace("frm_delete_field_","").replace("-"+t.item.data("optkey")+"_container","")),Mi()}},jQuery(t).sortable(r)}function K(e){jQuery(e).droppable({accept:".frmbutton, li.frm_field_box",deactivate:ne,over:J,out:Y,tolerance:"pointer"})}function J(e,t){var r=function(e){return e.classList.contains("divider_section_only")&&(e=jQuery(e).nextAll(".start_divider.frm_sorting").get(0)),e}(e.target);if(!Qe(t.draggable[0],r,e))return r.classList.remove("frm-over-droppable"),void jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable");document.querySelectorAll(".frm-over-droppable").forEach((function(e){return e.classList.remove("frm-over-droppable")})),r.classList.add("frm-over-droppable"),jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable")}function Y(e){e.target.classList.remove("frm-over-droppable")}function X(e,t){var r={helper:Z,revert:"invalid",delay:10,start:ee,stop:te,drag:re,cursor:"grabbing",refreshPositions:!0,cursorAt:{top:1,left:70}};"string"==typeof t&&(r.handle=t),jQuery(e).draggable(r)}function Z(e){var t,r=e.delegateTarget;if(Ee(r)){var n=document.getElementById("frm-insert-fields").querySelector(".frm_ttext").cloneNode(!0);return n.querySelector("use").setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_field_group_layout_icon"),n.querySelector("span").textContent=B("Field Group","formidable"),n.classList.add("frm_field_box"),n.classList.add("ui-sortable-helper"),n}if(r.classList.contains("frmbutton"))return(t=r.cloneNode(!0)).classList.add("ui-sortable-helper"),r.classList.add("frm-new-field"),t;if(r.hasAttribute("data-ftype")){var i=r.getAttribute("data-ftype");if((t=(t=document.getElementById("frm-insert-fields").querySelector(".frm_t"+i)).cloneNode(!0)).classList.add("form-field"),t.classList.add("ui-sortable-helper"),t)return t.cloneNode(!0)}return d({className:"frmbutton"})}function ee(e,t){q.dragging=!0;var r,n=h;n.classList.add("frm-dragging-field"),document.body.classList.add("frm-dragging"),t.helper.addClass("frm-sortable-helper"),t.helper.initialOffset=n.scrollTop,e.target.classList.add("frm-drag-fade"),gr(),(r=document.querySelectorAll("ul.start_divider")).length&&r.forEach((function(e){[].slice.call(e.children).forEach((function(e){(0===e.children.length||1===e.children.length&&"ul"===e.firstElementChild.nodeName.toLowerCase()&&0===e.firstElementChild.children.length)&&e.remove()}))})),Me(),Te(),R()}function te(){h.classList.remove("frm-dragging-field"),document.body.classList.remove("frm-dragging");var e=document.querySelector(".frm-drag-fade");e&&e.classList.remove("frm-drag-fade")}function re(e,t){!function(e){v.scrollTop((function(t,r){var n=e.clientY,i=h.offsetHeight,o=e.clientY-h.offsetTop,a=o-i/2;return o>i-50&&n>5?r+.1*a:o<70&&n<130?r-Math.abs(.1*a):r}))}(e);var r=e.target,n=function(){for(var e=document.getElementById("frm-show-fields");e.querySelector(".frm-over-droppable");)e=e.querySelector(".frm-over-droppable");return"frm-show-fields"!==e.id||e.classList.contains("frm-over-droppable")||(e=!1),e}(),i=document.getElementById("frm_drag_placeholder");if(Qe(r,n,e)){i||(i=s("li",{id:"frm_drag_placeholder",className:"sortable-placeholder"}));var o,a=t.helper.get(0);if((a.classList.contains("form-field")||a.classList.contains("frm_field_box"))&&(a.style.transform="translateY("+(o=t.helper,h.scrollTop-o.initialOffset+"px)")),"frm-show-fields"===n.id||n.classList.contains("start_divider"))return i.style.left=0,void function(e){var t,r=e.y,n=e.placeholder,i=jQuery(e.droppable);if($children=i.children().not(".edit_field_type_end_divider"),0===$children.length)i.prepend(n),t=0;else{var o=ie(i,r);if(o===$children.length){var a=jQuery($children.get(o-1));t=a.offset().top+a.outerHeight(),i.append(n);var l=i.children(".edit_field_type_end_divider");l.length&&i.append(l)}else t=jQuery($children.get(o)).offset().top,jQuery($children.get(o)).before(n)}t-=i.offset().top,n.style.top=t+"px"}({droppable:n,y:e.clientY,placeholder:i});i.style.top="",function(e){var t,r=e.x,n=e.placeholder,i=jQuery(e.droppable),o=ae(i);if(o.length){var a=function(e,t){var r,n,i,o,a=ae(e);for(o=0,r=a.length-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().left)){o=r,t>i+jQuery(n).outerWidth()/2&&(o=r+1);break}return o}(i,r);if(a===o.length){var l=jQuery(o.get(a-1));t=l.offset().left+l.outerWidth(),i.append(n)}else t=jQuery(o.get(a)).offset().left,jQuery(o.get(a)).before(n),t-=0===a?4:8;t-=i.offset().left,n.style.left=t+"px"}}({droppable:n,x:e.clientX,placeholder:i})}else i&&i.remove()}function ne(e,t){if(q.dragging){q.dragging=!1;var r=t.draggable[0],n=document.getElementById("frm_drag_placeholder");if(!n)return t.helper.remove(),void y();!function(e){if(e.previousElementSibling&&e.previousElementSibling.classList.contains("frm-is-collapsed")){var t=jQuery(e).prevUntil('[data-type="break"]');if(t.length){var r=t.find(".frm-collapse-page").get(0);r&&r.click()}}}(n);var i=t.helper.parent(),o=t.helper.get(0).closest("ul.start_divider"),a=n.closest("ul.start_divider");r.classList.contains("frm-new-field")?function(e){if(ge(e))wp.hooks.doAction("frm_stopped_inserting_by_dragging",e);else{var t=document.getElementById("frm_drag_placeholder"),r=e.replace("|","-")+"_"+we(),n=s("li",{id:r,className:"frm-wait frmbutton_loadingnow"}),i=jQuery(n),o=fe(jQuery(t)),a=ue(o),l=me(o);t.parentNode.insertBefore(n,t),t.remove(),le(i);var d=0;"summary"===e&&(d=jQuery(".frmbutton_loadingnow#"+r).prevAll('li[data-type="break"]').length?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:pe(e,l,a,d),success:function(t){ye(t,i);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:a})},error:je})}}(r.id):(function(e,t){t.parentNode.insertBefore(e,t)}(r,n),function(e){if("UL"===e.nodeName&&!e.classList.contains("start_divider")&&"frm-show-fields"!==e.id){var t=e.closest("li");t&&!t.classList.contains("ui-draggable")&&X(t,".frm-move")}}(n.parentElement));var l=o?parseInt(o.closest(".edit_field_type_divider").getAttribute("data-fid")):0,d=a?parseInt(a.closest(".edit_field_type_divider").getAttribute("data-fid")):0;n.remove(),t.helper.remove();var c=i.length?ae(i):[];!function(e,t){var r;e.length&&(t.length?le(t.first()):(r=e.get(0).closest("li.frm_field_box"))&&!r.classList.contains("edit_field_type_divider")&&r.remove())}(i,c),function(e,t){0===t.length&&1===ae(jQuery(e.parentNode)).length||le(jQuery(e))}(r,c),l!==d&&_e(jQuery(r),o),y()}}function ie(e,t){var r,n,i,o,a=e.children().not(".edit_field_type_end_divider"),l=a.length;if(!document.querySelector(".frm-has-fields .frm_no_fields"))return 0;for(o=0,r=l-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().top)){o=r,t>i+jQuery(n).outerHeight()/2&&(o=r+1);break}return o}function oe(){document.querySelectorAll("ul#frm-show-fields, ul.start_divider").forEach((function(e){e.childNodes.forEach((function(e){void 0!==e.classList&&(e.classList.contains("edit_field_type_end_divider")||void 0!==e.classList&&e.classList.contains("form-field")&&We(e))}))})),xn(),document.querySelectorAll(".edit_field_type_end_divider").forEach((function(e){return e.parentNode.appendChild(e)})),document.querySelectorAll("li.form_field_box:not(.form-field)").forEach((function(e){return!e.children.length&&e.remove()})),Qn();var e=new Event("frm_sync_after_drag_and_drop",{bubbles:!1});document.dispatchEvent(e)}function ae(e){var t=jQuery(),r=e.get(0);return r.children?(Array.from(r.children).forEach((function(e){if("none"!==e.style.display){var r=e.classList;!r.contains("form-field")||r.contains("edit_field_type_end_divider")||r.contains("frm-sortable-helper")||(t=t.add(e))}})),t):t}function le(e,t){var r,n,i,o;void 0===t&&(t="even"),r=e.parent().children("li.form-field, li.frmbutton_loadingnow").not(".edit_field_type_end_divider"),n=r.length,i=["frm_full","frm_half","frm_third","frm_fourth","frm_sixth","frm_two_thirds","frm_three_fourths","frm1","frm2","frm3","frm4","frm5","frm6","frm7","frm8","frm9","frm10","frm11","frm12"],"even"===t&&5!==n?r.each(ce(i,Ut(n))):"clear"===t?r.each(ce(i,"")):(o=-1!==["left","right","middle","even"].indexOf(t)?function(e){return Wt(n,t,e)}:function(e){return ar(t[e])},r.each(ce(i,o))),se(e.parent(),r.length)}function se(e,t){var r,n;if(void 0!==e.offset()){if(r=t>=2,null===(n=document.getElementById("frm_field_group_controls"))){if(!r)return;(n=d()).id="frm_field_group_controls",n.setAttribute("role","group"),n.setAttribute("tabindex",0),function(e){var t,r;(t=document.createElement("span")).innerHTML='';var n=B("Set Row Layout","formidable");de(t,n),zt(t,n),(r=document.createElement("span")).innerHTML='',r.classList.add("frm-move");var i=B("Move Field Group","formidable");de(r,i),zt(r,i),e.innerHTML="",e.appendChild(t),e.appendChild(r),e.appendChild(function(){var e=c({className:"dropdown"}),t=f({className:"frm_bstooltip frm-hover-icon frm-dropdown-toggle dropdown-toggle",children:[c({child:u({href:"#frm_thick_more_vert_icon"})}),c({className:"screen-reader-text",text:B("Toggle More Options Dropdown","formidable")})]});frmDom.setAttributes(t,{title:B("More Options","formidable"),"data-toggle":"dropdown","data-container":"body"}),zt(t,B("More Options","formidable")),e.appendChild(t);var r=d({className:"frm-dropdown-menu dropdown-menu dropdown-menu-right"});return r.setAttribute("role","menu"),e.appendChild(r),e}())}(n),D.appendChild(n)}e.append(n),n.style.display=r?"block":"none"}}function de(e,t){e.setAttribute("data-toggle","tooltip"),e.setAttribute("data-container","body"),e.setAttribute("title",t),e.addEventListener("mouseover",(function(){null===e.getAttribute("data-original-title")&&jQuery(e).tooltip()}))}function ce(e,t){return function(r){var n,i,o,a,l,s,d;for(n="function"==typeof t?t(r):t,i=e.length,l=!1,o=0;ot.childElementCount-1:s<=jQuery(t.querySelector(".edit_field_type_submit").closest("#frm-show-fields > li")).index()}if(a)return!(t.classList.contains("start_divider")||!xe(t.parentElement)&&(!xe(t.parentElement.nextElementSibling)||e.parentElement.querySelector("li.frm_field_box:not(.edit_field_type_submit)")));if(t.classList.contains("start_divider")&&(e.classList.contains("edit_field_type_gdpr")||"gdpr"===e.id)&&t.closest(".repeat_section"))return!1;if(!t.classList.contains("start_divider")){if(n=ae(jQuery(t)),i=jQuery(e),!(n.length<6)&&(n.length>6||(o=i.attr("data-fid"),1!==jQuery(n).filter('[data-fid="'+o+'"]').length)))return!1;if("divider"===e.id&&t.closest(".start_divider"))return!1}return e.classList.contains("frm-new-field")?function(e,t){var r=e.classList,n=r.contains("frm_tbreak"),i=r.contains("frm_thidden"),o=r.contains("frm_tdivider"),a=r.contains("frm_tform"),l=r.contains("frm_tuser_id");return"frm-show-fields"===t.id||t.classList.contains("start_divider")?!(n||i||o||a)||(!(t.classList.contains("start_divider")||null!==t.closest(".start_divider"))||!a&&!o):!(ke(t)||i||n||l)}(e,t):function(e,t){if(Ee(e))return function(e,t){return!(!t.classList.contains("start_divider")||null!==e.querySelector(".start_divider"))}(e,t);if(e.classList.contains("edit_field_type_break"))return!1;if(t.classList.contains("start_divider"))return function(e){return!e.classList.contains("edit_field_type_form")&&!e.querySelector(".edit_field_type_form")&&!(e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"))}(e);var r=e.classList.contains("edit_field_type_hidden"),n=e.classList.contains("edit_field_type_user_id");return!r&&!n&&function(e,t){if(ke(t))return!1;if(jQuery(e).children("ul.frm_sorting").not(".start_divider").length>0)return!1;var r=e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"),n=e.classList.contains("edit_field_type_form");return null===t.closest(".start_divider")||!r&&!n}(e,t)}(e,t)}function xe(e){return e&&e.matches("#frm-show-fields > li:last-child")}function Ee(e){return e.classList.contains("frm_field_box")&&!e.classList.contains("form-field")}function ke(e){return null!==e.querySelector(".edit_field_type_break, .edit_field_type_hidden, .edit_field_type_user_id")}function Le(e){var t=document.getElementById(e),r=jQuery(t),n=[],i=function(e){var t=e.querySelector(".frm_hidden_fdata");e.classList.add("frm_load_now"),null!==t&&n.push(t.innerHTML)},o=t;i(o);for(var a=Se(o);a&&n.length<15;)i(a),o=a,a=Se(a);jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_load_field",field:n,form_id:k,nonce:frmGlobal.nonce},success:function(e){return function(e,t,r){var n,i;if(0===(e=e.replace(/^\s+|\s+$/g,"")).indexOf("{")){for(n in e=JSON.parse(e))jQuery("#frm_field_id_"+n).replaceWith(e[n]),V("#frm_field_id_"+n+".edit_field_type_divider ul.frm_sorting"),X(document.getElementById("frm_field_id_"+n));((i=t.nextAll(".frm_field_loading:not(.frm_load_now)")).length||(i=jQuery(document.getElementById("frm-show-fields")).find(".frm_field_loading:not(.frm_load_now)")).length)&&Le(i.attr("id")),lo(),Tr(),Be();var o=new Event("frm_ajax_loaded_field",{bubbles:!1});o.frmFields=r.map((function(e){return JSON.parse(e)})),document.dispatchEvent(o)}else jQuery(".frm_load_now").removeClass(".frm_load_now").html("Error")}(e,r,n)}})}function Se(e){var t;return e.nextElementSibling?e.nextElementSibling:null===(t=e.parentNode)||void 0===t||null===(t=t.closest(".frm_field_box"))||void 0===t||null===(t=t.nextElementSibling)||void 0===t?void 0:t.querySelector(".form-field")}function Ae(){var e=jQuery(this);if(e.hasClass("disabled"))return!1;var t=e.closest(".frmbutton").attr("id");if(!ge(t)){var r=0;"summary"===t&&(r=j.children('li[data-type="break"]').length>0?1:0);var n=k;return jQuery.ajax({type:"POST",url:ajaxurl,data:pe(t,0,n,r),success:function(e){Ie(e);var r=he(e);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:e,fieldId:r,fieldType:t,form_id:n})},error:je}),!1}}function Ie(e){document.getElementById("frm_form_editor_container").classList.add("frm-has-fields");var t=$e(e),r=j[0].querySelector(".edit_field_type_submit");r?jQuery(r.closest(".frm_field_box:not(.form-field)")).before(t):j.append(t),Ue(e,!0),t.each((function(){K(this.querySelector("ul.frm_sorting")),X(this.querySelector(".form-field"),".frm-move")}))}function Be(){var e=!0,t=document.querySelectorAll(".frmjs_prod_field_opt_cont");j.find("li.edit_field_type_product").length>1&&(e=!1);for(var r=0;r',i.appendChild(document.createTextNode(" ")),i.appendChild(o),n.appendChild(i),e.appendChild(n)}))}(t,!0===e),(r=jQuery(t)).offset().left>jQuery(window).width()-r.outerWidth()&&(t.style.left=-r.outerWidth()+"px");var n=t.firstElementChild.querySelector("a");n&&n.focus()}}),0)}function Pe(){He(!0)}function ze(e){var t=e.target.closest(".frm-section-collapsed");t&&("show"===e.type?t.style.zIndex=3:t.style.zIndex=1)}function Re(e){var t={class:"frm_delete",icon:"frm_delete_icon"};return t.label=B(e?"Delete Group":"Delete","formidable"),t}function Ge(e){var t={class:"frm_clone",icon:"frm_clone_icon"};return t.label=B(e?"Duplicate Group":"Duplicate","formidable"),t}function $e(e){var t=d();"string"==typeof e?t.innerHTML=e:t.appendChild(e);var r=jQuery();return Array.from(t.children).forEach((function(e){r=r.add(jQuery("
              • ").addClass("frm_field_box").html(jQuery("
                  ").addClass("frm_grid_container frm_sorting").append(e)))})),r}function We(e){var t=s("ul",{className:"frm_grid_container frm_sorting"}),r=s("li",{className:"frm_field_box",child:t});e.replaceWith(r),t.appendChild(e),K(t),X(r,".frm-move")}function Ue(e,t){var r,n,i=/id="(\S+)"/.exec(e),o=document.getElementById(i[1]),a="#"+i[1]+".edit_field_type_divider ul.frm_sorting.start_divider",l=jQuery(a),s=o.getAttribute("data-type");r=e,(n=d()).innerHTML=r,n.querySelectorAll(".form-field").forEach(Ve);var c,f,u=!1;if(Mi(),V(a),"quantity"===s&&function(e){var t=e.getAttribute("data-fid"),r=document.getElementById("field_options[product_field_"+t+"]");null!==r&&(rt(r),ii(document.getElementById("frm-single-settings-"+t)))}(o),"product"!==s&&"quantity"!==s||Be(),l.length)l.parent(".frm_field_box").children(".frm_no_section_fields").addClass("frm_block");else{var m=jQuery(o).closest("ul.frm_sorting.start_divider");m.length&&(En(m),u=!0)}if(-1!==e.indexOf("frm-collapse-page")&&Tr(),f="frm-newly-added",(c=o).classList?c.classList.add(f):c.className+=" "+f,setTimeout((function(){o.classList.remove("frm-newly-added")}),1e3),t){var _=o.getBoundingClientRect(),p=document.getElementById("post-body-content");_.top>=0&&_.left>=0&&_.right<=(window.innerWidth||document.documentElement.clientWidth)&&_.bottom<=(window.innerHeight||document.documentElement.clientHeight)||p.scroll({top:p.scrollHeight,left:0,behavior:"smooth"}),!1===u&&En(l)}Je(),lo(),document.getElementById("frm-show-fields").classList.remove("frm-over-droppable");var g=new Event("frm_added_field",{bubbles:!1});g.frmField=o,g.frmSection=a,g.frmType=s,g.frmToggles=u,document.dispatchEvent(g)}function Ve(e){if(e.dataset.fid){var t=document.getElementById("draft_fields");t&&(""===t.value?t.value=e.dataset.fid:t.value.split(",").includes(e.dataset.fid)||(t.value+=","+e.dataset.fid))}}function Ke(e){jQuery("#new_fields .frm-single-settings").addClass("frm_hidden"),jQuery("#frm-options-panel > .frm-single-settings").removeClass("frm_hidden"),Je(e)}function Je(e){jQuery("li.ui-state-default.selected").removeClass("selected"),jQuery(".frm-show-field-settings.selected").removeClass("selected"),e||gr()}function Ye(){var e=this.value,t=function(e){var t,r=[],n=e.split(""),i=n.length,o=["{","[","("],l={"}":"{",")":"(","]":"["},s=[];for(t=0;t0||s.length>0?a.unmatched_parens+"\n\n":""}(e);t+=function(e,t){var r=function(e,t){var r="";return function(e){return jQuery(e).siblings('label[for^="calc_type"]').children("input").prop("checked")}(t)||/\[(date|time|email|ip)\]/.test(e)&&(r=a.text_shortcodes+"\n\n"),r}(e,t);return r+=function(e){var t="";return/\[id\]|\[key\]|\[if\s\w+\]|\[foreach\s\w+\]|\[created-at(\s*)?/g.test(e)&&(t+=a.view_shortcodes+"\n\n"),t}(e)}(e,this),""!==t&&H(e+"\n\n"+t)}function Xe(e,t){for(var r,n,i,o=!1,a=0;a"+l[t].fieldName+"")):(r=r?" checked":"",i.push('"));e.innerHTML=i.join("")}function nt(){for(var e=document.querySelectorAll(".frmjs_prod_field_opt"),t=0;t'):(n.innerHTML=mn(r),"TEXTAREA"===n.nodeName&&n.classList.contains("wp-editor-area")&&jQuery(n).trigger("change"),n.classList.contains("frm_primary_label")&&"break"===n.nextElementSibling.getAttribute("data-ftype")&&(n.nextElementSibling.querySelector(".frm_button_submit").textContent=r)))}function at(e){var t=parseFloat(e.getAttribute("max")),r=parseFloat(e.getAttribute("min"));return(t-r)/2+r}function lt(){var e,t=this.getAttribute("data-fid"),r="";["field_options_max_","frm_format_"].forEach((function(e){var n=document.getElementById(e+t);n&&(r+=n.value)})),"text"===(e=document.getElementsByName("field_options[type_"+t+"]")[0]).options[e.selectedIndex].value&&dt(""!==r,".frm_invalid_msg"+t)}function st(){var e=this.id.replace("frm_","").replace("req_field_",""),t=this.checked,r=jQuery("#field_label_"+e+" .frm_required");if(dt(t,".frm_required_details"+e),t){var n=jQuery('input[name="field_options[required_indicator_'+e+']"]');""===n.val()&&n.val("*"),r.removeClass("frm_hidden")}else r.addClass("frm_hidden")}function dt(e,t){if($msg=jQuery(t),e)$msg.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast");else{var r=$msg.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not("+t+"):visible").length;r.css("display",""),0===n&&$msg.closest(".frm_validation_msg").fadeOut("fast")}}function ct(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(".frm_unique_details"+e);if(this.checked)t.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast"),$unqDetail=jQuery(".frm_unique_details"+e+" input"),""===$unqDetail.val()&&$unqDetail.val(a.default_unique);else{var r=t.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not(.frm_unique_details"+e+"):visible").length;r.css("display",""),0===n&&t.closest(".frm_validation_msg").fadeOut("fast")}}function ft(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(this).val(),r=jQuery(document.getElementById("frm_field_id_"+e));if(dt(""!==t,".frm_conf_details"+e),""!==t){var n=jQuery(".frm_validation_box .frm_conf_details"+e+" input");""===n.val()&&n.val(a.default_conf),function(e){var t=document.getElementsByName("field_options[type_"+e+"]")[0].value;ut(document.getElementById("field_description_"+e),"field_options[description_"+e+"]",a["enter_"+t]),ut(document.getElementById("conf_field_description_"+e),"field_options[conf_desc_"+e+"]",a["confirm_"+t])}(e),"inline"===t?r.removeClass("frm_conf_below").addClass("frm_conf_inline"):"below"===t&&r.removeClass("frm_conf_inline").addClass("frm_conf_below"),jQuery(".frm-conf-box-"+e).removeClass("frm_hidden")}else jQuery(".frm-conf-box-"+e).addClass("frm_hidden"),setTimeout((function(){r.removeClass("frm_conf_inline frm_conf_below")}),200)}function ut(e,t,r){e.innerHTML===a.desc&&(e.innerHTML=r,document.getElementsByName(t)[0].value=r)}function mt(e){var t=JSON.parse(this.getAttribute("data-opts"));return e.preventDefault(),document.getElementById("frm_bulk_options").value=t.join("\n"),!1}function _t(){var e,t=jQuery(this).closest(".frm-single-settings").data("fid"),r=jQuery("#frm_field_"+t+"_opts .frm_option_template").prop("outerHTML"),n=jQuery(this).data("opttype"),i=0,o=function(e){for(var t=0,r=0,n=jQuery("#frm_field_"+e+"_opts li"),i=0;ti||"000"===i)&&(i=r)}return i}(t);if("000"!==o&&(i=o+1),"other"===n){document.getElementById("other_input_"+t).value=1;var a=jQuery(this).data("ftype");"radio"!==a&&"select"!==a||jQuery(this).fadeOut("slow");var l={action:"frm_add_field_option",field_id:t,opt_key:i,opt_type:n,nonce:frmGlobal.nonce};jQuery.post(ajaxurl,l,(function(e){jQuery(document.getElementById("frm_field_"+t+"_opts")).append(e),rn(t)}))}else r=(r=(r=(r=(r=r.replace(new RegExp('optkey="000"',"g"),'optkey="'+i+'"')).replace(new RegExp("-000_","g"),"-"+i+"_")).replace(new RegExp('-000"',"g"),"-"+i+'"')).replace(new RegExp("\\[000\\]","g"),"["+i+"]")).replace("frm_hidden frm_option_template",""),zo(t,r={newOption:r}),this.closest(".frm_single_option").after(r.newOption),rn(t);null===(e=this.closest(".frm_sortable_field_opts"))||void 0===e||null===(e=e.querySelectorAll(".frm_remove_tag.frm_disabled"))||void 0===e||e.forEach((function(e){return e.classList.remove("frm_disabled")})),Mi()}function pt(){gt(jQuery(this).closest(".frm-single-settings").data("fid"),this.value)}function gt(e,t){var r=jQuery(".frm_multiple_cont_"+e);"select"===t?r.fadeIn("fast"):r.fadeOut("fast")}function yt(){var e=jQuery(this).closest(".frm-single-settings").data("fid");Oo(jQuery(".field_"+e+"_option_key")),jQuery(".field_"+e+"_option").toggleClass("frm_with_key")}function ht(){var e,t,r=jQuery(this).closest(".frm-single-settings"),n=r.data("fid"),i=document.getElementById("frm_field_id_"+n);wt(jQuery(this)),Oo(jQuery(".field_"+n+"_image_id")),Oo(jQuery(".frm_toggle_image_options_"+n)),Oo(jQuery(".frm_image_size_"+n)),Oo(jQuery(".frm_alignment_"+n)),Oo(jQuery(".frm-add-other#frm_add_field_"+n)),(e=gn(n))?(bt(n,"inline"),vt(i),t=tn(n),i.classList.add("frm_image_options"),i.classList.add("frm_image_size_"+t),r.find(".frm-bulk-edit-link").hide()):(i.classList.remove("frm_image_options"),vt(i),bt(n,"block"),r.find(".frm-bulk-edit-link").show()),wp.hooks.doAction("frm_image_options_toggled",r[0],e)}function vt(e){e.classList.remove("frm_image_size_","frm_image_size_small","frm_image_size_medium","frm_image_size_large","frm_image_size_xlarge")}function bt(e,t){jQuery("#field_options_align_"+e).val(t).trigger("change")}function jt(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);Qt(),gn(e)&&(vt(t),t.classList.add("frm_image_options"),t.classList.add("frm_image_size_"+tn(e)))}function wt(e){var t=e.closest(".frm-single-settings").data("fid");jQuery(".field_"+t+"_option").trigger("change")}function Qt(){wt(jQuery(this))}function xt(e){var t=e.target.closest(".frm_image_preview_wrapper");e.preventDefault(),wp.media.model.settings.post.id=0;var r=wp.media.frames.file_frame=wp.media({multiple:!1,library:{type:["image"]}});r.on("select",(function(){var e=r.state().get("selection").first().toJSON(),n=t.querySelector("img");n.setAttribute("src",e.url),n.classList.remove("frm_hidden"),n.removeAttribute("srcset"),t.querySelector(".frm_image_preview_frame").style.display="block",t.querySelector(".frm_image_preview_title").textContent=e.filename,t.querySelector(".frm_choose_image_box").style.display="none";var i=jQuery(t);i.siblings('input[name*="[label]"]').data("frmimgurl",e.url),i.find("input.frm_image_id").val(e.id).trigger("change"),wp.media.model.settings.post.id=0})),r.open()}function Et(e){var t=jQuery(this).closest(".frm_image_preview_wrapper");e.preventDefault(),e.stopPropagation(),t.find("img").attr("src",""),t.find(".frm_image_preview_frame").hide(),t.find(".frm_choose_image_box").show(),t.find("input.frm_image_id").val(0).trigger("change")}function kt(){var e=jQuery(this).closest("li").find(".frm_form_fields select");this.checked?e.attr("multiple","multiple"):e.removeAttr("multiple")}function Lt(){var e=document.getElementById("dropform-search-input");null!==e&&setTimeout((function(){e.focus()}),100)}function St(e){var t=e.target,r=t.closest(".frm_warning_style");jQuery(r).fadeOut(400,(function(){return r.remove()}));var n=t.dataset.action,i=new FormData;g(n,i)}function At(e){e.preventDefault()}function It(){var e,t=this.parentNode,r=t.parentNode,n=r.querySelectorAll("li:not(.frm_hidden)");2===n.length&&(null===(e=Array.from(n).find((function(e){return e!==t})).querySelector(".frm_remove_tag"))||void 0===e||e.classList.add("frm_disabled"));var i,o=this.getAttribute("data-fid");jQuery(t).fadeOut("fast",(function(){wp.hooks.doAction("frm_before_delete_field_option",this),jQuery(t).remove(),jQuery(r).find(".frm_other_option").length<1&&(null!==(i=document.getElementById("other_input_"+o))&&(i.value=0),jQuery("#other_button_"+o).fadeIn("fast"))})),Mi()}function Bt(){var e,t,r,n;(e=jQuery(this)).is(":checked")&&(t=function(){setTimeout((function(){e.prop("checked",!1)}),0)},r=function(){e.off("mouseup",n)},n=function(){t(),r()},e.on("mouseup",n),e.one("mouseout",r))}function Ct(){this.value===a.new_option&&(this.setAttribute("data-value-on-focus",this.value),this.value="")}function qt(e){return C(B("Are you sure you want to delete these %1$s selected field(s)?","formidable"),e)}function Nt(){var e=a.conf_delete,t=this.parentNode.parentNode.parentNode.parentNode.parentNode,r=t.parentNode,n=jQuery(this).closest("li.form-field"),i=n.data("fid");if("divider"===n.data("ftype")){var o=document.querySelectorAll(".frm-field-group-hover-target .start_divider .frm_field_box"),l=0;o.forEach((function(e){var t=e.querySelectorAll("li.form-field");t&&(l+=t.length)})),l&&(e=qt(++l))}return r.classList.contains("frm-section-collapsed")||r.classList.contains("frm-page-collapsed")||("divider_section_only"===t.className&&(e=a.conf_delete_sec),this.setAttribute("data-frmverify",e),this.setAttribute("data-frmverify-btn","frm-button-red"),this.setAttribute("data-deletefield",i),Te(),F(this)),!1}function Tt(){this.closest("li.form-field").click()}function Ot(){var e,t;null!==(e=document.querySelector(".frm-field-group-hover-target"))&&(e.classList.add("frm-selected-field-group"),(t=document.createElement("div")).classList.add("frm-delete-field-groups","frm_hidden"),document.body.appendChild(t),t.click())}function Dt(){var e=document.querySelector(".frm-field-group-hover-target");if(null!==e){var t="frm_field_group_"+we(),r=document.createTextNode("");We(r);var n=jQuery(r).closest("li").get(0);n.classList.add("frm_hidden");var i=n.querySelector("ul");i.id=t,jQuery(e.closest("li.frm_field_box")).after(n);var o=ae(jQuery(e)),a=[],l=[],s=o.length,d={},c=0;jQuery(n).on("frm_added_duplicated_field_to_row",(function(e,t){if(d[jQuery(t.duplicatedFieldHtml).attr("data-fid")]=t.originalFieldId,!(s>++c)){var r=jQuery(i),o=ae(r);l.forEach((function(e){e.remove()}));for(var f=0;f0&&ir(Ut(t)))&&l>=12&&(l=Math.floor(12/t)),s=0;s',""),t);e.prepend(r),document.getElementById("frm-field-group-message-dismiss").addEventListener("click",(function(){mr(document.getElementById("frm-field-group-message"))}))}}(),"ul"===e.originalEvent.target.nodeName.toLowerCase()){var t=document.querySelector(".frm-field-group-hover-target");if(t){var r=e.ctrlKey||e.metaKey,n=e.shiftKey,i=t.classList.contains("frm-selected-field-group"),o=function(){var e=jQuery(".frm-selected-field-group");if(e.length)return e;var t=_r();if(t){var r=t.closest("ul");if(r&&1===ae(jQuery(r)).length)return r.classList.add("frm-selected-field-group"),jQuery(r)}return jQuery()}(),a=o.length;if(r||n){var l=_r();if(null===l||jQuery(l).siblings("li.form-field").length||(l.parentNode.classList.add("frm-selected-field-group"),++a),r){if(i)return--a,t.classList.remove("frm-selected-field-group"),void pr(a);++a}else if(n&&!i){++a;var s=o.first();(s.parent().index()=2||1===e&&ae(jQuery(document.querySelector(".frm-selected-field-group"))).length>1?function(){var e,t,r,n,i;if(null!==(e=document.getElementById("frm_field_multiselect_popup")))return e.classList.toggle("frm-unmergable",!hr()),e;(e=d()).id="frm_field_multiselect_popup",hr()||e.classList.add("frm-unmergable"),(t=d()).classList.add("frm-merge-fields-into-row"),t.textContent=B("Merge into row","formidable"),(r=document.createElement("a")).style.marginLeft="5px",r.classList.add("frm_icon_font","frm_arrowdown6_icon"),r.setAttribute("href","#"),t.appendChild(r),e.appendChild(t),(n=d()).classList.add("frm-multiselect-popup-separator"),e.appendChild(n),(i=d()).classList.add("frm-delete-field-groups"),i.appendChild(Rt("frm_trash_svg")),e.appendChild(i),document.getElementById("post-body-content").appendChild(e),jQuery(e).hide().fadeIn()}():yr(),Me()}function gr(e){if(void 0!==e){if(null!==e.originalEvent.target.closest("#frm-show-fields"))return;if(e.originalEvent.target.classList.contains("frm-merge-fields-into-row"))return;if(null!==e.originalEvent.target.closest(".frm-merge-fields-into-row"))return;if(e.originalEvent.target.classList.contains("frm-custom-field-group-layout"))return;if(e.originalEvent.target.classList.contains("frm-cancel-custom-field-group-layout"))return}jQuery(".frm-selected-field-group").removeClass("frm-selected-field-group"),jQuery(document).off("click",gr),yr()}function yr(){var e=document.getElementById("frm_field_multiselect_popup");null!==e&&e.remove()}function hr(){var e,t,r,n,i;if(1===(r=(e=document.querySelectorAll(".frm-selected-field-group")).length))return!1;for(t=0,n=0;n6)return!1}return!0}function vr(e){var t;null===e.originalEvent.target.closest("#frm_field_group_popup")&&(e.originalEvent.target.classList.contains("frm-custom-field-group-layout")||(t=Pt(br(),document.querySelector(".frm-selected-field-group").firstChild),this.appendChild(t)))}function br(){var e=0;return jQuery(document.querySelectorAll(".frm-selected-field-group")).each((function(){e+=ae(jQuery(this)).length})),e}function jr(){var e,t,r,n;n=[],jQuery(".frm-selected-field-group > li.form-field").each((function(){n.push(this.dataset.fid)})),t=function(e){return function(t){t.preventDefault(),function(e){e.forEach((function(e){Qr(e)}))}(e)}}(e=n),null!==(r=document.getElementById("frm_field_multiselect_popup"))&&r.remove(),this.setAttribute("data-frmverify",qt(e.length)),F(this);var i=document.getElementById("frm-confirmed-click");null==i||i.removeAttribute("data-deletefield"),jQuery(i).on("click",t),jQuery("#frm_confirm_modal").one("dialogclose",(function(){jQuery(i).off("click",t)}))}function wr(){Qr(this.getAttribute("data-deletefield"))}function Qr(e){var t=jQuery("#frm_field_id_"+e);xr(e),t.hasClass("edit_field_type_divider")&&t.find("li.frm_field_box[data-fid]").each((function(){xr(this.getAttribute("data-fid"))})),xn()}function xr(e){jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_delete_field",field_id:e,nonce:frmGlobal.nonce},success:function(){var t,r=jQuery(document.getElementById("frm_field_id_"+e)),n=jQuery("#frm-single-settings-"+e);n.is(":visible")&&(null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click(),document.querySelector("#frm-options-panel .frm-single-settings").classList.remove("frm_hidden")),function(e){var t=e[0].querySelectorAll(".frm-inline-modal[data-fills]");t.length&&t.forEach((function(e){e.classList.add("frm_hidden"),e.removeAttribute("data-fills"),e.closest("form").appendChild(e)}))}(n),n.remove(),r.fadeOut("slow",(function(){var e,t=r.closest(".start_divider"),n=r.data("type"),i=r.siblings("li.form-field");if(i.length||(r.is(".edit_field_type_end_divider")?i.length=r.closest("li.form-field").siblings():e=r.closest("ul.frm_sorting").parent()),r.remove(),"break"===n?Tr():"product"===n&&(Be(),nt()),i.length?le(i.first()):e.remove(),0===jQuery("#frm-show-fields li").length||function(){if(j.get(0).childElementCount>1)return!1;var e=j.get(0).firstElementChild.firstElementChild.querySelectorAll("li.frm_field_box");return!(e.length>1)&&e[0].classList.contains("edit_field_type_submit")}()){var o=document.getElementById("frm_form_editor_container");o.classList.remove("frm-has-fields"),o.classList.add("frm-empty-fields")}else t.length&&En(t);R()})),r.length&&wp.hooks.doAction("frm_after_delete_field",r[0])}})}function Er(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_logic_row_"+e).querySelectorAll(".frm_logic_row");return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_logic_row",form_id:t,field_id:e,nonce:frmGlobal.nonce,meta_name:kr(r,"frm_logic_"+e+"_"),fields:tt()},success:function(t){jQuery(document.getElementById("logic_"+e)).fadeOut("fast",(function(){var r=document.getElementById("frm_logic_row_"+e);r.insertAdjacentHTML("beforeend",t);var n=r.querySelector(".frm_logic_row:last-child .frm-logic-rule-text");n&&(n.textContent=r.dataset.ruleText);var i=r.closest(".frm_logic_rows");i.style.height="auto",jQuery(i).fadeIn("fast")}))}}),!1}function kr(e,t,r){return e.length?parseInt(e[e.length-1].id.replace(t,""),10)+1:void 0!==r?r:0}function Lr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_watch_lookup_block_"+e).children;return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_watch_lookup_row",form_id:t,field_id:e,row_key:kr(r,"frm_watch_lookup_"+e+"_"),nonce:frmGlobal.nonce},success:function(t){var r,n=jQuery(document.getElementById("frm_watch_lookup_block_"+e));n.append(t),n.fadeIn("slow"),null===(r=document.getElementById("frm_watch_lookup_label_".concat(e)))||void 0===r||r.classList.remove("frm_hidden!")}}),!1}function Sr(e){var t,r,n=jQuery(e).closest(".frm-single-settings").attr("data-fid"),i=jQuery(e).closest("ul").get(0).querySelectorAll(".field_"+n+"_option");for(t in i)if((r=i[t]).id!==e.id&&r.value===e.value&&"true"!==r.getAttribute("data-duplicate"))return!0;return!1}function Ar(){var e,t;null===this.getAttribute("data-value-on-load")&&(this.setAttribute("data-value-on-load",this.value),t=jQuery(this).closest(".frm-single-settings").attr("data-fid"),(e=document.createElement("input")).value=this.value,e.setAttribute("type","hidden"),e.setAttribute("name","optionmap["+t+"]["+this.value+"]"),this.parentNode.appendChild(e),void 0===S[t]&&(S[t]={}),S[t][this.value]=e),"true"===this.getAttribute("data-duplicate")&&(this.removeAttribute("data-duplicate"),Sr(this))?this.setAttribute("data-value-on-focus",this.getAttribute("data-value-on-load")):""===this.value&&a.new_option===this.getAttribute("data-value-on-focus")||this.setAttribute("data-value-on-focus",this.value)}function Ir(e){var t,r=e.closest(".frm_single_option");return e.parentElement.classList.contains("frm_single_option")?{newValue:r.querySelector('.frm_option_key input[type="text"]').value,newLabel:t=e.value}:(t=r.querySelector('input[type="text"]').value,{newValue:e.value,newLabel:t})}function Br(){var e,t,r,n,i,o,a,l,s,d,c,f,u=function(e){var t=function(e){var t,r,n=null!==(t=null===(r=e.closest(".frm-single-settings").querySelector(".frm_toggle_sep_values"))||void 0===r?void 0:r.checked)&&void 0!==t&&t,i=e.closest(".frm_single_option");return n&&e.parentElement.classList.contains("frm_single_option")?{oldValue:i.querySelector('.frm_option_key input[type="text"]').getAttribute("data-value-on-focus"),oldLabel:e.getAttribute("data-value-on-focus")}:{oldValue:e.getAttribute("data-value-on-focus"),oldLabel:i.querySelector('input[type="text"]').getAttribute("data-value-on-focus")}}(e),r=t.oldValue,n=t.oldLabel,i=Ir(e);return{oldValue:r,oldLabel:n,newValue:i.newValue,newLabel:i.newLabel}}(this),m=u.oldValue,_=u.oldLabel,p=u.newValue,g=u.newLabel;if(m!==p||_!==g){var y=this.closest(".frm-single-settings");if(t=y.getAttribute("data-fid"),e=this.getAttribute("data-value-on-load"),Sr(this))return this.setAttribute("data-duplicate","true"),void(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=e));for(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=p),s=[],rows=D.querySelectorAll(".frm_logic_row"),o=rows.length,a=0;a1)for(document.getElementById("frm-fake-page").style.display="block",e=0;e200)&&(H(a.repeat_limit_min),this.value="")}function Jr(){var e=this.value;""!==e&&(e<1||e>200)&&(H(a.checkbox_limit),this.value="")}function Yr(e,t){jQuery(e).closest(".frm_field_box").find(".frm_"+t+"_form_row .frm_repeat_label").text(e.value)}function Xr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=this.value,r=document.getElementById("frm_show_selected_fields_"+e),n=document.getElementById("frm_show_selected_forms_"+e);jQuery(n).find("select").val(""),"form"===t?(n.style.display="inline",function(e){if(null!==e)for(;e.firstChild;)e.removeChild(e.firstChild)}(r)):(r.style.display="none",n.style.display="none",wn(t,e))}function Zr(){var e,t;(e=en(this))&&(t=jQuery(this).closest(".frm_single_option"),function(e,t,r){var n,i,o,a,l,s,c=r.data("optkey"),f=pn(e),u=jQuery('label[for="field_'+t+"-"+c+'"]'),m="field_options[options_"+e+"]["+c+"]",_=jQuery('input[name="'+m+'[label]"]');if(u.length<1)return rn(e),void((o=r.find('input[name^="default_value_"]')).is(":checked")&&_.length>0&&jQuery('select[name^="item_meta['+e+']"]').val(_.val()));if(a=u.children("input"),n=_.length<1?(_=jQuery('input[name="'+m+'"]')).val():f?jQuery('input[name="'+m+'[value]"]').val():_.val(),!(_.length<1)){if(i=u[0].childNodes,gn(e))l=function(e,t,r){var n,i,o;return(n=e.find("img"))&&(i=n.attr("src")),o=yn(t),fn(t),_n(r.val(),o,i)}(r,e,_),(s=u.find(".frm_image_option_container")).length>0?s.replaceWith(l):(i[i.length-1].nodeValue="",u.append(l));else{var p=!1;i.forEach((function(t,r){if(!1===p)"INPUT"===t.tagName&&(p=r);else if(r===p+1){var n="";!function(e){var t=document.getElementsByName("field_options[image_options_"+e+"]"),r=Array.from(t).find((function(e){return e.checked&&"buttons"===e.value}));return void 0!==r}(e)?t.nodeValue=" "+_.val():(n=d({className:"frm_label_button_container",text:" "+_.val()}),u[0].replaceChild(n,t))}else u[0].removeChild(t)}))}a.val(n),o=r.find('input[name^="default_value_"]'),a.prop("checked",!!o.is(":checked"))}}(e.fieldId,e.fieldKey,t))}function en(e){var t;return!!(t=jQuery(e).closest(".frm_sortable_field_opts")).length&&{fieldId:t.attr("id").replace("frm_field_","").replace("_opts",""),fieldKey:t.data("key")}}function tn(e){var t,r=document.getElementById("field_options_image_size_"+e),n="";return null!==r&&""!==(t=r.value)&&(n=t),n}function rn(e){var t,r,n,i,o,a=jQuery('[name^="item_meta['+e+']"]');if(!(a.length<1)){if(a.is("select"))null!==(i=document.getElementById("frm_placeholder_"+e))&&""===i.value?sn(a[0],{sourceID:e}):sn(a[0],{sourceID:e,placeholder:i.value});else{r=cn(e),jQuery("#field_"+e+"_inner_container > .frm_form_fields").html(""),o=en(jQuery("#frm_delete_field_"+e+"-000_container"));var l=jQuery("#field_"+e+"_inner_container > .frm_form_fields"),s=gn(e),d=s?tn(e):"",c=s?"frm_image_option frm_image_"+d+" ":"",f=Ho(e);for(n="hidden"===a.attr("type")?a.data("field-type"):a.attr("type"),t=0;t=0;a--){var u;l=d[a];var m=null===(u=document.getElementById("frm_field_"+e+"_opts").querySelector('.frm_option_key input[type="text"]'))||void 0===u?void 0:u.value;m||(m=l),s=i.querySelector('option[value="'+m+'"]');var _=nn(e,l),p=_.newValue,g=_.newLabel,y=document.querySelectorAll("#frm_field_"+e+"_opts input[data-value-on-focus]"),h=Array.from(y).find((function(e){return e.value===l}));if(h){var v=h.dataset.valueOnFocus;if(v&&i.querySelector('option[value="'+v+'"]'))continue}an(i,s,p,g)}null!==(s=i.querySelector('option[value=""]'))&&i.prepend(s)}}function an(e,t,r,n){null!==t||e.querySelector('option[value="'+r+'"]')||((t=frmDom.tag("option",{text:n})).value=r),e.prepend(t)}function ln(e,t,r,n,i,o){var a,l="",s=-1!==t.key.indexOf("other"),d="field_"+n+"-"+t.key,c="scale"===e?"radio":e;return a='',this.getSingle=function(){return""!==(l=wp.hooks.applyFilters("frm_admin.build_single_option_template",l,{opt:t,type:e,fieldId:r,classes:o,id:d}))?l:'
                  "+(s?a:"")+"
                  "},this.getSingle()}function sn(e,t){if(null!==e){var r=t.sourceID,n=t.placeholder,i=Ho(r),o=t.other;!function(e){var t;if(void 0!==e.options)for(t=e.options.length-1;t>=0;t--)e.remove(t)}(e);for(var a=cn(r),l=void 0!==n,s=0;s0||d[t].name.indexOf("[value]")>0||d[t].name.indexOf("[image]")>0||d[t].name.indexOf("[price]")>0||(i=r=d[t].value,o=d[t].name.replace("field_options[options_"+e+"][","").replace("[label]","").replace("]",""),m&&(n=d[t].name.replace("[label]","[value]"),r=jQuery('input[name="'+n+'"]').val()),u&&(i=_n(i,f,un(d[t]),fn(e))),a={saved:r,label:i=frmAdminBuild.hooks.applyFilters("frm_choice_field_label",i,e,d[t],u),checked:(l=d[t].id,field=jQuery("#"+l),0!==field.length&&(checkbox=field.siblings("input[type=checkbox]"),checkbox.length&&checkbox.prop("checked"))),key:o},c&&(n=d[t].name.replace("[label]","[price]"),a.price=jQuery('input[name="'+n+'"]').val()),s.push(a));return s}function fn(e){var t=document.getElementById("frm-single-settings-"+e);return null===t?"radio":t.classList.contains("frm-type-checkbox")?"checkbox":"radio"}function un(e){var t,r=jQuery(e).siblings(".frm_image_preview_wrapper");return r.length&&(t=r.find("img")).length?t.attr("src"):""}function mn(e){(e instanceof Element||e instanceof Document)&&(e=e.outerHTML);var t=jQuery.parseHTML(e).reduce((function(e,t){var r=frmDom.cleanNode(t);return"#text"===r.nodeName?e+r.textContent:e+r.outerHTML}),"");return t!==e?mn(t):t}function _n(e,t,r,n){var i,o,l,c=e;return c=mn(c),r?o=m({src:r,alt:c}):(o=d({className:"frm_empty_url"})).innerHTML=a.image_placeholder_icon,i=t?" frm_label_with_image":"",(l=s("span",{className:"frm_text_label_for_image_inner"})).innerHTML=c,s("span",{className:"frm_image_option_container"+i,children:[o,s("span",{className:"frm_text_label_for_image",child:l})]})}function pn(e){return hn("separate_value_"+e)}function gn(e){for(var t=!1,r=document.getElementsByName("field_options[image_options_"+e+"]"),n=0;n=0&&(r.splice(t,1),e.val(r),e.next(".btn-group").find('.multiselect-container input[value=""]').prop("checked",!1))}(jQuery(this))}function An(e){e.val(""),e.next(".btn-group").find('.multiselect-container input[value!=""]').prop("checked",!1)}function In(){jQuery(".frm-hide-empty").each((function(){0===jQuery(this).text().trim().length&&jQuery(this).remove()}))}function Bn(e){e.preventDefault(),Cn(this)}function Cn(e,t){var r=document.getElementById(e.getAttribute("data-open")),n=jQuery(e).closest("p,ul"),i=void 0!==t;n.hasClass("frm-open")?(n.removeClass("frm-open"),r.classList.add("frm_hidden")):(i||(t=Gi(e)),null!==t&&(i||t.focus(),n.after(r),r.setAttribute("data-fills",t.id.replace("-proxy-input","")),0===r.id.indexOf("frm-calc-box")&&Ze(r,!0)),n.addClass("frm-open"),r.classList.remove("frm_hidden"),wp.hooks.doAction("frm_show_inline_modal",r,e))}function qn(e){e.preventDefault(),this.parentNode.classList.add("frm_hidden"),jQuery('.frm-open [data-open="'+this.parentNode.id+'"]').closest(".frm-open").removeClass("frm-open")}function Nn(e){var t=e.target;t.closest(".frm-inline-modal.frm-modal-no-dismiss")||t.closest(".frm-show-inline-modal")||t.closest("#frm_adv_info")||t.closest(".frm-token-proxy-input")||document.querySelectorAll(".frm-inline-modal.frm-modal-no-dismiss:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden"),e.previousElementSibling.classList.remove("frm-open")}))}function Tn(){var e,t,r,n,i,o,a,l=this.getAttribute("data-frmchange").split(",");for(e=0;e',r)),o.innerHTML=c,e.dataset.upsellImage&&o.appendChild(m({src:e.dataset.upsellImage,alt:e.dataset.upgrade})),a.href=function(e,t){var r=e.getAttribute("data-link");return null!=r&&""!==r||(r=t.getAttribute("data-default")),r}(e,a),s.style.display="none",i.style.display=_,l.style.display="block"===_?"inline-block":_,o.style.display=u,a.style.display="block"===f?"inline-block":f}function Yn(e){void 0===e&&(e=""),function(e){var t,r=jQuery(e+" :not(.frm_has_shortcodes) .frm_not_email_message, "+e+" :not(.frm_has_shortcodes) .frm_not_email_to, "+e+" :not(.frm_has_shortcodes) .frm_not_email_subject");for(t=0;t').before('')}function Xn(){var e="success";"options[edit_action]"===this.name&&(e="edit");var t=jQuery(this).val();jQuery("."+e+"_action_box").hide(),"redirect"===t?jQuery("."+e+"_action_redirect_box."+e+"_action_box").fadeIn("slow"):"page"===t?jQuery("."+e+"_action_page_box."+e+"_action_box").fadeIn("slow"):jQuery("."+e+"_action_message_box."+e+"_action_box").fadeIn("slow")}function Zn(e){if(m=e.target,p=jQuery(m),g=p.closest(".frm_form_action_settings"),(y=g.find(".widget-inside")).find("p, div, table").length||((_=g.find(".widget-top")).on("frm-action-loaded",(function(){p.trigger("click"),g.removeClass("open"),y.hide()})),_.trigger("click"),0)){var t=e.target.closest(".frm_form_action_settings"),r=t.querySelectorAll(".wp-editor-area");r.length&&r.forEach((function(e){tinymce.EditorManager.execCommand("mceRemoveEditor",!0,e.id)}));var n=jQuery(t).clone(),i=n.attr("id").replace("frm_form_action_",""),o=ei(i);n.find(".frm_action_id, .frm-btn-group").remove(),n.find('input[name$="['+i+'][ID]"]').val(""),n.find(".widget-inside").hide(),n.find("input[type=text], textarea, input[type=number]").prop("defaultValue",(function(){return this.value})),n.find("input[type=checkbox], input[type=radio]").prop("defaultChecked",(function(){return this.checked}));var a=new RegExp("\\["+i+"\\]","g"),l=new RegExp("_"+i+'"',"g"),s=new RegExp("-"+i+'"',"g"),c=new RegExp('"'+i+'"',"g"),f=n.html().replace(a,"["+o+"]").replace(l,"_"+o+'"');f=f.replace(s,"-"+o+'"').replace(c,'"'+o+'"');var u=d({id:"frm_form_action_"+o,className:n.get(0).className});u.setAttribute("data-actionkey",o),u.innerHTML=f,u.querySelectorAll(".wp-editor-wrap, .wp-editor-wrap *").forEach((function(e){"string"==typeof e.className&&(e.className=e.className.replace(i,o)),e.id=e.id.replace(i,o)})),u.classList.remove("open"),document.getElementById("frm_notification_settings").appendChild(u),r.length&&(r.forEach((function(e){frmDom.wysiwyg.init(e)})),u.querySelectorAll(".wp-editor-area").forEach((function(e){frmDom.wysiwyg.init(e)}))),u.classList.contains("frm_single_on_submit_settings")&&u.querySelector("input.frm-page-search")&&jo(u),lo(),wp.hooks.doAction("frm_after_duplicate_action",u)}var m,_,p,g,y}function ei(e){var t=parseInt(e,10)+11;return null!==document.getElementById("frm_form_action_"+t)&&(t=ei(++t)),t}function ti(){var e,t=jQuery(this).data("actiontype");if(!di(t)){var r=(e=kr(document.querySelectorAll(".frm_form_action_settings"),"frm_form_action_"),void 0!==document.getElementById("frm_form_action_"+e)&&(e+=100),A>=e&&(e=A+1),A=e,e),n=k,i=document.createElement("div");i.classList.add("frm_single_"+t+"_settings");var o=document.getElementById("frm_notification_settings");o.appendChild(i),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_action",type:t,list_id:r,form_id:n,nonce:frmGlobal.nonce},success:function(e){Mi(),i.remove(),document.querySelectorAll(".frm_form_action_settings.open").forEach((function(e){return e.classList.remove("open")}));var n=d();n.innerHTML=e;var a=n.querySelector(".widget-top");Array.from(n.children).forEach((function(e){return o.appendChild(e)})),jQuery(".frm_form_action_settings").fadeIn("slow");var l=document.getElementById("frm_form_action_"+r);l.classList.add("open"),document.getElementById("post-body-content").scroll({top:l.offsetTop+10,left:0,behavior:"smooth"}),si(t),Yn("#frm_form_action_"+r),lo(),jo(l),a&&jQuery(a).trigger("frm-action-loaded"),frmAdminBuild.hooks.doAction("frm_added_form_action",l)}})}}function ri(){var e=document.getElementById("frm_email_addon_menu").classList,t=document.getElementById("actions-search-input");e.contains("frm-all-actions")?(e.remove("frm-all-actions"),e.add("frm-limited-actions")):(e.add("frm-all-actions"),e.remove("frm-limited-actions")),t.value="",Io(t,"input")}function ni(e){e.on("Change",(function(){!function(e){var t,r;(t=document.querySelector(".frm-single-settings:not(.frm_hidden)"))&&null!==(r=t.querySelector(".wp-editor-wrap"))&&r.classList.contains("tmce-active")&&!tinyMCE.activeEditor.isHidden()&&(e.targetElm.value=e.getContent(),jQuery(e.targetElm).trigger("change"))}(e)}))}function ii(e){var t=this;if(null!==e)return this.fragment=document.createDocumentFragment(),this.initOnceInAllInstances=function(){void 0===ii.prototype.endMarker&&(ii.prototype.endMarker=document.getElementById("frm-end-form-marker"))},this.append=function(e){var r=null!==e?e.parentElement.classList:"";null!==e&&(r.contains("frm_field_box")||r.contains("divider_section_only"))&&t.fragment.appendChild(e)},this.moveFields=function(){w.insertBefore(t.fragment,ii.prototype.endMarker)},this.initOnceInAllInstances(),void 0!==e?(this.append(e),void this.moveFields()):{append:this.append,moveFields:this.moveFields}}function oi(){var e=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),t=this.getAttribute("data-emailrow");jQuery("#frm_form_action_"+e+" .frm_"+t+"_row").fadeIn("slow"),jQuery(this).fadeOut("slow")}function ai(){var e=jQuery(this).closest(".frm_form_action_settings"),t=this.getAttribute("data-emailrow"),r=".frm_"+t+"_row",n=".frm_"+t+"_button";jQuery(e).find(n).fadeIn("slow"),jQuery(e).find(r).fadeOut("slow",(function(){jQuery(e).find(r+" input").val("")}))}function li(){var e=jQuery(this).closest(".frm_form_action_settings"),t=".frm_from_to_match_row";e.find('input[name$="[post_content][from]"]').val()===e.find('input[name$="[post_content][email_to]"]').val()?jQuery(e).find(t).fadeIn("slow"):jQuery(e).find(t).fadeOut("slow")}function si(e){var t,r,n=document.querySelectorAll(".frm_"+e+"_action");di(e)?(t=n,r=ci(e)>0,t.forEach((function(e){e.classList.remove("frm_active_action"),e.classList.add("frm_inactive_action"),r&&e.classList.add("frm_already_used")}))):n.forEach((function(e){e.querySelector(".frm_show_upgrade")||(e.classList.remove("frm_inactive_action","frm_already_used"),e.classList.add("frm_active_action"))}))}function di(e){var t=function(e){return jQuery(".frm_single_"+e+"_settings").length}(e)>=ci(e),r={type:e};return wp.hooks.applyFilters("frm_action_at_limit",t,r)}function ci(e){return parseInt(jQuery(".frm_"+e+"_action").data("limit"),10)}function fi(){var e=a.only_one_action,t=this.dataset.limit;void 0!==t&&((t=parseInt(t))>1?e=e.replace(1,t).trim():e+=" "+a.edit_action_text),H(e)}function ui(){var e=jQuery(this).data("emailkey"),t=jQuery(this).closest(".frm_form_action_settings").find(".frm_action_name").val(),r=document.getElementById("form_id").value,n=document.getElementById("frm_logic_row_"+e),i=kr(n.querySelectorAll(".frm_logic_row"),"frm_logic_"+e+"_"),o=d({id:"frm_logic_"+e+"_"+i,className:"frm_logic_row frm_hidden"});return n.appendChild(o),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_logic_row",email_id:e,form_id:r,meta_name:i,type:t,nonce:frmGlobal.nonce},success:function(t){jQuery(document.getElementById("logic_link_"+e)).fadeOut("slow",(function(){o.insertAdjacentHTML("beforebegin",t),o.remove(),jQuery(n).parent(".frm_logic_rows").fadeIn("slow")}))}}),!1}function mi(){var e=jQuery("select.frm_single_post_field");e.css("border-color","");var t=this,r=jQuery(t).val();if(""===r||"checkbox"===r)return!1;e.each((function(){if(jQuery(this).val()===r&&this.name!==t.name)return this.style.borderColor="red",jQuery(t).val(""),H(a.field_already_used),!1}))}function _i(){var e=jQuery(this).val();""===e?(jQuery(".frm_post_content_opt, select.frm_dyncontent_opt").hide().val(""),jQuery(".frm_dyncontent_opt").hide()):"post_content"===e?(jQuery(".frm_post_content_opt").show(),jQuery(".frm_dyncontent_opt").hide(),jQuery("select.frm_dyncontent_opt").val("")):(jQuery(".frm_post_content_opt").hide().val(""),jQuery("select.frm_dyncontent_opt, .frm_form_field.frm_dyncontent_opt").show())}function pi(){var e=jQuery(this).val(),t=jQuery(document.getElementById("frm_dyncontent"));""===e||"new"===e?(t.val(""),jQuery(".frm_dyncontent_opt").show()):jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_display_get_content",id:e,nonce:frmGlobal.nonce},success:function(e){t.val(e),jQuery(".frm_dyncontent_opt").show()}})}function gi(){var e,t,r=document.getElementById("frm_posttax_rows").childNodes,n=document.querySelector(".frm_post_parent_field"),o=document.querySelector(".frm_post_menu_order_field"),a=this.value;jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_replace_posttax_options",post_type:a,nonce:frmGlobal.nonce},success:function(n){for(i=0;i');var e=jQuery(this).closest(".frm_form_action_settings").find('select[name$="[post_content][post_type]"]').val(),t=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),r=jQuery(this).closest(".frm_posttax_row").attr("id").replace("frm_posttax_",""),n=jQuery(this).val(),i=jQuery(document.getElementById(r+"_show_exclude")).is(":checked")?1:0,o=jQuery('select[name$="[post_category]['+r+'][field_id]"]').val(),a=jQuery('input[name="id"]').val();jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_posttax_row",form_id:a,post_type:e,tax_key:r,action_key:t,meta_name:n,field_id:o,show_exclude:i,nonce:frmGlobal.nonce},success:function(e){jQuery(document.getElementById("frm_posttax_"+r)).replaceWith(e)}})}}function wi(){var e=jQuery(this).closest(".frm_postmeta_row"),t=e.find(".frm_cancelnew"),r=e.find(".frm_enternew");return e.find("select.frm_cancelnew").is(":visible")?(t.hide(),r.show()):(t.show(),r.hide()),e.find("input.frm_enternew, select.frm_cancelnew").val(""),!1}function Qi(){var e=jQuery(this),t=e.val();"checkbox"===e.attr("type")&&!1===this.checked&&(t="");var r=e.data("toggleclass");""===t?jQuery("."+r).hide():(jQuery("."+r).show(),jQuery(".hide_"+r+"_"+t).hide())}function xi(){Rn()||(Wn(this),Hn(document.querySelector(".frm_form_settings")))}function Ei(e){return e.preventDefault(),ki(jQuery(this),this.getAttribute("data-code")),!1}function ki(e,t){var r=!1,i=e;if("object"===n(e)){if(e.hasClass("frm_noallow"))return;void 0===(i=jQuery(e).closest("[data-fills]").attr("data-fills"))&&void 0!==(i=e.closest("div").attr("class"))&&(i=i.split(" ")[1])}if(void 0===i){var o=document.activeElement;"search"===o.type?null===(i=o.id.replace("-search-input","")).match(/\d/gi)&&(i=(o=jQuery(".frm-single-settings:visible ."+i)).attr("id")):i=o.id}i&&(r=jQuery("#wp-"+i+"-wrap.wp-editor-wrap").length>0);var a=jQuery(document.getElementById(i));if(void 0===e.attr("data-shortcode")&&(!a.length||void 0===a.attr("data-shortcode"))){var l=e.parents("ul.frm_code_list").attr("data-shortcode");"undefined"!==l&&"no"===l||(t="["+t+"]")}if(r&&(wpActiveEditor=i),!a.length)return!1;if("[default-html]"===t||"[default-plain]"===t){var s=0;"[default-plain]"===t&&(s=1),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_get_default_html",form_id:jQuery('input[name="id"]').val(),plain_text:s,nonce:frmGlobal.nonce},elementId:i,success:function(e){if(r){var t=document.createElement("p");t.innerText=e,send_to_editor(t.innerHTML)}else Li(a,e)}})}else t=function(e,t,r){return"object"===n(t)&&t instanceof jQuery&&0===r[0].id.indexOf("success_url_")&&(t=t[0]).closest("#frm-insert-fields-box")?(t.parentNode.classList.contains("frm_insert_url")||(e=e.replace("]"," sanitize_url=1]")),e):e}(t,e,a),r?send_to_editor(t):Li(a,t);return!1}function Li(e,t){if(document.selection)e[0].focus(),document.selection.createRange().text=t;else{obj=e[0];var r=obj.selectionEnd;t=function(e,t,r,n){var i=e.data("sep");if(void 0===i)return t;var o=e.val();if(!o.trim().length)return t;var a=new RegExp(i+"\\s*$"),l=new RegExp("^\\s*"+i);return o.substr(0,r).trim().length&&!1===a.test(o.substr(0,r))&&(t=i+t),o.substr(n,o.length).trim().length&&!1===l.test(o.substr(n,o.length))&&(t+=i),t}(e,t,obj.selectionStart,r),obj.value=obj.value.substr(0,obj.selectionStart)+t+obj.value.substr(obj.selectionEnd,obj.value.length);var n=r+t.length;!function(e,t){if(e.classList.contains("frm_classes")&&Si(t)){var r=e.value.split(" ").filter(Si);r.length&&(e.value=function(e,t,r){var n=e.split(" ").filter((function(e){return(e=e.trim()).length&&!t.includes(e)}));return n.includes(r)||n.push(r),n.join(" ")}(e.value,r,t.trim()))}}(obj,t),obj.focus(),obj.setSelectionRange(n,n)}Pn(e)}function Si(e){return["frm_half","frm_third","frm_two_thirds","frm_fourth","frm_three_fourths","frm_fifth","frm_sixth","frm2","frm3","frm4","frm6","frm8","frm9","frm10","frm12"].includes(e.trim())}function Ai(){var e=document.getElementById("frm-id-condition"),t=document.getElementById("frm-key-condition");"id"===this.value?(e.classList.remove("frm_hidden"),t.classList.add("frm_hidden"),Io(t,"change")):(e.classList.add("frm_hidden"),t.classList.remove("frm_hidden"),Io(e,"change"))}function Ii(){var e,t,r=document.getElementById("frm-id-key-condition-id").checked?"frm-id-condition":"frm-key-condition",n=document.getElementById("frm-is-condition").value,i=document.getElementById("frm-text-condition").value,o=document.getElementById("frm-insert-condition");t="if "+(e=(r=document.getElementById(r)).options[r.selectedIndex].value)+" "+n+'="'+i+'"]',o.setAttribute("data-code",t+a.conditional_text+"[/if "+e),o.innerHTML="["+t+"[/if "+e+"]"}function Bi(){Cn($i(this),this)}function Ci(e){e.preventDefault(),e.stopPropagation(),Oi(this)}function qi(e){!function(e){var t;if(e.id.startsWith("field_options_type_")){var r=e.id.split("_"),n=r.length&&r[r.length-1];null!==(t=document.querySelector("#frm-single-settings-".concat(n)))&&void 0!==t&&t.classList.contains("frm-type-".concat(e.value))||Ni()}}(e.target)}function Ni(e){var t;void 0===e&&(e=B("You are changing the field type. Not all field settings will appear as expected until you reload the page. Would you like to reload the page now?","formidable")),frmDom.modal.maybeCreateModal("frmSaveAndReloadModal",{title:B("Save and Reload?","formidable"),content:(t=d(e),t.style.padding="var(--gap-md)",t),footer:function(){var e=frmDom.modal.footerButton({text:B("Save and Reload","formidable"),buttonType:"primary"});_(e,(function(){Pi()}));var t=frmDom.modal.footerButton({text:B("Cancel","formidable"),buttonType:"cancel"});return t.classList.add("dismiss"),frmDom.div({children:[t,e]})}()})}function Ti(e){var t;if(e instanceof Event){var r=document.querySelectorAll(".frm-single-settings .frm-show-box.frmsvg use"),n=Array.from(r).find((function(e){return"#frm_close_icon"===e.getAttribute("href")}));if(void 0===n)return;t=n.parentElement}else t=e;var i=t.getBoundingClientRect(),o=document.getElementById("frm_adv_info"),a=o.parentElement.getBoundingClientRect();o.style.top=i.top-a.top+32+"px",o.style.left=i.left-a.left-280+"px"}function Oi(e,r){var n=Gi(e),i=document.getElementById("frm_adv_info"),o=e.className;if("svg"===e.tagName&&(e=e.firstElementChild),"use"===e.tagName&&null===(o=e.getAttributeNS("http://www.w3.org/1999/xlink","href"))&&(o=e.getAttribute("href")),-1!==o.indexOf("frm_close_icon"))Wi(i);else{if(Ti(e),jQuery(".frm_code_list a").removeClass("frm_noallow"),n.classList.contains("frm_not_email_to")?jQuery("#frm-insert-fields-box .frm_code_list li:not(.show_frm_not_email_to) a").addClass("frm_noallow"):n.classList.contains("frm_not_email_subject")&&jQuery(".frm_code_list li.hide_frm_not_email_subject a").addClass("frm_noallow"),i.setAttribute("data-fills",n.id),i.style.display="block","use"===e.tagName)if(e.hasAttributeNS("http://www.w3.org/1999/xlink","href"))e.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon");else{var l=document.createElementNS("http://www.w3.org/2000/svg","use");l.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon"),e.parentNode.replaceChild(l,e)}else e.className=o.replace("frm_more_horiz_solid_icon","frm_close_icon");"nofocus"!==r&&("none"!==n.style.display?n.focus():jQuery(tinymce.get(n.id)).trigger("focus")),function(e){["address","body"].forEach((function(r){!function(e,r){var n,i;n=a.contextualShortcodes[r+"Selector"],i=a.contextualShortcodes[r];var o,l=e.matches(n),s=function(e){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=t(e))){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw o}}}}(i);try{for(s.s();!(o=s.n()).done;){var d,c=o.value,f=null===(d=document.querySelector('#frm-adv-info-tab .frm_code_list [data-code="'+c+'"]'))||void 0===d?void 0:d.closest("li");null==f||f.classList.toggle("frm_hidden",!l)}}catch(e){s.e(e)}finally{s.f()}}(e,r)}))}(n)}}function Di(e){return 0===a.contextualShortcodes.length||!function(e){var t=e.querySelector("a");if(!t)return!1;var r=t.dataset.code;return a.contextualShortcodes.address.includes(r)||a.contextualShortcodes.body.includes(r)}(e)||function(e){var t=e.querySelector("a").dataset.code,r=document.getElementById("frm_adv_info").dataset.fills,n=document.getElementById(r),i=a.contextualShortcodes;return i.address.includes(t)?n.matches(i.addressSelector):n.matches(i.bodySelector)}(e)}function Mi(){E||(E=1,window.addEventListener("beforeunload",zi))}function Fi(){E=0}function Hi(){E=0}function Pi(){var e=document.getElementById("frm_submit_side_top");e.classList.contains("frm_submit_ajax")&&e.setAttribute("data-new-addon-installed",!0),e.click()}function zi(e){E&&(e.preventDefault(),e.returnValue="")}function Ri(e,t){var r={my:"top",at:"top+"+t,of:window};e.dialog("option","position",r)}function Gi(e){for(var t,r=e.nextElementSibling;null!==r&&("INPUT"!==r.tagName&&"TEXTAREA"!==r.tagName||r.classList.contains("frm-token-input-field"));)r=Gi(r);return r||(r=null===(t=e.closest(".frm-field-formula"))||void 0===t?void 0:t.querySelector(".frm-calc-field")),r}function $i(e){for(var t=e.previousElementSibling;null!==t&&"I"!==t.tagName&&"svg"!==t.tagName;)t=$i(t);return t}function Wi(e){var t,r,n,i;if((void 0!==e||null!==(e=document.getElementById("frm_adv_info")))&&null===document.getElementById("frm_dyncontent")){for(e.style.display="none",n=document.querySelectorAll(".frm-show-box.frm_close_icon"),t=0;t"+r.data.name+": "+r.data.msg+"

                  ":'

                  Imported '+r.data.name+"

                  ",e.find(".status").prepend(n),e.find(".status").show(),N.importQueue=jQuery.grep(N.importQueue,(function(e){return e!=t})),N.imported++,0===N.importQueue.length?(e.find(".process-count").hide(),e.find(".forms-completed").text(N.imported),e.find(".process-completed").show()):(e.find(".form-current").text(N.imported+1),Xi(e)))}))}function Zi(e){e.preventDefault();var t=!1,r=jQuery('input[name="frm_export_forms[]"]');jQuery('input[name="frm_export_forms[]"]:checked').val()||(r.closest(".frm-table-box").addClass("frm_blank_field"),t="stop");var n=jQuery('input[name="type[]"]');if(jQuery('input[name="type[]"]:checked').val()||"checkbox"!==n.attr("type")||(n.closest("p").addClass("frm_blank_field"),t="stop"),"stop"===t)return!1;e.stopPropagation(),this.submit()}function eo(){var e=jQuery(this).closest(".frm_blank_field");if(void 0!==e){var t=this.name;("type[]"===t&&jQuery('input[name="type[]"]:checked').val()||"frm_export_forms[]"===t&&jQuery(this).val())&&e.removeClass("frm_blank_field")}}function to(){null!==jQuery(this).val().match(/\.csv$/i)?jQuery(".show_csv").fadeIn():jQuery(".show_csv").fadeOut()}function ro(){var e=document.querySelector('select[name="format"]');return e?e.value:""}function no(e){var t,r,n=e.target.value;oo(n),io.call(e.target),t=n,r=document.getElementById("frm-export-select-all"),"csv"===t?(r.checked=!1,r.disabled=!0):r.disabled=!1}function io(){var e=jQuery(this),t=e.find(":selected"),r=t.data("support"),n=r.indexOf("|");jQuery('input[name="type[]"]').each((function(){this.checked=!1,r.indexOf(this.value)>=0?(this.disabled=!1,-1===n&&(this.checked=!0)):this.disabled=!0})),"csv"===e.val()?(jQuery(".csv_opts").show(),jQuery(".xml_opts").hide()):(jQuery(".csv_opts").hide(),jQuery(".xml_opts").show());var i=t.data("count"),o=jQuery('input[name="frm_export_forms[]"]');"single"===i?(o.prop("multiple",!1),o.prop("checked",!1)):(o.prop("multiple",!0),o.prop("disabled",!1)),e.trigger("change")}function oo(e){if(""!==e){var t=document.querySelectorAll(".frm-is-repeater");t.length&&("csv"===e?t.forEach((function(e){e.classList.remove("frm_hidden")})):t.forEach((function(e){e.classList.add("frm_hidden")})),Lo.call(document.querySelector(".frm-auto-search")))}}function ao(){var e=jQuery("select[name=format]").find(":selected").data("count"),t=jQuery('input[name="frm_export_forms[]"]');"single"===e&&this.checked?(t.prop("disabled",!0),this.removeAttribute("disabled")):t.prop("disabled",!1)}function lo(){jQuery(".frm_multiselect").hide().each(frmDom.bootstrap.multiselect.init)}function so(e){e.preventDefault(),uo(this,"frm_multiple_addons")}function co(e){e.preventDefault(),uo(this,"frm_activate_addon")}function fo(e){e.preventDefault(),uo(this,"frm_install_addon")}function uo(e,t){var r,n,i,o;jQuery(".frm-addon-error").remove(),n=(r=jQuery(e)).attr("rel"),i=r.parent(),o=i.parent().find(".addon-status-label"),r.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:t,nonce:frmGlobal.nonce,plugin:n},success:function(e){var n,a,l;"string"!=typeof(e=null!==(n=null===(a=e)||void 0===a?void 0:a.data)&&void 0!==n?n:e)&&"string"==typeof e.message&&(void 0!==e.saveAndReload&&(l=e.saveAndReload),e=e.message);var s=go(e);s?yo(s,i,r):(_o(e,r,o,i,l,t),wp.hooks.doAction("frm_update_addon_state",e))},error:function(){r.removeClass("frm_loading_button")}})}function mo(e){e.preventDefault();var t=jQuery(this),r=t.parent().parent(),n=t.attr("rel");t.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:"frm_install_addon",nonce:a.nonce,plugin:n,hostname:r.find("#hostname").val(),username:r.find("#username").val(),password:r.find("#password").val()},success:function(e){var n,i,o=go(e=null!==(n=null===(i=e)||void 0===i?void 0:i.data)&&void 0!==n?n:e);o?yo(o,r,t):_o(e,t,message,r)},error:function(){t.removeClass("frm_loading_button")}})}function _o(e,t,r,n,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"frm_activate_addon",l=document.querySelectorAll(".frm-addon-status");l.forEach((function(t){t.textContent=e,t.style.display="block"})),t.css({opacity:"0"}),document.querySelectorAll(".frm-oneclick").forEach((function(e){e.style.display="none"})),jQuery("#frm_upgrade_modal h2").hide(),jQuery("#frm_upgrade_modal .frm_lock_icon").addClass("frm_lock_open_icon"),jQuery("#frm_upgrade_modal .frm_lock_icon use").attr("xlink:href","#frm_lock_open_icon");var s={frm_activate_addon:{class:"frm-addon-active",message:a.active},frm_deactivate_addon:{class:"frm-addon-installed",message:a.installed},frm_uninstall_addon:{class:"frm-addon-not-installed",message:a.not_installed}};s.frm_install_addon=s.frm_activate_addon;var c=r[0];c&&(c.textContent=s[o].message);var f=n[0].parentElement;f.classList.remove("frm-addon-not-installed","frm-addon-installed","frm-addon-active"),f.classList.add(s[o].class),t[0].classList.remove("frm_loading_button"),document.querySelectorAll(".frm-admin-page-import, #frm-admin-smtp, #frm-welcome").length>0?window.location.reload():["settings","form_builder"].includes(i)&&l.forEach((function(e){var t=null!==e.closest("#frm_upgrade_modal");e.appendChild(function(e,t){var r=[po(e)];return t&&r.push(function(){var e=document.createElement("a");return e.setAttribute("href","#"),e.classList.add("button","button-secondary","frm-button-secondary","dismiss"),e.textContent=B("Close","formidable"),e}()),d({className:"frm-save-and-reload-options",children:r})}(i,t))}))}function po(e){var t=document.createElement("button");return t.classList.add("frm-save-and-reload","button","button-primary","frm-button-primary"),t.textContent=B("Save and Reload","formidable"),t.addEventListener("click",(function(){var t,r;"form_builder"===e?Pi():"settings"===e&&null!==(t=document.getElementById("form_settings_page"))&&null!==(r=t.querySelector("form.frm_form_settings"))&&(E=0,r.submit())})),t}function go(e){return"string"!=typeof e&&(void 0===e.success||!e.success)&&(e.form&&jQuery(e.form).is("#message")?{message:jQuery(e.form).find("p").html()}:e)}function yo(e,t,r){e.form?(jQuery(".frm-inline-error").remove(),r.closest(".frm-card").html(e.form).css({padding:5}).find("#upgrade").attr("rel",r.attr("rel")).on("click",mo)):(t.append('

                  '+e.message+"

                  "),r.removeClass("frm_loading_button"),jQuery(".frm-addon-error").delay(4e3).fadeOut())}function ho(){bo()}function vo(e){!function(e,t,r){var n=jQuery("#frm_leave_email_error");n.removeClass("frm_hidden").attr("frm-error",r),jQuery("#frm_leave_email").one("keyup",(function(){n.addClass("frm_hidden")}))}(0,0,e)}function bo(){var e=document.getElementById("frmapi-email-form");jQuery.ajax({dataType:"json",url:e.getAttribute("data-url"),success:function(t){var r=t.renderedHtml;r=r.replace(/]*(formidableforms.css|action=frmpro_css)[^>]*>/gi,""),e.innerHTML=r}})}function jo(e){frmDom.autocomplete.initSelectionAutocomplete(e)}function wo(e){var t=this.parentNode.parentNode,r=t.elements.type.value;e.preventDefault(),this.classList.add("frm_loading_button"),xo(t,r,this)}function Qo(e){var t=this.elements.type.value,r=this.querySelector("button");e.preventDefault(),r.classList.add("frm_loading_button"),xo(this,t,r)}function xo(e,t,r){var n=function(e){var t,r,n={},i=e.elements;for(r=0;r=0||So(l,n)?(s&&Di(o[e])&&o[e].classList.remove("frm_hidden"),o[e].classList.add("frm-search-result")):(o[e].classList.add("frm_hidden"),o[e].classList.remove("frm-search-result"))}(t=document.querySelector("#frm-insert-fields"))&&t.querySelectorAll(":scope > .frm-with-line").forEach((function(e){var t=e.nextElementSibling;if(t){var r=t.querySelectorAll(":scope > li.frmbutton"),n=Array.from(r).every((function(e){return e.classList.contains("frm_hidden")}));e.classList.toggle("frm_hidden",n)}})),jQuery(this).trigger("frmAfterSearch")}function So(e,t){return"s"!==t&&"s"!==e[e.length-1]&&(e+"s").indexOf(t)>=0}function Ao(e){e.stopPropagation()}function Io(e,t){var r=document.createEvent("HTMLEvents");r.initEvent(t,!1,!0),e.dispatchEvent(r)}function Bo(e,t){var r,n=new XMLHttpRequest,i="string"==typeof e?e:Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&");return n.open("post",ajaxurl,!0),n.onreadystatechange=function(){if(n.readyState>3&&200==n.status){r=n.responseText;try{r=JSON.parse(r)}catch(e){}t(r)}},n.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.setRequestHeader("Content-type","application/x-www-form-urlencoded"),n.send(i),n}function Co(e,t){e.classList.add("frm-fade"),setTimeout(t,1e3)}function qo(e){jQuery(e).css("visibility","hidden")}function No(e){jQuery(e).css("visibility","visible")}function To(e,t){var r=jQuery(e);if(!r.length)return!1;void 0===t&&(t="550px");var n={dialogClass:"frm-dialog",modal:!0,autoOpen:!1,closeOnEscape:!0,width:t,resizable:!1,draggable:!1,open:function(){var e,t;jQuery(".ui-dialog-titlebar").addClass("frm_hidden").removeClass("ui-helper-clearfix"),jQuery("#wpwrap").addClass("frm_overlay"),jQuery(".frm-dialog").removeClass("ui-widget ui-widget-content ui-corner-all"),r.removeClass("ui-dialog-content ui-widget-content"),e=r,t=function(){e.dialog("close")},jQuery(".ui-widget-overlay").on("click",t),e.on("click","a.dismiss",t)},close:function(){jQuery("#wpwrap").removeClass("frm_overlay"),jQuery(".spinner").css("visibility","hidden"),this.removeAttribute("data-option-type");var e=document.getElementById("bulk-option-type");e&&(e.value="")}};return r.dialog(n),r}function Oo(e,t){if("#"===t){var r=document.getElementById(e),n=r.style.display;r.style.display="none"===n?"block":"none"}else e.is(":visible")?e.hide():e.show()}function Do(){window.onbeforeunload=null;var e=jQuery(window);e.off("beforeunload.widgets"),e.off("beforeunload.edit-post")}function Mo(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);if(null!==t&&"form"===t.dataset.type)if(t=jQuery(t),this.options[this.selectedIndex].value){t.find(".frm-not-set")[0].classList.add("frm_hidden");var r=t.find(".frm-embed-message");r.html(r.data("embedmsg")+this.options[this.selectedIndex].text),t.find(".frm-embed-field-placeholder")[0].classList.remove("frm_hidden")}else t.find(".frm-not-set")[0].classList.remove("frm_hidden"),t.find(".frm-embed-field-placeholder")[0].classList.add("frm_hidden")}function Fo(){var e=jQuery(this).closest(".frm-single-settings"),t=e.find(".frmjs_product_choices"),r=e.find(".frm_prod_options_heading"),n=this.options[this.selectedIndex].value;t.removeClass("frm_prod_type_single frm_prod_type_user_def"),r.removeClass("frm_prod_user_def"),"single"===n?t.addClass("frm_prod_type_single"):"user_def"===n&&(t.addClass("frm_prod_type_user_def"),r.addClass("frm_prod_user_def"))}function Ho(e){var t=document.getElementById("frm_field_id_"+e);return null!==t&&"product"===t.getAttribute("data-type")}function Po(){var t=function(e,t){return window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]},r=function(e,t,r){window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]=r},n=[1,2,3,4,5,6,7,8,9,10,11,12].map((function(e){return"frm"+e})),i=["first","middle","last"];document.addEventListener("change",(function(o){o.target.matches(".frm_name_layout_dropdown")&&function(o){var a,l=o.target.value.split("_"),s=o.target.dataset.fieldId,d=document.querySelector("#field_"+s+"_inner_container .frm_combo_inputs_container"),c=(a=l.length,"frm"+parseInt(12/a));i.forEach((function(t){var i,o=d.querySelector('[data-sub-field-name="'+t+'"]');o&&(o.classList.add("frm_hidden"),(i=o.classList).remove.apply(i,e(n)),r(s,t,o))})),l.forEach((function(e){var r=t(s,e);r&&(r.classList.remove("frm_hidden"),r.classList.add(c),d.append(r))})),i.forEach((function(e){var t=document.querySelector(".frm_sub_field_options-"+e+'[data-field-id="'+s+'"]');t&&(t.classList.add("frm_hidden"),r(s,e+"_options",t))})),l.forEach((function(e){var r=t(s,e+"_options");r&&r.classList.remove("frm_hidden")}))}(o)}),!1)}function zo(e,t){var r,n,i,o=!1,a=!1;(r=t.newOption?(new DOMParser).parseFromString(t.newOption,"text/html").body.childNodes[0]:t).querySelectorAll("svg").forEach((function(e,t){(n=e.getElementsByTagNameNS("http://www.w3.org/2000/svg","use")[0])&&("#frm_drag_icon"===(i=n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("href"))&&(o=!0),"#frm_save_icon"===i&&(a=!0))})),o||r.prepend(b.drag.cloneNode(!0)),r.querySelector("[id^=field_key_".concat(e,"-]"))&&!a&&r.querySelector("[id^=field_key_".concat(e,"-]")).after(b.save.cloneNode(!0)),t.newOption&&(t.newOption=r)}function Ro(){var e=document.getElementById("frm_leave_email").value.trim();if(""!==e)if(!1!==/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e)){var t=jQuery("#frmapi-email-form").find("form"),r=t.find('[type="email"]').not(".frm_verify");if(r.length){if(document.getElementById("frm_empty_inbox")){document.getElementById("frm-add-my-email-address").remove();var n=document.getElementById("frm_leave_email_wrapper");if(n){n.classList.add("frm_hidden");var i=c({className:"frm-wait frm_spinner"});i.style.visibility="visible",i.style.float="none",i.style.width="unset",n.parentElement.insertBefore(i,n.nextElementSibling)}}r.val(e),jQuery.ajax({type:"POST",url:t.attr("action"),data:t.serialize()+"&action=frm_forms_preview"}).done((function(e){if(-1!==jQuery(e).find(".frm_message").text().trim().indexOf("Thanks!")){var t=document.getElementById("frmapi-email-form").parentElement.querySelector(".frm_spinner");t&&t.remove(),wp.hooks.applyFilters("frm_thank_you_on_signup",!0)&&document.getElementById("frm_leave_email_wrapper").replaceWith(c(B("Thank you for signing up!","formidable")))}else vo("invalid")}))}}else vo("invalid");else vo("empty")}function Go(e){if(D||e.stopPropagation(),!(e.target.classList.contains("frm-show-box")||e.target.parentElement&&e.target.parentElement.classList.contains("frm-show-box"))){var t=document.getElementById("frm_adv_info");t&&(t.dataset.fills===e.target.id&&void 0!==e.target.id||e.target.closest("#frm_adv_info")||"none"===t.style.display||Wi(t))}}return{init:function(){var t,r,n,i,o,a,l;!function(){jQuery(document).on("click","#frm-add-my-email-address",(function(e){e.preventDefault(),Ro()}));var e=document.getElementById("frm_empty_inbox"),t=document.getElementById("frm_leave_email");if(e&&t){var r=document.getElementById("frm-leave-email-modal");r.classList.remove("frm_hidden"),r.querySelector(".frm_modal_footer").classList.add("frm_hidden"),t.addEventListener("keyup",(function(e){if("Enter"===e.key){var t=document.getElementById("frm-add-my-email-address");t&&t.click()}}))}}(),r=document.querySelector(".frm-admin-footer-links"),n=null!==(t=document.querySelector(".frm_page_container"))&&void 0!==t?t:document.getElementById("wpbody-content"),r&&n&&(n.appendChild(r),r.classList.remove("frm_hidden")),N={},jQuery(".wp-admin").on("click",(function(e){var t=jQuery(e.target),r=jQuery(".dropdown.open");!r.length||t.hasClass("dropdown")||t.closest(".dropdown").length||r.removeClass("open")})),jQuery("#frm_bs_dropdown:not(.open) a").on("click",Lt),void 0===k&&(k=jQuery(document.getElementById("form_id")).val()),document.querySelectorAll(".frm-warning-dismiss").forEach((function(e){_(e,St)})),frmAdminBuild.inboxBannerInit(),j.length>0?frmAdminBuild.buildInit():null!==document.getElementById("frm_notification_settings")?frmAdminBuild.settingsInit():null!==document.getElementById("frm_styling_form")?frmAdminBuild.styleInit():null!==document.getElementById("form_global_settings")?frmAdminBuild.globalSettingsInit():null!==document.getElementById("frm_export_xml")?frmAdminBuild.exportInit():null!==document.querySelector(".frm-inbox-wrapper")?frmAdminBuild.inboxInit():null!==document.getElementById("frm-welcome")?frmAdminBuild.solutionInit():(function(){if(document.body.classList.contains("frm-admin-page-entries")){var e=document.getElementById("screen-options-wrap");if(e){var t=d({className:"frm_warning_style",text:B("Only 10 columns can be selected at a time.","formidable")});t.style.margin=0;var r=e.querySelector("legend");r.parentNode.insertBefore(t,r.nextElementSibling);var n=Array.from(e.querySelectorAll('input[type="checkbox"]')),i=function(){n.reduce((function(e,t){return t.checked?e+1:e}),0)>=10?(t.classList.remove("frm_hidden"),n.forEach((function(e){e.checked||(e.parentNode.classList.add("frm_noallow"),e.disabled=!0)}))):t.classList.add("frm_hidden")};i(),n.forEach((function(e){e.addEventListener("change",(function(e){e.target.checked?i():(t.classList.add("frm_hidden"),n.forEach((function(e){e.parentNode.classList.remove("frm_noallow"),e.disabled=!1})))}))}))}}}(),jo(),jQuery("[data-frmprint]").on("click",(function(){return window.print(),!1}))),jQuery(document).on("change","select[data-toggleclass], input[data-toggleclass]",Qi),function(){function e(e){var t=e.options[e.selectedIndex];e.querySelectorAll("option[data-dependency]:not([data-dependency-skip])").forEach((function(e){var r=document.querySelector(e.dataset.dependency);null==r||r.classList.toggle("frm_hidden",t!==e)}))}document.querySelectorAll("select.frm_select_with_dependency").forEach(e),frmDom.util.documentOn("change","select.frm_select_with_dependency",(function(t){return e(t.target)}))}(),(jQuery(document.getElementById("frm_adv_info")).length>0||jQuery(".frm_field_list").length>0)&&frmAdminBuild.panelInit(),i=jQuery(".wrap, .frm_wrap"),o=document.getElementById("frm_confirm_modal"),a=!1,l=!1,jQuery(o).on("click","[data-deletefield]",wr),jQuery(o).on("click","[data-removeid]",G),jQuery(o).on("click","[data-trashtemplate]",ko),i.on("click",".frm_remove_tag, .frm_remove_form_action",G),i.on("click","a[data-frmverify]",M),i.on("click","a[data-frmtoggle]",P),i.on("click","a[data-frmhide], a[data-frmshow]",z),i.on("change","input[data-frmhide], input[data-frmshow]",z),i.on("click",".widget-top,a.widget-action",$),i.on("mouseenter.frm",".frm_bstooltip, .frm_help",(function(){jQuery(this).off("mouseenter.frm"),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(this).tooltip("show")})),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(document).on("click","#doaction, #doaction2",(function(e){var t="doaction"===this.id?"top":"bottom",r=document.getElementById("bulk-action-selector-"+t),n=document.getElementById("confirm-bulk-delete-"+t);if(null!==r&&null!==n){if(a=this,!l&&"bulk_delete"===r.value)return e.preventDefault(),F(n),!1}else a=!1})),jQuery(document).on("click","#frm-confirmed-click",(function(e){if(!1!==a&&!e.target.classList.contains("frm-btn-inactive"))return"confirm-bulk-delete"===this.getAttribute("href")?(e.preventDefault(),l=!0,a.click(),!1):void 0})),function(){var e=To("#frm_upgrade_modal");function t(t){var r,n,i;if((r=t.target).classList){var o=r.classList.contains("frm_show_expired_modal")||null!==r.querySelector(".frm_show_expired_modal")||r.closest(".frm_show_expired_modal");if("change"===t.type&&r.classList.contains("frm_select_with_upgrade")){var a=r.options[r.selectedIndex];a&&a.dataset.upgrade&&(r=a)}if(!r.dataset.upgrade){var l=r.closest("[data-upgrade]");if(!l){if(!(l=r.closest(".frm_field_box")))return;r.dataset.upgrade=""}r=l}if(o)wp.hooks.doAction("frm_show_expired_modal",r);else{var s=r.dataset.upgrade;if(s&&!r.classList.contains("frm_show_upgrade_tab")){t.preventDefault();var d=e.get(0),c=d.querySelector(".frm_lock_icon");c&&(c.style.display="block",c.classList.remove("frm_lock_open_icon"),c.querySelector("use").setAttribute("href","#frm_lock_icon"));var f="frm_upgrade_modal_image",u=document.getElementById(f);u&&u.remove(),r.dataset.image&&(c&&(c.style.display="none"),c.parentNode.insertBefore(m({id:f,src:frmGlobal.url+"/images/"+r.dataset.image}),c));var _=d.querySelector(".license-level");_&&(_.textContent=Vn(r)),Jn(r,"modal",s),d.querySelector(".frm_are_not_installed").style.display=r.dataset.image?"none":"inline-block",d.querySelector(".frm_feature_label").textContent=s,d.querySelector("h2").style.display="block",e.dialog("open");var p=d.querySelector(".button-primary:not(.frm-oneclick-button)");n=p.getAttribute("href").replace(/(medium=)[a-z_-]+/gi,"$1"+r.getAttribute("data-medium")),null===(i=r.getAttribute("data-content"))&&(i=""),n=n.replace(/(content=)[a-z_-]+/gi,"$1"+i),p.setAttribute("href",n)}}}}!1!==e&&(document.addEventListener("click",t),frmDom.util.documentOn("change","select.frm_select_with_upgrade",t))}(),frmDom.util.documentOn("click","[data-modal-title]",Un);var s=jQuery(document.getElementById("frm_shortcodediv"));s.length>0&&(jQuery("a.edit-frm_shortcode").on("click",(function(){return s.is(":hidden")&&(s.slideDown("fast"),this.style.display="none"),!1})),jQuery(".cancel-frm_shortcode","#frm_shortcodediv").on("click",(function(){return s.slideUp("fast"),s.siblings("a.edit-frm_shortcode").show(),!1}))),jQuery(document).on("click","#frm-nav-tabs a",W),jQuery(".post-type-frm_display .frm-nav-tabs a, .frm-category-tabs a").on("click",(function(){var e=this.classList.contains("frm_show_upgrade_tab");if(!this.classList.contains("frm_noallow")||e)return e&&Kn(this),U(this),!1})),U(jQuery(".starttab a"),"auto"),jQuery(document).on("click","#frm-fid-search-menu a",(function(){var e=this.id.replace("fid-","");return jQuery('select[name="fid"]').val(e),Hn(document.getElementById("posts-filter")),!1})),jQuery(".frm_select_box").on("click focus",(function(){this.select()})),jQuery(document).on("input search change",".frm-auto-search:not(#frm-form-templates-page #template-search-input)",Lo),jQuery(document).on("focusin click",".frm-auto-search",Ao);var c=jQuery(".frm-auto-search");""!==c.val()&&c.trigger("keyup"),FrmFormsConnect.init(),jQuery(document).on("click",".frm-install-addon",fo),jQuery(document).on("click",".frm-activate-addon",co),jQuery(document).on("click",".frm-solution-multiple",so),jQuery("button, input[type=submit]").on("click",Do),document.addEventListener("click",(function(e){if("LABEL"===e.target.nodeName){var t=e.target.getAttribute("for");if(t){var r=document.getElementById(t);if(r&&r.nextElementSibling){var n=r.nextElementSibling.querySelector("button.dropdown-toggle.multiselect");n&&setTimeout((function(){return n.click()}),0)}}}})),frmAdminBuild.hooks.addFilter("frm_before_embed_modal",(function(e,t){var r,n,i=t.element;if("form"!==t.type)return e;var o=i.closest("tr");if(o)r=parseInt(o.querySelector(".column-id").textContent),n=o.querySelector(".column-form_key").textContent;else{r=document.getElementById("form_id").value;var a=document.getElementById("frm_form_key");if(a)n=a.value;else{var l=document.getElementById("frm-previewDrop");l&&(n=l.nextElementSibling.querySelector(".dropdown-item a").getAttribute("href").split("form=")[1])}}return[r,n]})),document.querySelectorAll("#frm-show-fields > li, .frm_grid_container li").forEach((function(t,r){t.addEventListener("click",(function(){var t,r,n;r=(null===(t=this.querySelector("li"))||void 0===t?void 0:t.dataset.fid)||this.dataset.fid,(n=document.querySelectorAll("[id^=frm_delete_field_".concat(r,"-]"))).length<2||e(n).slice(1).forEach((function(e,t){e.classList.contains("frm_other_option")||zo(r,e)}))}))}));var f=document.getElementById("frm_small_screen_proceed_button");f&&_(f,(function(){var e;null===(e=document.getElementById("frm_small_device_message_container"))||void 0===e||e.remove(),g("small_screen_proceed",new FormData)}));var u=document.getElementById("frm_sale_banner"),p=null==u?void 0:u.querySelector(".dismiss");u&&(_(u,(function(e){e.target.closest(".dismiss")||(window.location.href=u.getAttribute("data-url"))})),p&&_(p,(function(){u.remove();var e=new FormData;g("sale_banner_dismiss",e)})))},buildInit:function(){var e,t,r;jQuery("#frm_builder_page").on("mouseup","*:not(.frm-show-box)",Go),y=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return frmDom.util.debounce(e,t)}(oe,10),h=document.getElementById("post-body-content"),v=jQuery(h),jQuery(".frm_field_loading").length&&Le(jQuery(".frm_field_loading").first().attr("id")),V("ul.frm_sorting"),document.querySelectorAll(".field_type_list > li:not(.frm_show_upgrade)").forEach(X),jQuery("ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a").disableSelection(),jQuery(".frm_submit_ajax").on("click",Fn),jQuery(".frm_submit_no_ajax").on("click",zn),Gn(),jQuery("a.edit-form-status").on("click",kn),jQuery(".cancel-form-status").on("click",Ln),jQuery(".save-form-status").on("click",(function(){var e=jQuery(document.getElementById("form_change_status")).val();return jQuery('input[name="new_status"]').val(e),jQuery(document.getElementById("form-status-display")).html(e),jQuery(".cancel-form-status").trigger("click"),!1})),jQuery(".frm_form_builder form").first().on("submit",(function(){jQuery(".inplace_field").trigger("blur")})),lo(),Tr(),e=jQuery(w),t=document.getElementById("frm_form_editor_container"),e.on("click",".frm_add_logic_row",Er),e.on("click",".frm_add_watch_lookup_row",Lr),e.on("change",".frm_get_values_form",qr),e.on("change",".frm_logic_field_opts",bn),e.on("frm-multiselect-changed",'select[name^="field_options[admin_only_"]',Sn),jQuery(document.getElementById("frm-insert-fields")).on("click",".frm_add_field",Ae),j.on("click",".frm_clone_field",Ce),e.on("blur",'input[id^="frm_calc"]',Ye),e.on("change","input.frm_format_opt, input.frm_max_length_opt",lt),e.on("change click","[data-changeme]",ot),e.on("click","input.frm_req_field",st),e.on("click",".frm_mark_unique",ct),e.on("change",".frm_repeat_format",Vr),e.on("change",".frm_repeat_limit",Kr),e.on("change",".frm_js_checkbox_limit",Jr),e.on("input",'input[name^="field_options[add_label_"]',(function(){Yr(this,"add")})),e.on("input",'input[name^="field_options[remove_label_"]',(function(){Yr(this,"remove")})),e.on("change",'select[name^="field_options[data_type_"]',Nr),jQuery(t).on("click",".frm-collapse-page",Or),jQuery(t).on("click",".frm-collapse-section",Fr),e.on("click",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",Hr),e.on("keydown",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",(function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),Hr.call(this,e))})),jQuery(t).on("show.bs.dropdown hide.bs.dropdown",ze),e.on("click",".frm_toggle_sep_values",yt),e.on("click",".frm_toggle_image_options",ht),e.on("click",".frm_remove_image_option",Et),e.on("click",".frm_choose_image_box",xt),e.on("change",".frm_hide_image_text",Qt),e.on("change",".frm_field_options_image_size",jt),e.on("click",".frm_multiselect_opt",kt),j.on("mousedown","input, textarea, select",At),j.on("click","input[type=radio], input[type=checkbox]",At),j.on("click",".frm_delete_field",Nt),j.on("click",".frm_select_field",Tt),jQuery(document).on("click",".frm_delete_field_group",Ot),jQuery(document).on("click",".frm_clone_field_group",Dt),jQuery(document).on("click","#frm_field_group_controls > span:first-child",Mt),jQuery(document).on("click",".frm-row-layout-option",Yt),jQuery(document).on("click",".frm-merge-fields-into-row .frm-row-layout-option",Xt),jQuery(document).on("click",".frm-custom-field-group-layout",er),jQuery(document).on("click",".frm-merge-fields-into-row .frm-custom-field-group-layout",rr),jQuery(document).on("click",".frm-break-field-group",lr),j.on("click","#frm_field_group_popup .frm_grid_container input",sr),jQuery(document).on("click",".frm-cancel-custom-field-group-layout",dr),jQuery(document).on("click",".frm-save-custom-field-group-layout",fr),j.on("click","ul.frm_sorting",ur),jQuery(document).on("click",".frm-merge-fields-into-row",vr),jQuery(document).on("click",".frm-delete-field-groups",jr),j.on("click",'.frm-field-action-icons [data-toggle="dropdown"]',(function(){this.closest("li.form-field").classList.add("frm-field-settings-open"),jQuery(document).on("click","#frm_builder_page",Oe)})),j.on("mousemove","ul.frm_sorting",De),j.on("show.bs.dropdown",".frm-field-action-icons",He),jQuery(document).on("show.bs.dropdown","#frm_field_group_controls",Pe),e.on("click",".frm_single_option a[data-removeid]",It),e.on("mousedown",".frm_single_option input[type=radio]",Bt),e.on("focusin",".frm_single_option input[type=text]",Ct),e.on("click",".frm_add_opt",_t),e.on("change",".frm_single_option input",Zr),e.on("change",".frm_image_id",Zr),e.on("change",".frm_toggle_mult_sel",pt),e.on("focusin",".frm_classes + .frm-token-proxy-input",Bi),j.on("click",".frm_primary_label",zr),j.on("click",".frm_description",Rr),j.on("click","li.ui-state-default:not(.frm_noallow)",$r),j.on("dblclick","li.ui-state-default",Ur),e.on("change",".frm_tax_form_select",Xr),e.on("change","select.conf_field",ft),e.on("change",".frm_get_field_selection",jn),e.on("click",".frm-show-inline-modal",Bn),e.on("click",".frm-inline-modal .dismiss",qn),jQuery(document).on("change","[data-frmchange]",Tn),document.addEventListener("click",Nn),e.on("change",".frm_include_extras_field",et),e.on("change",'select[name^="field_options[form_select_"]',Mo),jQuery(document).on("submit","#frm_js_build_form",Fi),jQuery(document).on("change","#frm_builder_page input:not(.frm-search-input):not(.frm-custom-grid-size-input), #frm_builder_page select, #frm_builder_page textarea",Mi),nt(),jQuery(document).on("change",".frmjs_prod_data_type_opt",Fo),jQuery(document).on("focus",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Ar),jQuery(document).on("blur",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Br),frmDom.util.documentOn("click",".frm-show-field-settings",$r),frmDom.util.documentOn("change","select.frm_format_dropdown, select.frm_phone_type_dropdown",Wr),e.on("keydown",'.frm_single_option input[name^="field_options["], .frm_single_option input[name^="rows_"]',(function(e){"Enter"===e.key&&function(e){var t=e.closest(".frm_single_option").parentElement.querySelectorAll('.frm_single_option input[name^="field_options[" ], .frm_single_option input[name^="rows_"]'),r=Array.from(t),n=r.indexOf(e);if(!(n<0)){var i=r.slice(n+1).find((function(e){return null!==e.offsetParent}));if(i){i.focus();var o=i.value.length;i.setSelectionRange(o,o)}}}(e.currentTarget)})),!1!==(r=To("#frm-bulk-modal","700px"))&&(jQuery(".frm-insert-preset").on("click",mt),jQuery(w).on("click","a.frm-bulk-edit-link",(function(e){e.preventDefault();var t,n,i,o,a,l="",s=jQuery(this).closest("[data-fid]").data("fid"),d=pn(s),c=Ho(s);if(o=document.getElementById("frm_field_"+s+"_opts")){for(a=o.getElementsByTagName("li"),document.getElementById("bulk-field-id").value=s,t=0;t=a.length-1&&(document.getElementById("frm_bulk_options").value=l);return r.dialog("open"),!1}})),jQuery("#frm-update-bulk-opts").on("click",(function(){var e=document.getElementById("bulk-field-id").value;document.getElementById("bulk-option-type").value||(this.classList.add("frm_loading_button"),frmAdminBuild.updateOpts(e,document.getElementById("frm_bulk_options").value,r),Mi())}))),In(),document.addEventListener("frm_added_field",In),Be(),Po(),xn(),frmDom.util.documentOn("change",".frm_show_password_setting_input",(function(e){var t=e.target.getAttribute("data-fid"),r=document.getElementById("frm_field_id_"+t);r&&r.classList.toggle("frm_disabled_show_password",!e.target.checked)})),document.addEventListener("scroll",Ti,!0),document.addEventListener("change",qi),document.querySelector(".frm_form_builder").addEventListener("mousedown",(function(e){e.shiftKey&&e.preventDefault()})),wp.hooks.addAction("frmShowedFieldSettings","formidableAdmin",(function(e,t){t.querySelectorAll(".frm-collapse-me").forEach(Pr)}),9999)},settingsInit:function(){var e,t,r,n,i=jQuery(document.getElementById("frm_notification_settings"));i.on("click",".frm_email_buttons",oi),i.on("click",".frm_remove_field",ai),i.on("change",".frm_to_row, .frm_from_row",li),i.on("change",".frm_tax_selector",ji),i.on("change","select.frm_single_post_field",mi),i.on("change","select.frm_toggle_post_content",_i),i.on("change","select.frm_dyncontent_opt",pi),i.on("change",".frm_post_type",gi),i.on("click",".frm_add_postmeta_row",vi),i.on("click",".frm_add_posttax_row",hi),i.on("click",".frm_toggle_cf_opts",wi),i.on("click",".frm_duplicate_form_action",Zn),jQuery(".frm_actions_list").on("click",".frm_active_action",ti),jQuery("#frm-show-groups, #frm-hide-groups").on("click",ri),lo(),jQuery("ul.frm_actions_list li").each((function(){si(jQuery(this).children("a").data("actiontype"));var e=jQuery(this).find("i");"none"!==e.css("background-image")&&e.addClass("frm-inverse")})),jQuery(".frm_submit_settings_btn").on("click",xi),Gn(),(e=jQuery(".frm_form_settings")).on("click",".frm_add_form_logic",ui),e.on("click",".frm_already_used",fi),document.addEventListener("click",(function(e){var t=e.target;t.closest(".frm_image_preview_wrapper")&&(t.closest(".frm_choose_image_box")?xt.bind(t)(e):t.closest(".frm_remove_image_option")&&Et.bind(t)(e))})),e.on("mouseup","*:not(.frm-show-box)",Go),jQuery(document.getElementById("no_save")).on("change",(function(){this.checked&&!0!==confirm(a.no_save_warning)&&jQuery(this).attr("checked",!1)})),jQuery('select[name="options[edit_action]"]').on("change",Xn),t=document.getElementById("logged_in"),jQuery(t).on("change",(function(){this.checked?No(".hide_logged_in"):qo(".hide_logged_in")})),r=jQuery(document.getElementById("frm_cookie_expiration")),jQuery(document.getElementById("frm_single_entry_type")).on("change",(function(){"cookie"===this.value?r.fadeIn("slow"):r.fadeOut("slow")}));var o=document.getElementById("single_entry");jQuery(o).on("change",(function(){this.checked?No(".hide_single_entry"):qo(".hide_single_entry"),this.checked&&"cookie"===jQuery(document.getElementById("frm_single_entry_type")).val()?r.fadeIn("slow"):r.fadeOut("slow")})),jQuery(".hide_save_draft").hide();var l=jQuery(document.getElementById("save_draft"));l.on("change",(function(){this.checked?jQuery(".hide_save_draft").fadeIn("slow"):jQuery(".hide_save_draft").fadeOut("slow")})),Pn(l),n=document.getElementById("editable"),jQuery(n).on("change",(function(){this.checked?(jQuery(".hide_editable").fadeIn("slow"),Pn(document.getElementById("edit_action"))):(jQuery(".hide_editable").fadeOut("slow"),jQuery(".edit_action_message_box").fadeOut("slow"))})),jQuery(document).on("change","#protect_files",(function(){this.checked?jQuery(".hide_protect_files").fadeIn("slow"):jQuery(".hide_protect_files").fadeOut("slow")})),jQuery(document).on("frm-multiselect-changed","#protect_files_role",Sn),jQuery(document).on("submit",".frm_form_settings",Hi),jQuery(document).on("change","#form_settings_page input:not(.frm-search-input), #form_settings_page select, #form_settings_page textarea",Mi),jo(),jQuery(document).on("frm-action-loaded",Vi),frmDom.util.documentOn("change",'.frm_on_submit_type input[type="radio"]',(function(e){if(e.target.checked){var t=e.target.closest(".frm_form_action_settings");t.querySelectorAll(".frm_on_submit_dependent_setting:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden")})),t.querySelectorAll(".frm_on_submit_dependent_setting[data-show-if-"+e.target.value+"]").forEach((function(e){e.classList.remove("frm_hidden")})),t.setAttribute("data-on-submit-type",e.target.value)}}))},panelInit:function(){var e,t,r,n;jQuery(".frm_wrap, #postbox-container-1").on("click",".frm_insert_code",Ei),jQuery(document).on("change",".frm_insert_val",(function(){ki(jQuery(this).data("target"),jQuery(this).val()),jQuery(this).val("")})),jQuery(document).on("click change",'[name="frm-id-key-condition"]',Ai),jQuery(document).on("keyup change",".frm-build-logic",Ii),Yn(),jQuery(document).on("frmElementAdded",(function(e,t){Yn(t)})),jQuery(document).on("mousedown",".frm-show-box",Ci),t=document.getElementById("form_settings_page"),r=document.body.classList.contains("post-type-frm_display"),n=document.getElementById("frm_insert_fields_tab"),(null!==t||r||D)&&jQuery(document).on("focusin","form input, form textarea",(function(e){var i,o,a,l;if(e.stopPropagation(),(o=this).parentNode.parentNode.classList.contains("frm_has_shortcodes")&&(Wi(),"use"===(a=$i(o)).tagName?-1===(a=a.firstElementChild).getAttributeNS("http://www.w3.org/1999/xlink","href").indexOf("frm_close_icon")&&Oi(a,"nofocus"):a.classList.contains("frm_close_icon")||Oi(a,"nofocus")),jQuery(this).is(":not(:submit, input[type=button], .frm-search-input, input[type=checkbox])")){if(jQuery(e.target).closest("#frm_adv_info").length)return;if(null!==t||D)i=jQuery("#frm_html_tab"),jQuery(this).closest("#html_settings").length>0?(i.show(),i.siblings().hide(),jQuery("#frm_html_tab a").trigger("click"),function(e){var t,r=e.id;void 0!==r&&-1===r.indexOf("-search-input")&&(jQuery("#frm-adv-info-tab").attr("data-fills",r.trim()),e.classList.contains("field_custom_html")&&(r="field_custom_html"),t=["after_html","before_html","submit_html","field_custom_html"],jQuery.inArray(r,t)>=0&&(jQuery(".frm_code_list li:not(.show_"+r+")").addClass("frm_hidden"),jQuery(".frm_code_list li.show_"+r).removeClass("frm_hidden")))}(this)):((l=jQuery(".frm-category-tabs li"))[0]&&(l[0].style.display=""),n.click(),i.hide(),i.siblings().show());else if(r){var s=new CustomEvent("frm_legacy_views_handle_field_focus");s.frmData={idAttrValue:this.id},document.dispatchEvent(s)}}})),jQuery(".frm_wrap, #postbox-container-1").on("mousedown","#frm_adv_info a, .frm_field_list a",(function(e){e.preventDefault()})),(e=jQuery("#frm_adv_info")).on("click",".subsubsub a.frmids",(function(e){Ui("frmids",e)})),e.on("click",".subsubsub a.frmkeys",(function(e){Ui("frmkeys",e)}))},inboxInit:function(){var e;jQuery(".frm_inbox_dismiss").on("click",(function(e){var t=this.parentNode.parentNode,r=t.getAttribute("data-message"),n=this.getAttribute("href"),i=t.cloneNode(!0),o=document.querySelector(".frm-dismissed-inbox-messages");if("free_templates"!==r||this.classList.contains("frm_inbox_dismiss")){e.preventDefault(),data={action:"frm_inbox_dismiss",key:r,nonce:frmGlobal.nonce};var a="frm_inbox_slide_in"===t.id;a&&(t.classList.remove("s11-fadein"),t.classList.add("s11-fadeout"),t.addEventListener("animationend",(function(){return t.remove()}),{once:!0})),Bo(data,(function(){if(!a)return"#"!==n?(window.location=n,!0):void Co(t,(function(){var e;null!==o&&(i.classList.remove("frm-fade"),null===(e=i.querySelector(".frm-inbox-message-heading"))||void 0===e||e.removeChild(i.querySelector(".frm-inbox-message-heading .frm_inbox_dismiss")),o.append(i)),1===t.parentNode.querySelectorAll(".frm-inbox-message-container").length&&(document.getElementById("frm_empty_inbox").classList.remove("frm_hidden"),t.parentNode.closest(".frm-active").classList.add("frm-empty-inbox"),ho()),t.parentNode.removeChild(t)}))}))}})),!1===(null===(e=document.getElementById("frm_empty_inbox"))||void 0===e?void 0:e.classList.contains("frm_hidden"))&&ho()},solutionInit:function(){jQuery(document).on("submit","#frm-new-template",Qo)},styleInit:function(){var e=jQuery(".frm_image_preview_wrapper");e.on("click",".frm_choose_image_box",xt),e.on("click",".frm_remove_image_option",Et),wp.hooks.doAction("frm_style_editor_init")},customCSSInit:function(){console.warn("Calling frmAdminBuild.customCSSInit is deprecated.")},globalSettingsInit:function(){var e;jQuery(document).on("click","[data-frmuninstall]",Ki),lo(),null!==(e=document.getElementById("licenses_settings"))&&jQuery(e).on("click",".edd_frm_save_license",Ji),jQuery(document).on("click","#frm-new-template button",wo),jQuery("#frm-dismissable-cta .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_lite_settings_upgrade",nonce:frmGlobal.nonce}),jQuery(".settings-lite-cta").remove()}));var t=document.getElementById("frm_re_type");t&&t.addEventListener("change",Eo),document.querySelector(".frm_captchas").addEventListener("change",(function(e){var t,r=null===(t=document.querySelector('.frm_captchas input[checked="checked"]'))||void 0===t?void 0:t.value,n=e.target.value!==r;document.querySelector(".captcha_settings .frm_note_style").classList.toggle("frm_hidden",!n)})),frmDom.util.documentOn("submit",".frm_settings_form",(function(){return E=0}));var r=document.getElementById("manage_styles_settings");r&&r.addEventListener("change",(function(e){var t=e.target;"SELECT"===t.nodeName&&t.dataset.name&&!t.getAttribute("name")&&t.setAttribute("name",t.dataset.name)}));var n=document.getElementById("payments_settings"),i=null==n?void 0:n.querySelectorAll('[name="frm_payment_section"]');i&&i.forEach((function(e){e.addEventListener("change",(function(){if(e.checked){var t=n.querySelector('label[for="'.concat(e.id,'"]'));t&&t.setAttribute("aria-selected","true"),i.forEach((function(t){if(t!==e){var r=n.querySelector('label[for="'.concat(t.id,'"]'));r&&r.setAttribute("aria-selected","false")}}))}}))}))},exportInit:function(){jQuery(".frm_form_importer").on("submit",Yi),jQuery(document.getElementById("frm_export_xml")).on("submit",Zi),jQuery("#frm_export_xml input, #frm_export_xml select").on("change",eo),jQuery('input[name="frm_import_file"]').on("change",to),document.querySelector('select[name="format"]').addEventListener("change",no),jQuery('input[name="frm_export_forms[]"]').on("click",ao),lo(),jQuery(".frm-feature-banner .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_dismiss_migrator",plugin:this.id,nonce:frmGlobal.nonce}),this.parentElement.remove()})),oo(ro()),document.querySelector("#frm-export-select-all").addEventListener("change",(function(e){document.querySelectorAll('[name="frm_export_forms[]"]').forEach((function(t){return t.checked=e.target.checked}))}))},inboxBannerInit:function(){var e=document.getElementById("frm_banner");if(e){var t=e.querySelector(".frm-banner-dismiss");document.addEventListener("click",(function(r){r.target===t&&Bo({action:"frm_inbox_dismiss",key:e.dataset.key,nonce:frmGlobal.nonce},(function(){jQuery(e).fadeOut(400,(function(){e.remove()}))}))}))}},updateOpts:function(e,t,r){var n=pn(e),i=Ho(e)?"frm_bulk_products":"frm_import_options";jQuery.ajax({type:"POST",url:ajaxurl,data:{action:i,field_id:e,opts:t,separate:n,nonce:frmGlobal.nonce},success:function(t){document.getElementById("frm_field_"+e+"_opts").innerHTML=t,wp.hooks.doAction("frm_after_bulk_edit_opts",e),rn(e),void 0!==r&&(r.dialog("close"),document.getElementById("frm-update-bulk-opts").classList.remove("frm_loading_button"))}})},triggerRemoveLogic:function(e,t){jQuery("#frm_logic_"+e+"_"+t+" .frm_remove_tag").trigger("click")},downloadXML:function(e,t,r){var n=ajaxurl+"?action=frm_"+e+"_xml&ids="+t;null!==r&&(n=n+"&is_template="+r),location.href=n},hooks:{applyFilters:function(e){for(var t,r=arguments.length,n=new Array(r>1?r-1:0),i=1;i1?r-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r){var n=k,i=0;"summary"===e&&(i=j.children('li[data-type="break"]').length>0?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:Object.assign(pe(e,0,n,i),{field_options:t}),success:function(t){r(t),setTimeout((function(){Qn(),Ue(t,!0);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:n})}),10)},error:je})}))},confirmLinkClick:F,handleInsertFieldByDraggingResponse:ye,handleAddFieldClickResponse:Ie,syncLayoutClasses:le}}(),jQuery(document).ready((function(){var e;frmAdminBuild.init(),frmDom.bootstrap.setupBootstrapDropdowns((function(e){var t,r,n=e.querySelector(".frm-dropdown-toggle");n&&(n.hasAttribute("role")||n.setAttribute("role","button"),n.hasAttribute("tabindex")||n.setAttribute("tabindex",0)),"UL"===e.tagName&&(r=(r=(r=(r=(r=(r=(t=e).outerHTML).replace("
                    ","")).replaceAll("
                  • ",'
                  • ",""),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file +(()=>{function e(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||t(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r1&&(e="",t=""):0===i.indexOf("frm_postmeta_")&&(jQuery("#frm_postmeta_rows .frm_postmeta_row").length<2&&(e=".frm_add_postmeta_row.button"),jQuery(".frm_toggle_cf_opts").length&&jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().length&&(""!==e&&(e+=","),e+="#"+jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().attr("id")+" .frm_toggle_cf_opts"));var o=document.getElementById(i),a=jQuery(o);return a.fadeOut(300,(function(){var r;a.remove(),Mi(),""!==t&&jQuery(t).hide(),""!==e&&jQuery(e+" a,"+e).removeClass("frm_hidden").fadeIn("slow"),this.closest(".frm_form_action_settings")&&function(e){si(e);var t={type:e};wp.hooks.doAction("frm_after_action_removed",t)}(this.closest(".frm_form_action_settings").querySelector(".frm_action_name").value),null===(r=document.querySelector(".tooltip"))||void 0===r||r.remove()})),void 0!==r&&(r=jQuery(r)).fadeOut(400,(function(){r.remove()})),""!==e&&jQuery(this).closest(".frm_logic_rows").fadeOut("slow"),wp.hooks.doAction("frm_after_remove_this_tag",i,o),!1}}function $(e,t){void 0===t&&(t=this),Ze(t,!1);var r=jQuery(t).closest(".frm_form_action_settings"),n=e.target;if(r.length&&void 0!==n){var i=n.parentElement.className;if("string"==typeof i&&(i.indexOf("frm_email_icons")>-1||i.indexOf("frm_toggle")>-1))return void e.stopPropagation()}var o=r.children(".widget-inside");if(r.length&&o.find("p, div, table").length<1){var a=r.find('input[name$="[ID]"]').val(),l=r.find('input[name$="[post_excerpt]"]').val();l&&(o.html(''),r.find(".spinner").fadeIn("slow"),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_form_action_fill",action_id:a,action_type:l,nonce:frmGlobal.nonce},success:function(e){o.html(e),lo(),Yn("#"+r.attr("id")),jo(o),jQuery(t).trigger("frm-action-loaded"),wp.hooks.doAction("frm_filled_form_action",o)}}))}jQuery(t).closest(".frm_field_box").siblings().find(".widget-inside").slideUp("fast"),void 0!==t.className&&-1!==t.className.indexOf("widget-action")||jQuery(t).closest(".start_divider").length<1||((o=jQuery(t).closest("div.widget").children(".widget-inside")).is(":hidden")?o.slideDown("fast"):o.slideUp("fast"))}function W(){var e=this.getAttribute("href");if(void 0===e)return!1;var t=e.replace("#","."),r=jQuery(this);r.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),r.closest("div").children(".tabs-panel").not(e).not(t).hide();var n=document.getElementById(e.replace("#",""));return n&&(n.style.display="block"),"frm_insert_fields_tab"!==this.id||this.closest("#frm_adv_info")||Ke(),!1}function U(e,t){var r=(e=jQuery(e)).attr("href");if(void 0!==r){var n,i,o=r.replace("#",".");if(e.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),e.closest("div").find(".tabs-panel").length)e.closest("div").children(".tabs-panel").not(r).not(o).hide();else if(null!==document.getElementById("form_global_settings")){var a=e.data("frmajax");e.closest(".frm_wrap").find(".tabs-panel, .hide_with_tabs").hide(),void 0!==a&&"1"==a&&(n=r.replace("#",""),(i=jQuery(".frm_"+n+"_ajax")).length&&jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_settings_tab",tab:n.replace("_settings",""),nonce:frmGlobal.nonce},success:function(e){i.replaceWith(e)}}))}else jQuery("#frm-categorydiv .tabs-panel, .hide_with_tabs").hide();jQuery(r).show(),jQuery(o).show(),Wi(),"auto"!==t&&(jQuery(".frm_updated_message").hide(),jQuery(".frm_warning_style").hide()),jQuery(e).closest("#frm_adv_info").length||(jQuery(".frm_form_settings").length?jQuery(".frm_form_settings").attr("action","?page=formidable&frm_action=settings&id="+jQuery('.frm_form_settings input[name="id"]').val()+"&t="+r.replace("#","")):jQuery(".frm_settings_form").attr("action","?page=formidable-settings&t="+r.replace("#","")))}}function V(e){var t,r;document.querySelectorAll(e).forEach((function(e){K(e),Array.from(e.children).forEach((function(e){return X(e,".frm-move")}));var t=jQuery(e).children('[data-type="divider"]').children(".divider_section_only");t.length&&K(t)})),t=jQuery("#frm_builder_page"),r={items:".frm_sortable_field_opts li",axis:"y",opacity:.65,forcePlaceholderSize:!1,handle:".frm-drag",helper:function(e,t){return x=t.clone().insertAfter(t),t.clone()},stop:function(e,t){x&&x.remove(),rn(t.item.attr("id").replace("frm_delete_field_","").replace("-"+t.item.data("optkey")+"_container","")),Mi()}},jQuery(t).sortable(r)}function K(e){jQuery(e).droppable({accept:".frmbutton, li.frm_field_box",deactivate:ne,over:J,out:Y,tolerance:"pointer"})}function J(e,t){var r=function(e){return e.classList.contains("divider_section_only")&&(e=jQuery(e).nextAll(".start_divider.frm_sorting").get(0)),e}(e.target);if(!Qe(t.draggable[0],r,e))return r.classList.remove("frm-over-droppable"),void jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable");document.querySelectorAll(".frm-over-droppable").forEach((function(e){return e.classList.remove("frm-over-droppable")})),r.classList.add("frm-over-droppable"),jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable")}function Y(e){e.target.classList.remove("frm-over-droppable")}function X(e,t){var r={helper:Z,revert:"invalid",delay:10,start:ee,stop:te,drag:re,cursor:"grabbing",refreshPositions:!0,cursorAt:{top:0,left:90}};"string"==typeof t&&(r.handle=t),jQuery(e).draggable(r)}function Z(e){var t,r=e.delegateTarget;if(Ee(r)){var n=document.getElementById("frm-insert-fields").querySelector(".frm_ttext").cloneNode(!0);return n.querySelector("use").setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_field_group_layout_icon"),n.querySelector("span").textContent=B("Field Group","formidable"),n.classList.add("frm_field_box"),n.classList.add("ui-sortable-helper"),n}if(r.classList.contains("frmbutton"))return(t=r.cloneNode(!0)).classList.add("ui-sortable-helper"),r.classList.add("frm-new-field"),t;if(r.hasAttribute("data-ftype")){var i=r.getAttribute("data-ftype");if((t=(t=document.getElementById("frm-insert-fields").querySelector(".frm_t"+i)).cloneNode(!0)).classList.add("form-field"),t.classList.add("ui-sortable-helper"),t)return t.cloneNode(!0)}return d({className:"frmbutton"})}function ee(e,t){q.dragging=!0;var r,n=h;n.classList.add("frm-dragging-field"),document.body.classList.add("frm-dragging"),t.helper.addClass("frm-sortable-helper"),t.helper.initialOffset=n.scrollTop,e.target.classList.add("frm-drag-fade"),gr(),(r=document.querySelectorAll("ul.start_divider")).length&&r.forEach((function(e){[].slice.call(e.children).forEach((function(e){(0===e.children.length||1===e.children.length&&"ul"===e.firstElementChild.nodeName.toLowerCase()&&0===e.firstElementChild.children.length)&&e.remove()}))})),Me(),Te(),R()}function te(){h.classList.remove("frm-dragging-field"),document.body.classList.remove("frm-dragging");var e=document.querySelector(".frm-drag-fade");e&&e.classList.remove("frm-drag-fade")}function re(e,t){!function(e){v.scrollTop((function(t,r){var n=e.clientY,i=h.offsetHeight,o=e.clientY-h.offsetTop,a=o-i/2;return o>i-50&&n>5?r+.1*a:o<70&&n<130?r-Math.abs(.1*a):r}))}(e);var r=e.target,n=function(){for(var e=document.getElementById("frm-show-fields");e.querySelector(".frm-over-droppable");)e=e.querySelector(".frm-over-droppable");return"frm-show-fields"!==e.id||e.classList.contains("frm-over-droppable")||(e=!1),e}(),i=document.getElementById("frm_drag_placeholder");if(Qe(r,n,e)){i||(i=s("li",{id:"frm_drag_placeholder",className:"sortable-placeholder"}));var o,a=t.helper.get(0);if((a.classList.contains("form-field")||a.classList.contains("frm_field_box"))&&(a.style.transform="translateY("+(o=t.helper,h.scrollTop-o.initialOffset+"px)")),"frm-show-fields"===n.id||n.classList.contains("start_divider"))return i.style.left=0,void function(e){var t,r=e.y,n=e.placeholder,i=jQuery(e.droppable);if($children=i.children().not(".edit_field_type_end_divider"),0===$children.length)i.prepend(n),t=0;else{var o=ie(i,r);if(o===$children.length){var a=jQuery($children.get(o-1));t=a.offset().top+a.outerHeight(),i.append(n);var l=i.children(".edit_field_type_end_divider");l.length&&i.append(l)}else t=jQuery($children.get(o)).offset().top,jQuery($children.get(o)).before(n)}t-=i.offset().top,n.style.top=t+"px"}({droppable:n,y:e.clientY,placeholder:i});i.style.top="",function(e){var t,r=e.x,n=e.placeholder,i=jQuery(e.droppable),o=ae(i);if(o.length){var a=function(e,t){var r,n,i,o,a=ae(e);for(o=0,r=a.length-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().left)){o=r,t>i+jQuery(n).outerWidth()/2&&(o=r+1);break}return o}(i,r);if(a===o.length){var l=jQuery(o.get(a-1));t=l.offset().left+l.outerWidth(),i.append(n)}else t=jQuery(o.get(a)).offset().left,jQuery(o.get(a)).before(n),t-=0===a?4:8;t-=i.offset().left,n.style.left=t+"px"}}({droppable:n,x:e.clientX,placeholder:i})}else i&&i.remove()}function ne(e,t){if(q.dragging){q.dragging=!1;var r=t.draggable[0],n=document.getElementById("frm_drag_placeholder");if(!n)return t.helper.remove(),void y();!function(e){if(e.previousElementSibling&&e.previousElementSibling.classList.contains("frm-is-collapsed")){var t=jQuery(e).prevUntil('[data-type="break"]');if(t.length){var r=t.find(".frm-collapse-page").get(0);r&&r.click()}}}(n);var i=t.helper.parent(),o=t.helper.get(0).closest("ul.start_divider"),a=n.closest("ul.start_divider");r.classList.contains("frm-new-field")?function(e){if(ge(e))wp.hooks.doAction("frm_stopped_inserting_by_dragging",e);else{var t=document.getElementById("frm_drag_placeholder"),r=e.replace("|","-")+"_"+we(),n=s("li",{id:r,className:"frm-wait frmbutton_loadingnow"}),i=jQuery(n),o=fe(jQuery(t)),a=ue(o),l=me(o);t.parentNode.insertBefore(n,t),t.remove(),le(i);var d=0;"summary"===e&&(d=jQuery(".frmbutton_loadingnow#"+r).prevAll('li[data-type="break"]').length?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:pe(e,l,a,d),success:function(t){ye(t,i);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:a})},error:je})}}(r.id):(function(e,t){t.parentNode.insertBefore(e,t)}(r,n),function(e){if("UL"===e.nodeName&&!e.classList.contains("start_divider")&&"frm-show-fields"!==e.id){var t=e.closest("li");t&&!t.classList.contains("ui-draggable")&&X(t,".frm-move")}}(n.parentElement));var l=o?parseInt(o.closest(".edit_field_type_divider").getAttribute("data-fid")):0,d=a?parseInt(a.closest(".edit_field_type_divider").getAttribute("data-fid")):0;n.remove(),t.helper.remove();var c=i.length?ae(i):[];!function(e,t){var r;e.length&&(t.length?le(t.first()):(r=e.get(0).closest("li.frm_field_box"))&&!r.classList.contains("edit_field_type_divider")&&r.remove())}(i,c),function(e,t){0===t.length&&1===ae(jQuery(e.parentNode)).length||le(jQuery(e))}(r,c),l!==d&&_e(jQuery(r),o),y()}}function ie(e,t){var r,n,i,o,a=e.children().not(".edit_field_type_end_divider"),l=a.length;if(!document.querySelector(".frm-has-fields .frm_no_fields"))return 0;for(o=0,r=l-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().top)){o=r,t>i+jQuery(n).outerHeight()/2&&(o=r+1);break}return o}function oe(){document.querySelectorAll("ul#frm-show-fields, ul.start_divider").forEach((function(e){e.childNodes.forEach((function(e){void 0!==e.classList&&(e.classList.contains("edit_field_type_end_divider")||void 0!==e.classList&&e.classList.contains("form-field")&&We(e))}))})),xn(),document.querySelectorAll(".edit_field_type_end_divider").forEach((function(e){return e.parentNode.appendChild(e)})),document.querySelectorAll("li.form_field_box:not(.form-field)").forEach((function(e){return!e.children.length&&e.remove()})),Qn();var e=new Event("frm_sync_after_drag_and_drop",{bubbles:!1});document.dispatchEvent(e)}function ae(e){var t=jQuery(),r=e.get(0);return r.children?(Array.from(r.children).forEach((function(e){if("none"!==e.style.display){var r=e.classList;!r.contains("form-field")||r.contains("edit_field_type_end_divider")||r.contains("frm-sortable-helper")||(t=t.add(e))}})),t):t}function le(e,t){var r,n,i,o;void 0===t&&(t="even"),r=e.parent().children("li.form-field, li.frmbutton_loadingnow").not(".edit_field_type_end_divider"),n=r.length,i=["frm_full","frm_half","frm_third","frm_fourth","frm_sixth","frm_two_thirds","frm_three_fourths","frm1","frm2","frm3","frm4","frm5","frm6","frm7","frm8","frm9","frm10","frm11","frm12"],"even"===t&&5!==n?r.each(ce(i,Ut(n))):"clear"===t?r.each(ce(i,"")):(o=-1!==["left","right","middle","even"].indexOf(t)?function(e){return Wt(n,t,e)}:function(e){return ar(t[e])},r.each(ce(i,o))),se(e.parent(),r.length)}function se(e,t){var r,n;if(void 0!==e.offset()){if(r=t>=2,null===(n=document.getElementById("frm_field_group_controls"))){if(!r)return;(n=d()).id="frm_field_group_controls",n.setAttribute("role","group"),n.setAttribute("tabindex",0),function(e){var t,r;(t=document.createElement("span")).innerHTML='';var n=B("Set Row Layout","formidable");de(t,n),zt(t,n),(r=document.createElement("span")).innerHTML='',r.classList.add("frm-move");var i=B("Move Field Group","formidable");de(r,i),zt(r,i),e.innerHTML="",e.appendChild(t),e.appendChild(r),e.appendChild(function(){var e=c({className:"dropdown"}),t=f({className:"frm_bstooltip frm-hover-icon frm-dropdown-toggle dropdown-toggle",children:[c({child:u({href:"#frm_thick_more_vert_icon"})}),c({className:"screen-reader-text",text:B("Toggle More Options Dropdown","formidable")})]});frmDom.setAttributes(t,{title:B("More Options","formidable"),"data-toggle":"dropdown","data-container":"body"}),zt(t,B("More Options","formidable")),e.appendChild(t);var r=d({className:"frm-dropdown-menu dropdown-menu dropdown-menu-right"});return r.setAttribute("role","menu"),e.appendChild(r),e}())}(n),D.appendChild(n)}e.append(n),n.style.display=r?"block":"none"}}function de(e,t){e.setAttribute("data-toggle","tooltip"),e.setAttribute("data-container","body"),e.setAttribute("title",t),e.addEventListener("mouseover",(function(){null===e.getAttribute("data-original-title")&&jQuery(e).tooltip()}))}function ce(e,t){return function(r){var n,i,o,a,l,s,d;for(n="function"==typeof t?t(r):t,i=e.length,l=!1,o=0;ot.childElementCount-1:s<=jQuery(t.querySelector(".edit_field_type_submit").closest("#frm-show-fields > li")).index()}if(a)return!(t.classList.contains("start_divider")||!xe(t.parentElement)&&(!xe(t.parentElement.nextElementSibling)||e.parentElement.querySelector("li.frm_field_box:not(.edit_field_type_submit)")));if(t.classList.contains("start_divider")&&(e.classList.contains("edit_field_type_gdpr")||"gdpr"===e.id)&&t.closest(".repeat_section"))return!1;if(!t.classList.contains("start_divider")){if(n=ae(jQuery(t)),i=jQuery(e),!(n.length<6)&&(n.length>6||(o=i.attr("data-fid"),1!==jQuery(n).filter('[data-fid="'+o+'"]').length)))return!1;if("divider"===e.id&&t.closest(".start_divider"))return!1}return e.classList.contains("frm-new-field")?function(e,t){var r=e.classList,n=r.contains("frm_tbreak"),i=r.contains("frm_thidden"),o=r.contains("frm_tdivider"),a=r.contains("frm_tform"),l=r.contains("frm_tuser_id");return"frm-show-fields"===t.id||t.classList.contains("start_divider")?!(n||i||o||a)||(!(t.classList.contains("start_divider")||null!==t.closest(".start_divider"))||!a&&!o):!(ke(t)||i||n||l)}(e,t):function(e,t){if(Ee(e))return function(e,t){return!(!t.classList.contains("start_divider")||null!==e.querySelector(".start_divider"))}(e,t);if(e.classList.contains("edit_field_type_break"))return!1;if(t.classList.contains("start_divider"))return function(e){return!e.classList.contains("edit_field_type_form")&&!e.querySelector(".edit_field_type_form")&&!(e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"))}(e);var r=e.classList.contains("edit_field_type_hidden"),n=e.classList.contains("edit_field_type_user_id");return!r&&!n&&function(e,t){if(ke(t))return!1;if(jQuery(e).children("ul.frm_sorting").not(".start_divider").length>0)return!1;var r=e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"),n=e.classList.contains("edit_field_type_form");return null===t.closest(".start_divider")||!r&&!n}(e,t)}(e,t)}function xe(e){return e&&e.matches("#frm-show-fields > li:last-child")}function Ee(e){return e.classList.contains("frm_field_box")&&!e.classList.contains("form-field")}function ke(e){return null!==e.querySelector(".edit_field_type_break, .edit_field_type_hidden, .edit_field_type_user_id")}function Le(e){var t=document.getElementById(e),r=jQuery(t),n=[],i=function(e){var t=e.querySelector(".frm_hidden_fdata");e.classList.add("frm_load_now"),null!==t&&n.push(t.innerHTML)},o=t;i(o);for(var a=Se(o);a&&n.length<15;)i(a),o=a,a=Se(a);jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_load_field",field:n,form_id:k,nonce:frmGlobal.nonce},success:function(e){return function(e,t,r){var n,i;if(0===(e=e.replace(/^\s+|\s+$/g,"")).indexOf("{")){for(n in e=JSON.parse(e))jQuery("#frm_field_id_"+n).replaceWith(e[n]),V("#frm_field_id_"+n+".edit_field_type_divider ul.frm_sorting"),X(document.getElementById("frm_field_id_"+n));((i=t.nextAll(".frm_field_loading:not(.frm_load_now)")).length||(i=jQuery(document.getElementById("frm-show-fields")).find(".frm_field_loading:not(.frm_load_now)")).length)&&Le(i.attr("id")),lo(),Tr(),Be();var o=new Event("frm_ajax_loaded_field",{bubbles:!1});o.frmFields=r.map((function(e){return JSON.parse(e)})),document.dispatchEvent(o)}else jQuery(".frm_load_now").removeClass(".frm_load_now").html("Error")}(e,r,n)}})}function Se(e){var t;return e.nextElementSibling?e.nextElementSibling:null===(t=e.parentNode)||void 0===t||null===(t=t.closest(".frm_field_box"))||void 0===t||null===(t=t.nextElementSibling)||void 0===t?void 0:t.querySelector(".form-field")}function Ae(){var e=jQuery(this);if(e.hasClass("disabled"))return!1;var t=e.closest(".frmbutton").attr("id");if(!ge(t)){var r=0;"summary"===t&&(r=j.children('li[data-type="break"]').length>0?1:0);var n=k;return jQuery.ajax({type:"POST",url:ajaxurl,data:pe(t,0,n,r),success:function(e){Ie(e);var r=he(e);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:e,fieldId:r,fieldType:t,form_id:n})},error:je}),!1}}function Ie(e){document.getElementById("frm_form_editor_container").classList.add("frm-has-fields");var t=$e(e),r=j[0].querySelector(".edit_field_type_submit");r?jQuery(r.closest(".frm_field_box:not(.form-field)")).before(t):j.append(t),Ue(e,!0),t.each((function(){K(this.querySelector("ul.frm_sorting")),X(this.querySelector(".form-field"),".frm-move")}))}function Be(){var e=!0,t=document.querySelectorAll(".frmjs_prod_field_opt_cont");j.find("li.edit_field_type_product").length>1&&(e=!1);for(var r=0;r',i.appendChild(document.createTextNode(" ")),i.appendChild(o),n.appendChild(i),e.appendChild(n)}))}(t,!0===e),(r=jQuery(t)).offset().left>jQuery(window).width()-r.outerWidth()&&(t.style.left=-r.outerWidth()+"px");var n=t.firstElementChild.querySelector("a");n&&n.focus()}}),0)}function Pe(){He(!0)}function ze(e){var t=e.target.closest(".frm-section-collapsed");t&&("show"===e.type?t.style.zIndex=3:t.style.zIndex=1)}function Re(e){var t={class:"frm_delete",icon:"frm_delete_icon"};return t.label=B(e?"Delete Group":"Delete","formidable"),t}function Ge(e){var t={class:"frm_clone",icon:"frm_clone_icon"};return t.label=B(e?"Duplicate Group":"Duplicate","formidable"),t}function $e(e){var t=d();"string"==typeof e?t.innerHTML=e:t.appendChild(e);var r=jQuery();return Array.from(t.children).forEach((function(e){r=r.add(jQuery("
                  • ").addClass("frm_field_box").html(jQuery("
                      ").addClass("frm_grid_container frm_sorting").append(e)))})),r}function We(e){var t=s("ul",{className:"frm_grid_container frm_sorting"}),r=s("li",{className:"frm_field_box",child:t});e.replaceWith(r),t.appendChild(e),K(t),X(r,".frm-move")}function Ue(e,t){var r,n,i=/id="(\S+)"/.exec(e),o=document.getElementById(i[1]),a="#"+i[1]+".edit_field_type_divider ul.frm_sorting.start_divider",l=jQuery(a),s=o.getAttribute("data-type");r=e,(n=d()).innerHTML=r,n.querySelectorAll(".form-field").forEach(Ve);var c,f,u=!1;if(Mi(),V(a),"quantity"===s&&function(e){var t=e.getAttribute("data-fid"),r=document.getElementById("field_options[product_field_"+t+"]");null!==r&&(rt(r),ii(document.getElementById("frm-single-settings-"+t)))}(o),"product"!==s&&"quantity"!==s||Be(),l.length)l.parent(".frm_field_box").children(".frm_no_section_fields").addClass("frm_block");else{var m=jQuery(o).closest("ul.frm_sorting.start_divider");m.length&&(En(m),u=!0)}if(-1!==e.indexOf("frm-collapse-page")&&Tr(),f="frm-newly-added",(c=o).classList?c.classList.add(f):c.className+=" "+f,setTimeout((function(){o.classList.remove("frm-newly-added")}),1e3),t){var _=o.getBoundingClientRect(),p=document.getElementById("post-body-content");_.top>=0&&_.left>=0&&_.right<=(window.innerWidth||document.documentElement.clientWidth)&&_.bottom<=(window.innerHeight||document.documentElement.clientHeight)||p.scroll({top:p.scrollHeight,left:0,behavior:"smooth"}),!1===u&&En(l)}Je(),lo(),document.getElementById("frm-show-fields").classList.remove("frm-over-droppable");var g=new Event("frm_added_field",{bubbles:!1});g.frmField=o,g.frmSection=a,g.frmType=s,g.frmToggles=u,document.dispatchEvent(g)}function Ve(e){if(e.dataset.fid){var t=document.getElementById("draft_fields");t&&(""===t.value?t.value=e.dataset.fid:t.value.split(",").includes(e.dataset.fid)||(t.value+=","+e.dataset.fid))}}function Ke(e){jQuery("#new_fields .frm-single-settings").addClass("frm_hidden"),jQuery("#frm-options-panel > .frm-single-settings").removeClass("frm_hidden"),Je(e)}function Je(e){jQuery("li.ui-state-default.selected").removeClass("selected"),jQuery(".frm-show-field-settings.selected").removeClass("selected"),e||gr()}function Ye(){var e=this.value,t=function(e){var t,r=[],n=e.split(""),i=n.length,o=["{","[","("],l={"}":"{",")":"(","]":"["},s=[];for(t=0;t0||s.length>0?a.unmatched_parens+"\n\n":""}(e);t+=function(e,t){var r=function(e,t){var r="";return function(e){return jQuery(e).siblings('label[for^="calc_type"]').children("input").prop("checked")}(t)||/\[(date|time|email|ip)\]/.test(e)&&(r=a.text_shortcodes+"\n\n"),r}(e,t);return r+=function(e){var t="";return/\[id\]|\[key\]|\[if\s\w+\]|\[foreach\s\w+\]|\[created-at(\s*)?/g.test(e)&&(t+=a.view_shortcodes+"\n\n"),t}(e)}(e,this),""!==t&&H(e+"\n\n"+t)}function Xe(e,t){for(var r,n,i,o=!1,a=0;a"+l[t].fieldName+"")):(r=r?" checked":"",i.push('"));e.innerHTML=i.join("")}function nt(){for(var e=document.querySelectorAll(".frmjs_prod_field_opt"),t=0;t'):(n.innerHTML=mn(r),"TEXTAREA"===n.nodeName&&n.classList.contains("wp-editor-area")&&jQuery(n).trigger("change"),n.classList.contains("frm_primary_label")&&"break"===n.nextElementSibling.getAttribute("data-ftype")&&(n.nextElementSibling.querySelector(".frm_button_submit").textContent=r)))}function at(e){var t=parseFloat(e.getAttribute("max")),r=parseFloat(e.getAttribute("min"));return(t-r)/2+r}function lt(){var e,t=this.getAttribute("data-fid"),r="";["field_options_max_","frm_format_"].forEach((function(e){var n=document.getElementById(e+t);n&&(r+=n.value)})),"text"===(e=document.getElementsByName("field_options[type_"+t+"]")[0]).options[e.selectedIndex].value&&dt(""!==r,".frm_invalid_msg"+t)}function st(){var e=this.id.replace("frm_","").replace("req_field_",""),t=this.checked,r=jQuery("#field_label_"+e+" .frm_required");if(dt(t,".frm_required_details"+e),t){var n=jQuery('input[name="field_options[required_indicator_'+e+']"]');""===n.val()&&n.val("*"),r.removeClass("frm_hidden")}else r.addClass("frm_hidden")}function dt(e,t){if($msg=jQuery(t),e)$msg.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast");else{var r=$msg.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not("+t+"):visible").length;r.css("display",""),0===n&&$msg.closest(".frm_validation_msg").fadeOut("fast")}}function ct(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(".frm_unique_details"+e);if(this.checked)t.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast"),$unqDetail=jQuery(".frm_unique_details"+e+" input"),""===$unqDetail.val()&&$unqDetail.val(a.default_unique);else{var r=t.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not(.frm_unique_details"+e+"):visible").length;r.css("display",""),0===n&&t.closest(".frm_validation_msg").fadeOut("fast")}}function ft(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(this).val(),r=jQuery(document.getElementById("frm_field_id_"+e));if(dt(""!==t,".frm_conf_details"+e),""!==t){var n=jQuery(".frm_validation_box .frm_conf_details"+e+" input");""===n.val()&&n.val(a.default_conf),function(e){var t=document.getElementsByName("field_options[type_"+e+"]")[0].value;ut(document.getElementById("field_description_"+e),"field_options[description_"+e+"]",a["enter_"+t]),ut(document.getElementById("conf_field_description_"+e),"field_options[conf_desc_"+e+"]",a["confirm_"+t])}(e),"inline"===t?r.removeClass("frm_conf_below").addClass("frm_conf_inline"):"below"===t&&r.removeClass("frm_conf_inline").addClass("frm_conf_below"),jQuery(".frm-conf-box-"+e).removeClass("frm_hidden")}else jQuery(".frm-conf-box-"+e).addClass("frm_hidden"),setTimeout((function(){r.removeClass("frm_conf_inline frm_conf_below")}),200)}function ut(e,t,r){e.innerHTML===a.desc&&(e.innerHTML=r,document.getElementsByName(t)[0].value=r)}function mt(e){var t=JSON.parse(this.getAttribute("data-opts"));return e.preventDefault(),document.getElementById("frm_bulk_options").value=t.join("\n"),!1}function _t(){var e,t=jQuery(this).closest(".frm-single-settings").data("fid"),r=jQuery("#frm_field_"+t+"_opts .frm_option_template").prop("outerHTML"),n=jQuery(this).data("opttype"),i=0,o=function(e){for(var t=0,r=0,n=jQuery("#frm_field_"+e+"_opts li"),i=0;ti||"000"===i)&&(i=r)}return i}(t);if("000"!==o&&(i=o+1),"other"===n){document.getElementById("other_input_"+t).value=1;var a=jQuery(this).data("ftype");"radio"!==a&&"select"!==a||jQuery(this).fadeOut("slow");var l={action:"frm_add_field_option",field_id:t,opt_key:i,opt_type:n,nonce:frmGlobal.nonce};jQuery.post(ajaxurl,l,(function(e){jQuery(document.getElementById("frm_field_"+t+"_opts")).append(e),rn(t)}))}else r=(r=(r=(r=(r=r.replace(new RegExp('optkey="000"',"g"),'optkey="'+i+'"')).replace(new RegExp("-000_","g"),"-"+i+"_")).replace(new RegExp('-000"',"g"),"-"+i+'"')).replace(new RegExp("\\[000\\]","g"),"["+i+"]")).replace("frm_hidden frm_option_template",""),zo(t,r={newOption:r}),this.closest(".frm_single_option").after(r.newOption),rn(t);null===(e=this.closest(".frm_sortable_field_opts"))||void 0===e||null===(e=e.querySelectorAll(".frm_remove_tag.frm_disabled"))||void 0===e||e.forEach((function(e){return e.classList.remove("frm_disabled")})),Mi()}function pt(){gt(jQuery(this).closest(".frm-single-settings").data("fid"),this.value)}function gt(e,t){var r=jQuery(".frm_multiple_cont_"+e);"select"===t?r.fadeIn("fast"):r.fadeOut("fast")}function yt(){var e=jQuery(this).closest(".frm-single-settings").data("fid");Oo(jQuery(".field_"+e+"_option_key")),jQuery(".field_"+e+"_option").toggleClass("frm_with_key")}function ht(){var e,t,r=jQuery(this).closest(".frm-single-settings"),n=r.data("fid"),i=document.getElementById("frm_field_id_"+n);wt(jQuery(this)),Oo(jQuery(".field_"+n+"_image_id")),Oo(jQuery(".frm_toggle_image_options_"+n)),Oo(jQuery(".frm_image_size_"+n)),Oo(jQuery(".frm_alignment_"+n)),Oo(jQuery(".frm-add-other#frm_add_field_"+n)),(e=gn(n))?(bt(n,"inline"),vt(i),t=tn(n),i.classList.add("frm_image_options"),i.classList.add("frm_image_size_"+t),r.find(".frm-bulk-edit-link").hide()):(i.classList.remove("frm_image_options"),vt(i),bt(n,"block"),r.find(".frm-bulk-edit-link").show()),wp.hooks.doAction("frm_image_options_toggled",r[0],e)}function vt(e){e.classList.remove("frm_image_size_","frm_image_size_small","frm_image_size_medium","frm_image_size_large","frm_image_size_xlarge")}function bt(e,t){jQuery("#field_options_align_"+e).val(t).trigger("change")}function jt(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);Qt(),gn(e)&&(vt(t),t.classList.add("frm_image_options"),t.classList.add("frm_image_size_"+tn(e)))}function wt(e){var t=e.closest(".frm-single-settings").data("fid");jQuery(".field_"+t+"_option").trigger("change")}function Qt(){wt(jQuery(this))}function xt(e){var t=e.target.closest(".frm_image_preview_wrapper");e.preventDefault(),wp.media.model.settings.post.id=0;var r=wp.media.frames.file_frame=wp.media({multiple:!1,library:{type:["image"]}});r.on("select",(function(){var e=r.state().get("selection").first().toJSON(),n=t.querySelector("img");n.setAttribute("src",e.url),n.classList.remove("frm_hidden"),n.removeAttribute("srcset"),t.querySelector(".frm_image_preview_frame").style.display="block",t.querySelector(".frm_image_preview_title").textContent=e.filename,t.querySelector(".frm_choose_image_box").style.display="none";var i=jQuery(t);i.siblings('input[name*="[label]"]').data("frmimgurl",e.url),i.find("input.frm_image_id").val(e.id).trigger("change"),wp.media.model.settings.post.id=0})),r.open()}function Et(e){var t=jQuery(this).closest(".frm_image_preview_wrapper");e.preventDefault(),e.stopPropagation(),t.find("img").attr("src",""),t.find(".frm_image_preview_frame").hide(),t.find(".frm_choose_image_box").show(),t.find("input.frm_image_id").val(0).trigger("change")}function kt(){var e=jQuery(this).closest("li").find(".frm_form_fields select");this.checked?e.attr("multiple","multiple"):e.removeAttr("multiple")}function Lt(){var e=document.getElementById("dropform-search-input");null!==e&&setTimeout((function(){e.focus()}),100)}function St(e){var t=e.target,r=t.closest(".frm_warning_style");jQuery(r).fadeOut(400,(function(){return r.remove()}));var n=t.dataset.action,i=new FormData;g(n,i)}function At(e){e.preventDefault()}function It(){var e,t=this.parentNode,r=t.parentNode,n=r.querySelectorAll("li:not(.frm_hidden)");2===n.length&&(null===(e=Array.from(n).find((function(e){return e!==t})).querySelector(".frm_remove_tag"))||void 0===e||e.classList.add("frm_disabled"));var i,o=this.getAttribute("data-fid");jQuery(t).fadeOut("fast",(function(){wp.hooks.doAction("frm_before_delete_field_option",this),jQuery(t).remove(),jQuery(r).find(".frm_other_option").length<1&&(null!==(i=document.getElementById("other_input_"+o))&&(i.value=0),jQuery("#other_button_"+o).fadeIn("fast"))})),Mi()}function Bt(){var e,t,r,n;(e=jQuery(this)).is(":checked")&&(t=function(){setTimeout((function(){e.prop("checked",!1)}),0)},r=function(){e.off("mouseup",n)},n=function(){t(),r()},e.on("mouseup",n),e.one("mouseout",r))}function Ct(){this.value===a.new_option&&(this.setAttribute("data-value-on-focus",this.value),this.value="")}function qt(e){return C(B("Are you sure you want to delete these %1$s selected field(s)?","formidable"),e)}function Nt(){var e=a.conf_delete,t=this.parentNode.parentNode.parentNode.parentNode.parentNode,r=t.parentNode,n=jQuery(this).closest("li.form-field"),i=n.data("fid");if("divider"===n.data("ftype")){var o=document.querySelectorAll(".frm-field-group-hover-target .start_divider .frm_field_box"),l=0;o.forEach((function(e){var t=e.querySelectorAll("li.form-field");t&&(l+=t.length)})),l&&(e=qt(++l))}return r.classList.contains("frm-section-collapsed")||r.classList.contains("frm-page-collapsed")||("divider_section_only"===t.className&&(e=a.conf_delete_sec),this.setAttribute("data-frmverify",e),this.setAttribute("data-frmverify-btn","frm-button-red"),this.setAttribute("data-deletefield",i),Te(),F(this)),!1}function Tt(){this.closest("li.form-field").click()}function Ot(){var e,t;null!==(e=document.querySelector(".frm-field-group-hover-target"))&&(e.classList.add("frm-selected-field-group"),(t=document.createElement("div")).classList.add("frm-delete-field-groups","frm_hidden"),document.body.appendChild(t),t.click())}function Dt(){var e=document.querySelector(".frm-field-group-hover-target");if(null!==e){var t="frm_field_group_"+we(),r=document.createTextNode("");We(r);var n=jQuery(r).closest("li").get(0);n.classList.add("frm_hidden");var i=n.querySelector("ul");i.id=t,jQuery(e.closest("li.frm_field_box")).after(n);var o=ae(jQuery(e)),a=[],l=[],s=o.length,d={},c=0;jQuery(n).on("frm_added_duplicated_field_to_row",(function(e,t){if(d[jQuery(t.duplicatedFieldHtml).attr("data-fid")]=t.originalFieldId,!(s>++c)){var r=jQuery(i),o=ae(r);l.forEach((function(e){e.remove()}));for(var f=0;f0&&ir(Ut(t)))&&l>=12&&(l=Math.floor(12/t)),s=0;s',""),t);e.prepend(r),document.getElementById("frm-field-group-message-dismiss").addEventListener("click",(function(){mr(document.getElementById("frm-field-group-message"))}))}}(),"ul"===e.originalEvent.target.nodeName.toLowerCase()){var t=document.querySelector(".frm-field-group-hover-target");if(t){var r=e.ctrlKey||e.metaKey,n=e.shiftKey,i=t.classList.contains("frm-selected-field-group"),o=function(){var e=jQuery(".frm-selected-field-group");if(e.length)return e;var t=_r();if(t){var r=t.closest("ul");if(r&&1===ae(jQuery(r)).length)return r.classList.add("frm-selected-field-group"),jQuery(r)}return jQuery()}(),a=o.length;if(r||n){var l=_r();if(null===l||jQuery(l).siblings("li.form-field").length||(l.parentNode.classList.add("frm-selected-field-group"),++a),r){if(i)return--a,t.classList.remove("frm-selected-field-group"),void pr(a);++a}else if(n&&!i){++a;var s=o.first();(s.parent().index()=2||1===e&&ae(jQuery(document.querySelector(".frm-selected-field-group"))).length>1?function(){var e,t,r,n,i;if(null!==(e=document.getElementById("frm_field_multiselect_popup")))return e.classList.toggle("frm-unmergable",!hr()),e;(e=d()).id="frm_field_multiselect_popup",hr()||e.classList.add("frm-unmergable"),(t=d()).classList.add("frm-merge-fields-into-row"),t.textContent=B("Merge into row","formidable"),(r=document.createElement("a")).style.marginLeft="5px",r.classList.add("frm_icon_font","frm_arrowdown6_icon"),r.setAttribute("href","#"),t.appendChild(r),e.appendChild(t),(n=d()).classList.add("frm-multiselect-popup-separator"),e.appendChild(n),(i=d()).classList.add("frm-delete-field-groups"),i.appendChild(Rt("frm_trash_svg")),e.appendChild(i),document.getElementById("post-body-content").appendChild(e),jQuery(e).hide().fadeIn()}():yr(),Me()}function gr(e){if(void 0!==e){if(null!==e.originalEvent.target.closest("#frm-show-fields"))return;if(e.originalEvent.target.classList.contains("frm-merge-fields-into-row"))return;if(null!==e.originalEvent.target.closest(".frm-merge-fields-into-row"))return;if(e.originalEvent.target.classList.contains("frm-custom-field-group-layout"))return;if(e.originalEvent.target.classList.contains("frm-cancel-custom-field-group-layout"))return}jQuery(".frm-selected-field-group").removeClass("frm-selected-field-group"),jQuery(document).off("click",gr),yr()}function yr(){var e=document.getElementById("frm_field_multiselect_popup");null!==e&&e.remove()}function hr(){var e,t,r,n,i;if(1===(r=(e=document.querySelectorAll(".frm-selected-field-group")).length))return!1;for(t=0,n=0;n6)return!1}return!0}function vr(e){var t;null===e.originalEvent.target.closest("#frm_field_group_popup")&&(e.originalEvent.target.classList.contains("frm-custom-field-group-layout")||(t=Pt(br(),document.querySelector(".frm-selected-field-group").firstChild),this.appendChild(t)))}function br(){var e=0;return jQuery(document.querySelectorAll(".frm-selected-field-group")).each((function(){e+=ae(jQuery(this)).length})),e}function jr(){var e,t,r,n;n=[],jQuery(".frm-selected-field-group > li.form-field").each((function(){n.push(this.dataset.fid)})),t=function(e){return function(t){t.preventDefault(),function(e){e.forEach((function(e){Qr(e)}))}(e)}}(e=n),null!==(r=document.getElementById("frm_field_multiselect_popup"))&&r.remove(),this.setAttribute("data-frmverify",qt(e.length)),F(this);var i=document.getElementById("frm-confirmed-click");null==i||i.removeAttribute("data-deletefield"),jQuery(i).on("click",t),jQuery("#frm_confirm_modal").one("dialogclose",(function(){jQuery(i).off("click",t)}))}function wr(){Qr(this.getAttribute("data-deletefield"))}function Qr(e){var t=jQuery("#frm_field_id_"+e);xr(e),t.hasClass("edit_field_type_divider")&&t.find("li.frm_field_box[data-fid]").each((function(){xr(this.getAttribute("data-fid"))})),xn()}function xr(e){jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_delete_field",field_id:e,nonce:frmGlobal.nonce},success:function(){var t,r=jQuery(document.getElementById("frm_field_id_"+e)),n=jQuery("#frm-single-settings-"+e);n.is(":visible")&&(null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click(),document.querySelector("#frm-options-panel .frm-single-settings").classList.remove("frm_hidden")),function(e){var t=e[0].querySelectorAll(".frm-inline-modal[data-fills]");t.length&&t.forEach((function(e){e.classList.add("frm_hidden"),e.removeAttribute("data-fills"),e.closest("form").appendChild(e)}))}(n),n.remove(),r.fadeOut("slow",(function(){var e,t=r.closest(".start_divider"),n=r.data("type"),i=r.siblings("li.form-field");if(i.length||(r.is(".edit_field_type_end_divider")?i.length=r.closest("li.form-field").siblings():e=r.closest("ul.frm_sorting").parent()),r.remove(),"break"===n?Tr():"product"===n&&(Be(),nt()),i.length?le(i.first()):e.remove(),0===jQuery("#frm-show-fields li").length||function(){if(j.get(0).childElementCount>1)return!1;var e=j.get(0).firstElementChild.firstElementChild.querySelectorAll("li.frm_field_box");return!(e.length>1)&&e[0].classList.contains("edit_field_type_submit")}()){var o=document.getElementById("frm_form_editor_container");o.classList.remove("frm-has-fields"),o.classList.add("frm-empty-fields")}else t.length&&En(t);R()})),r.length&&wp.hooks.doAction("frm_after_delete_field",r[0])}})}function Er(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_logic_row_"+e).querySelectorAll(".frm_logic_row");return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_logic_row",form_id:t,field_id:e,nonce:frmGlobal.nonce,meta_name:kr(r,"frm_logic_"+e+"_"),fields:tt()},success:function(t){jQuery(document.getElementById("logic_"+e)).fadeOut("fast",(function(){var r=document.getElementById("frm_logic_row_"+e);r.insertAdjacentHTML("beforeend",t);var n=r.querySelector(".frm_logic_row:last-child .frm-logic-rule-text");n&&(n.textContent=r.dataset.ruleText);var i=r.closest(".frm_logic_rows");i.style.height="auto",jQuery(i).fadeIn("fast")}))}}),!1}function kr(e,t,r){return e.length?parseInt(e[e.length-1].id.replace(t,""),10)+1:void 0!==r?r:0}function Lr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_watch_lookup_block_"+e).children;return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_watch_lookup_row",form_id:t,field_id:e,row_key:kr(r,"frm_watch_lookup_"+e+"_"),nonce:frmGlobal.nonce},success:function(t){var r,n=jQuery(document.getElementById("frm_watch_lookup_block_"+e));n.append(t),n.fadeIn("slow"),null===(r=document.getElementById("frm_watch_lookup_label_".concat(e)))||void 0===r||r.classList.remove("frm_hidden!")}}),!1}function Sr(e){var t,r,n=jQuery(e).closest(".frm-single-settings").attr("data-fid"),i=jQuery(e).closest("ul").get(0).querySelectorAll(".field_"+n+"_option");for(t in i)if((r=i[t]).id!==e.id&&r.value===e.value&&"true"!==r.getAttribute("data-duplicate"))return!0;return!1}function Ar(){var e,t;null===this.getAttribute("data-value-on-load")&&(this.setAttribute("data-value-on-load",this.value),t=jQuery(this).closest(".frm-single-settings").attr("data-fid"),(e=document.createElement("input")).value=this.value,e.setAttribute("type","hidden"),e.setAttribute("name","optionmap["+t+"]["+this.value+"]"),this.parentNode.appendChild(e),void 0===S[t]&&(S[t]={}),S[t][this.value]=e),"true"===this.getAttribute("data-duplicate")&&(this.removeAttribute("data-duplicate"),Sr(this))?this.setAttribute("data-value-on-focus",this.getAttribute("data-value-on-load")):""===this.value&&a.new_option===this.getAttribute("data-value-on-focus")||this.setAttribute("data-value-on-focus",this.value)}function Ir(e){var t,r=e.closest(".frm_single_option");return e.parentElement.classList.contains("frm_single_option")?{newValue:r.querySelector('.frm_option_key input[type="text"]').value,newLabel:t=e.value}:(t=r.querySelector('input[type="text"]').value,{newValue:e.value,newLabel:t})}function Br(){var e,t,r,n,i,o,a,l,s,d,c,f,u=function(e){var t=function(e){var t,r,n=null!==(t=null===(r=e.closest(".frm-single-settings").querySelector(".frm_toggle_sep_values"))||void 0===r?void 0:r.checked)&&void 0!==t&&t,i=e.closest(".frm_single_option");return n&&e.parentElement.classList.contains("frm_single_option")?{oldValue:i.querySelector('.frm_option_key input[type="text"]').getAttribute("data-value-on-focus"),oldLabel:e.getAttribute("data-value-on-focus")}:{oldValue:e.getAttribute("data-value-on-focus"),oldLabel:i.querySelector('input[type="text"]').getAttribute("data-value-on-focus")}}(e),r=t.oldValue,n=t.oldLabel,i=Ir(e);return{oldValue:r,oldLabel:n,newValue:i.newValue,newLabel:i.newLabel}}(this),m=u.oldValue,_=u.oldLabel,p=u.newValue,g=u.newLabel;if(m!==p||_!==g){var y=this.closest(".frm-single-settings");if(t=y.getAttribute("data-fid"),e=this.getAttribute("data-value-on-load"),Sr(this))return this.setAttribute("data-duplicate","true"),void(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=e));for(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=p),s=[],rows=D.querySelectorAll(".frm_logic_row"),o=rows.length,a=0;a1)for(document.getElementById("frm-fake-page").style.display="block",e=0;e200)&&(H(a.repeat_limit_min),this.value="")}function Jr(){var e=this.value;""!==e&&(e<1||e>200)&&(H(a.checkbox_limit),this.value="")}function Yr(e,t){jQuery(e).closest(".frm_field_box").find(".frm_"+t+"_form_row .frm_repeat_label").text(e.value)}function Xr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=this.value,r=document.getElementById("frm_show_selected_fields_"+e),n=document.getElementById("frm_show_selected_forms_"+e);jQuery(n).find("select").val(""),"form"===t?(n.style.display="inline",function(e){if(null!==e)for(;e.firstChild;)e.removeChild(e.firstChild)}(r)):(r.style.display="none",n.style.display="none",wn(t,e))}function Zr(){var e,t;(e=en(this))&&(t=jQuery(this).closest(".frm_single_option"),function(e,t,r){var n,i,o,a,l,s,c=r.data("optkey"),f=pn(e),u=jQuery('label[for="field_'+t+"-"+c+'"]'),m="field_options[options_"+e+"]["+c+"]",_=jQuery('input[name="'+m+'[label]"]');if(u.length<1)return rn(e),void((o=r.find('input[name^="default_value_"]')).is(":checked")&&_.length>0&&jQuery('select[name^="item_meta['+e+']"]').val(_.val()));if(a=u.children("input"),n=_.length<1?(_=jQuery('input[name="'+m+'"]')).val():f?jQuery('input[name="'+m+'[value]"]').val():_.val(),!(_.length<1)){if(i=u[0].childNodes,gn(e))l=function(e,t,r){var n,i,o;return(n=e.find("img"))&&(i=n.attr("src")),o=yn(t),fn(t),_n(r.val(),o,i)}(r,e,_),(s=u.find(".frm_image_option_container")).length>0?s.replaceWith(l):(i[i.length-1].nodeValue="",u.append(l));else{var p=!1;i.forEach((function(t,r){if(!1===p)"INPUT"===t.tagName&&(p=r);else if(r===p+1){var n="";!function(e){var t=document.getElementsByName("field_options[image_options_"+e+"]"),r=Array.from(t).find((function(e){return e.checked&&"buttons"===e.value}));return void 0!==r}(e)?t.nodeValue=" "+_.val():(n=d({className:"frm_label_button_container",text:" "+_.val()}),u[0].replaceChild(n,t))}else u[0].removeChild(t)}))}a.val(n),o=r.find('input[name^="default_value_"]'),a.prop("checked",!!o.is(":checked"))}}(e.fieldId,e.fieldKey,t))}function en(e){var t;return!!(t=jQuery(e).closest(".frm_sortable_field_opts")).length&&{fieldId:t.attr("id").replace("frm_field_","").replace("_opts",""),fieldKey:t.data("key")}}function tn(e){var t,r=document.getElementById("field_options_image_size_"+e),n="";return null!==r&&""!==(t=r.value)&&(n=t),n}function rn(e){var t,r,n,i,o,a=jQuery('[name^="item_meta['+e+']"]');if(!(a.length<1)){if(a.is("select"))null!==(i=document.getElementById("frm_placeholder_"+e))&&""===i.value?sn(a[0],{sourceID:e}):sn(a[0],{sourceID:e,placeholder:i.value});else{r=cn(e),jQuery("#field_"+e+"_inner_container > .frm_form_fields").html(""),o=en(jQuery("#frm_delete_field_"+e+"-000_container"));var l=jQuery("#field_"+e+"_inner_container > .frm_form_fields"),s=gn(e),d=s?tn(e):"",c=s?"frm_image_option frm_image_"+d+" ":"",f=Ho(e);for(n="hidden"===a.attr("type")?a.data("field-type"):a.attr("type"),t=0;t=0;a--){var u;l=d[a];var m=null===(u=document.getElementById("frm_field_"+e+"_opts").querySelector('.frm_option_key input[type="text"]'))||void 0===u?void 0:u.value;m||(m=l),s=i.querySelector('option[value="'+m+'"]');var _=nn(e,l),p=_.newValue,g=_.newLabel,y=document.querySelectorAll("#frm_field_"+e+"_opts input[data-value-on-focus]"),h=Array.from(y).find((function(e){return e.value===l}));if(h){var v=h.dataset.valueOnFocus;if(v&&i.querySelector('option[value="'+v+'"]'))continue}an(i,s,p,g)}null!==(s=i.querySelector('option[value=""]'))&&i.prepend(s)}}function an(e,t,r,n){null!==t||e.querySelector('option[value="'+r+'"]')||((t=frmDom.tag("option",{text:n})).value=r),e.prepend(t)}function ln(e,t,r,n,i,o){var a,l="",s=-1!==t.key.indexOf("other"),d="field_"+n+"-"+t.key,c="scale"===e?"radio":e;return a='',this.getSingle=function(){return""!==(l=wp.hooks.applyFilters("frm_admin.build_single_option_template",l,{opt:t,type:e,fieldId:r,classes:o,id:d}))?l:'
                      "+(s?a:"")+"
                      "},this.getSingle()}function sn(e,t){if(null!==e){var r=t.sourceID,n=t.placeholder,i=Ho(r),o=t.other;!function(e){var t;if(void 0!==e.options)for(t=e.options.length-1;t>=0;t--)e.remove(t)}(e);for(var a=cn(r),l=void 0!==n,s=0;s0||d[t].name.indexOf("[value]")>0||d[t].name.indexOf("[image]")>0||d[t].name.indexOf("[price]")>0||(i=r=d[t].value,o=d[t].name.replace("field_options[options_"+e+"][","").replace("[label]","").replace("]",""),m&&(n=d[t].name.replace("[label]","[value]"),r=jQuery('input[name="'+n+'"]').val()),u&&(i=_n(i,f,un(d[t]),fn(e))),a={saved:r,label:i=frmAdminBuild.hooks.applyFilters("frm_choice_field_label",i,e,d[t],u),checked:(l=d[t].id,field=jQuery("#"+l),0!==field.length&&(checkbox=field.siblings("input[type=checkbox]"),checkbox.length&&checkbox.prop("checked"))),key:o},c&&(n=d[t].name.replace("[label]","[price]"),a.price=jQuery('input[name="'+n+'"]').val()),s.push(a));return s}function fn(e){var t=document.getElementById("frm-single-settings-"+e);return null===t?"radio":t.classList.contains("frm-type-checkbox")?"checkbox":"radio"}function un(e){var t,r=jQuery(e).siblings(".frm_image_preview_wrapper");return r.length&&(t=r.find("img")).length?t.attr("src"):""}function mn(e){(e instanceof Element||e instanceof Document)&&(e=e.outerHTML);var t=jQuery.parseHTML(e).reduce((function(e,t){var r=frmDom.cleanNode(t);return"#text"===r.nodeName?e+r.textContent:e+r.outerHTML}),"");return t!==e?mn(t):t}function _n(e,t,r,n){var i,o,l,c=e;return c=mn(c),r?o=m({src:r,alt:c}):(o=d({className:"frm_empty_url"})).innerHTML=a.image_placeholder_icon,i=t?" frm_label_with_image":"",(l=s("span",{className:"frm_text_label_for_image_inner"})).innerHTML=c,s("span",{className:"frm_image_option_container"+i,children:[o,s("span",{className:"frm_text_label_for_image",child:l})]})}function pn(e){return hn("separate_value_"+e)}function gn(e){for(var t=!1,r=document.getElementsByName("field_options[image_options_"+e+"]"),n=0;n=0&&(r.splice(t,1),e.val(r),e.next(".btn-group").find('.multiselect-container input[value=""]').prop("checked",!1))}(jQuery(this))}function An(e){e.val(""),e.next(".btn-group").find('.multiselect-container input[value!=""]').prop("checked",!1)}function In(){jQuery(".frm-hide-empty").each((function(){0===jQuery(this).text().trim().length&&jQuery(this).remove()}))}function Bn(e){e.preventDefault(),Cn(this)}function Cn(e,t){var r=document.getElementById(e.getAttribute("data-open")),n=jQuery(e).closest("p,ul"),i=void 0!==t;n.hasClass("frm-open")?(n.removeClass("frm-open"),r.classList.add("frm_hidden")):(i||(t=Gi(e)),null!==t&&(i||t.focus(),n.after(r),r.setAttribute("data-fills",t.id.replace("-proxy-input","")),0===r.id.indexOf("frm-calc-box")&&Ze(r,!0)),n.addClass("frm-open"),r.classList.remove("frm_hidden"),wp.hooks.doAction("frm_show_inline_modal",r,e))}function qn(e){e.preventDefault(),this.parentNode.classList.add("frm_hidden"),jQuery('.frm-open [data-open="'+this.parentNode.id+'"]').closest(".frm-open").removeClass("frm-open")}function Nn(e){var t=e.target;t.closest(".frm-inline-modal.frm-modal-no-dismiss")||t.closest(".frm-show-inline-modal")||t.closest("#frm_adv_info")||t.closest(".frm-token-proxy-input")||document.querySelectorAll(".frm-inline-modal.frm-modal-no-dismiss:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden"),e.previousElementSibling.classList.remove("frm-open")}))}function Tn(){var e,t,r,n,i,o,a,l=this.getAttribute("data-frmchange").split(",");for(e=0;e',r)),o.innerHTML=c,e.dataset.upsellImage&&o.appendChild(m({src:e.dataset.upsellImage,alt:e.dataset.upgrade})),a.href=function(e,t){var r=e.getAttribute("data-link");return null!=r&&""!==r||(r=t.getAttribute("data-default")),r}(e,a),s.style.display="none",i.style.display=_,l.style.display="block"===_?"inline-block":_,o.style.display=u,a.style.display="block"===f?"inline-block":f}function Yn(e){void 0===e&&(e=""),function(e){var t,r=jQuery(e+" :not(.frm_has_shortcodes) .frm_not_email_message, "+e+" :not(.frm_has_shortcodes) .frm_not_email_to, "+e+" :not(.frm_has_shortcodes) .frm_not_email_subject");for(t=0;t').before('')}function Xn(){var e="success";"options[edit_action]"===this.name&&(e="edit");var t=jQuery(this).val();jQuery("."+e+"_action_box").hide(),"redirect"===t?jQuery("."+e+"_action_redirect_box."+e+"_action_box").fadeIn("slow"):"page"===t?jQuery("."+e+"_action_page_box."+e+"_action_box").fadeIn("slow"):jQuery("."+e+"_action_message_box."+e+"_action_box").fadeIn("slow")}function Zn(e){if(m=e.target,p=jQuery(m),g=p.closest(".frm_form_action_settings"),(y=g.find(".widget-inside")).find("p, div, table").length||((_=g.find(".widget-top")).on("frm-action-loaded",(function(){p.trigger("click"),g.removeClass("open"),y.hide()})),_.trigger("click"),0)){var t=e.target.closest(".frm_form_action_settings"),r=t.querySelectorAll(".wp-editor-area");r.length&&r.forEach((function(e){tinymce.EditorManager.execCommand("mceRemoveEditor",!0,e.id)}));var n=jQuery(t).clone(),i=n.attr("id").replace("frm_form_action_",""),o=ei(i);n.find(".frm_action_id, .frm-btn-group").remove(),n.find('input[name$="['+i+'][ID]"]').val(""),n.find(".widget-inside").hide(),n.find("input[type=text], textarea, input[type=number]").prop("defaultValue",(function(){return this.value})),n.find("input[type=checkbox], input[type=radio]").prop("defaultChecked",(function(){return this.checked}));var a=new RegExp("\\["+i+"\\]","g"),l=new RegExp("_"+i+'"',"g"),s=new RegExp("-"+i+'"',"g"),c=new RegExp('"'+i+'"',"g"),f=n.html().replace(a,"["+o+"]").replace(l,"_"+o+'"');f=f.replace(s,"-"+o+'"').replace(c,'"'+o+'"');var u=d({id:"frm_form_action_"+o,className:n.get(0).className});u.setAttribute("data-actionkey",o),u.innerHTML=f,u.querySelectorAll(".wp-editor-wrap, .wp-editor-wrap *").forEach((function(e){"string"==typeof e.className&&(e.className=e.className.replace(i,o)),e.id=e.id.replace(i,o)})),u.classList.remove("open"),document.getElementById("frm_notification_settings").appendChild(u),r.length&&(r.forEach((function(e){frmDom.wysiwyg.init(e)})),u.querySelectorAll(".wp-editor-area").forEach((function(e){frmDom.wysiwyg.init(e)}))),u.classList.contains("frm_single_on_submit_settings")&&u.querySelector("input.frm-page-search")&&jo(u),lo(),wp.hooks.doAction("frm_after_duplicate_action",u)}var m,_,p,g,y}function ei(e){var t=parseInt(e,10)+11;return null!==document.getElementById("frm_form_action_"+t)&&(t=ei(++t)),t}function ti(){var e,t=jQuery(this).data("actiontype");if(!di(t)){var r=(e=kr(document.querySelectorAll(".frm_form_action_settings"),"frm_form_action_"),void 0!==document.getElementById("frm_form_action_"+e)&&(e+=100),A>=e&&(e=A+1),A=e,e),n=k,i=document.createElement("div");i.classList.add("frm_single_"+t+"_settings");var o=document.getElementById("frm_notification_settings");o.appendChild(i),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_action",type:t,list_id:r,form_id:n,nonce:frmGlobal.nonce},success:function(e){Mi(),i.remove(),document.querySelectorAll(".frm_form_action_settings.open").forEach((function(e){return e.classList.remove("open")}));var n=d();n.innerHTML=e;var a=n.querySelector(".widget-top");Array.from(n.children).forEach((function(e){return o.appendChild(e)})),jQuery(".frm_form_action_settings").fadeIn("slow");var l=document.getElementById("frm_form_action_"+r);l.classList.add("open"),document.getElementById("post-body-content").scroll({top:l.offsetTop+10,left:0,behavior:"smooth"}),si(t),Yn("#frm_form_action_"+r),lo(),jo(l),a&&jQuery(a).trigger("frm-action-loaded"),frmAdminBuild.hooks.doAction("frm_added_form_action",l)}})}}function ri(){var e=document.getElementById("frm_email_addon_menu").classList,t=document.getElementById("actions-search-input");e.contains("frm-all-actions")?(e.remove("frm-all-actions"),e.add("frm-limited-actions")):(e.add("frm-all-actions"),e.remove("frm-limited-actions")),t.value="",Io(t,"input")}function ni(e){e.on("Change",(function(){!function(e){var t,r;(t=document.querySelector(".frm-single-settings:not(.frm_hidden)"))&&null!==(r=t.querySelector(".wp-editor-wrap"))&&r.classList.contains("tmce-active")&&!tinyMCE.activeEditor.isHidden()&&(e.targetElm.value=e.getContent(),jQuery(e.targetElm).trigger("change"))}(e)}))}function ii(e){var t=this;if(null!==e)return this.fragment=document.createDocumentFragment(),this.initOnceInAllInstances=function(){void 0===ii.prototype.endMarker&&(ii.prototype.endMarker=document.getElementById("frm-end-form-marker"))},this.append=function(e){var r=null!==e?e.parentElement.classList:"";null!==e&&(r.contains("frm_field_box")||r.contains("divider_section_only"))&&t.fragment.appendChild(e)},this.moveFields=function(){w.insertBefore(t.fragment,ii.prototype.endMarker)},this.initOnceInAllInstances(),void 0!==e?(this.append(e),void this.moveFields()):{append:this.append,moveFields:this.moveFields}}function oi(){var e=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),t=this.getAttribute("data-emailrow");jQuery("#frm_form_action_"+e+" .frm_"+t+"_row").fadeIn("slow"),jQuery(this).fadeOut("slow")}function ai(){var e=jQuery(this).closest(".frm_form_action_settings"),t=this.getAttribute("data-emailrow"),r=".frm_"+t+"_row",n=".frm_"+t+"_button";jQuery(e).find(n).fadeIn("slow"),jQuery(e).find(r).fadeOut("slow",(function(){jQuery(e).find(r+" input").val("")}))}function li(){var e=jQuery(this).closest(".frm_form_action_settings"),t=".frm_from_to_match_row";e.find('input[name$="[post_content][from]"]').val()===e.find('input[name$="[post_content][email_to]"]').val()?jQuery(e).find(t).fadeIn("slow"):jQuery(e).find(t).fadeOut("slow")}function si(e){var t,r,n=document.querySelectorAll(".frm_"+e+"_action");di(e)?(t=n,r=ci(e)>0,t.forEach((function(e){e.classList.remove("frm_active_action"),e.classList.add("frm_inactive_action"),r&&e.classList.add("frm_already_used")}))):n.forEach((function(e){e.querySelector(".frm_show_upgrade")||(e.classList.remove("frm_inactive_action","frm_already_used"),e.classList.add("frm_active_action"))}))}function di(e){var t=function(e){return jQuery(".frm_single_"+e+"_settings").length}(e)>=ci(e),r={type:e};return wp.hooks.applyFilters("frm_action_at_limit",t,r)}function ci(e){return parseInt(jQuery(".frm_"+e+"_action").data("limit"),10)}function fi(){var e=a.only_one_action,t=this.dataset.limit;void 0!==t&&((t=parseInt(t))>1?e=e.replace(1,t).trim():e+=" "+a.edit_action_text),H(e)}function ui(){var e=jQuery(this).data("emailkey"),t=jQuery(this).closest(".frm_form_action_settings").find(".frm_action_name").val(),r=document.getElementById("form_id").value,n=document.getElementById("frm_logic_row_"+e),i=kr(n.querySelectorAll(".frm_logic_row"),"frm_logic_"+e+"_"),o=d({id:"frm_logic_"+e+"_"+i,className:"frm_logic_row frm_hidden"});return n.appendChild(o),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_logic_row",email_id:e,form_id:r,meta_name:i,type:t,nonce:frmGlobal.nonce},success:function(t){jQuery(document.getElementById("logic_link_"+e)).fadeOut("slow",(function(){o.insertAdjacentHTML("beforebegin",t),o.remove(),jQuery(n).parent(".frm_logic_rows").fadeIn("slow")}))}}),!1}function mi(){var e=jQuery("select.frm_single_post_field");e.css("border-color","");var t=this,r=jQuery(t).val();if(""===r||"checkbox"===r)return!1;e.each((function(){if(jQuery(this).val()===r&&this.name!==t.name)return this.style.borderColor="red",jQuery(t).val(""),H(a.field_already_used),!1}))}function _i(){var e=jQuery(this).val();""===e?(jQuery(".frm_post_content_opt, select.frm_dyncontent_opt").hide().val(""),jQuery(".frm_dyncontent_opt").hide()):"post_content"===e?(jQuery(".frm_post_content_opt").show(),jQuery(".frm_dyncontent_opt").hide(),jQuery("select.frm_dyncontent_opt").val("")):(jQuery(".frm_post_content_opt").hide().val(""),jQuery("select.frm_dyncontent_opt, .frm_form_field.frm_dyncontent_opt").show())}function pi(){var e=jQuery(this).val(),t=jQuery(document.getElementById("frm_dyncontent"));""===e||"new"===e?(t.val(""),jQuery(".frm_dyncontent_opt").show()):jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_display_get_content",id:e,nonce:frmGlobal.nonce},success:function(e){t.val(e),jQuery(".frm_dyncontent_opt").show()}})}function gi(){var e,t,r=document.getElementById("frm_posttax_rows").childNodes,n=document.querySelector(".frm_post_parent_field"),o=document.querySelector(".frm_post_menu_order_field"),a=this.value;jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_replace_posttax_options",post_type:a,nonce:frmGlobal.nonce},success:function(n){for(i=0;i');var e=jQuery(this).closest(".frm_form_action_settings").find('select[name$="[post_content][post_type]"]').val(),t=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),r=jQuery(this).closest(".frm_posttax_row").attr("id").replace("frm_posttax_",""),n=jQuery(this).val(),i=jQuery(document.getElementById(r+"_show_exclude")).is(":checked")?1:0,o=jQuery('select[name$="[post_category]['+r+'][field_id]"]').val(),a=jQuery('input[name="id"]').val();jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_posttax_row",form_id:a,post_type:e,tax_key:r,action_key:t,meta_name:n,field_id:o,show_exclude:i,nonce:frmGlobal.nonce},success:function(e){jQuery(document.getElementById("frm_posttax_"+r)).replaceWith(e)}})}}function wi(){var e=jQuery(this).closest(".frm_postmeta_row"),t=e.find(".frm_cancelnew"),r=e.find(".frm_enternew");return e.find("select.frm_cancelnew").is(":visible")?(t.hide(),r.show()):(t.show(),r.hide()),e.find("input.frm_enternew, select.frm_cancelnew").val(""),!1}function Qi(){var e=jQuery(this),t=e.val();"checkbox"===e.attr("type")&&!1===this.checked&&(t="");var r=e.data("toggleclass");""===t?jQuery("."+r).hide():(jQuery("."+r).show(),jQuery(".hide_"+r+"_"+t).hide())}function xi(){Rn()||(Wn(this),Hn(document.querySelector(".frm_form_settings")))}function Ei(e){return e.preventDefault(),ki(jQuery(this),this.getAttribute("data-code")),!1}function ki(e,t){var r=!1,i=e;if("object"===n(e)){if(e.hasClass("frm_noallow"))return;void 0===(i=jQuery(e).closest("[data-fills]").attr("data-fills"))&&void 0!==(i=e.closest("div").attr("class"))&&(i=i.split(" ")[1])}if(void 0===i){var o=document.activeElement;"search"===o.type?null===(i=o.id.replace("-search-input","")).match(/\d/gi)&&(i=(o=jQuery(".frm-single-settings:visible ."+i)).attr("id")):i=o.id}i&&(r=jQuery("#wp-"+i+"-wrap.wp-editor-wrap").length>0);var a=jQuery(document.getElementById(i));if(void 0===e.attr("data-shortcode")&&(!a.length||void 0===a.attr("data-shortcode"))){var l=e.parents("ul.frm_code_list").attr("data-shortcode");"undefined"!==l&&"no"===l||(t="["+t+"]")}if(r&&(wpActiveEditor=i),!a.length)return!1;if("[default-html]"===t||"[default-plain]"===t){var s=0;"[default-plain]"===t&&(s=1),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_get_default_html",form_id:jQuery('input[name="id"]').val(),plain_text:s,nonce:frmGlobal.nonce},elementId:i,success:function(e){if(r){var t=document.createElement("p");t.innerText=e,send_to_editor(t.innerHTML)}else Li(a,e)}})}else t=function(e,t,r){return"object"===n(t)&&t instanceof jQuery&&0===r[0].id.indexOf("success_url_")&&(t=t[0]).closest("#frm-insert-fields-box")?(t.parentNode.classList.contains("frm_insert_url")||(e=e.replace("]"," sanitize_url=1]")),e):e}(t,e,a),r?send_to_editor(t):Li(a,t);return!1}function Li(e,t){if(document.selection)e[0].focus(),document.selection.createRange().text=t;else{obj=e[0];var r=obj.selectionEnd;t=function(e,t,r,n){var i=e.data("sep");if(void 0===i)return t;var o=e.val();if(!o.trim().length)return t;var a=new RegExp(i+"\\s*$"),l=new RegExp("^\\s*"+i);return o.substr(0,r).trim().length&&!1===a.test(o.substr(0,r))&&(t=i+t),o.substr(n,o.length).trim().length&&!1===l.test(o.substr(n,o.length))&&(t+=i),t}(e,t,obj.selectionStart,r),obj.value=obj.value.substr(0,obj.selectionStart)+t+obj.value.substr(obj.selectionEnd,obj.value.length);var n=r+t.length;!function(e,t){if(e.classList.contains("frm_classes")&&Si(t)){var r=e.value.split(" ").filter(Si);r.length&&(e.value=function(e,t,r){var n=e.split(" ").filter((function(e){return(e=e.trim()).length&&!t.includes(e)}));return n.includes(r)||n.push(r),n.join(" ")}(e.value,r,t.trim()))}}(obj,t),obj.focus(),obj.setSelectionRange(n,n)}Pn(e)}function Si(e){return["frm_half","frm_third","frm_two_thirds","frm_fourth","frm_three_fourths","frm_fifth","frm_sixth","frm2","frm3","frm4","frm6","frm8","frm9","frm10","frm12"].includes(e.trim())}function Ai(){var e=document.getElementById("frm-id-condition"),t=document.getElementById("frm-key-condition");"id"===this.value?(e.classList.remove("frm_hidden"),t.classList.add("frm_hidden"),Io(t,"change")):(e.classList.add("frm_hidden"),t.classList.remove("frm_hidden"),Io(e,"change"))}function Ii(){var e,t,r=document.getElementById("frm-id-key-condition-id").checked?"frm-id-condition":"frm-key-condition",n=document.getElementById("frm-is-condition").value,i=document.getElementById("frm-text-condition").value,o=document.getElementById("frm-insert-condition");t="if "+(e=(r=document.getElementById(r)).options[r.selectedIndex].value)+" "+n+'="'+i+'"]',o.setAttribute("data-code",t+a.conditional_text+"[/if "+e),o.innerHTML="["+t+"[/if "+e+"]"}function Bi(){Cn($i(this),this)}function Ci(e){e.preventDefault(),e.stopPropagation(),Oi(this)}function qi(e){!function(e){var t;if(e.id.startsWith("field_options_type_")){var r=e.id.split("_"),n=r.length&&r[r.length-1];null!==(t=document.querySelector("#frm-single-settings-".concat(n)))&&void 0!==t&&t.classList.contains("frm-type-".concat(e.value))||Ni()}}(e.target)}function Ni(e){var t;void 0===e&&(e=B("You are changing the field type. Not all field settings will appear as expected until you reload the page. Would you like to reload the page now?","formidable")),frmDom.modal.maybeCreateModal("frmSaveAndReloadModal",{title:B("Save and Reload?","formidable"),content:(t=d(e),t.style.padding="var(--gap-md)",t),footer:function(){var e=frmDom.modal.footerButton({text:B("Save and Reload","formidable"),buttonType:"primary"});_(e,(function(){Pi()}));var t=frmDom.modal.footerButton({text:B("Cancel","formidable"),buttonType:"cancel"});return t.classList.add("dismiss"),frmDom.div({children:[t,e]})}()})}function Ti(e){var t;if(e instanceof Event){var r=document.querySelectorAll(".frm-single-settings .frm-show-box.frmsvg use"),n=Array.from(r).find((function(e){return"#frm_close_icon"===e.getAttribute("href")}));if(void 0===n)return;t=n.parentElement}else t=e;var i=t.getBoundingClientRect(),o=document.getElementById("frm_adv_info"),a=o.parentElement.getBoundingClientRect();o.style.top=i.top-a.top+32+"px",o.style.left=i.left-a.left-280+"px"}function Oi(e,r){var n=Gi(e),i=document.getElementById("frm_adv_info"),o=e.className;if("svg"===e.tagName&&(e=e.firstElementChild),"use"===e.tagName&&null===(o=e.getAttributeNS("http://www.w3.org/1999/xlink","href"))&&(o=e.getAttribute("href")),-1!==o.indexOf("frm_close_icon"))Wi(i);else{if(Ti(e),jQuery(".frm_code_list a").removeClass("frm_noallow"),n.classList.contains("frm_not_email_to")?jQuery("#frm-insert-fields-box .frm_code_list li:not(.show_frm_not_email_to) a").addClass("frm_noallow"):n.classList.contains("frm_not_email_subject")&&jQuery(".frm_code_list li.hide_frm_not_email_subject a").addClass("frm_noallow"),i.setAttribute("data-fills",n.id),i.style.display="block","use"===e.tagName)if(e.hasAttributeNS("http://www.w3.org/1999/xlink","href"))e.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon");else{var l=document.createElementNS("http://www.w3.org/2000/svg","use");l.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon"),e.parentNode.replaceChild(l,e)}else e.className=o.replace("frm_more_horiz_solid_icon","frm_close_icon");"nofocus"!==r&&("none"!==n.style.display?n.focus():jQuery(tinymce.get(n.id)).trigger("focus")),function(e){["address","body"].forEach((function(r){!function(e,r){var n,i;n=a.contextualShortcodes[r+"Selector"],i=a.contextualShortcodes[r];var o,l=e.matches(n),s=function(e){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=t(e))){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw o}}}}(i);try{for(s.s();!(o=s.n()).done;){var d,c=o.value,f=null===(d=document.querySelector('#frm-adv-info-tab .frm_code_list [data-code="'+c+'"]'))||void 0===d?void 0:d.closest("li");null==f||f.classList.toggle("frm_hidden",!l)}}catch(e){s.e(e)}finally{s.f()}}(e,r)}))}(n)}}function Di(e){return 0===a.contextualShortcodes.length||!function(e){var t=e.querySelector("a");if(!t)return!1;var r=t.dataset.code;return a.contextualShortcodes.address.includes(r)||a.contextualShortcodes.body.includes(r)}(e)||function(e){var t=e.querySelector("a").dataset.code,r=document.getElementById("frm_adv_info").dataset.fills,n=document.getElementById(r),i=a.contextualShortcodes;return i.address.includes(t)?n.matches(i.addressSelector):n.matches(i.bodySelector)}(e)}function Mi(){E||(E=1,window.addEventListener("beforeunload",zi))}function Fi(){E=0}function Hi(){E=0}function Pi(){var e=document.getElementById("frm_submit_side_top");e.classList.contains("frm_submit_ajax")&&e.setAttribute("data-new-addon-installed",!0),e.click()}function zi(e){E&&(e.preventDefault(),e.returnValue="")}function Ri(e,t){var r={my:"top",at:"top+"+t,of:window};e.dialog("option","position",r)}function Gi(e){for(var t,r=e.nextElementSibling;null!==r&&("INPUT"!==r.tagName&&"TEXTAREA"!==r.tagName||r.classList.contains("frm-token-input-field"));)r=Gi(r);return r||(r=null===(t=e.closest(".frm-field-formula"))||void 0===t?void 0:t.querySelector(".frm-calc-field")),r}function $i(e){for(var t=e.previousElementSibling;null!==t&&"I"!==t.tagName&&"svg"!==t.tagName;)t=$i(t);return t}function Wi(e){var t,r,n,i;if((void 0!==e||null!==(e=document.getElementById("frm_adv_info")))&&null===document.getElementById("frm_dyncontent")){for(e.style.display="none",n=document.querySelectorAll(".frm-show-box.frm_close_icon"),t=0;t"+r.data.name+": "+r.data.msg+"

                      ":'

                      Imported '+r.data.name+"

                      ",e.find(".status").prepend(n),e.find(".status").show(),N.importQueue=jQuery.grep(N.importQueue,(function(e){return e!=t})),N.imported++,0===N.importQueue.length?(e.find(".process-count").hide(),e.find(".forms-completed").text(N.imported),e.find(".process-completed").show()):(e.find(".form-current").text(N.imported+1),Xi(e)))}))}function Zi(e){e.preventDefault();var t=!1,r=jQuery('input[name="frm_export_forms[]"]');jQuery('input[name="frm_export_forms[]"]:checked').val()||(r.closest(".frm-table-box").addClass("frm_blank_field"),t="stop");var n=jQuery('input[name="type[]"]');if(jQuery('input[name="type[]"]:checked').val()||"checkbox"!==n.attr("type")||(n.closest("p").addClass("frm_blank_field"),t="stop"),"stop"===t)return!1;e.stopPropagation(),this.submit()}function eo(){var e=jQuery(this).closest(".frm_blank_field");if(void 0!==e){var t=this.name;("type[]"===t&&jQuery('input[name="type[]"]:checked').val()||"frm_export_forms[]"===t&&jQuery(this).val())&&e.removeClass("frm_blank_field")}}function to(){null!==jQuery(this).val().match(/\.csv$/i)?jQuery(".show_csv").fadeIn():jQuery(".show_csv").fadeOut()}function ro(){var e=document.querySelector('select[name="format"]');return e?e.value:""}function no(e){var t,r,n=e.target.value;oo(n),io.call(e.target),t=n,r=document.getElementById("frm-export-select-all"),"csv"===t?(r.checked=!1,r.disabled=!0):r.disabled=!1}function io(){var e=jQuery(this),t=e.find(":selected"),r=t.data("support"),n=r.indexOf("|");jQuery('input[name="type[]"]').each((function(){this.checked=!1,r.indexOf(this.value)>=0?(this.disabled=!1,-1===n&&(this.checked=!0)):this.disabled=!0})),"csv"===e.val()?(jQuery(".csv_opts").show(),jQuery(".xml_opts").hide()):(jQuery(".csv_opts").hide(),jQuery(".xml_opts").show());var i=t.data("count"),o=jQuery('input[name="frm_export_forms[]"]');"single"===i?(o.prop("multiple",!1),o.prop("checked",!1)):(o.prop("multiple",!0),o.prop("disabled",!1)),e.trigger("change")}function oo(e){if(""!==e){var t=document.querySelectorAll(".frm-is-repeater");t.length&&("csv"===e?t.forEach((function(e){e.classList.remove("frm_hidden")})):t.forEach((function(e){e.classList.add("frm_hidden")})),Lo.call(document.querySelector(".frm-auto-search")))}}function ao(){var e=jQuery("select[name=format]").find(":selected").data("count"),t=jQuery('input[name="frm_export_forms[]"]');"single"===e&&this.checked?(t.prop("disabled",!0),this.removeAttribute("disabled")):t.prop("disabled",!1)}function lo(){jQuery(".frm_multiselect").hide().each(frmDom.bootstrap.multiselect.init)}function so(e){e.preventDefault(),uo(this,"frm_multiple_addons")}function co(e){e.preventDefault(),uo(this,"frm_activate_addon")}function fo(e){e.preventDefault(),uo(this,"frm_install_addon")}function uo(e,t){var r,n,i,o;jQuery(".frm-addon-error").remove(),n=(r=jQuery(e)).attr("rel"),i=r.parent(),o=i.parent().find(".addon-status-label"),r.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:t,nonce:frmGlobal.nonce,plugin:n},success:function(e){var n,a,l;"string"!=typeof(e=null!==(n=null===(a=e)||void 0===a?void 0:a.data)&&void 0!==n?n:e)&&"string"==typeof e.message&&(void 0!==e.saveAndReload&&(l=e.saveAndReload),e=e.message);var s=go(e);s?yo(s,i,r):(_o(e,r,o,i,l,t),wp.hooks.doAction("frm_update_addon_state",e))},error:function(){r.removeClass("frm_loading_button")}})}function mo(e){e.preventDefault();var t=jQuery(this),r=t.parent().parent(),n=t.attr("rel");t.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:"frm_install_addon",nonce:a.nonce,plugin:n,hostname:r.find("#hostname").val(),username:r.find("#username").val(),password:r.find("#password").val()},success:function(e){var n,i,o=go(e=null!==(n=null===(i=e)||void 0===i?void 0:i.data)&&void 0!==n?n:e);o?yo(o,r,t):_o(e,t,message,r)},error:function(){t.removeClass("frm_loading_button")}})}function _o(e,t,r,n,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"frm_activate_addon",l=document.querySelectorAll(".frm-addon-status");l.forEach((function(t){t.textContent=e,t.style.display="block"})),t.css({opacity:"0"}),document.querySelectorAll(".frm-oneclick").forEach((function(e){e.style.display="none"})),jQuery("#frm_upgrade_modal h2").hide(),jQuery("#frm_upgrade_modal .frm_lock_icon").addClass("frm_lock_open_icon"),jQuery("#frm_upgrade_modal .frm_lock_icon use").attr("xlink:href","#frm_lock_open_icon");var s={frm_activate_addon:{class:"frm-addon-active",message:a.active},frm_deactivate_addon:{class:"frm-addon-installed",message:a.installed},frm_uninstall_addon:{class:"frm-addon-not-installed",message:a.not_installed}};s.frm_install_addon=s.frm_activate_addon;var c=r[0];c&&(c.textContent=s[o].message);var f=n[0].parentElement;f.classList.remove("frm-addon-not-installed","frm-addon-installed","frm-addon-active"),f.classList.add(s[o].class),t[0].classList.remove("frm_loading_button"),document.querySelectorAll(".frm-admin-page-import, #frm-admin-smtp, #frm-welcome").length>0?window.location.reload():["settings","form_builder"].includes(i)&&l.forEach((function(e){var t=null!==e.closest("#frm_upgrade_modal");e.appendChild(function(e,t){var r=[po(e)];return t&&r.push(function(){var e=document.createElement("a");return e.setAttribute("href","#"),e.classList.add("button","button-secondary","frm-button-secondary","dismiss"),e.textContent=B("Close","formidable"),e}()),d({className:"frm-save-and-reload-options",children:r})}(i,t))}))}function po(e){var t=document.createElement("button");return t.classList.add("frm-save-and-reload","button","button-primary","frm-button-primary"),t.textContent=B("Save and Reload","formidable"),t.addEventListener("click",(function(){var t,r;"form_builder"===e?Pi():"settings"===e&&null!==(t=document.getElementById("form_settings_page"))&&null!==(r=t.querySelector("form.frm_form_settings"))&&(E=0,r.submit())})),t}function go(e){return"string"!=typeof e&&(void 0===e.success||!e.success)&&(e.form&&jQuery(e.form).is("#message")?{message:jQuery(e.form).find("p").html()}:e)}function yo(e,t,r){e.form?(jQuery(".frm-inline-error").remove(),r.closest(".frm-card").html(e.form).css({padding:5}).find("#upgrade").attr("rel",r.attr("rel")).on("click",mo)):(t.append('

                      '+e.message+"

                      "),r.removeClass("frm_loading_button"),jQuery(".frm-addon-error").delay(4e3).fadeOut())}function ho(){bo()}function vo(e){!function(e,t,r){var n=jQuery("#frm_leave_email_error");n.removeClass("frm_hidden").attr("frm-error",r),jQuery("#frm_leave_email").one("keyup",(function(){n.addClass("frm_hidden")}))}(0,0,e)}function bo(){var e=document.getElementById("frmapi-email-form");jQuery.ajax({dataType:"json",url:e.getAttribute("data-url"),success:function(t){var r=t.renderedHtml;r=r.replace(/]*(formidableforms.css|action=frmpro_css)[^>]*>/gi,""),e.innerHTML=r}})}function jo(e){frmDom.autocomplete.initSelectionAutocomplete(e)}function wo(e){var t=this.parentNode.parentNode,r=t.elements.type.value;e.preventDefault(),this.classList.add("frm_loading_button"),xo(t,r,this)}function Qo(e){var t=this.elements.type.value,r=this.querySelector("button");e.preventDefault(),r.classList.add("frm_loading_button"),xo(this,t,r)}function xo(e,t,r){var n=function(e){var t,r,n={},i=e.elements;for(r=0;r=0||So(l,n)?(s&&Di(o[e])&&o[e].classList.remove("frm_hidden"),o[e].classList.add("frm-search-result")):(o[e].classList.add("frm_hidden"),o[e].classList.remove("frm-search-result"))}(t=document.querySelector("#frm-insert-fields"))&&t.querySelectorAll(":scope > .frm-with-line").forEach((function(e){var t=e.nextElementSibling;if(t){var r=t.querySelectorAll(":scope > li.frmbutton"),n=Array.from(r).every((function(e){return e.classList.contains("frm_hidden")}));e.classList.toggle("frm_hidden",n)}})),jQuery(this).trigger("frmAfterSearch")}function So(e,t){return"s"!==t&&"s"!==e[e.length-1]&&(e+"s").indexOf(t)>=0}function Ao(e){e.stopPropagation()}function Io(e,t){var r=document.createEvent("HTMLEvents");r.initEvent(t,!1,!0),e.dispatchEvent(r)}function Bo(e,t){var r,n=new XMLHttpRequest,i="string"==typeof e?e:Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&");return n.open("post",ajaxurl,!0),n.onreadystatechange=function(){if(n.readyState>3&&200==n.status){r=n.responseText;try{r=JSON.parse(r)}catch(e){}t(r)}},n.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.setRequestHeader("Content-type","application/x-www-form-urlencoded"),n.send(i),n}function Co(e,t){e.classList.add("frm-fade"),setTimeout(t,1e3)}function qo(e){jQuery(e).css("visibility","hidden")}function No(e){jQuery(e).css("visibility","visible")}function To(e,t){var r=jQuery(e);if(!r.length)return!1;void 0===t&&(t="550px");var n={dialogClass:"frm-dialog",modal:!0,autoOpen:!1,closeOnEscape:!0,width:t,resizable:!1,draggable:!1,open:function(){var e,t;jQuery(".ui-dialog-titlebar").addClass("frm_hidden").removeClass("ui-helper-clearfix"),jQuery("#wpwrap").addClass("frm_overlay"),jQuery(".frm-dialog").removeClass("ui-widget ui-widget-content ui-corner-all"),r.removeClass("ui-dialog-content ui-widget-content"),e=r,t=function(){e.dialog("close")},jQuery(".ui-widget-overlay").on("click",t),e.on("click","a.dismiss",t)},close:function(){jQuery("#wpwrap").removeClass("frm_overlay"),jQuery(".spinner").css("visibility","hidden"),this.removeAttribute("data-option-type");var e=document.getElementById("bulk-option-type");e&&(e.value="")}};return r.dialog(n),r}function Oo(e,t){if("#"===t){var r=document.getElementById(e),n=r.style.display;r.style.display="none"===n?"block":"none"}else e.is(":visible")?e.hide():e.show()}function Do(){window.onbeforeunload=null;var e=jQuery(window);e.off("beforeunload.widgets"),e.off("beforeunload.edit-post")}function Mo(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);if(null!==t&&"form"===t.dataset.type)if(t=jQuery(t),this.options[this.selectedIndex].value){t.find(".frm-not-set")[0].classList.add("frm_hidden");var r=t.find(".frm-embed-message");r.html(r.data("embedmsg")+this.options[this.selectedIndex].text),t.find(".frm-embed-field-placeholder")[0].classList.remove("frm_hidden")}else t.find(".frm-not-set")[0].classList.remove("frm_hidden"),t.find(".frm-embed-field-placeholder")[0].classList.add("frm_hidden")}function Fo(){var e=jQuery(this).closest(".frm-single-settings"),t=e.find(".frmjs_product_choices"),r=e.find(".frm_prod_options_heading"),n=this.options[this.selectedIndex].value;t.removeClass("frm_prod_type_single frm_prod_type_user_def"),r.removeClass("frm_prod_user_def"),"single"===n?t.addClass("frm_prod_type_single"):"user_def"===n&&(t.addClass("frm_prod_type_user_def"),r.addClass("frm_prod_user_def"))}function Ho(e){var t=document.getElementById("frm_field_id_"+e);return null!==t&&"product"===t.getAttribute("data-type")}function Po(){var t=function(e,t){return window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]},r=function(e,t,r){window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]=r},n=[1,2,3,4,5,6,7,8,9,10,11,12].map((function(e){return"frm"+e})),i=["first","middle","last"];document.addEventListener("change",(function(o){o.target.matches(".frm_name_layout_dropdown")&&function(o){var a,l=o.target.value.split("_"),s=o.target.dataset.fieldId,d=document.querySelector("#field_"+s+"_inner_container .frm_combo_inputs_container"),c=(a=l.length,"frm"+parseInt(12/a));i.forEach((function(t){var i,o=d.querySelector('[data-sub-field-name="'+t+'"]');o&&(o.classList.add("frm_hidden"),(i=o.classList).remove.apply(i,e(n)),r(s,t,o))})),l.forEach((function(e){var r=t(s,e);r&&(r.classList.remove("frm_hidden"),r.classList.add(c),d.append(r))})),i.forEach((function(e){var t=document.querySelector(".frm_sub_field_options-"+e+'[data-field-id="'+s+'"]');t&&(t.classList.add("frm_hidden"),r(s,e+"_options",t))})),l.forEach((function(e){var r=t(s,e+"_options");r&&r.classList.remove("frm_hidden")}))}(o)}),!1)}function zo(e,t){var r,n,i,o=!1,a=!1;(r=t.newOption?(new DOMParser).parseFromString(t.newOption,"text/html").body.childNodes[0]:t).querySelectorAll("svg").forEach((function(e,t){(n=e.getElementsByTagNameNS("http://www.w3.org/2000/svg","use")[0])&&("#frm_drag_icon"===(i=n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("href"))&&(o=!0),"#frm_save_icon"===i&&(a=!0))})),o||r.prepend(b.drag.cloneNode(!0)),r.querySelector("[id^=field_key_".concat(e,"-]"))&&!a&&r.querySelector("[id^=field_key_".concat(e,"-]")).after(b.save.cloneNode(!0)),t.newOption&&(t.newOption=r)}function Ro(){var e=document.getElementById("frm_leave_email").value.trim();if(""!==e)if(!1!==/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e)){var t=jQuery("#frmapi-email-form").find("form"),r=t.find('[type="email"]').not(".frm_verify");if(r.length){if(document.getElementById("frm_empty_inbox")){document.getElementById("frm-add-my-email-address").remove();var n=document.getElementById("frm_leave_email_wrapper");if(n){n.classList.add("frm_hidden");var i=c({className:"frm-wait frm_spinner"});i.style.visibility="visible",i.style.float="none",i.style.width="unset",n.parentElement.insertBefore(i,n.nextElementSibling)}}r.val(e),jQuery.ajax({type:"POST",url:t.attr("action"),data:t.serialize()+"&action=frm_forms_preview"}).done((function(e){if(-1!==jQuery(e).find(".frm_message").text().trim().indexOf("Thanks!")){var t=document.getElementById("frmapi-email-form").parentElement.querySelector(".frm_spinner");t&&t.remove(),wp.hooks.applyFilters("frm_thank_you_on_signup",!0)&&document.getElementById("frm_leave_email_wrapper").replaceWith(c(B("Thank you for signing up!","formidable")))}else vo("invalid")}))}}else vo("invalid");else vo("empty")}function Go(e){if(D||e.stopPropagation(),!(e.target.classList.contains("frm-show-box")||e.target.parentElement&&e.target.parentElement.classList.contains("frm-show-box"))){var t=document.getElementById("frm_adv_info");t&&(t.dataset.fills===e.target.id&&void 0!==e.target.id||e.target.closest("#frm_adv_info")||"none"===t.style.display||Wi(t))}}return{init:function(){var t,r,n,i,o,a,l;!function(){jQuery(document).on("click","#frm-add-my-email-address",(function(e){e.preventDefault(),Ro()}));var e=document.getElementById("frm_empty_inbox"),t=document.getElementById("frm_leave_email");if(e&&t){var r=document.getElementById("frm-leave-email-modal");r.classList.remove("frm_hidden"),r.querySelector(".frm_modal_footer").classList.add("frm_hidden"),t.addEventListener("keyup",(function(e){if("Enter"===e.key){var t=document.getElementById("frm-add-my-email-address");t&&t.click()}}))}}(),r=document.querySelector(".frm-admin-footer-links"),n=null!==(t=document.querySelector(".frm_page_container"))&&void 0!==t?t:document.getElementById("wpbody-content"),r&&n&&(n.appendChild(r),r.classList.remove("frm_hidden")),N={},jQuery(".wp-admin").on("click",(function(e){var t=jQuery(e.target),r=jQuery(".dropdown.open");!r.length||t.hasClass("dropdown")||t.closest(".dropdown").length||r.removeClass("open")})),jQuery("#frm_bs_dropdown:not(.open) a").on("click",Lt),void 0===k&&(k=jQuery(document.getElementById("form_id")).val()),document.querySelectorAll(".frm-warning-dismiss").forEach((function(e){_(e,St)})),frmAdminBuild.inboxBannerInit(),j.length>0?frmAdminBuild.buildInit():null!==document.getElementById("frm_notification_settings")?frmAdminBuild.settingsInit():null!==document.getElementById("frm_styling_form")?frmAdminBuild.styleInit():null!==document.getElementById("form_global_settings")?frmAdminBuild.globalSettingsInit():null!==document.getElementById("frm_export_xml")?frmAdminBuild.exportInit():null!==document.querySelector(".frm-inbox-wrapper")?frmAdminBuild.inboxInit():null!==document.getElementById("frm-welcome")?frmAdminBuild.solutionInit():(function(){if(document.body.classList.contains("frm-admin-page-entries")){var e=document.getElementById("screen-options-wrap");if(e){var t=d({className:"frm_warning_style",text:B("Only 10 columns can be selected at a time.","formidable")});t.style.margin=0;var r=e.querySelector("legend");r.parentNode.insertBefore(t,r.nextElementSibling);var n=Array.from(e.querySelectorAll('input[type="checkbox"]')),i=function(){n.reduce((function(e,t){return t.checked?e+1:e}),0)>=10?(t.classList.remove("frm_hidden"),n.forEach((function(e){e.checked||(e.parentNode.classList.add("frm_noallow"),e.disabled=!0)}))):t.classList.add("frm_hidden")};i(),n.forEach((function(e){e.addEventListener("change",(function(e){e.target.checked?i():(t.classList.add("frm_hidden"),n.forEach((function(e){e.parentNode.classList.remove("frm_noallow"),e.disabled=!1})))}))}))}}}(),jo(),jQuery("[data-frmprint]").on("click",(function(){return window.print(),!1}))),jQuery(document).on("change","select[data-toggleclass], input[data-toggleclass]",Qi),function(){function e(e){var t=e.options[e.selectedIndex];e.querySelectorAll("option[data-dependency]:not([data-dependency-skip])").forEach((function(e){var r=document.querySelector(e.dataset.dependency);null==r||r.classList.toggle("frm_hidden",t!==e)}))}document.querySelectorAll("select.frm_select_with_dependency").forEach(e),frmDom.util.documentOn("change","select.frm_select_with_dependency",(function(t){return e(t.target)}))}(),(jQuery(document.getElementById("frm_adv_info")).length>0||jQuery(".frm_field_list").length>0)&&frmAdminBuild.panelInit(),i=jQuery(".wrap, .frm_wrap"),o=document.getElementById("frm_confirm_modal"),a=!1,l=!1,jQuery(o).on("click","[data-deletefield]",wr),jQuery(o).on("click","[data-removeid]",G),jQuery(o).on("click","[data-trashtemplate]",ko),i.on("click",".frm_remove_tag, .frm_remove_form_action",G),i.on("click","a[data-frmverify]",M),i.on("click","a[data-frmtoggle]",P),i.on("click","a[data-frmhide], a[data-frmshow]",z),i.on("change","input[data-frmhide], input[data-frmshow]",z),i.on("click",".widget-top,a.widget-action",$),i.on("mouseenter.frm",".frm_bstooltip, .frm_help",(function(){jQuery(this).off("mouseenter.frm"),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(this).tooltip("show")})),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(document).on("click","#doaction, #doaction2",(function(e){var t="doaction"===this.id?"top":"bottom",r=document.getElementById("bulk-action-selector-"+t),n=document.getElementById("confirm-bulk-delete-"+t);if(null!==r&&null!==n){if(a=this,!l&&"bulk_delete"===r.value)return e.preventDefault(),F(n),!1}else a=!1})),jQuery(document).on("click","#frm-confirmed-click",(function(e){if(!1!==a&&!e.target.classList.contains("frm-btn-inactive"))return"confirm-bulk-delete"===this.getAttribute("href")?(e.preventDefault(),l=!0,a.click(),!1):void 0})),function(){var e=To("#frm_upgrade_modal");function t(t){var r,n,i;if((r=t.target).classList){var o=r.classList.contains("frm_show_expired_modal")||null!==r.querySelector(".frm_show_expired_modal")||r.closest(".frm_show_expired_modal");if("change"===t.type&&r.classList.contains("frm_select_with_upgrade")){var a=r.options[r.selectedIndex];a&&a.dataset.upgrade&&(r=a)}if(!r.dataset.upgrade){var l=r.closest("[data-upgrade]");if(!l){if(!(l=r.closest(".frm_field_box")))return;r.dataset.upgrade=""}r=l}if(o)wp.hooks.doAction("frm_show_expired_modal",r);else{var s=r.dataset.upgrade;if(s&&!r.classList.contains("frm_show_upgrade_tab")){t.preventDefault();var d=e.get(0),c=d.querySelector(".frm_lock_icon");c&&(c.style.display="block",c.classList.remove("frm_lock_open_icon"),c.querySelector("use").setAttribute("href","#frm_lock_icon"));var f="frm_upgrade_modal_image",u=document.getElementById(f);u&&u.remove(),r.dataset.image&&(c&&(c.style.display="none"),c.parentNode.insertBefore(m({id:f,src:frmGlobal.url+"/images/"+r.dataset.image}),c));var _=d.querySelector(".license-level");_&&(_.textContent=Vn(r)),Jn(r,"modal",s),d.querySelector(".frm_are_not_installed").style.display=r.dataset.image?"none":"inline-block",d.querySelector(".frm_feature_label").textContent=s,d.querySelector("h2").style.display="block",e.dialog("open");var p=d.querySelector(".button-primary:not(.frm-oneclick-button)");n=p.getAttribute("href").replace(/(medium=)[a-z_-]+/gi,"$1"+r.getAttribute("data-medium")),null===(i=r.getAttribute("data-content"))&&(i=""),n=n.replace(/(content=)[a-z_-]+/gi,"$1"+i),p.setAttribute("href",n)}}}}!1!==e&&(document.addEventListener("click",t),frmDom.util.documentOn("change","select.frm_select_with_upgrade",t))}(),frmDom.util.documentOn("click","[data-modal-title]",Un);var s=jQuery(document.getElementById("frm_shortcodediv"));s.length>0&&(jQuery("a.edit-frm_shortcode").on("click",(function(){return s.is(":hidden")&&(s.slideDown("fast"),this.style.display="none"),!1})),jQuery(".cancel-frm_shortcode","#frm_shortcodediv").on("click",(function(){return s.slideUp("fast"),s.siblings("a.edit-frm_shortcode").show(),!1}))),jQuery(document).on("click","#frm-nav-tabs a",W),jQuery(".post-type-frm_display .frm-nav-tabs a, .frm-category-tabs a").on("click",(function(){var e=this.classList.contains("frm_show_upgrade_tab");if(!this.classList.contains("frm_noallow")||e)return e&&Kn(this),U(this),!1})),U(jQuery(".starttab a"),"auto"),jQuery(document).on("click","#frm-fid-search-menu a",(function(){var e=this.id.replace("fid-","");return jQuery('select[name="fid"]').val(e),Hn(document.getElementById("posts-filter")),!1})),jQuery(".frm_select_box").on("click focus",(function(){this.select()})),jQuery(document).on("input search change",".frm-auto-search:not(#frm-form-templates-page #template-search-input)",Lo),jQuery(document).on("focusin click",".frm-auto-search",Ao);var c=jQuery(".frm-auto-search");""!==c.val()&&c.trigger("keyup"),FrmFormsConnect.init(),jQuery(document).on("click",".frm-install-addon",fo),jQuery(document).on("click",".frm-activate-addon",co),jQuery(document).on("click",".frm-solution-multiple",so),jQuery("button, input[type=submit]").on("click",Do),document.addEventListener("click",(function(e){if("LABEL"===e.target.nodeName){var t=e.target.getAttribute("for");if(t){var r=document.getElementById(t);if(r&&r.nextElementSibling){var n=r.nextElementSibling.querySelector("button.dropdown-toggle.multiselect");n&&setTimeout((function(){return n.click()}),0)}}}})),frmAdminBuild.hooks.addFilter("frm_before_embed_modal",(function(e,t){var r,n,i=t.element;if("form"!==t.type)return e;var o=i.closest("tr");if(o)r=parseInt(o.querySelector(".column-id").textContent),n=o.querySelector(".column-form_key").textContent;else{r=document.getElementById("form_id").value;var a=document.getElementById("frm_form_key");if(a)n=a.value;else{var l=document.getElementById("frm-previewDrop");l&&(n=l.nextElementSibling.querySelector(".dropdown-item a").getAttribute("href").split("form=")[1])}}return[r,n]})),document.querySelectorAll("#frm-show-fields > li, .frm_grid_container li").forEach((function(t,r){t.addEventListener("click",(function(){var t,r,n;r=(null===(t=this.querySelector("li"))||void 0===t?void 0:t.dataset.fid)||this.dataset.fid,(n=document.querySelectorAll("[id^=frm_delete_field_".concat(r,"-]"))).length<2||e(n).slice(1).forEach((function(e,t){e.classList.contains("frm_other_option")||zo(r,e)}))}))}));var f=document.getElementById("frm_small_screen_proceed_button");f&&_(f,(function(){var e;null===(e=document.getElementById("frm_small_device_message_container"))||void 0===e||e.remove(),g("small_screen_proceed",new FormData)}));var u=document.getElementById("frm_sale_banner"),p=null==u?void 0:u.querySelector(".dismiss");u&&(_(u,(function(e){e.target.closest(".dismiss")||(window.location.href=u.getAttribute("data-url"))})),p&&_(p,(function(){u.remove();var e=new FormData;g("sale_banner_dismiss",e)})))},buildInit:function(){var e,t,r;jQuery("#frm_builder_page").on("mouseup","*:not(.frm-show-box)",Go),y=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return frmDom.util.debounce(e,t)}(oe,10),h=document.getElementById("post-body-content"),v=jQuery(h),jQuery(".frm_field_loading").length&&Le(jQuery(".frm_field_loading").first().attr("id")),V("ul.frm_sorting"),document.querySelectorAll(".field_type_list > li:not(.frm_show_upgrade)").forEach(X),jQuery("ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a").disableSelection(),jQuery(".frm_submit_ajax").on("click",Fn),jQuery(".frm_submit_no_ajax").on("click",zn),Gn(),jQuery("a.edit-form-status").on("click",kn),jQuery(".cancel-form-status").on("click",Ln),jQuery(".save-form-status").on("click",(function(){var e=jQuery(document.getElementById("form_change_status")).val();return jQuery('input[name="new_status"]').val(e),jQuery(document.getElementById("form-status-display")).html(e),jQuery(".cancel-form-status").trigger("click"),!1})),jQuery(".frm_form_builder form").first().on("submit",(function(){jQuery(".inplace_field").trigger("blur")})),lo(),Tr(),e=jQuery(w),t=document.getElementById("frm_form_editor_container"),e.on("click",".frm_add_logic_row",Er),e.on("click",".frm_add_watch_lookup_row",Lr),e.on("change",".frm_get_values_form",qr),e.on("change",".frm_logic_field_opts",bn),e.on("frm-multiselect-changed",'select[name^="field_options[admin_only_"]',Sn),jQuery(document.getElementById("frm-insert-fields")).on("click",".frm_add_field",Ae),j.on("click",".frm_clone_field",Ce),e.on("blur",'input[id^="frm_calc"]',Ye),e.on("change","input.frm_format_opt, input.frm_max_length_opt",lt),e.on("change click","[data-changeme]",ot),e.on("click","input.frm_req_field",st),e.on("click",".frm_mark_unique",ct),e.on("change",".frm_repeat_format",Vr),e.on("change",".frm_repeat_limit",Kr),e.on("change",".frm_js_checkbox_limit",Jr),e.on("input",'input[name^="field_options[add_label_"]',(function(){Yr(this,"add")})),e.on("input",'input[name^="field_options[remove_label_"]',(function(){Yr(this,"remove")})),e.on("change",'select[name^="field_options[data_type_"]',Nr),jQuery(t).on("click",".frm-collapse-page",Or),jQuery(t).on("click",".frm-collapse-section",Fr),e.on("click",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",Hr),e.on("keydown",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",(function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),Hr.call(this,e))})),jQuery(t).on("show.bs.dropdown hide.bs.dropdown",ze),e.on("click",".frm_toggle_sep_values",yt),e.on("click",".frm_toggle_image_options",ht),e.on("click",".frm_remove_image_option",Et),e.on("click",".frm_choose_image_box",xt),e.on("change",".frm_hide_image_text",Qt),e.on("change",".frm_field_options_image_size",jt),e.on("click",".frm_multiselect_opt",kt),j.on("mousedown","input, textarea, select",At),j.on("click","input[type=radio], input[type=checkbox]",At),j.on("click",".frm_delete_field",Nt),j.on("click",".frm_select_field",Tt),jQuery(document).on("click",".frm_delete_field_group",Ot),jQuery(document).on("click",".frm_clone_field_group",Dt),jQuery(document).on("click","#frm_field_group_controls > span:first-child",Mt),jQuery(document).on("click",".frm-row-layout-option",Yt),jQuery(document).on("click",".frm-merge-fields-into-row .frm-row-layout-option",Xt),jQuery(document).on("click",".frm-custom-field-group-layout",er),jQuery(document).on("click",".frm-merge-fields-into-row .frm-custom-field-group-layout",rr),jQuery(document).on("click",".frm-break-field-group",lr),j.on("click","#frm_field_group_popup .frm_grid_container input",sr),jQuery(document).on("click",".frm-cancel-custom-field-group-layout",dr),jQuery(document).on("click",".frm-save-custom-field-group-layout",fr),j.on("click","ul.frm_sorting",ur),jQuery(document).on("click",".frm-merge-fields-into-row",vr),jQuery(document).on("click",".frm-delete-field-groups",jr),j.on("click",'.frm-field-action-icons [data-toggle="dropdown"]',(function(){this.closest("li.form-field").classList.add("frm-field-settings-open"),jQuery(document).on("click","#frm_builder_page",Oe)})),j.on("mousemove","ul.frm_sorting",De),j.on("show.bs.dropdown",".frm-field-action-icons",He),jQuery(document).on("show.bs.dropdown","#frm_field_group_controls",Pe),e.on("click",".frm_single_option a[data-removeid]",It),e.on("mousedown",".frm_single_option input[type=radio]",Bt),e.on("focusin",".frm_single_option input[type=text]",Ct),e.on("click",".frm_add_opt",_t),e.on("change",".frm_single_option input",Zr),e.on("change",".frm_image_id",Zr),e.on("change",".frm_toggle_mult_sel",pt),e.on("focusin",".frm_classes + .frm-token-proxy-input",Bi),j.on("click",".frm_primary_label",zr),j.on("click",".frm_description",Rr),j.on("click","li.ui-state-default:not(.frm_noallow)",$r),j.on("dblclick","li.ui-state-default",Ur),e.on("change",".frm_tax_form_select",Xr),e.on("change","select.conf_field",ft),e.on("change",".frm_get_field_selection",jn),e.on("click",".frm-show-inline-modal",Bn),e.on("click",".frm-inline-modal .dismiss",qn),jQuery(document).on("change","[data-frmchange]",Tn),document.addEventListener("click",Nn),e.on("change",".frm_include_extras_field",et),e.on("change",'select[name^="field_options[form_select_"]',Mo),jQuery(document).on("submit","#frm_js_build_form",Fi),jQuery(document).on("change","#frm_builder_page input:not(.frm-search-input):not(.frm-custom-grid-size-input), #frm_builder_page select, #frm_builder_page textarea",Mi),nt(),jQuery(document).on("change",".frmjs_prod_data_type_opt",Fo),jQuery(document).on("focus",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Ar),jQuery(document).on("blur",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Br),frmDom.util.documentOn("click",".frm-show-field-settings",$r),frmDom.util.documentOn("change","select.frm_format_dropdown, select.frm_phone_type_dropdown",Wr),e.on("keydown",'.frm_single_option input[name^="field_options["], .frm_single_option input[name^="rows_"]',(function(e){"Enter"===e.key&&function(e){var t=e.closest(".frm_single_option").parentElement.querySelectorAll('.frm_single_option input[name^="field_options[" ], .frm_single_option input[name^="rows_"]'),r=Array.from(t),n=r.indexOf(e);if(!(n<0)){var i=r.slice(n+1).find((function(e){return null!==e.offsetParent}));if(i){i.focus();var o=i.value.length;i.setSelectionRange(o,o)}}}(e.currentTarget)})),!1!==(r=To("#frm-bulk-modal","700px"))&&(jQuery(".frm-insert-preset").on("click",mt),jQuery(w).on("click","a.frm-bulk-edit-link",(function(e){e.preventDefault();var t,n,i,o,a,l="",s=jQuery(this).closest("[data-fid]").data("fid"),d=pn(s),c=Ho(s);if(o=document.getElementById("frm_field_"+s+"_opts")){for(a=o.getElementsByTagName("li"),document.getElementById("bulk-field-id").value=s,t=0;t=a.length-1&&(document.getElementById("frm_bulk_options").value=l);return r.dialog("open"),!1}})),jQuery("#frm-update-bulk-opts").on("click",(function(){var e=document.getElementById("bulk-field-id").value;document.getElementById("bulk-option-type").value||(this.classList.add("frm_loading_button"),frmAdminBuild.updateOpts(e,document.getElementById("frm_bulk_options").value,r),Mi())}))),In(),document.addEventListener("frm_added_field",In),Be(),Po(),xn(),frmDom.util.documentOn("change",".frm_show_password_setting_input",(function(e){var t=e.target.getAttribute("data-fid"),r=document.getElementById("frm_field_id_"+t);r&&r.classList.toggle("frm_disabled_show_password",!e.target.checked)})),document.addEventListener("scroll",Ti,!0),document.addEventListener("change",qi),document.querySelector(".frm_form_builder").addEventListener("mousedown",(function(e){e.shiftKey&&e.preventDefault()})),wp.hooks.addAction("frmShowedFieldSettings","formidableAdmin",(function(e,t){t.querySelectorAll(".frm-collapse-me").forEach(Pr)}),9999)},settingsInit:function(){var e,t,r,n,i=jQuery(document.getElementById("frm_notification_settings"));i.on("click",".frm_email_buttons",oi),i.on("click",".frm_remove_field",ai),i.on("change",".frm_to_row, .frm_from_row",li),i.on("change",".frm_tax_selector",ji),i.on("change","select.frm_single_post_field",mi),i.on("change","select.frm_toggle_post_content",_i),i.on("change","select.frm_dyncontent_opt",pi),i.on("change",".frm_post_type",gi),i.on("click",".frm_add_postmeta_row",vi),i.on("click",".frm_add_posttax_row",hi),i.on("click",".frm_toggle_cf_opts",wi),i.on("click",".frm_duplicate_form_action",Zn),jQuery(".frm_actions_list").on("click",".frm_active_action",ti),jQuery("#frm-show-groups, #frm-hide-groups").on("click",ri),lo(),jQuery("ul.frm_actions_list li").each((function(){si(jQuery(this).children("a").data("actiontype"));var e=jQuery(this).find("i");"none"!==e.css("background-image")&&e.addClass("frm-inverse")})),jQuery(".frm_submit_settings_btn").on("click",xi),Gn(),(e=jQuery(".frm_form_settings")).on("click",".frm_add_form_logic",ui),e.on("click",".frm_already_used",fi),document.addEventListener("click",(function(e){var t=e.target;t.closest(".frm_image_preview_wrapper")&&(t.closest(".frm_choose_image_box")?xt.bind(t)(e):t.closest(".frm_remove_image_option")&&Et.bind(t)(e))})),e.on("mouseup","*:not(.frm-show-box)",Go),jQuery(document.getElementById("no_save")).on("change",(function(){this.checked&&!0!==confirm(a.no_save_warning)&&jQuery(this).attr("checked",!1)})),jQuery('select[name="options[edit_action]"]').on("change",Xn),t=document.getElementById("logged_in"),jQuery(t).on("change",(function(){this.checked?No(".hide_logged_in"):qo(".hide_logged_in")})),r=jQuery(document.getElementById("frm_cookie_expiration")),jQuery(document.getElementById("frm_single_entry_type")).on("change",(function(){"cookie"===this.value?r.fadeIn("slow"):r.fadeOut("slow")}));var o=document.getElementById("single_entry");jQuery(o).on("change",(function(){this.checked?No(".hide_single_entry"):qo(".hide_single_entry"),this.checked&&"cookie"===jQuery(document.getElementById("frm_single_entry_type")).val()?r.fadeIn("slow"):r.fadeOut("slow")})),jQuery(".hide_save_draft").hide();var l=jQuery(document.getElementById("save_draft"));l.on("change",(function(){this.checked?jQuery(".hide_save_draft").fadeIn("slow"):jQuery(".hide_save_draft").fadeOut("slow")})),Pn(l),n=document.getElementById("editable"),jQuery(n).on("change",(function(){this.checked?(jQuery(".hide_editable").fadeIn("slow"),Pn(document.getElementById("edit_action"))):(jQuery(".hide_editable").fadeOut("slow"),jQuery(".edit_action_message_box").fadeOut("slow"))})),jQuery(document).on("change","#protect_files",(function(){this.checked?jQuery(".hide_protect_files").fadeIn("slow"):jQuery(".hide_protect_files").fadeOut("slow")})),jQuery(document).on("frm-multiselect-changed","#protect_files_role",Sn),jQuery(document).on("submit",".frm_form_settings",Hi),jQuery(document).on("change","#form_settings_page input:not(.frm-search-input), #form_settings_page select, #form_settings_page textarea",Mi),jo(),jQuery(document).on("frm-action-loaded",Vi),frmDom.util.documentOn("change",'.frm_on_submit_type input[type="radio"]',(function(e){if(e.target.checked){var t=e.target.closest(".frm_form_action_settings");t.querySelectorAll(".frm_on_submit_dependent_setting:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden")})),t.querySelectorAll(".frm_on_submit_dependent_setting[data-show-if-"+e.target.value+"]").forEach((function(e){e.classList.remove("frm_hidden")})),t.setAttribute("data-on-submit-type",e.target.value)}}))},panelInit:function(){var e,t,r,n;jQuery(".frm_wrap, #postbox-container-1").on("click",".frm_insert_code",Ei),jQuery(document).on("change",".frm_insert_val",(function(){ki(jQuery(this).data("target"),jQuery(this).val()),jQuery(this).val("")})),jQuery(document).on("click change",'[name="frm-id-key-condition"]',Ai),jQuery(document).on("keyup change",".frm-build-logic",Ii),Yn(),jQuery(document).on("frmElementAdded",(function(e,t){Yn(t)})),jQuery(document).on("mousedown",".frm-show-box",Ci),t=document.getElementById("form_settings_page"),r=document.body.classList.contains("post-type-frm_display"),n=document.getElementById("frm_insert_fields_tab"),(null!==t||r||D)&&jQuery(document).on("focusin","form input, form textarea",(function(e){var i,o,a,l;if(e.stopPropagation(),(o=this).parentNode.parentNode.classList.contains("frm_has_shortcodes")&&(Wi(),"use"===(a=$i(o)).tagName?-1===(a=a.firstElementChild).getAttributeNS("http://www.w3.org/1999/xlink","href").indexOf("frm_close_icon")&&Oi(a,"nofocus"):a.classList.contains("frm_close_icon")||Oi(a,"nofocus")),jQuery(this).is(":not(:submit, input[type=button], .frm-search-input, input[type=checkbox])")){if(jQuery(e.target).closest("#frm_adv_info").length)return;if(null!==t||D)i=jQuery("#frm_html_tab"),jQuery(this).closest("#html_settings").length>0?(i.show(),i.siblings().hide(),jQuery("#frm_html_tab a").trigger("click"),function(e){var t,r=e.id;void 0!==r&&-1===r.indexOf("-search-input")&&(jQuery("#frm-adv-info-tab").attr("data-fills",r.trim()),e.classList.contains("field_custom_html")&&(r="field_custom_html"),t=["after_html","before_html","submit_html","field_custom_html"],jQuery.inArray(r,t)>=0&&(jQuery(".frm_code_list li:not(.show_"+r+")").addClass("frm_hidden"),jQuery(".frm_code_list li.show_"+r).removeClass("frm_hidden")))}(this)):((l=jQuery(".frm-category-tabs li"))[0]&&(l[0].style.display=""),n.click(),i.hide(),i.siblings().show());else if(r){var s=new CustomEvent("frm_legacy_views_handle_field_focus");s.frmData={idAttrValue:this.id},document.dispatchEvent(s)}}})),jQuery(".frm_wrap, #postbox-container-1").on("mousedown","#frm_adv_info a, .frm_field_list a",(function(e){e.preventDefault()})),(e=jQuery("#frm_adv_info")).on("click",".subsubsub a.frmids",(function(e){Ui("frmids",e)})),e.on("click",".subsubsub a.frmkeys",(function(e){Ui("frmkeys",e)}))},inboxInit:function(){var e;jQuery(".frm_inbox_dismiss").on("click",(function(e){var t=this.parentNode.parentNode,r=t.getAttribute("data-message"),n=this.getAttribute("href"),i=t.cloneNode(!0),o=document.querySelector(".frm-dismissed-inbox-messages");if("free_templates"!==r||this.classList.contains("frm_inbox_dismiss")){e.preventDefault(),data={action:"frm_inbox_dismiss",key:r,nonce:frmGlobal.nonce};var a="frm_inbox_slide_in"===t.id;a&&(t.classList.remove("s11-fadein"),t.classList.add("s11-fadeout"),t.addEventListener("animationend",(function(){return t.remove()}),{once:!0})),Bo(data,(function(){if(!a)return"#"!==n?(window.location=n,!0):void Co(t,(function(){var e;null!==o&&(i.classList.remove("frm-fade"),null===(e=i.querySelector(".frm-inbox-message-heading"))||void 0===e||e.removeChild(i.querySelector(".frm-inbox-message-heading .frm_inbox_dismiss")),o.append(i)),1===t.parentNode.querySelectorAll(".frm-inbox-message-container").length&&(document.getElementById("frm_empty_inbox").classList.remove("frm_hidden"),t.parentNode.closest(".frm-active").classList.add("frm-empty-inbox"),ho()),t.parentNode.removeChild(t)}))}))}})),!1===(null===(e=document.getElementById("frm_empty_inbox"))||void 0===e?void 0:e.classList.contains("frm_hidden"))&&ho()},solutionInit:function(){jQuery(document).on("submit","#frm-new-template",Qo)},styleInit:function(){var e=jQuery(".frm_image_preview_wrapper");e.on("click",".frm_choose_image_box",xt),e.on("click",".frm_remove_image_option",Et),wp.hooks.doAction("frm_style_editor_init")},customCSSInit:function(){console.warn("Calling frmAdminBuild.customCSSInit is deprecated.")},globalSettingsInit:function(){var e;jQuery(document).on("click","[data-frmuninstall]",Ki),lo(),null!==(e=document.getElementById("licenses_settings"))&&jQuery(e).on("click",".edd_frm_save_license",Ji),jQuery(document).on("click","#frm-new-template button",wo),jQuery("#frm-dismissable-cta .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_lite_settings_upgrade",nonce:frmGlobal.nonce}),jQuery(".settings-lite-cta").remove()}));var t=document.getElementById("frm_re_type");t&&t.addEventListener("change",Eo),document.querySelector(".frm_captchas").addEventListener("change",(function(e){var t,r=null===(t=document.querySelector('.frm_captchas input[checked="checked"]'))||void 0===t?void 0:t.value,n=e.target.value!==r;document.querySelector(".captcha_settings .frm_note_style").classList.toggle("frm_hidden",!n)})),frmDom.util.documentOn("submit",".frm_settings_form",(function(){return E=0}));var r=document.getElementById("manage_styles_settings");r&&r.addEventListener("change",(function(e){var t=e.target;"SELECT"===t.nodeName&&t.dataset.name&&!t.getAttribute("name")&&t.setAttribute("name",t.dataset.name)}));var n=document.getElementById("payments_settings"),i=null==n?void 0:n.querySelectorAll('[name="frm_payment_section"]');i&&i.forEach((function(e){e.addEventListener("change",(function(){if(e.checked){var t=n.querySelector('label[for="'.concat(e.id,'"]'));t&&t.setAttribute("aria-selected","true"),i.forEach((function(t){if(t!==e){var r=n.querySelector('label[for="'.concat(t.id,'"]'));r&&r.setAttribute("aria-selected","false")}}))}}))}))},exportInit:function(){jQuery(".frm_form_importer").on("submit",Yi),jQuery(document.getElementById("frm_export_xml")).on("submit",Zi),jQuery("#frm_export_xml input, #frm_export_xml select").on("change",eo),jQuery('input[name="frm_import_file"]').on("change",to),document.querySelector('select[name="format"]').addEventListener("change",no),jQuery('input[name="frm_export_forms[]"]').on("click",ao),lo(),jQuery(".frm-feature-banner .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_dismiss_migrator",plugin:this.id,nonce:frmGlobal.nonce}),this.parentElement.remove()})),oo(ro()),document.querySelector("#frm-export-select-all").addEventListener("change",(function(e){document.querySelectorAll('[name="frm_export_forms[]"]').forEach((function(t){return t.checked=e.target.checked}))}))},inboxBannerInit:function(){var e=document.getElementById("frm_banner");if(e){var t=e.querySelector(".frm-banner-dismiss");document.addEventListener("click",(function(r){r.target===t&&Bo({action:"frm_inbox_dismiss",key:e.dataset.key,nonce:frmGlobal.nonce},(function(){jQuery(e).fadeOut(400,(function(){e.remove()}))}))}))}},updateOpts:function(e,t,r){var n=pn(e),i=Ho(e)?"frm_bulk_products":"frm_import_options";jQuery.ajax({type:"POST",url:ajaxurl,data:{action:i,field_id:e,opts:t,separate:n,nonce:frmGlobal.nonce},success:function(t){document.getElementById("frm_field_"+e+"_opts").innerHTML=t,wp.hooks.doAction("frm_after_bulk_edit_opts",e),rn(e),void 0!==r&&(r.dialog("close"),document.getElementById("frm-update-bulk-opts").classList.remove("frm_loading_button"))}})},triggerRemoveLogic:function(e,t){jQuery("#frm_logic_"+e+"_"+t+" .frm_remove_tag").trigger("click")},downloadXML:function(e,t,r){var n=ajaxurl+"?action=frm_"+e+"_xml&ids="+t;null!==r&&(n=n+"&is_template="+r),location.href=n},hooks:{applyFilters:function(e){for(var t,r=arguments.length,n=new Array(r>1?r-1:0),i=1;i1?r-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r){var n=k,i=0;"summary"===e&&(i=j.children('li[data-type="break"]').length>0?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:Object.assign(pe(e,0,n,i),{field_options:t}),success:function(t){r(t),setTimeout((function(){Qn(),Ue(t,!0);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:n})}),10)},error:je})}))},confirmLinkClick:F,handleInsertFieldByDraggingResponse:ye,handleAddFieldClickResponse:Ie,syncLayoutClasses:le}}(),jQuery(document).ready((function(){var e;frmAdminBuild.init(),frmDom.bootstrap.setupBootstrapDropdowns((function(e){var t,r,n=e.querySelector(".frm-dropdown-toggle");n&&(n.hasAttribute("role")||n.setAttribute("role","button"),n.hasAttribute("tabindex")||n.setAttribute("tabindex",0)),"UL"===e.tagName&&(r=(r=(r=(r=(r=(r=(t=e).outerHTML).replace("
                        ","")).replaceAll("
                      • ",'
                      • ",""),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index ac8d89ce20..52efb64f7c 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -826,8 +826,8 @@ function frmAdminBuildJS() { cursor: 'grabbing', refreshPositions: true, cursorAt: { - top: 1, - left: 70 // The width of draggable button is 140. 70 should center the draggable on the cursor. + top: 0, + left: 90 // The width of draggable button is 180. 90 should center the draggable on the cursor. } }; if ( 'string' === typeof handle ) { From b0fbd468de9938c7fb91b105ac24f74b60c6df34 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 12:57:51 -0300 Subject: [PATCH 211/230] Update some e2e tests, show CSS validation errors --- tests/cypress/e2e/Add-Ons/validateAddOnsPage.cy.js | 2 +- tests/cypress/e2e/Form Templates/FormTemplates.cy.js | 2 +- tests/cypress/e2e/Forms/formPageDataValidation.cy.js | 3 ++- tests/cypress/e2e/validate-css.cy.js | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/tests/cypress/e2e/Add-Ons/validateAddOnsPage.cy.js b/tests/cypress/e2e/Add-Ons/validateAddOnsPage.cy.js index df767cf53d..651d4d07d7 100644 --- a/tests/cypress/e2e/Add-Ons/validateAddOnsPage.cy.js +++ b/tests/cypress/e2e/Add-Ons/validateAddOnsPage.cy.js @@ -160,7 +160,7 @@ describe( 'Add-Ons page', () => { } ); cy.origin( 'https://formidableforms.com', () => { - cy.get( 'h1' ).should( 'have.text', 'Formidable Forms Docs & Support' ); + cy.get( 'h1' ).should( 'have.text', 'Docs & Support' ); } ); cy.visit( '/wp-admin/admin.php?page=formidable-addons' ); diff --git a/tests/cypress/e2e/Form Templates/FormTemplates.cy.js b/tests/cypress/e2e/Form Templates/FormTemplates.cy.js index eaf152fbb8..61a89de921 100644 --- a/tests/cypress/e2e/Form Templates/FormTemplates.cy.js +++ b/tests/cypress/e2e/Form Templates/FormTemplates.cy.js @@ -287,7 +287,7 @@ describe( 'Form Templates page', () => { .click( { force: true } ); cy.origin( 'https://formidableforms.com', () => { - cy.get( 'h1.margin30' ).should( 'have.text', 'Contact Us Form Template' ); + cy.get( 'h1' ).should( 'have.text', 'Contact Us Form Template' ); cy.get( 'h2.aligncenter' ).should( 'contain', "What's in the Contact Us Form Template Demo" ); } ); diff --git a/tests/cypress/e2e/Forms/formPageDataValidation.cy.js b/tests/cypress/e2e/Forms/formPageDataValidation.cy.js index af6888a1ec..9c36949aed 100644 --- a/tests/cypress/e2e/Forms/formPageDataValidation.cy.js +++ b/tests/cypress/e2e/Forms/formPageDataValidation.cy.js @@ -27,7 +27,8 @@ describe( 'Forms page', () => { 'The Only WordPress Form Maker & Application Builder Plugin', 'Upgrade Today to Unlock the Full Power of Formidable Forms', 'The Most Advanced WordPress Form builder', - 'More Than Just a WordPress Form builder' + 'More Than Just a WordPress Form builder', + 'Get More Done in Less Time with Better WordPress Forms', ] ).to.include( headingText ); } ); diff --git a/tests/cypress/e2e/validate-css.cy.js b/tests/cypress/e2e/validate-css.cy.js index bedc7705a7..9e3ad064af 100644 --- a/tests/cypress/e2e/validate-css.cy.js +++ b/tests/cypress/e2e/validate-css.cy.js @@ -43,7 +43,7 @@ describe( 'Run some CSS validation', () => { // Fail the test if there are validation errors if ( errors.length ) { console.log( 'CSS Validation errors for ' + url, errors ); - throw new Error( 'CSS validation errors found' ); + throw new Error( 'CSS validation errors found: ' + errors.join( ', ' ) ); } } ); } ); From 69cdbabd0447356cc96dc77a188d8a11e50bbed1 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 13:09:27 -0300 Subject: [PATCH 212/230] Dump CSS with errors --- tests/cypress/e2e/validate-css.cy.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/cypress/e2e/validate-css.cy.js b/tests/cypress/e2e/validate-css.cy.js index 9e3ad064af..a9944b09c1 100644 --- a/tests/cypress/e2e/validate-css.cy.js +++ b/tests/cypress/e2e/validate-css.cy.js @@ -43,7 +43,7 @@ describe( 'Run some CSS validation', () => { // Fail the test if there are validation errors if ( errors.length ) { console.log( 'CSS Validation errors for ' + url, errors ); - throw new Error( 'CSS validation errors found: ' + errors.join( ', ' ) ); + throw new Error( 'CSS validation errors found in: ' + css ); } } ); } ); From b0d52a0e1a19516608b0198bb324f557104c3ed8 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 13:32:29 -0300 Subject: [PATCH 213/230] Update more e2e tests --- .../e2e/Applications/validateApplicationsPage.cy.js | 5 ++++- tests/cypress/e2e/Form Templates/FormTemplates.cy.js | 2 +- tests/cypress/e2e/Forms/formPageDataValidation.cy.js | 12 ++++++------ tests/cypress/e2e/validate-css.cy.js | 3 +-- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js b/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js index 37820bd79c..c82c80961a 100644 --- a/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js +++ b/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js @@ -23,7 +23,10 @@ describe( 'Applications page', () => { const text = $h1.text(); expect( text ).to.satisfy( t => t.includes( 'The Only WordPress Form Maker & Application Builder Plugin' ) || - t.includes( 'Upgrade Today to Unlock the Full Power of Formidable Forms' ) + t.includes( 'Upgrade Today to Unlock the Full Power of Formidable Forms' ) || + t.includes( 'The Most Advanced WordPress Form builder' ) || + t.includes( 'More Than Just a WordPress Form builder' ) || + t.includes( 'Get More Done in Less Time with Better WordPress Forms' ) ); } ); } ); diff --git a/tests/cypress/e2e/Form Templates/FormTemplates.cy.js b/tests/cypress/e2e/Form Templates/FormTemplates.cy.js index 61a89de921..2230d9b703 100644 --- a/tests/cypress/e2e/Form Templates/FormTemplates.cy.js +++ b/tests/cypress/e2e/Form Templates/FormTemplates.cy.js @@ -288,7 +288,7 @@ describe( 'Form Templates page', () => { cy.origin( 'https://formidableforms.com', () => { cy.get( 'h1' ).should( 'have.text', 'Contact Us Form Template' ); - cy.get( 'h2.aligncenter' ).should( 'contain', "What's in the Contact Us Form Template Demo" ); + cy.get( 'h2' ).should( 'contain', "What's in the Contact Us Form Template Demo" ); } ); cy.visit( '/wp-admin/admin.php?page=formidable-form-templates' ); diff --git a/tests/cypress/e2e/Forms/formPageDataValidation.cy.js b/tests/cypress/e2e/Forms/formPageDataValidation.cy.js index 9c36949aed..608f3f7460 100644 --- a/tests/cypress/e2e/Forms/formPageDataValidation.cy.js +++ b/tests/cypress/e2e/Forms/formPageDataValidation.cy.js @@ -22,13 +22,13 @@ describe( 'Forms page', () => { cy.origin( 'https://formidableforms.com', { args: { href } }, ( { href } ) => { cy.visit( href ); cy.get( 'h1' ).should( $h1 => { - const headingText = $h1.text(); + const headingText = $h1.text().toLowerCase(); expect( [ - 'The Only WordPress Form Maker & Application Builder Plugin', - 'Upgrade Today to Unlock the Full Power of Formidable Forms', - 'The Most Advanced WordPress Form builder', - 'More Than Just a WordPress Form builder', - 'Get More Done in Less Time with Better WordPress Forms', + 'the only wordpress form maker & application builder plugin', + 'upgrade today to unlock the full power of formidable forms', + 'the most advanced wordpress form builder', + 'more than just a wordpress form builder', + 'get more done in less time with better wordpress forms', ] ).to.include( headingText ); } ); diff --git a/tests/cypress/e2e/validate-css.cy.js b/tests/cypress/e2e/validate-css.cy.js index a9944b09c1..ebbd839902 100644 --- a/tests/cypress/e2e/validate-css.cy.js +++ b/tests/cypress/e2e/validate-css.cy.js @@ -42,8 +42,7 @@ describe( 'Run some CSS validation', () => { // Fail the test if there are validation errors if ( errors.length ) { - console.log( 'CSS Validation errors for ' + url, errors ); - throw new Error( 'CSS validation errors found in: ' + css ); + throw new Error( 'CSS validation errors found' ); } } ); } ); From cbef31fb6c1d9e8167584665c310f9f64b9d87f3 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 13:33:08 -0300 Subject: [PATCH 214/230] Update more e2e tests --- .../e2e/Applications/validateApplicationsPage.cy.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js b/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js index c82c80961a..06dd19c660 100644 --- a/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js +++ b/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js @@ -20,13 +20,13 @@ describe( 'Applications page', () => { cy.origin( 'https://formidableforms.com', { args: { href } }, ( { href } ) => { cy.visit( href ); cy.get( 'h1' ).should( $h1 => { - const text = $h1.text(); + const text = $h1.text().toLowerCase(); expect( text ).to.satisfy( t => - t.includes( 'The Only WordPress Form Maker & Application Builder Plugin' ) || - t.includes( 'Upgrade Today to Unlock the Full Power of Formidable Forms' ) || - t.includes( 'The Most Advanced WordPress Form builder' ) || - t.includes( 'More Than Just a WordPress Form builder' ) || - t.includes( 'Get More Done in Less Time with Better WordPress Forms' ) + t.includes( 'the only wordpress form maker & application builder plugin' ) || + t.includes( 'upgrade today to unlock the full power of formidable forms' ) || + t.includes( 'the most advanced wordpress form builder' ) || + t.includes( 'more than just a wordpress form builder' ) || + t.includes( 'get more done in less time with better wordpress forms' ) ); } ); } ); From ba290934cbdbaee02540878724657fdb4632f363 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 13:43:48 -0300 Subject: [PATCH 215/230] Fix more failing e2e tests --- .../cypress/e2e/Applications/validateApplicationsPage.cy.js | 6 +++--- tests/cypress/e2e/Form Templates/FormTemplates.cy.js | 1 - 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js b/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js index 06dd19c660..6f7c00ba92 100644 --- a/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js +++ b/tests/cypress/e2e/Applications/validateApplicationsPage.cy.js @@ -74,7 +74,7 @@ describe( 'Applications page', () => { } ); cy.origin( 'https://formidableforms.com', () => { cy.get( 'h1' ).should( 'have.text', 'Business Directory Template' ); - cy.get( 'p.margin30' ).within( () => { + cy.get( 'div.c-template-required-plan__text' ).within( () => { cy.contains( 'This application template is included with the' ).should( 'be.visible' ); cy.contains( 'Elite plan.' ).should( 'be.visible' ); } ); @@ -202,7 +202,7 @@ describe( 'Applications page', () => { } ); cy.origin( 'https://formidableforms.com', () => { cy.get( 'h1' ).should( 'have.text', 'Letter of Recommendation Template' ); - cy.get( 'p.margin30' ).within( () => { + cy.get( 'div.c-template-required-plan__text' ).within( () => { cy.contains( 'This application template is included with the' ).should( 'be.visible' ); cy.contains( 'Business plan.' ).should( 'be.visible' ); } ); @@ -319,7 +319,7 @@ describe( 'Applications page', () => { cy.origin( 'https://formidableforms.com', () => { cy.get( 'h1' ).should( 'have.text', 'Testimonials Template' ); - cy.get( 'p.margin30' ).within( () => { + cy.get( 'div.c-template-required-plan__text' ).within( () => { cy.contains( 'This application template is included with the' ).should( 'be.visible' ); cy.contains( 'Business plan.' ).should( 'be.visible' ); } ); diff --git a/tests/cypress/e2e/Form Templates/FormTemplates.cy.js b/tests/cypress/e2e/Form Templates/FormTemplates.cy.js index 2230d9b703..e71925195b 100644 --- a/tests/cypress/e2e/Form Templates/FormTemplates.cy.js +++ b/tests/cypress/e2e/Form Templates/FormTemplates.cy.js @@ -288,7 +288,6 @@ describe( 'Form Templates page', () => { cy.origin( 'https://formidableforms.com', () => { cy.get( 'h1' ).should( 'have.text', 'Contact Us Form Template' ); - cy.get( 'h2' ).should( 'contain', "What's in the Contact Us Form Template Demo" ); } ); cy.visit( '/wp-admin/admin.php?page=formidable-form-templates' ); From 8f7f5169645cdc54b4a8c5fedecc0806bbf72208 Mon Sep 17 00:00:00 2001 From: Sherv Date: Mon, 8 Sep 2025 19:54:04 +0300 Subject: [PATCH 216/230] Replace infinity calc with explicit order values in flex utility classes --- css/frm_admin.css | 2 +- resources/scss/admin/utilities/layout/_flex.scss | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/css/frm_admin.css b/css/frm_admin.css index e4afff8a86..8ac905e74e 100644 --- a/css/frm_admin.css +++ b/css/frm_admin.css @@ -1,3 +1,3 @@ -@font-face{font-family:"s11-fp";src:url("../fonts/s11-fp.woff?v=7") format("woff");font-weight:400;font-style:normal}.frm-submenu-highlight{background:#1da867}.frm-submenu-highlight a span{color:#fff;font-weight:600}.frmfont,.frm_icon_font{text-decoration:none;text-shadow:none;font-weight:400;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:auto;line-height:1.5;transition:color .1s ease-in-out,opacity .1s ease-in-out;font-size:18px}i.frmfont,i.frm_icon_font{font-style:normal;font-variant:normal;speak:none}.frmfont::before,select.frmfont,.frm_icon_font::before,select.frm_icon_font{font-family:"s11-fp" !important;text-align:center}.frmfont,a.frmfont,.frmfont:hover,a.frmfont:hover .frm_icon_font,a.frm_icon_font,.frm_icon_font:hover,a.frm_icon_font:hover{text-decoration:none !important;box-shadow:none}.frmfont:focus,.frm_icon_font:focus{box-shadow:none}.frmfont:active,.frm_icon_font:active{outline:none}.frm_trigger .frm_icon_font{padding:0 5px}.frm_logo_icon::before{content:"\e601"}.frm_required_icon::before{content:"\e612"}.frm_delete_icon::before{content:"\e610" !important}.frm_move_icon::before{content:"\e61a"}.frm_drag_icon::before{content:"\e93b"}.frm_clear_icon::before{content:"\e60a"}.frm_noclear_icon::before{content:"\e60b"}.frm_duplicate_icon::before{content:"\e61b"}.frm_copy_icon::before{content:"\f0c5"}.frm_clone_icon::before{content:"\f24d"}.frm_tooltip_icon::before{content:"\e611"}.frm_tooltip_solid_icon::before{content:"\e907"}.frm_forbid_icon::before{content:"\e636"}.frm_checkmark_icon::before{content:"\e90a"}.frm_check_icon::before{content:"\e605"}.frm_check1_icon::before{content:"\e606"}.frm_plus_icon::before{content:"\e62f"}.frm_plus1_icon::before{content:"\e602"}.frm_plus2_icon::before{content:"\e603"}.frm_plus3_icon::before{content:"\e632"}.frm_plus4_icon::before{content:"\e60f"}.frm_minus_icon::before{content:"\e62e"}.frm_minus1_icon::before{content:"\e600"}.frm_minus2_icon::before{content:"\e604"}.frm_minus3_icon::before{content:"\e633"}.frm_minus4_icon::before{content:"\e613"}.frm_cancel_icon::before{content:"\e607"}.frm_cancel1_icon::before{content:"\e608"}.frm_close_icon::before{content:"\e928"}.frm_report_problem_solid_icon::before{content:"\e914"}.frm_report_problem_icon::before{content:"\e915"}.frm_arrowup_icon::before{content:"\e60d"}.frm_arrowup1_icon::before{content:"\e60e"}.frm_arrowup2_icon::before{content:"\e630"}.frm_arrowup3_icon::before{content:"\e62b"}.frm_arrowup4_icon::before{content:"\e62c"}.frm_arrowup5_icon::before{content:"\e635"}.frm_arrowup5_solid_icon::before{content:"\e9d"}.frm_arrowup7_icon::before{content:"\e908"}.frm_arrowup6_icon::before{content:"\e62d"}.frm_arrowdown_icon::before{content:"\e609"}.frm_arrowdown1_icon::before{content:"\e60c"}.frm_arrowdown2_icon::before{content:"\e631"}.frm_arrowdown3_icon::before{content:"\e628"}.frm_arrowdown4_icon::before{content:"\e629"}.frm_arrowdown5_icon::before{content:"\e634"}.frm_arrowdown5_solid_icon::before{content:"\e905"}.frm_arrowdown7_icon::before{content:"\e90b"}.frm_arrowdown6_icon::before{content:"\e62a"}.frm_arrow_left_icon::before{content:"\e912"}.frm_arrow_right_icon::before{content:"\e913"}.frm_filter_icon::before{content:"\e90c"}.frm_download_icon::before{content:"\e615"}.frm_upload2_icon::before{content:"\f093"}.frm_upload_icon::before{content:"\e616"}.frm_download2_icon::before{content:"\f019"}.frm_hard_drive_icon::before{content:"\e916"}.frm_pencil_solid_icon::before{content:"\e901"}.frm_pencil_icon::before{content:"\e61d"}.frm_signature_icon::before{content:"\e919"}.frm_user_icon::before{content:"\e7ff"}.frm_register_icon::before{content:"\e637"}.frm_account_circle_solid_icon::before{content:"\e853"}.frm_account_circle_icon::before{content:"\e921"}.frm_address_card_icon::before{content:"\e996"}.frm_paragraph_icon::before{content:"\f1dd"}.frm_checkbox_unchecked_icon::before{content:"\e91e"}.frm_checkbox_icon::before{content:"\e922"}.frm_checkbox_solid_icon::before{content:"\e91f"}.frm_dropdown_icon::before{content:"\e909"}.frm_caret_square_down_icon::before{content:"\f150"}.frm_check_square_icon::before{content:"\f14a"}.frm_radio_unchecked_icon::before{content:"\e971"}.frm_radio_checked_icon::before{content:"\ea54"}.frm_scrubber_icon::before{content:"\f2f8"}.frm_location_solid_icon::before{content:"\e955"}.frm_location_icon::before{content:"\e947"}.frm_toggle_on_icon::before{content:"\f205"}.frm_toggle_off_icon::before{content:"\f204"}.frm_shield_check_icon::before{content:"\f2f7"}.frm_shield_check_solid_icon::before{content:"\e97d"}.frm_clock_icon::before{content:"\e929"}.frm_clock_solid_icon::before{content:"\e985"}.frm_link_icon::before{content:"\f0c1"}.frm_email_icon::before{content:"\e626"}.frm_email_solid_icon::before{content:"\f0e0"}.frm_mail_bulk_icon::before{content:"\e95c"}.frm_phone_icon::before{content:"\e942"}.frm_calendar_icon::before{content:"\f073"}.frm_code_icon::before{content:"\e90d"}.frm_tag_icon::before{content:"\e98b"}.frm_tag_solid_icon::before{content:"\e989"}.frm_price_tags_icon::before{content:"\e936"}.frm_search_icon::before{content:"\e978"}.frm_sitemap_icon::before{content:"\f0e8"}.frm_file_icon::before{content:"\f15b"}.frm_file_text_solid_icon::before{content:"\f15c"}.frm_file_text_icon::before{content:"\e923"}.frm-option-icon::before,.frm_option_icon::before{content:"\e904"}.frm_option_solid_icon::before{content:"\e906"}.frm_more_horiz_icon::before{content:"\e5d3"}.frm_more_vert_icon::before{content:"\e5d4"}.frm_more_horiz_solid_icon{font-size:28px !important;font-weight:700;line-height:18px}.frm_more_horiz_solid_icon::before{content:"···"}.frm_more_vert_solid_icon::before{content:"\f142"}.frm_calculator_icon::before{content:"\f1ec"}.frm_keyboard_icon::before{content:"\e924"}.frm_eye_icon::before{content:"\f06e"}.frm_eye_solid_icon::before{content:"\e945"}.frm_eye_slash_icon::before{content:"\f070"}.frm_eye_slash_solid_icon::before{content:"\e949"}.frm_page_break_icon::before{content:"\e8e9"}.frm_view_day_icon::before{content:"\e8ed"}.frm_attach_file_icon::before{content:"\e226"}.frm_printer_icon::before{content:"\e926"}.frm_header_icon::before{content:"\f1dc"}.frm_h1_icon::before{content:"\e94c"}.frm_repeat_icon::before{content:"\f363"}.frm_repeater_icon::before{content:"\e974"}.frm_hashtag_icon::before{content:"\e292"}.frm_save_icon::before{content:"\e927"}.frm_sliders_icon::before{content:"\f1de"}.frm_code_commit_icon::before{content:"\f386"}.frm_star_icon::before{content:"\e9d7"}.frm_star_full_icon::before{content:"\e9d9"}.frm_star_half_icon::before{content:"\e9d8"}.frm_linear_scale_icon::before{content:"\e260"}.frm_pie_chart_icon::before{content:"\e99a"}.frm_stats_bars_icon::before{content:"\e99c"}.frm_sms_icon::before{content:"\e61c"}.frm_highrise_icon::before{content:"\e617"}.frm_mailchimp_icon::before{content:"\e622"}.frm_feed_icon::before{content:"\e624"}.frm_align_right_icon::before{content:"\e90f"}.frm_align_left_icon::before{content:"\e910"}.frm_button_icon::before{content:"\e911"}.frm_browser_icon::before{content:"\e925"}.frm_cloud_upload_solid_icon::before{content:"\e92c"}.frm_shuffle_icon::before{content:"\e917"}.frm_swap_icon::before{content:"\e918"}.frm_pallet_icon::before{content:"\e96d"}.frm_fingerprint_icon::before{content:"\e94a"}.frm_ghost_icon::before{content:"\e94b"}.frm_heart_solid_icon::before{content:"\e94d"}.frm_heart_icon::before{content:"\e94e"}.frm_history_icon::before{content:"\e94f"}.frm_import_icon::before{content:"\e91a"}.frm_export_icon::before{content:"\e91b"}.frm_label_solid_icon::before{content:"\e952"}.frm_label_icon::before{content:"\e953"}.frm_lock_open_icon::before{content:"\e957"}.frm_lock_icon::before{content:"\e959"}.frm_dollar_sign_icon::before{content:"\e91c"}.frm_percent_icon::before{content:"\e939"}.frm_external_link_icon::before{content:"\e966"}.frm_pageview_solid_icon::before{content:"\e96a"}.frm_pageview_icon::before{content:"\e96b"}.frm_settings_icon::before{content:"\e97a"}.frm_stamp_icon::before{content:"\e980"}.frm_support_icon::before{content:"\f1cd"}.frm_text_icon::before{content:"\e98d"}.frm_text2_icon::before{content:"\f031"}.frm_white_label_icon::before{content:"\e91d" !important}.frm_authorize_icon::before{content:"\e903"}.frm_icon_font.frm_activecampaign_icon{background-image:none}.frm_activecampaign_icon::before{content:"\e930"}.frm_aweber_icon::before{content:"\e627"}.frm_campaignmonitor_icon::before{content:"\e946"}.frm_constant_contact_icon::before{content:"\e931"}.frm_getresponse_icon::before{content:"\e932"}.frm_googlesheets_icon::before{content:"\e944"}.frm_building_icon::before{content:"\e93f"}.frm_hubspot_icon::before{content:"\e933"}.frm_icontact_icon::before{content:"\e940"}.frm_icon_font.frm_mailpoet_icon::before{content:"\e934"}.frm_paypal_icon::before{content:"\e61f"}.frm_sendinblue_icon::before{content:"\e943"}.frm_sendy_icon::before{content:"\e941"}.frm_salesforce_icon::before{content:"\e935"}.frm_salesforcealt_icon::before{content:"\e937"}.frm_stripe_icon::before{content:"\e902"}.frm_stripealt_icon::before{content:"\e93d"}.frm_twilio_icon::before{content:"\e620"}.frm_woocommerce_icon::before{content:"\e90e"}.frm_wordpress_icon::before{content:"\f19a"}.frm_credit_card_icon::before{content:"\e938"}.frm_credit-card-alt_icon::before,.frm_credit_card_alt_icon::before{content:"\f283"}.frm_cc_amex_icon::before{content:"\f1f3"}.frm_cc_discover_icon::before{content:"\f1f2"}.frm_cc_mastercard_icon::before{content:"\f1f1"}.frm_cc_visa_icon::before{content:"\f1f0"}.frm_cc_paypal_icon::before{content:"\f1f4"}.frm_cc_stripe_icon::before{content:"\f1f5"}:root,.frm-white-body,.frm_wrap{--grey-900: #101828;--grey-800: #1D2939;--grey-700: #344054;--grey-600: #475467;--grey-500: #667085;--grey-400: #98A2B3;--grey-300: #D0D5DD;--grey-200: #EAECF0;--grey-100: #F2F4F7;--grey-50: #F9FAFB;--grey-25: #FCFCFD;--dark-grey: var(--grey-700);--medium-grey: rgba(40, 47, 54, .65);--grey: var(--grey-500);--grey-border: var(--grey-300);--lightest-grey: rgb(250, 250, 250);--sidebar-color: var(--grey-50);--sidebar-hover: var(--grey-200);--primary-700: #2B66A9;--primary-500: #4199FD;--primary-300: #80BBFE;--primary-200: #C0DDFE;--primary-50: #ECF5FF;--primary-25: #F5FAFF;--primary-color: var(--primary-500);--primary-hover: var(--primary-700);--light-blue: var(--primary-25);--blue-border: rgb(188, 224, 253);--error-700: #B42318;--error-500: #F04438;--error-300: #FECDCA;--error-100: #FEE4E2;--error-25: #FFF5F4;--green: rgb(63, 172, 37);--orange: #F15A24;--warning-500: #F79009;--pink: rgb(226, 42, 110);--purple: rgb(141, 53, 245);--success-900: #054F31;--success-800: #065F46;--success-500: #12b76a;--success-100: #D1FAE5;--success-200: #A6F4C5;--success-50: #ECFDF3;--success-25: #f6fef9;--border-radius: 35px;--small-radius: 8px;--medium-radius: 16px;--small-sidebar: 275px;--medium-sidebar: 350px;--big-sidebar: 390px;--biggest-sidebar: 450px;--text-xs: 12px;--text-sm: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--h-xs: 24px;--h-sm: 30px;--h-md: 36px;--leading: 1.5;--gap-2xs: 4px;--gap-xs: 8px;--gap-sm: 16px;--gap-md: 24px;--gap-lg: 32px;--gap-xl: 40px;--gap-2xl: 48px;--box-shadow-xs: 0 0.47074466943740845px 0.9414893388748169px 0 rgba(16, 24, 40, 0.05);--box-shadow-sm: 0 0.470745px 1.41223px rgba(16, 24, 40, 0.1), 0 0.470745px 0.941489px rgba(16, 24, 40, 0.06);--box-shadow-md: 0 1.88298px 3.76596px -0.941489px rgba(16, 24, 40, 0.1), 0 0.941489px 1.88298px -0.941489px rgba(16, 24, 40, 0.06);--box-shadow-lg: 0 6px 8px -2px rgba(16, 24, 40, 0.08), 0 1.88298px 4px -1px rgba(16, 24, 40, 0.03), 0 0.470745px 1.41223px rgba(16, 24, 40, 0.1), 0 0.470745px 0.941489px rgba(16, 24, 40, 0.06);--box-shadow-xl: 0 9.41489px 11.2979px -1.88298px rgba(16, 24, 40, 0.08), 0 3.76596px 3.76596px -1.88298px rgba(16, 24, 40, 0.03);--box-shadow-xxl: 0 11px 22px -5px rgba(16, 24, 40, 0.18);--button-shadow: 0 0.47px 0.94px 0 rgba(16, 24, 40, 0.06), 0 0.47px 1.47px 0 rgba(16, 24, 40, 0.1);--check-label-color: var(--grey-700)}@font-face{font-family:"Inter";src:url("../fonts/Inter-VariableFont_slnt,wght.ttf?v=1") format("truetype")}.with_frm_style,.frm-white-body .wpbody-content,.frm_wrap{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}@media not all and (min-resolution: 0.001dpcm){@supports(-webkit-appearance: none) and (stroke-color: transparent){.with_frm_style,.frm-white-body .wpbody-content,.frm_wrap{-webkit-font-smoothing:antialiased}}}.frm-sm-z-index{z-index:1}.frm-md-z-index{z-index:5}.frm-white-body,.frm-white-body p,.frm_wrap,.frm_wrap p,.frm-modal,.frm-white-body .postbox .inside{font-size:var(--text-sm);color:var(--grey-500);line-height:var(--leading)}.frm-white-body p,.frm_wrap p{margin:var(--gap-sm) 0}body:not(.frm-admin-page-styles):not(.frm-admin-page-style) .with_frm_style .frm_form_fields>fieldset{--fieldset-padding: 15px 0}a,.widget .widget-top,.stuffbox h3,.frm-collapsed{cursor:pointer;text-decoration:none}.post-type-frm_display .wrap>#posts-filter,.wrap.frm-with-margin,.frm_wrap>.wrap{margin:var(--gap-sm) var(--gap-md) var(--gap-md)}#frm_top_bar+.wrap{margin:var(--gap-xl)}.frm-full-screen #wpbody-content>.wrap{margin:0}.post-type-frm_display .wrap{margin:0}.toplevel_page_formidable #post-body-content{overflow-x:visible}.frm-full-screen{height:100%;overflow:hidden}.frm-full-screen.frm-admin-page-reports,.frm-full-screen.frm-admin-page-entries,.frm-full-screen.post-type-frm_display{overflow:auto}.frm-full-screen #wpadminbar,.frm-full-screen #adminmenumain,.frm-full-screen .wp-header-end{display:none}body.frm-white-body:not(.frm-full-screen) .mce-fullscreen{top:32px;left:160px}.frm-full-screen #wpbody-content,.frm-full-screen #wpbody,.frm-full-screen #wpcontent{padding:0;overflow:hidden;margin:0 !important}.frm-white-body #wpbody-content{position:relative;padding-bottom:0}.post-new-php.post-type-frm_display #screen-meta-links,.post-php.post-type-frm_display #screen-meta-links{display:none}.frm-white-body #screen-meta-links{position:fixed;bottom:0;right:20px}.frm-full-screen #screen-meta-links .screen-meta-toggle{right:55px}.frm-white-body #screen-meta-links .show-settings{border-radius:var(--small-radius) var(--small-radius) 0 0;border:1px solid var(--grey-300);border-bottom:none}.frm-white-body.frm-lite #screen-meta-links .screen-meta-toggle{right:125px}.frm-white-body #screen-meta{margin:0}.frm-white-body #screen-meta-links .show-settings::after{color:var(--grey)}.frm-white-body .columns-2{border-bottom:1px solid var(--grey-300)}.frm-full-screen .columns-2{border:none}body.post-type-frm_display.edit-php,body.frm-white-body{background:#fff}body.frm-white-body ul#adminmenu a.wp-has-current-submenu::after,body.frm-white-body ul#adminmenu>li.current>a.current::after{border-right-color:#fff}.frm-white-body #wpcontent{padding-left:0;padding-right:0}.frm-white-body .wrap #post-body{padding:0 20px}.frm-grey-body #wpbody{background:var(--grey-100)}.frm-grey-body #frm_top_bar{background:#fff}.post-type-frm_display .tablenav,.frm_wrap .tablenav{margin-bottom:10px}.frm-white-body .tablenav .actions select,.wp-admin .frm_wrap .tablenav select{margin-right:var(--gap-xs)}.tablenav .actions .button{margin-top:1px}.frm-white-body table.widefat{background:var(--lightest-grey);border-width:0;box-shadow:none;margin:20px 0}.frm-white-body table.widefat tfoot,.frm-white-body table.widefat thead{background:#fff}.frm-white-body table.widefat th{font-size:var(--text-md)}.frm-white-body table.widefat th a{color:var(--grey-700)}.frm-white-body table.widefat strong a{color:var(--primary-700)}.frm-scroll-box{clear:both;overflow:auto;max-height:405px;border:1px solid var(--grey-300);border-radius:var(--small-radius)}.frm_form_field.frm_scroll_box .frm_opt_container{height:100px;overflow:auto;border:1px solid var(--grey-300)}.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+p,.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+div,.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+span{grid-column:span 6/span 6;align-content:center}.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+p,.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+div,.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+span{grid-column:span 12/span 12 !important;align-content:center}.frm_form_field.frm-phone-type~[id*=frm-field-format-custom-]>label,.frm_form_field.frm-format-dropdown~[id*=frm-field-format-custom-]>label{opacity:0}.frm_form_field.frm-format-dropdown~[id*=frm-field-format-custom-]{grid-column:span 6/span 6}.frm-single-settings.frm-type-textarea>.frm_grid_container [id*=frm-field-format-custom-]+p{grid-column:span 12/span 12}.frm-single-settings .frm_grid_container{column-gap:var(--gap-sm)}.frm-content-center{align-content:center}.frm-self-end{align-self:end}.frm-short-list{overflow:auto;max-height:190px}.frm-white-body table.frm-border td{font-size:var(--text-sm)}.frm-white-body .striped>tbody>:nth-child(odd){background-color:#fff}.frm_wrap td.column-title strong{display:inline}td.column-title .frm_actions_dropdown{float:right}#frm_top_bar{display:flex;gap:var(--gap-sm);width:100%;height:72px;margin:0;box-sizing:border-box;text-align:center;padding:0 var(--gap-md)}#frm_top_bar>.frm-full-close:last-child,#frm_top_bar>#frm-publishing:last-child{margin-left:auto}#frm_top_bar{border-bottom:1px solid var(--grey-300);padding:0 var(--gap-md);overflow:visible}.frm-white-body h1,.frm-white-body h2,.frm-white-body h3,.frm-white-body h4{color:var(--grey-900);font-weight:400;line-height:var(--leading) !important}.frm-white-body .wrap h1,.frm-white-body h1{font-size:var(--text-xl)}.frm-white-body .wrap h2,.frm-white-body h2{font-size:var(--text-lg);font-weight:500}.frm-white-body .wrap h3,.frm-white-body h3{font-size:var(--text-md)}.frm-white-body .wrap h4,.frm-white-body h4{font-size:var(--text-sm);font-weight:500}#frm_error_modal .frm_lock_simple{padding:20px;border-radius:50%;background-color:var(--primary-25);display:inline-block}#frm_error_modal #frm_lock_simple{color:var(--primary-500)}#frm_error_modal .frm-modal-title{display:block}#frm_error_modal .frm-modal-title h2{font-weight:600;font-size:var(--text-xl);margin:0}#frm_error_modal .frm_modal_content{padding:var(--gap-md);color:var(--grey-900)}.frm-views-editor-body .frm_page_container #frm_top_bar h1{padding:0 !important;color:var(--grey-900);font-size:var(--text-xl) !important}.post-type-frm_display .frm_top_left{padding-bottom:0 !important}.frm-new-table-view-option.frm-selected-table-view-option{border-radius:var(--small-radius);background:var(--primary-25)}.frm-views-editor-body #frm_adv_info .tabs-panel{padding-left:4px;padding-right:4px}#frm_edit_box_content_modal .frm_modal_footer{padding-top:var(--gap-sm);border-top:1px solid var(--grey-300)}#frm_edit_box_content_modal .frm_modal_footer>div{display:flex;justify-content:space-between}#frm_edit_box_content_modal #frm_modal_box_select_area,#frm_edit_box_content_modal #frm_box_content_wysiwyg_wrapper,#frm_edit_box_content_modal .frm_modal_content{max-height:calc(100vh - 176px) !important}#frm_edit_box_content_modal #frm_modal_box_select_area{height:calc(100vh - 176px) !important}#frm_edit_box_content_modal #wp-content-editor-tools{padding-top:0}#frm_edit_box_content_modal.frm-modal .postbox .frm-modal-title+div:last-child{right:var(--gap-md)}.frm_code_list.frm-full-hover .frm-dropdown-view a{flex-direction:row-reverse}#frm_view_editor_left.frm-right-panel .accordion-section-title::before{content:"" !important;margin:0}.frm-gradient,.frm-upgrade-bar{background:linear-gradient(90deg, #388CF3, #1961D5, #8C7FD8) !important;color:#fff !important;border:0 !important}.frm-gradient.frm-button-primary:not([disabled]),.frm-gradient.frm-button-primary:not([disabled]):hover,.frm-gradient.frm-button-primary:not([disabled]):focus{background:linear-gradient(90deg, #1961D5, #816CFA) !important}.frm-upgrade-bar,.frm-gradient{position:relative}.frm-upgrade-bar::before,.frm-gradient::before{content:"";display:none;position:absolute;top:0;right:0;bottom:0;left:0;background-color:hsla(0,0%,100%,.1);z-index:0}.frm-upgrade-bar:hover::before,.frm-gradient:hover::before,.frm-gradient:focus::before{display:block}.frm-upgrade-bar-inner,.frm-gradient>*{position:relative;z-index:1}.frm-upgrade-bar{border-bottom:1px solid var(--sidebar-hover);padding:9px 0;font-size:12px;text-align:center}.frm-upgrade-bar a{color:currentColor !important;text-decoration:underline}.frm-upgrade-bar a:focus{outline:1px dotted var(--sidebar-hover)}.frm-upgrade-bar span{opacity:.9}a h1 .frmsvg{color:var(--grey-400);vertical-align:middle;min-width:var(--text-sm)}a .frmsvg{color:currentColor}.frm_wrap .view-switch a.current::before,.frm-white-body a,.frm_wrap a,.frm_wrap a i{color:var(--primary-color)}.frm_wrap a:active,.frm_wrap a:hover{color:var(--primary-700);box-shadow:none}.post-type-frm_display a:focus,.frm_wrap a:focus{box-shadow:none}.frm_top_left{text-align:left;float:left;white-space:nowrap;max-width:250px;overflow:hidden;text-overflow:ellipsis;align-self:center}.post-type-frm_display .frm_top_left,.frm_top_left.frm_top_wide{max-width:100%}.post-type-frm_display .frm_nav_bar .frm-header-logo,.frm_nav_bar .frm-header-logo{margin:18px 0 10px}#frm_top_bar .frm_form_nav{flex:1}ul.frm_form_nav{margin:0 auto;padding-top:18px;display:block;min-width:240px}.nav-tab-wrapper.frm_form_nav{padding:0 25px}ul.frm_form_nav>li{margin:0 min(3.5%,32px) 0 0;display:inline-block}.post-type-frm_display #advanced-sortables h2.hndle,.post-type-frm_display #side-sortables h2.hndle,.post-type-frm_display #normal-sortables h2.hndle,.post-type-frm_display .frm_form_nav .nav-tab-active,.frm_form_nav>li>a{font-size:1.3em;text-decoration:none;display:block;padding:6px 2px 4px;font-weight:500;color:var(--grey-700);border-bottom:2px solid rgba(0,0,0,0)}.post-type-frm_display.js .postbox .handlediv .toggle-indicator::before{margin-top:10px}.frm-nav-tabs a:focus,.frm-nav-tabs a:active,.frm_form_nav a:active,.frm_form_nav a:focus{outline:none;box-shadow:none}.frm_form_nav>li>a{font-size:var(--text-md);font-weight:400;color:var(--grey-500)}.frm_form_nav>li>a:hover{border-color:var(--primary-700)}.frm_form_nav .frm-dropdown-menu a:hover{background-color:#eaf2fa}.post-type-frm_display .frm_form_nav .nav-tab-active,.post-type-frm_display .frm_form_nav .nav-tab-active:hover,.frm_form_nav>li a.current_page{color:var(--primary-500);border-color:var(--primary-500);background:rgba(0,0,0,0);opacity:1;font-weight:600}.frm-full-close{display:none;padding-left:var(--gap-md);border:0 solid var(--grey-300);border-left-width:1px;height:100%;box-sizing:border-box}.frm-full-screen .frm-full-close{display:flex;align-items:center}.frm-full-close a{display:block}.frm-full-close .frmsvg{font-size:20px;width:20px;height:20px;color:var(--grey-500)}#frm_top_bar h1{font-weight:400;padding:0;margin:0;color:var(--grey-900);display:inline-flex;gap:var(--gap-sm);align-items:center;text-align:left;min-width:200px}#frm_top_bar h1 span{max-width:175px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;display:inline-block;vertical-align:bottom}#frm_top_bar ul.frm_form_nav,#frm_top_bar .frm-header-logo,#frm_top_bar #frm_bs_dropdown{align-self:center;margin-top:0;margin-bottom:0;padding-top:0}#frm_top_bar .frm-header-logo{display:flex}#frm_top_bar h2{float:left;margin:0 0 0 var(--gap-sm);padding:2px 0 2px var(--gap-sm);font-weight:400;border-left:2px solid var(--grey)}.frm_wrap>#frm_top_bar #frm-publishing{margin-top:0}#frm-publishing{min-width:225px;align-self:center;align-items:center;display:flex;flex-direction:row-reverse;gap:0 var(--gap-sm);flex-wrap:wrap}.frm_wrap .postbox{border-color:var(--grey-300);border-radius:6px;box-shadow:none}.frm_wrap .postbox h3.hndle{cursor:default;padding:10px 20px;margin:0;line-height:1.4em;border-color:var(--grey-300)}.frm-pre-hndle{font-size:15px;padding:5px;margin:9px 15px}.frm-empty-row{display:none}.frm-child-row{box-shadow:5px 0 0 0 inset var(--sidebar-hover)}.frm_animate_bg{transition:background 200ms linear,color 200ms linear}.wrap>.subsubsub{clear:both;margin:0}.frm_wrap .subsubsub a{line-height:var(--leading);font-size:var(--text-sm)}.frm-admin-page-styles .frm_page_container,.frm_wrap .frm_page_container{height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden;padding-top:0;position:fixed;top:32px;bottom:0;left:0;right:0}.frm-admin-page-translate .frm_wrap .frm_page_container,.frm-admin-page-update_translations .frm_wrap .frm_page_container{position:static}.auto-fold.frm-admin-page-styles .frm_page_container,.auto-fold .frm_wrap .frm_page_container,.frm-unfold.frm-admin-page-styles .frm_page_container,.frm-unfold .frm_wrap .frm_page_container{left:160px}.folded.frm-admin-page-styles .frm_page_container,.folded .frm_wrap .frm_page_container{left:38px}.frm-full-screen.frm-admin-page-styles .frm_page_container,.frm-full-screen .frm_wrap .frm_page_container{height:100vh;top:0;left:0}.frm-full-screen.frm-admin-page-entries .frm_page_container,.frm-new-entry .frm_page_container,.frm-admin-page-reports .frm_page_container,.frm_list_entry_page .frm_page_container{height:auto;display:block}.frm-new-entry .columns-2{border:none}.frm-white-body #frm_top_bar,.frm-white-body .columns-2{flex:0 0 auto}.columns-2 .frm-right-panel+div{padding-bottom:var(--gap-md);border-left:1px solid var(--grey-300)}.columns-2 .frm-right-panel+div,.frm_wrap #post-body-content{padding-bottom:0;padding-top:var(--gap-sm);margin-bottom:0;background:#fff;width:auto;float:none;flex:2}.frm-white-body .columns-2{flex:1;display:flex;overflow:hidden}.frm-white-body .columns-2>div{overflow-y:auto;box-sizing:border-box}.frm_wrap .columns-2 .frm-right-panel,.frm-right-panel{flex:0 0 var(--biggest-sidebar);float:none;width:var(--biggest-sidebar);min-width:var(--biggest-sidebar);background-color:var(--sidebar-color);margin:0;box-shadow:none;border:none;padding-bottom:25px}.frm-right-panel .frm_field_list,.frm_wrap .frm-right-panel #frm_adv_info,.frm_wrap #postbox-container-1 #frm_adv_info{box-shadow:none;border:none;margin-bottom:26px}#new_fields,.frm-has-modal,p.frm_has_shortcodes{position:relative}.frm-inline-modal.postbox{background:#fff;border-color:var(--grey-100);border-radius:var(--small-radius);box-shadow:var(--box-shadow-lg)}.frm_has_shortcodes .frmsvg:not(.frm_help .frmsvg),.frm_has_shortcodes i:not([class*=mce-]){position:absolute;color:var(--primary-500);border-radius:50%;border:1px solid rgba(0,0,0,0);z-index:100;text-align:center}.frm_has_shortcodes .frmsvg.frm-show-box{border-radius:6px !important}.frm_has_shortcodes input,.frm_has_shortcodes textarea{padding-left:18px;box-sizing:border-box}#form_settings_page #frm_adv_info,#frm_builder_page #frm_adv_info{display:none;top:0;width:310px;max-height:315px;min-height:200px;overflow-y:scroll;z-index:100}#form_global_settings .columns-2>div{overflow:auto;height:calc(100vh - 32px)}#form_global_settings .columns-2 .frm-right-panel,#form_settings_page .columns-2 .frm-right-panel,#wpbody-content .frm-page-skeleton .frm-right-panel{flex:0 0 var(--small-sidebar);width:var(--small-sidebar);min-width:var(--small-sidebar)}#form_global_settings .frm_grid_container{gap:0 var(--gap-md)}.frm-inner-content{padding:var(--gap-md)}.post-type-frm_display #poststuff{padding:0 0 10px 40px}#postbox-container-2 .postbox .inside{padding:15px 25px}#postbox-container-2 #frm_advanced .inside h3{margin:15px -25px;font-weight:600}#form_settings_page .frm-inner-content{padding-top:0;padding-bottom:150px;position:relative}.frm_wrap #submitdiv{margin-bottom:0;border-width:0 0 1px;width:100%;min-width:unset}.frm_wrap #frm_adv_info .handlediv,.frm_wrap #frm_adv_info .hndle{display:none}.frm_wrap .menu-settings{border:none;margin-top:0}.nodrag a{cursor:pointer}.frm_wrap #frm_adv_info .inside{margin:0}#frm_adv_info>.inside{padding:0}#frm_adv_info ul.subsubsub{padding-bottom:var(--gap-xs) !important}#frm_adv_info ul.subsubsub a{font-weight:500}#frm_adv_info ul.subsubsub .frm-vertical-separator{display:inline-block;width:1px;height:8px;background-color:var(--grey-300)}#frm_adv_info #frm-insert-condition{background-color:var(--primary-50)}#frm_adv_info #frm-insert-condition:hover{background-color:var(--primary-25)}#frm_builder_page #frm_adv_info{width:322px;max-height:356px;border-radius:var(--small-radius);overflow:hidden}#frm_builder_page #frm_adv_info #taxonomy-linkcategory{height:356px;overflow:hidden}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div{max-height:286px;padding:0}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div>*{padding-bottom:var(--gap-sm);max-height:unset}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div>*:last-child{padding-bottom:var(--gap-xs)}#frm_builder_page #frm_adv_info #frm-nav-tabs{display:flex;gap:var(--gap-xs);background-color:var(--grey-100);border-radius:var(--small-radius);border:0;padding:var(--gap-xs);margin:var(--gap-xs) var(--gap-2xs) var(--gap-sm)}#frm_builder_page #frm_adv_info #frm-nav-tabs>li{flex:1;text-align:center}#frm_builder_page #frm_adv_info #frm-nav-tabs>li a{font-weight:500;line-height:1;color:var(--grey-500);border-radius:var(--small-radius);border:0;padding:var(--gap-xs);margin:0}#frm_builder_page #frm_adv_info #frm-nav-tabs>li a:hover{background-color:#eaecf0;color:var(--grey-500) !important;box-shadow:var(--box-shadow-sm)}#frm_builder_page #frm_adv_info #frm-nav-tabs>li.frm-tabs a{background-color:#fff;color:var(--grey-900) !important;box-shadow:var(--box-shadow-sm)}#frm_builder_page #frm_adv_info .frm-search,#frm_builder_page #frm_adv_info .frm-with-search{padding-top:0;margin:0}.frm-right-panel .frm-inline-modal.postbox .inside{margin:0;padding:0 14px 14px}.frm-right-panel .frm-inline-modal.postbox .inside .frm-with-line,.frm-right-panel .frm-inline-modal.postbox .inside .accordion-section-content h4{margin-left:-14px;margin-right:-14px}.frm-right-panel .frm-inline-modal .inside p:not(.howto),.frm-right-panel .frm-inline-modal .inside a{font-size:15px}.frm-inline-modal .inside a.frm_icon_font{font-size:18px}.frm-nav-tabs{margin:10px 0 20px;padding:0 var(--gap-sm);display:block;border-bottom:1px solid var(--grey-300)}#frm-nav-tabs{position:-webkit-sticky;position:sticky;top:0;background-color:var(--sidebar-color);z-index:98;margin-top:0;padding-top:5px}.frm_form_settings #frm_adv_info #frm-nav-tabs{background-color:#fff;margin:0 -4px}.frm_form_settings span.frm-with-right-icon,#frm_builder_page .frm_has_shortcodes span.frm-with-right-icon:not(.frm_hidden){display:block}.frm-inline-modal .frm-nav-tabs,#frm_adv_info .frm-nav-tabs{margin:5px 0 0}#frm_adv_info .frm-nav-tabs.frm-compact-nav{padding-right:0;padding-left:20px}.frm-nav-tabs li{display:inline-block;margin:0}.frm-nav-tabs a{color:var(--grey-700);padding:10px 1px;margin:0 9px;border-bottom:2px solid rgba(0,0,0,0)}.frm_form_settings #frm_adv_info .frm-nav-tabs a{padding:5px 1px;color:var(--grey-500)}.frm-nav-tabs.frm-compact-nav a{margin:0 5px}.frm-nav-tabs a{display:block;opacity:.9}#frm_adv_info .frm-nav-tabs a{color:var(--grey-700)}.frm-nav-tabs a:hover,.frm-nav-tabs .frm-tabs a{color:var(--primary-500) !important;border-color:var(--primary-500)}.frm_form_settings #frm_adv_info .frm-nav-tabs .frm-tabs a{font-weight:500}#frm-bulk-modal .howto,#frm-bulk-modal h3{font-size:var(--text-sm);font-weight:400;margin:5px 0 10px;color:var(--grey)}#frm-bulk-modal h3{margin-left:20px}.frm-right-panel a.frm_add_logic_link,.frm-right-panel h3{color:var(--grey-700);font-size:var(--text-lg);font-weight:400;margin:0}.frm-right-panel h3 i{color:var(--grey-700);float:right;width:16px;cursor:pointer}.frm-settings-panel{padding:var(--gap-sm);padding-right:var(--gap-xs)}.frm-settings-panel .frm-style-tabs-wrapper .frm-tabs-delimiter{top:var(--gap-xs);left:var(--gap-xs);width:calc(100% - var(--gap-sm))}.frm-settings-panel .frm-style-tabs-wrapper .frm-tabs-navs{padding:var(--gap-xs) var(--gap-xs) 0}.frm-settings-panel .frm-embed-field-placeholder{height:unset}.frm-settings-panel .frm-embed-field-placeholder img{height:100px}.frm-settings-panel .frm-embed-field-placeholder .frm-embed-message{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-sm);max-width:unset;color:var(--grey-800);padding:var(--gap-lg);border:0;box-shadow:var(--box-shadow-sm);margin:1px}.frm-single-settings .frm-default-value-wrapper>p{margin-bottom:0}.frm-single-settings .frm-default-value-wrapper+p:empty{display:none}.frm-single-settings [class*=frm-lookup-box-] .frm_grid_container p{margin-top:0 !important}.frm-single-settings .frm_single_option[id^=frm_watch_lookup_]{margin-bottom:var(--gap-xs) !important}.frm-single-settings>h3:first-of-type{position:relative;background-color:rgba(0,0,0,0) !important;border-top:none;padding-top:0 !important;margin-top:0 !important}.frm-single-settings>h3:first-of-type::after{content:"";position:absolute;left:var(--gap-sm);right:var(--gap-sm);bottom:0;height:1px;background-color:var(--sidebar-hover)}.frm-flex-justify,.frm-right-panel .frm-single-settings h3{display:flex;justify-content:space-between;align-items:center}#post-body-content+.frm-right-panel{flex:0 0 var(--medium-sidebar);width:var(--medium-sidebar);min-width:var(--medium-sidebar);border-left:1px solid var(--sidebar-hover)}.frm-new-entry #post-body-content+.frm-right-panel,.frm-new-entry .frm-right-panel{background:none;border:none}#post-body-content+.frm-right-panel h3{padding:20px 20px 0;font-size:17px}#post-body-content+.frm-right-panel .frm_with_icons:first-of-type h3{border:none}#frm-insert-fields h3{color:var(--grey);font-size:15px;font-weight:400;border-top:none;border-bottom:1px solid var(--sidebar-hover);margin:0;padding:10px 10px 10px 25px}.frm_wrap #frm_adv_info ul.category-tabs{margin:0;padding:10px 0 9px;font-size:15px;background:rgba(0,0,0,0)}.frm_wrap #frm_adv_info ul.category-tabs li{padding:10px;background-color:rgba(0,0,0,0) !important}.frm_wrap #frm_adv_info ul.category-tabs li:first-child{border:none}.frm_wrap #frm_adv_info .categorydiv div.tabs-panel{border:none;background:rgba(0,0,0,0)}.frm_wrap #frm-categorydiv{border-right:none}#frm_adv_info #frm-conditionals{padding-top:var(--gap-sm)}#postbox-container-1 #taxonomy-linkcategory #frm-html-tags{display:none;max-height:none}#postbox-container-1 .frm_field_list #frm-insert-fields .frmbutton.dropdown{position:relative}.frm-white-body #footer-upgrade{display:none}.frm-admin-footer-links,.frm-admin-footer-links-nav,.frm-admin-footer-links-socials{display:flex;justify-content:center}.frm-admin-footer-links{gap:var(--gap-2xs);flex-direction:column;text-align:center;padding:var(--gap-xl) 0 var(--gap-lg);font-size:var(--text-xs);color:var(--grey-400)}body.frm-hidden-overflow{height:100%;overflow:hidden}.frm-admin-footer-links-nav{gap:var(--gap-2xs);margin-bottom:var(--gap-xs)}.frm-admin-footer-links-socials{gap:var(--gap-xs)}.frm-admin-footer-links-socials a{color:var(--grey-400)}.frm_list_entry_page h2{float:left}.frm_list_entry_page h2+.error{clear:both}.frm_sidebar select{width:100%;margin-left:0;margin-right:0}.frm_sidebar #search-submit{float:right}.frm_single_entry_page #submitdiv{margin:0}.frm_single_entry_page .hndle a{font-size:13px}.frm-right-panel #publishing-action{float:none}.frm-right-panel #major-publishing-actions{border-top:none;height:32px;background:rgba(0,0,0,0)}#major-publishing-actions .frm_submit_form{float:right;margin-left:5px}.frm_orange_button,.frm_reverse_button{font-size:12px;border:1px solid var(--orange);color:var(--orange);font-weight:600;padding:1px 4px;border-radius:4px;background:rgba(0,0,0,0)}.frm_reverse_button:hover,.frm_reverse_button:active,.frm_reverse_button:focus{color:#fff;background:var(--orange);border:1px solid var(--orange)}.frm_reverse_button{font-size:1em;transition:all .2s ease}.frm-button-primary,.wp-core-ui .button-primary.frm-button-primary,.wp-core-ui .button.frm-button-primary,.frm-button-secondary,.wp-core-ui .button-secondary.frm-button-secondary,.wp-core-ui .button.frm-button-secondary,.frm-white-body .frm-search .button,.frm-white-body .search-box .button,.frm-white-body .tablenav .button,.frm_orange_button,.toplevel_page_formidable #frm_upgrade_modal .button-primary,.wp-core-ui.frm-white-body .button-primary,.wp-core-ui.frm-white-body .button-secondary,.frm-white-body .button-primary,.frm-white-body .button-secondary,#frm-form-button button,.frm-form-button button,.frm-preview-buttons button,.frm-button-red,.frm-button-tertiary{text-shadow:none;box-shadow:none;border-radius:30px;border:1px solid var(--primary-500);font-size:var(--text-sm);transition:all .2s ease;padding:7px 16px;height:auto;min-height:28px;outline:none;line-height:var(--leading);box-sizing:border-box;font-weight:500;margin-bottom:0;display:inline-block}.frm-button-primary.frm-sharp,.frm-button-secondary.frm-sharp{border-radius:12px !important}#wpcontent .frm-button-secondary.frm-button-gradient{position:relative;border-color:rgba(0,0,0,0) !important;background-clip:padding-box !important}#wpcontent .frm-button-secondary.frm-button-gradient::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;margin:-1px;border-radius:inherit;background:linear-gradient(90deg, #129EFD 0%, #A334FD 100%);transition:opacity 150ms ease-out}#wpcontent .frm-button-secondary:hover::before{opacity:.5}.no-js.wp-core-ui .frm-search .button.hide-if-no-js,.js.wp-core-ui .frm-search .button.hide-if-js{display:none}.frm-button-tertiary{border-color:rgba(0,0,0,0);color:var(--primary-500)}.frm-button-tertiary:focus{outline:none}.frm-button-tertiary.frm_loading_button::before{border-right-color:var(--grey);border-bottom-color:var(--grey)}.frm-button-red,.frm-button-red:focus{--primary-color: var(--error-500);--primary-500: var(--error-500);--primary-700: var(--error-700)}.frm-button-red:not(.frm-button-tertiary),.frm-button-red:not(.frm-button-tertiary):focus{color:#fff !important}.frm-white-body h2 .button,.post-type-frm_display h2 .frm-button-primary,.frm-white-body .tablenav .button,.frm-button-primary.frm-button-sm,.frm-button-secondary.frm-button-sm,.frm-button-tertiary.frm-button-sm,.frm-button-red.frm-button-sm{padding:4px 12px !important;font-size:var(--text-xs) !important}.frm_no_style_button{background:rgba(0,0,0,0)}.frm-with-icon{display:flex;gap:var(--gap-xs);align-items:center}.frm-with-icon svg{opacity:.65}.frm-with-icon.button svg{height:var(--text-sm);width:var(--text-sm)}.frm-with-icon.frm-button-sm svg{height:var(--text-xs);width:var(--text-xs)}.frm-white-body .button.add_media{padding-left:12px !important;padding-right:12px !important;font-size:var(--text-xs);border-radius:var(--border-radius)}.wp-core-ui.frm-white-body #post-query-submit.button,.wp-core-ui.frm-white-body .button.tablenav-pages-navspan,.wp-core-ui.frm-white-body .button.first-page,.wp-core-ui.frm-white-body .button.prev-page,.wp-core-ui.frm-white-body .button.next-page,.wp-core-ui.frm-white-body .button.last-page,.wp-core-ui.frm-white-body .button.action{background-color:rgba(0,0,0,0);border-color:var(--grey-300);color:var(--grey-700);border-radius:var(--border-radius)}.post-type-frm_display.wp-core-ui .button-primary,.frm-button-primary,.wp-core-ui .button-primary.frm-button-primary,.frm_single_entry_page #frm-publishing .button-primary{background-color:var(--primary-500) !important;color:#fff !important}.frm-button-primary.frm_large,.frm-button-secondary.frm_large{height:auto !important;padding:12px 16px !important}.frm-button-secondary.frm-small,.frm-button-primary.frm-small{font-size:var(--text-xs) !important;height:auto !important;padding:var(--gap-2xs) 12px !important}.frm-button-primary i::before{color:#fff}.wp-core-ui .button-primary.frm-button-primary:not([disabled]):hover,.frm-button-primary:not([disabled]):hover{background:var(--primary-700) !important;border-color:var(--primary-700) !important}.wp-core-ui .button-primary.frm-button-primary:active{vertical-align:inherit}.frm-white-body #search-submit,#frm-form-button .frm_button_submit,.frm-form-button .frm_button_submit,.frm-white-body .frm-preview-buttons button,.frm-white-body .button:not(.frm-button-primary),.wp-core-ui.frm-white-body .button-secondary,.wp-core-ui .button-secondary.frm-button-secondary,.wp-core-ui .button.frm-button-secondary,.frm-white-body .frm-button-secondary,.frm-button-secondary{color:var(--grey-800);border-color:var(--grey-300);background-color:#fff}#wp-content-media-buttons button,#wp-content-media-buttons a.button{border-color:var(--grey-300)}.frm_orange_button{border-color:#da791d !important;background:var(--orange);color:#fff}.frm-white-body .button:not(.frm-button-primary):focus,.frm-white-body .button:not(.frm-button-primary):active,.frm-white-body .frm-button-secondary:hover,.wp-core-ui.frm-white-body .frm-button-secondary:hover,.wp-core-ui.frm-white-body .button-secondary:hover,.wp-core-ui.frm-white-body .button-secondary:focus,.wp-core-ui.frm-white-body .tablenav .button:hover,.frm_wrap .preview>.button:hover,.frm-white-body #search-submit:hover{border-color:var(--grey-300) !important;color:var(--grey-800);background:var(--grey-50) !important;box-shadow:none !important;outline:none !important}.frm-button-primary .frmsvg{color:#fff}.frm_wrap .preview i{font-size:inherit}.frm-white-body .frm-button-primary:focus,.frm-white-body .frm-button-primary:active,#frm-addons-page .button-primary:focus,#form_global_settings .button-primary:focus,#frm_upgrade_modal .button:focus{border-color:var(--primary-700) !important;background-color:var(--primary-700) !important;box-shadow:none !important;outline:none !important}.frm_wrap .preview>.button:focus,.frm_orange_button:hover,.frm_orange_button:focus,.toplevel_page_formidable #frm_upgrade_modal .button-primary:hover,.toplevel_page_formidable #frm_upgrade_modal .button-primary:focus,.toplevel_page_formidable .frm_wrap button.button-primary:hover,.toplevel_page_formidable .frm_wrap button.button-primary:focus{outline:none}.frm_orange_button:hover,.frm_orange_button:focus{border-color:var(--orange) !important;background:rgba(0,0,0,0);color:var(--orange);opacity:1}.major-publishing-actions.frm_create_form_header{padding:8px 0}.major-publishing-actions.frm_create_form_header .frm_create_form_header_inner{font-size:15px;background:rgba(0,0,0,0)}.frm-menu-boxes .frm_blank_form_text{padding-bottom:26px}input.frm_insert_in_template{font-size:10px;width:98%;font-weight:400}.frm-dismissible a.dismiss:focus{box-shadow:none}.frm-dismissible a.dismiss{top:10px;right:10px;position:absolute}.frm-dismissible a.dismiss svg{color:var(--grey-800)}.wp-admin .frm-review-notice{position:fixed !important;bottom:var(--gap-2xl);right:var(--gap-lg);width:380px;text-align:center;border-color:var(--grey-100);padding:var(--gap-lg);border-radius:var(--medium-radius);box-shadow:var(--box-shadow-lg) !important;z-index:999;box-sizing:border-box;--gap-sm: 16px;--gap-md: 24px;--gap-2xl: 48px}.wp-admin .frm-review-notice *{box-sizing:border-box}.frm-review-notice-icon{display:inline-flex;margin-bottom:var(--gap-sm)}.wp-admin .frm-review-notice-title{font-weight:600;margin-top:0;margin-bottom:var(--gap-xs)}.wp-admin .frm-review-notice-text{margin-top:0;margin-bottom:var(--gap-md)}.frm-review-notice-signature{text-align:left;margin:var(--gap-md) 0}.frm-review-notice-signature img{width:40px;height:40px;padding:3px;box-shadow:var(--box-shadow-md);border-radius:100%}#wpwrap .frm-dismiss-review-notice{top:16px;right:19px}.frm-review-notice #frmapi-feedback [class^=frm__]{display:none}.frm-review-notice #frmapi-feedback input,.frm-review-notice #frmapi-feedback textarea{border-color:var(--grey-300);border-radius:var(--small-radius)}.frm-review-notice #frmapi-feedback input{min-height:unset;max-height:36px}.frm-review-notice #frmapi-feedback textarea{max-height:80px;padding-top:var(--gap-xs)}.frm-review-notice #frmapi-feedback .frm_message{color:var(--success-900);background-color:var(--success-25);border:1px solid var(--success-200);padding:var(--gap-sm) var(--gap-md);margin:0}.frm-review-notice #frmapi-feedback .frm_message p{margin:0}.frm-review-notice #frmapi-feedback .frm_button_submit{background-color:var(--primary-500);border-color:var(--primary-500) !important;cursor:pointer}.frm-review-notice #frmapi-feedback .frm_button_submit:hover,.frm-review-notice #frmapi-feedback .frm_button_submit:focus{color:#fff;background-color:var(--primary-700);border-color:var(--primary-700) !important}.frm-review-notice .frm_error,.frm-review-notice label{color:#444;text-align:left}.frm-review-notice label{font-size:var(--text-sm)}.frm-floating-success-message{position:fixed;z-index:999;border-radius:4px;right:10px;bottom:10px}.frm-box-shadow-xxl{box-shadow:var(--box-shadow-xxl) !important}.frm-text-primary-500{color:var(--primary-500)}.frm-text-grey-400{color:var(--grey-400) !important}.frm-text-grey-500{color:var(--grey-500)}.frm-text-grey-600{color:var(--grey-600) !important}.frm-text-grey-700{color:var(--grey-700)}.frm-text-grey-900{color:var(--grey-900)}.frm-text-success-500{color:var(--success-500)}.frm-text-warning-500{color:var(--warning-500)}.frm_no_margin,.frm-m-0{margin:0 !important}.frm-m-12{margin:var(--gap-2xl)}.frm-m-2xs{margin:var(--gap-2xs) !important}.frm_no_top_margin,.frm-mt-0{margin-top:0 !important}.frm-mt-2xs{margin-top:var(--gap-2xs) !important}.-frm-mt-2xs{margin-top:calc(-1*var(--gap-2xs)) !important}.frm-mt-xs{margin-top:var(--gap-xs) !important}.frm-mt-sm{margin-top:var(--gap-sm) !important}.frm-mt-md{margin-top:var(--gap-md) !important}.frm-mt-lg{margin-top:var(--gap-lg) !important}.frm-mt-2xl{margin-top:var(--gap-2xl) !important}.frm-mt-auto{margin-top:auto !important}.frm_no_bottom_margin,.frm-mb-0{margin-bottom:0 !important}.frm-mb-2xs{margin-bottom:var(--gap-2xs) !important}.frm-mb-6{margin-bottom:6px !important}.frm-mb-sm{margin-bottom:var(--gap-sm) !important}.frm-mb-12{margin-bottom:12px !important}.frm-mb-xs{margin-bottom:var(--gap-xs) !important}.frm-mb-md{margin-bottom:var(--gap-md) !important}.frm-mb-lg{margin-bottom:var(--gap-lg) !important}.frm-ml-2xs{margin-left:var(--gap-2xs) !important}.frm-ml-xs{margin-left:var(--gap-xs) !important}.frm-ml-auto{margin-left:auto}.-frm-ml-2xs{margin-left:calc(-1*var(--gap-2xs)) !important}.frm-mr-auto{margin-right:auto}.frm-mr-auto\!{margin-right:auto !important}.frm-mr-2xs{margin-right:var(--gap-2xs) !important}.frm-mr-xs{margin-right:var(--gap-xs) !important}.frm-mr-2{margin-right:2px !important}.frm-mx-0{margin-left:0 !important;margin-right:0 !important}.frm-mx-xs{margin-left:var(--gap-xs) !important;margin-right:var(--gap-xs) !important}.frm-mx-sm{margin-left:var(--gap-sm) !important;margin-right:var(--gap-sm) !important}.frm-my-sm{margin-top:var(--gap-sm) !important;margin-bottom:var(--gap-sm) !important}.frm-my-xs{margin-top:var(--gap-xs) !important;margin-bottom:var(--gap-xs) !important}.frm-p-0{padding:0 !important}.frm-p-1,.frm-p-2xs{padding:var(--gap-2xs)}.frm-p-sm,.frm-p-4{padding:var(--gap-sm) !important}.frm-p-sm{padding:var(--gap-sm) !important}.frm-p-6,.frm-p-md{padding:var(--gap-md) !important}.frm-p-xl{padding:var(--gap-xl) !important}.frm-px-0{padding-left:0 !important;padding-right:0 !important}.frm-py-0{padding-top:0 !important;padding-bottom:0 !important}.frm-py-2xs{padding-top:var(--gap-2xs) !important;padding-bottom:var(--gap-2xs) !important}.frm-py-sm{padding-top:var(--gap-sm) !important;padding-bottom:var(--gap-sm) !important}.frm-pt-0{padding-top:0 !important}.frm-pt-2xs{padding-top:var(--gap-2xs) !important}.frm-pt-xs{padding-top:var(--gap-xs) !important}.frm-pt-sm{padding-top:var(--gap-sm) !important}.frm-pt-md{padding-top:var(--gap-md) !important}.frm-pt-xl{padding-top:var(--gap-xl) !important}.frm-pr-lg{padding-right:var(--gap-lg) !important}.frm-pb-md{padding-bottom:var(--gap-md) !important}.frm-pb-sm{padding-bottom:var(--gap-sm) !important}.frm-pb-xs{padding-bottom:var(--gap-xs) !important}.frm-pb-2xs{padding-bottom:var(--gap-2xs) !important}.frm-pb-0{padding-bottom:0 !important}.frm-px-sm{padding-right:var(--gap-sm) !important;padding-left:var(--gap-sm) !important}.frm-px-xs{padding-right:var(--gap-xs) !important;padding-left:var(--gap-xs) !important}.frm-px-md{padding-right:var(--gap-md) !important;padding-left:var(--gap-md) !important}.frm-text-xs{font-size:var(--text-xs) !important}.frm-text-sm{font-size:var(--text-sm) !important}.frm-text-md{font-size:var(--text-md) !important}.frm-text-lg{font-size:var(--text-lg) !important}.frm-text-xl{font-size:var(--text-xl) !important}.frm-leading-none{line-height:1}.frm-italic{font-style:italic}.frm-no-italic{font-style:normal}.frm-capitalize{text-transform:capitalize}.frm-font-normal{font-weight:400 !important}.frm-font-medium{font-weight:500 !important}.frm-font-semibold{font-weight:600 !important}.frm-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[class*=frm-line-clamp-]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.frm-line-clamp-2{-webkit-line-clamp:2}.frm-white-space-nowrap{white-space:nowrap}.frm-rounded-sm{border-radius:var(--small-radius) !important}.frm-rounded-6{border-radius:6px !important}.frm-w-auto{width:auto !important}.frm-w-full{width:100% !important}.frm-w-half{width:50% !important}.frm-w-fit{width:fit-content !important}.frm-max-w-fit{max-width:fit-content}.frm-h-auto{height:auto !important}#wpwrap .frm_hidden\!{display:none !important}.frm_block,.frm-block{display:block}.frm_inline{display:inline}.frm-inline\!{display:inline !important}.frm_inline_block{display:inline-block !important}.frm-inline-flex,#wpbody-content .frm-inline-flex{display:inline-flex}.frm-flex{display:flex}.frm-flex\!{display:flex !important}.frm_hidden,.js .frm-hide-js{display:none}.frm-flex-box{display:flex;gap:var(--gap-sm)}.frm-flex-col{display:flex;flex-direction:column}.frm-flex-full{flex:1}.frm-flex-center\!,.frm-flex-center{justify-content:center;align-items:center}.frm-flex-center{display:flex}.frm-flex-center\!{display:flex !important}.frm-shrink-0{flex-shrink:0}.frm-gap-0{gap:0 !important}.frm-gap-2xs{gap:var(--gap-2xs)}.frm-gap-xs{gap:var(--gap-xs)}.frm-gap-xs\!{gap:var(--gap-xs) !important}.frm-gap-sm{gap:var(--gap-sm)}.frm-gap-md{gap:var(--gap-md)}.frm-gap-xl{gap:var(--gap-xl)}.frm-justify-start{justify-content:start !important}.frm-justify-center{justify-content:center !important}.frm-justify-between{justify-content:space-between}.frm-justify-end{justify-content:end}.frm-items-center{align-items:center}.frm-items-stretch{align-items:stretch}#wpbody-content .frm-flex-wrap{flex-wrap:wrap}.frm-grow{flex-grow:1}.frm-order-first{order:calc(-infinity)}.frm-order-last{order:calc(infinity)}.frm-order-none{order:0}.frm-h-stack-sm,.frm-h-stack-xs,.frm-h-stack{display:flex !important;align-items:center}.frm-h-stack-sm>input[type=checkbox],.frm-h-stack-xs>input[type=checkbox],.frm-h-stack>input[type=checkbox],.frm-h-stack-sm>input[type=radio],.frm-h-stack-xs>input[type=radio],.frm-h-stack>input[type=radio]{margin:0 !important}.frm-h-stack{gap:var(--gap-2xs)}.frm-h-stack-xs{gap:var(--gap-xs)}.frm-h-stack-sm{gap:var(--gap-sm)}.frm-transition-ease{transition:all .2s ease}.frm_invisible{visibility:hidden;transition:all .2s ease}.frm_disabled{opacity:.5;cursor:default;pointer-events:none}.frm_disabled .frm-show-inline-modal{pointer-events:none !important}.frm_no_float{float:none}.frm-text-right{text-align:right}.frm-border-b{border-bottom:1px solid var(--grey-300)}.frm-no-border{border:none !important}.frm-hr{display:block;height:1px;background-color:var(--grey-200);margin:var(--gap-xs) 0}.frm-opacity-100{opacity:1}.frm-on-bottom{z-index:-1}.frm-rotate-90{transform:rotate(90deg)}.frm-cursor-pointer{cursor:pointer}.frm-align-baseline{vertical-align:baseline !important}.frm-fields p>label.frm_hidden,#wpbody-content label.frm_hidden,.frm-lookup-modal .dismiss,.frm-right-panel .inside a.frm_hidden,#form_global_settings .frm_hidden,ul.frm_form_nav>li.frm_hidden,a.frm_hidden,.button.frm_hidden,.wp-core-ui .button.frm_hidden{display:none}.postbox .inside>p.frm_no_bottom_margin:last-child{margin-bottom:0 !important}.frm_no_section_fields.frm_block{display:block}.actions.frm_visible_overflow{overflow:visible !important}.frm_full_opacity,.frm_submit .frm_full_opacity,.frm_submit .frm-opacity-100{opacity:1}.frm-dropdown-menu.frm-on-top{z-index:99999}.frm-vertical-line{display:inline-block;width:1px;height:12px;background-color:var(--grey-300)}.frm-admin-full-screen #adminmenumain,.frm-admin-full-screen #wpadminbar,.frm-admin-full-screen #adminmenuback,.frm-admin-full-screen #adminmenuwrap,.frm-admin-full-screen #wpfooter{display:none}.frm-admin-full-screen #wpcontent,.frm-admin-full-screen.auto-fold #wpcontent{margin:0;padding:0}.frm-admin-full-screen.appearance_page_starter-templates #wpbody-content{padding:0}.frm_forms.with_frm_style{max-width:100%}.post-type-frm_display .wrap>.subsubsub,.post-type-frm_display .wrap>.icl_subsubsub,.frm_form_settings>p{margin:6px var(--gap-md);padding:0}.frm-entry-container{margin:0 40px 40px;padding:0}#form_reports_page .frm-inner-content{width:calc(100% - 40px);max-width:900px;margin:20px auto;padding:20px}.frm_inner_field_container>.frm_form_fields{clear:both}.post-type-frm_display h2,.frm_wrap h2{margin-top:0 !important;font-size:var(--text-lg);line-height:var(--leading)}.post-type-frm_display .wrap>h2:first-child,.frm_wrap .wrap>h2:first-child{padding-top:0;margin-top:0 !important;font-size:var(--text-lg)}#frm_form_editor_container{position:relative;margin-top:28px}.form-field p{background:none;border:none}.form-field label.frm_primary_label{display:block;float:none;width:auto}#frm_view_editor_left label,#frm_view_editor_left .frm_primary_label,.frm-dialog .frm-sub-label,.frm-dialog label,.dropdown .frm_primary_label,.accordion-container label,.frm-fields td>label,.frm-fields td>div>label,.frm_form_field>label:first-child,.frm-fields p>label,.frm_on_submit_type>label,.post-type-frm_display .frm_form_field>label,#new_fields .frm_primary_label,#form_global_settings .frm_primary_label,#frm_form_editor_container .frm_primary_label,#permissions_settings_settings .frm_primary_label{color:var(--grey-700);margin:0 0 6px;padding:0;width:auto;font-size:var(--text-sm);display:block;line-height:var(--leading)}#frm_form_editor_container #frm-show-fields .frm_primary_label{min-height:21px}.frm-fields td input+label{display:inline}#frm_form_editor_container .edit_field_type_end_divider .frm_primary_label,#frm_form_editor_container .edit_field_type_break .frm_primary_label{display:none}form .frm_primary_label input{font-size:12px}.with_frm_style form .form-field{margin-bottom:20px}#frm_builder_page .with_frm_style form .frm_combo_inputs_container>.form-field{margin-bottom:0}.frm_description,.with_frm_style form div.description,.frm_error,.with_frm_style form div.description textarea{padding:0;font-size:11px}.with_frm_style .description{color:inherit}#frm_form_editor_container .divider_section_only .frm_primary_label{display:flex;align-items:center;gap:var(--gap-xs);font-size:20px}#frm_form_editor_container .divider_section_only .frm_primary_label .frm-sub-label{padding:0}.frm-token-container{position:relative;display:block;direction:ltr}.frm-token-container .frm-tokens{position:absolute;top:0;left:0;max-width:calc(100% - var(--gap-xl));display:flex;align-items:center;flex-wrap:wrap;gap:var(--gap-2xs);padding:6px var(--gap-xs);margin:0}.frm-token-container .frm-token{position:relative;display:flex;align-items:center;gap:var(--gap-xs);min-height:24px;height:auto;color:var(--grey-900);background:var(--grey-100);border-radius:4px;padding:0 var(--gap-xs);font-size:var(--text-md);margin:0;z-index:2}.frm-token-container .frm-token .frm-token-value{line-height:var(--leading);white-space:normal;word-break:break-word}.frm-token-container .frm-token .frm-token-remove{display:flex;flex-shrink:0;cursor:pointer}.frm-token-container .frm-token .frm-token-remove .frmsvg{color:var(--grey-900);position:static;width:12px;height:12px;padding:0}.frm-token-container .frm-token .frm-token-remove:hover .frmsvg{color:var(--error-500)}.frm-token-container .frm-show-inline-modal{z-index:3 !important}.frm-token-container .frm-token-proxy-input{position:relative;z-index:1;padding-right:var(--gap-xl) !important}form .form-field.frm_field_loading{margin-bottom:0;min-height:0;padding:0;text-align:center}.frm_sorting>.frm_field_loading .frm_visible_spinner.frm-wait{margin-bottom:10px}.frm_sorting>.frm_field_loading~.frm_field_loading .frm_visible_spinner.frm-wait{margin-bottom:0;display:none}.frm_description,.with_frm_style form div.description,.frm_error{margin:0}.frm_error{color:#f04438}form .frm_blank_field input,form .frm_blank_field textarea,form .frm_blank_field select,form .frm_blank_field .frm-g-recaptcha iframe,form .frm_blank_field .g-recaptcha iframe{border-color:#f04438}form .frm_blank_field label{color:#f04438}.frm_required{color:#f04438}.with_frm_style .wp-editor-container textarea,.postbox .wp-editor-container textarea,.frm_remove_border{border:none}.with_frm_style .mceIframeContainer,.postbox .mceIframeContainer{background-color:#fff}.frm_pro_license_msg{clear:left;margin-top:10px}.frm-license-input{position:relative}.frm-license-input span{font-size:var(--text-sm)}.frm-license-input .frmsvg{width:20px;height:20px;margin-left:5px;vertical-align:text-top}.frm-license-input .frmsvg,.frm-license-input span,.frm-license-input i{color:#00831a}.upgrade_to_pro{padding:10px 25px 25px;max-width:700px;margin:20px auto !important}.upgrade_to_pro .error{display:none}.toplevel_page_formidable #wpbody-content>.error{margin:1px;padding:5px 12px}.frm_error_style,.frm_warning_style,.frm_note_style2,.frm_note_style,.frm_message,#post-body-content .frm_updated_message,div.frm_updated_message{border-radius:var(--small-radius);background-color:#d5f2dc;color:#1e561f;padding:var(--gap-sm) var(--gap-md);font-size:var(--text-sm);margin:var(--gap-sm) 0;text-align:left}.frm_note_style2{background:linear-gradient(90deg, #e9effa, #fcf6fe) padding-box,linear-gradient(90deg, #1961D5, #E8ABEF) border-box;border:1px solid rgba(0,0,0,0)}#frm_top_bar+.wrap>.frm_updated_message,#frm_top_bar+.wrap>.frm_warning_style{display:inline-block;width:100%;box-sizing:border-box}#post-body-content>.frm_updated_message{margin:5px 65px}#form_global_settings #post-body-content>.frm_updated_message,#form_global_settings #post-body-content>.frm_warning_style{margin:5px 25px}.frm_error_style{color:#973937;background-color:#ebcccc;clear:both}.frm_error_style a{text-decoration:underline;font-weight:600}.frm_error_style svg{opacity:.7}.frm_warning_style{color:#7a4d05;background-color:#fff2d2}.frm_warning_heading{font-weight:700;margin-bottom:4px}.frm_warning_style{position:relative;padding-right:calc(var(--gap-md) + 15px)}body.rtl .frm_warning_style{padding-right:var(--gap-md);padding-left:calc(var(--gap-md) + 15px)}.frm-warning-dismiss{position:absolute;top:10px;right:10px;display:flex;cursor:pointer;transition:opacity .2s ease-out}body.rtl .frm-warning-dismiss{left:10px;right:auto}.frm-warning-dismiss:hover{opacity:.8}.frm-warning-dismiss.frmsvg,.frm-warning-dismiss.frmsvg svg{width:15px;height:15px}.frm_note_style{background:rgba(188,224,253,.23);color:var(--grey-700)}.frm-banner-alert{text-align:left;margin:0;border-radius:0;padding:10px 0 10px 40px}.frm-banner-alert a{color:var(--primary-500);font-weight:400;text-decoration:none}.frm_updated_message ul,.frm_updated_message li,.frm_warning_style ul,.frm_warning_style li,.frm_error_style ul,.frm_error_style li{margin:0}.frm-inline-message{border:1px solid var(--primary-700);border-radius:var(--small-radius);color:var(--primary-700);background:#fff;text-align:center;padding:20px;font-size:var(--text-sm);line-height:var(--leading)}.frm-inline-message a{text-decoration:underline;font-weight:600;color:var(--primary-700)}.frm_pro_heading span{margin-top:10px}.frm_pro_heading .alignright{text-align:right}.frm-yes{color:var(--green);font-size:var(--text-xl)}.frm-nope{color:var(--grey-400);font-size:var(--text-xl)}.upgrade_to_pro a{color:var(--orange)}.upgrade_to_pro table .frmsvg{height:var(--text-xl);width:var(--text-xl)}.upgrade_to_pro table.widefat{background-color:#fff;border-collapse:collapse}.frm-white-body .upgrade_to_pro table th,.upgrade_to_pro table td{padding:10px 15px;border:1px solid var(--grey-300);line-height:var(--leading);font-size:var(--text-sm)}.upgrade_to_pro table th.frmcenter{text-align:center}.widefat th.frm_table_break{background-color:var(--sidebar-color)}h2.frm-h2+.howto{color:var(--medium-grey);max-width:850px;margin:5px 0 20px}.frm-card{width:100%;border-radius:10px;border:1px solid var(--grey-300);opacity:1;transition:opacity 1s}.frm-card-box{max-width:524px;background-color:#fff;border-radius:var(--medium-radius);padding:var(--gap-xl);border:1px solid var(--grey-200);box-shadow:var(--box-shadow-md)}.frm-card-box.frm-has-progress-bar{position:relative;overflow:hidden;border-radius:var(--medium-radius)}.frm-card-box-progress-bar{position:absolute;top:0;left:0;right:0;height:var(--gap-xs);background-color:var(--primary-25)}.frm-card-box-progress-bar>span{position:absolute;top:0;left:0;bottom:0;width:33%;background-color:var(--primary-500)}.frm-card-box-header{display:flex;justify-content:center;margin-bottom:var(--gap-sm)}.frm-card-box.frm-has-progress-bar .frm-card-box-header{margin-top:var(--gap-xs)}.frm-card-box-content>:last-child{margin-bottom:0}.frm-card-box-footer{display:flex;justify-content:end;gap:var(--gap-sm);margin-top:var(--gap-lg)}.frm-card-box-title{font-size:var(--text-xl) !important;font-weight:600 !important;margin-bottom:var(--gap-xs)}.frm-card-box-text{font-size:var(--text-md) !important;color:var(--grey-600) !important;margin-top:0 !important}.frm-fade{opacity:0;transition:all 1s}.frm-addons .frm-card.frm-addon-not-installed{position:relative}.frm-addons .plugin-card-top{min-height:155px;padding-top:var(--gap-lg);overflow:hidden}.frm-addons .plugin-card-top h2{margin-top:0;font-weight:400}.frm-template-row p,.frm-addons .plugin-card-top p{opacity:.8}.frm-addons .plugin-card-top>:not(p):not(h2){display:none}.frm-addons .plugin-card-bottom{padding:5px 20px 20px;text-align:center;background:rgba(0,0,0,0);border-top:none}.frm-addons .plugin-card-bottom,.frm-addons .plugin-card-bottom .button{font-size:15px}.frm-addons .button,.frm-addons .frm-button-tertiary{float:right}.frm-addons .addon-status{float:left;padding-top:4px}.frm-addon-not-installed .frm-activate-addon,.frm-addon-not-installed .frm-deactivate-addon,.frm-addon-not-installed .frm-uninstall-addon,.frm-addon-installed .frm-install-addon,.frm-addon-installed .frm-deactivate-addon,.frm-addon-active .frm-activate-addon,.frm-addon-active .frm-install-addon,.frm-addon-active .frm-uninstall-addon,.plugin-card-pro.frm-addon-active .button,.plugin-card-pro.frm-addon-active .frm-button-tertiary{display:none !important}.frm-save-and-reload-options{margin-top:10px;font-size:13px}.frm-save-and-reload,.frm-save-and-reload+.frm-button-secondary{visibility:visible !important}.addon-status-label{opacity:.7}.frm-addon-active .addon-status-label{color:var(--green);opacity:1}.frm-addon-error{position:absolute;top:55px;left:10px;right:10px;font-weight:700;text-align:center}.frm-new-template.plugin-card-bottom{overflow:visible}#frm-new-template p:first-child{margin-top:0}.frm-admin-page-formidableedit #wpbody-content>*:not(.frm-review-notice):not(.frm_previous_install):not(.frm-banner-alert):not(#frm-svg-icons-pack),#wpbody-content>.updated,#wpbody-content>#update-nag,#wpbody-content>.update-nag,#wpbody-content>.notice,#wpbody-content>.error:not(.frm_previous_install),.frm-white-body .updated,.frm-white-body .notice,.frm_wrap>.wrap>.notice,.frm-white-body .error:not(.frm_previous_install){display:none}.frm-admin-page-formidableedit #frm_builder_page{display:block !important}.frm-white-body .updated,.frm-white-body .error{margin:0;padding:10px 20px}.frm-modal:not(#frm-dismissable-cta) .postbox{max-height:600px;overflow:hidden;margin-bottom:0}.frm-modal .postbox .frm_modal_top,.frm-dialog .frm_common_modal .postbox>div:first-child,.frm-error-modal .frm_modal_top{padding:var(--gap-md) var(--gap-md) 0;position:relative}.frm-modal h2,.frm-modal .postbox .inside h2,.frm-modal .postbox .frm-modal-title,.frm-dialog .frm_common_modal .postbox>div:first-child>div:first-child,.frm-error-modal .frm-modal-title{display:inline-block;font-size:var(--text-lg);color:var(--grey-900);font-weight:600;margin:0;padding:0}.frm-modal h3{font-weight:500}.frm-inline-modal>a.dismiss,.frm-modal .postbox>a.dismiss,.frm-modal .postbox .frm-modal-title+div:last-child,.frm-dialog .frm_common_modal .postbox>div:first-child>div:last-child{position:absolute;top:19px;right:19px;display:flex;z-index:2}body.rtl .frm-inline-modal>a.dismiss,body.rtl .frm-modal .postbox>a.dismiss,body.rtl .frm-modal .postbox .frm-modal-title+div:last-child,body.rtl .frm-dialog .frm_common_modal .postbox>div:first-child>div:last-child{right:unset;left:30px}.frm-info-modal .postbox>a.dismiss,.frm-inline-modal>a.dismiss{right:13px;top:13px}.frm-modal .postbox .frm-modal-title+div:last-child a,.frm-modal a.dismiss .frmsvg,.frm_common_modal .frm_modal_top a .frmsvg{color:var(--grey-500)}.frm-modal .postbox .frm-modal-title+div:last-child a:hover,.frm-modal a.dismiss .frmsvg:hover,.frm_common_modal .frm_modal_top a .frmsvg:hover{color:var(--grey-700)}.frm-modal .frm_modal_content>div.inside,.frm_common_modal .frm_modal_content>div.inside{padding:var(--gap-md);margin:0;font-size:var(--text-sm);color:var(--grey-700)}.frm-modal p{color:var(--grey-900)}.frm_common_modal .postbox{display:flex;flex-direction:column}.frm-modal .postbox>div.inside .cta-inside{overflow-y:auto;height:auto}.frm_modal_footer{padding:0 var(--gap-md) var(--gap-sm);text-align:right}body.frm-body-with-open-modal{overflow-y:hidden}.frm-templates-list{margin-top:0}.frm-templates-list.frm_grid_container li{margin-bottom:0}.frm-templates-list li{vertical-align:top;position:relative;box-sizing:border-box;border-radius:6px;border:1px solid rgba(0,0,0,0);text-align:left}.frm-templates-list li:not(.frm_hidden){display:inline-block}.frm-templates-list.frm-categories-list li{width:100%}.frm-templates-list li.frm-selectable{cursor:pointer}.frm-templates-list li.frm-selectable:hover{background:var(--light-blue);border-color:rgba(65,153,253,.5)}.frm-templates-list li.frm-selectable:hover h3,.frm-templates-list li.frm-selectable:hover p{max-width:calc(100% - 65px)}.frm-templates-list .frm-featured-form{display:flex;width:100%}.frm-templates-list li .frm-featured-form{padding:7px 5px}.frm-templates-list li li>div{padding-left:0}.frm-templates-list li>div>div{vertical-align:middle}.frm-category-icon,.frm-icon-wrapper{background:var(--primary-500);border-radius:var(--small-radius);color:#fff;width:32px;height:32px;font-size:18px;box-sizing:border-box;align-self:center;justify-content:center;align-items:center;display:inline-flex}.frm-templates-list li .frm-category-icon{overflow:hidden}.frm-templates-list li h3,.frm-templates-list li p{text-align:left;margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.frm-templates-list li h3,.frm-templates-list .frm-install-template h3{font-size:var(--text-sm) !important}.frm-templates-list .frm-install-template div{text-align:left}#frm_leave_email,#frm_code_from_email{width:480px;max-width:100%}.frm-templates-list.frm-categories-list li>div>div:last-child{padding-left:0}.frm-hover-icons{position:absolute;right:0;top:17px;max-width:91px;height:100%;box-sizing:border-box;padding:0 10px 0 5px !important;border-radius:var(--small-radius);text-align:right;display:flex;gap:5px}.frm-ready-made-solution .frm-hover-icons{visibility:hidden}.frm-ready-made-solution:hover .frm-hover-icons{visibility:visible}.frm-hover-icons a{width:22px;height:22px;font-size:var(--text-md);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;box-sizing:border-box;line-height:var(--leading);text-align:center}.frm-hover-icons>.frm-preview-form,.frm-hover-icons>.frm-delete-form{border:1px solid var(--primary-500)}.frm-hover-icons>.frm-create-form,.frm-ready-made-solution .frm-hover-icons a{background-color:var(--primary-500)}.frm-hover-icons>a .frmsvg{width:14px;height:14px;vertical-align:baseline}.frm-hover-icons>.frm-preview-form .frmsvg,.frm-hover-icons>.frm-delete-form .frmsvg{color:var(--primary-500)}.frm-hover-icons>.frm-unlock-form{background-color:var(--primary-500)}.frm-hover-icons>.frm-unlock-form .frmsvg{background-color:var(--primary-500)}.frm-ready-made-solution .frmsvg{width:14px;height:14px}.frm-hover-icons .frm-create-form svg,.frm-ready-made-solution .frm-hover-icons svg{color:#fff}.frm-hover-icons .frm-create-form:hover,.frm-ready-made-solution .frm-hover-icons a:hover,.frm-hover-icons>.frm-unlock-form:hover,.frm-hover-icons>.frm-unlock-form:hover .frmsvg{background-color:var(--primary-700) !important}.frm-hover-icons .frm-preview-form:hover,.frm-hover-icons .frm-delete-form:hover{border:1px solid var(--primary-700) !important}.frm-hover-icons .frm-preview-form:hover .frmsvg,.frm-hover-icons .frm-delete-form:hover .frmsvg{color:var(--primary-700) !important}.frm-application-card h4 .frmsvg,.frm-locked-template h3 .frmsvg{height:var(--text-sm);width:var(--text-sm);vertical-align:text-top;color:var(--grey-500)}.frm-modal-back{cursor:pointer;margin-right:4px}.frm-modal-cancel{float:left}.frm-meta-tag,.frm-meta-tag:hover{padding:var(--gap-2xs) var(--gap-xs);border-radius:var(--small-radius);font-weight:600;display:inline-flex;background-color:#d9ebff;gap:2px}.frm-meta-tag.frm-grey-tag,.frm-meta-tag.frm-grey-tag:hover{background-color:var(--sidebar-hover);color:var(--grey-900)}.frm-meta-tag.frm-red-tag,.frm-meta-tag.frm-red-tag:hover{background:var(--error-100);color:var(--error-700)}.frm-meta-tag.frm-orange-tag,.frm-meta-tag.frm-orange-tag:hover{background-color:#fef7f4;color:var(--orange)}.frm-meta-tag.frm-green-tag,.frm-meta-tag.frm-green-tag:hover{background-color:var(--success-500);color:#fff}.frm-entry-status-0,.frm-meta-tag.frm-lt-green-tag,.frm-meta-tag.frm-lt-green-tag:hover{background-color:var(--success-100);color:var(--success-800)}.frm-meta-tag.frm-new-pill{background-color:var(--success-500);vertical-align:text-bottom}.frm_add_field span+.frm-meta-tag{margin-left:0}.frm-entry-status{font-weight:500}.frm-entry-status-1{color:#7a4d05;background:#fff2d2}#frm-create-footer{padding:15px 20px}li .frm-hover-icons .frm-preview-form,.frm-hover-icons .frm-unlock-form,.frm-locked-template .frm-hover-icons .frm-create-form,.frm-modal-back{display:none}.frm-locked-template .frm-hover-icons .frm-unlock-form,li[data-preview] .frm-hover-icons .frm-preview-form{display:inline-flex}.frm-modal-back svg{color:#7f7f7f}#frm-upgrade-body-list-wrapper>div{display:inline-block;width:33.3333333333%;vertical-align:top;text-align:left;margin-bottom:10px}#frm-upgrade-body-list-wrapper ul{padding-left:40px}#frm-upgrade-body-list-wrapper ul li::before{content:"\2022";color:var(--primary-500);display:inline-block;width:1em;margin-left:-1em}.frm-embed-modal-content{padding:var(--gap-md)}.frm-embed-modal-content.frm-loading-page-options{display:flex;justify-content:center}#frm_embed_modal .frm_embed_example{background:var(--sidebar-color);border:1px solid var(--sidebar-hover);border-radius:var(--small-radius);color:var(--grey-900);font-size:var(--text-sm);padding-right:var(--gap-lg);width:100%;height:auto !important;resize:none}#frm_embed_modal textarea.frm_embed_example{padding-bottom:0}.frm-embed-modal-content>div a{position:absolute;right:0;top:0}.frm-embed-modal-content>div{position:relative;margin-bottom:var(--gap-sm)}.frm-embed-modal-content>div:last-child{margin-bottom:0}.frm-embed-modal-content svg[id^=frm_copy_embed_]{position:absolute;bottom:10px;right:10px;cursor:pointer;opacity:.5}.frm-border-info-box,.frm-embed-modal-option{border-radius:var(--small-radius);border:1px solid var(--grey-300);padding:var(--gap-sm);cursor:pointer;display:flex;gap:var(--gap-sm);font-size:var(--text-sm)}.frm-embed-modal-option+.frm-embed-modal-option{margin-top:var(--gap-sm)}.caret.rotate-270,.frm-embed-modal-option .caret{align-self:center;margin-left:auto;transform:rotate(-90deg)}#frm_embed_modal .frm_modal_footer{display:none}#frm_embed_modal.frm-on-page-2 .frm_modal_footer{display:block}.frm-embed-modal-content ul{max-height:300px;overflow-y:scroll}.frm-embed-modal-wrapper.frm-dialog{overflow:visible}#frm-bulk-modal .frm_grid_container{grid-template-columns:repeat(12, 8.33%);grid-gap:0}#frm-bulk-modal .frm8{border-right:1px solid var(--grey-300);padding:10px 20px 10px var(--gap-lg)}#frm-bulk-modal .frm4{padding:10px 0}.frm-inline-modal .howto{margin:5px 0 10px;color:var(--grey)}.frm-inline-modal .frm_code_list+.howto{margin-bottom:0}#frm_bulk_options{height:240px;width:100%;border:none;box-shadow:none;padding:0}.frm-bulk-edit-link{display:flex;align-items:center;justify-content:flex-end;gap:var(--gap-2xs);font-size:var(--text-sm);margin:12px 0 12px auto}.frm-bulk-edit-link .frm-bulk-edit-link{margin:0}.frm-small-add{font-size:var(--text-sm) !important}.frm-small-add span{color:var(--primary-500);font-size:12px;height:12px;width:12px}.frm_no_captcha_text{font-weight:700;color:#a00}.frm_image_from_url{height:50px}h1 .fa-caret-down{font-size:18px}.caret{display:inline-block;width:19px;height:9px;margin-right:-8px;vertical-align:middle}.caret,.wp-admin .frm_wrap select,.frm_wrap .frm_form_builder select,.frm_wrap .ui-autocomplete-input{background:rgba(0,0,0,0) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none'%3E%3Cpath stroke='%2398A2B3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M12.708 8.959 10 11.875 7.292 8.96'/%3E%3C/svg%3E") no-repeat right 8px top 50%;padding-right:var(--gap-lg) !important}.caret{padding-right:var(--gap-xs) !important;background-position-x:5px}.frm-btn-group .caret{float:right;margin-top:calc(var(--text-md)/2)}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.frm_wrap .ui-autocomplete,#frm_adv_info.frm-dropdown-menu,.frm-dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;padding-left:4px;padding-right:4px;margin:var(--gap-xs) 0 0;text-align:left;list-style:none;background:none;background-color:#fff;background-clip:padding-box;border:1px solid var(--grey-100);border-radius:.25rem;box-shadow:var(--box-shadow-lg);max-height:200px;overflow-y:auto;overflow-x:hidden;font-size:var(--text-md);width:auto;min-width:160px}.frm6 .frm-dropdown-menu{min-width:100px;max-width:99%}#frm_bs_dropdown .frm-dropdown-menu{max-width:400px}.field_type_list .frm-dropdown-menu{min-width:150px !important}#frm_field_group_controls .frm-dropdown-menu,.frm-field-action-icons .frm-dropdown-menu{min-width:180px !important}.frm-field-action-icons .frm-dropdown-toggle svg{color:#9ea9b8}.multiselect-container.frm-dropdown-menu,#search-submit .frm-dropdown-menu{min-width:200px !important}.preview .frm-dropdown-menu{min-width:230px !important}.frm-dropdown-menu.dropdown-menu-right{right:0;left:auto}.frm-dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.frm-dropdown-menu>.dropdown-item{margin:0}.frm-select-list-item,.frm_wrap .ui-autocomplete li>div,.multiselect-container button.multiselect-option,.frm-dropdown-menu>.dropdown-item>a,.frm-dropdown-menu .frm_dropdown_li{clear:both;font-weight:400;white-space:nowrap;text-decoration:none;border-radius:var(--small-radius)}.frm-dropdown-menu>.active>a,.frm-dropdown-menu>.active>a:hover,.frm-dropdown-menu>.active>a:focus{text-decoration:none;outline:0}.frm-select-list-item.disabled,.frm-dropdown-menu>.disabled>a,.frm-dropdown-menu>.disabled>a:hover,.frm-dropdown-menu>.disabled>a:focus{color:#999}.frm-select-list-item.disabled:hover,.frm-dropdown-menu>.disabled>a:hover,.frm-dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:rgba(0,0,0,0);background-image:none;cursor:not-allowed}.open>.frm-dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 10px;font-size:var(--text-xs);color:var(--grey-400)}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.dropdown-menu-right>.frm-dropdown-menu,.pull-right>.frm-dropdown-menu{right:0;left:auto}.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.navbar-fixed-bottom .dropdown .frm-dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.btn{border:1px solid #ddd;background:#fff;height:28px;line-height:var(--leading)}a.frm_option_icon::before{color:var(--primary-500);font-size:22px;width:22px;height:22px}a.frm_option_icon:focus::before,a.frm_option_icon:hover::before{color:var(--primary-700)}.frm_top_left .frm-dropdown-toggle{color:#999}.frm-card ol{margin-left:15px}.frm-dropdown-toggle{text-decoration:none}.frm-card .frm-dropdown-toggle{border:1px solid var(--grey-300);border-radius:var(--small-radius);font-size:13px;color:var(--grey-700);padding:7px 20px}.frm_actions_dropdown .frm-dropdown-menu{font-size:var(--text-sm);color:#5f6c72}.frm-dropdown-menu .frm_icon_font{vertical-align:middle;color:#5f6c72;margin-right:3px}.multiselect-container.frm-dropdown-menu{top:auto;left:auto;font-size:var(--text-sm);padding:4px;margin-bottom:3px}#post-body-content+.frm-right-panel h3.accordion-section-title{padding:7px 10px 8px 14px;font-size:var(--text-md);color:var(--grey-700)}.frm-with-line,.accordion-section-content h4{font-size:var(--text-md);font-weight:400;margin:20px -20px 10px;padding:0 20px;color:var(--grey-700);position:relative;border:none !important}.frm-with-line span,.accordion-section-content h4 span{background:#fff;padding:0 var(--gap-xs);position:relative;display:inline-block;z-index:2}.accordion-section-content h4 span{background:var(--sidebar-color)}.frm-right-panel .frm-with-line span{background:var(--sidebar-color) !important;margin-left:-4px}.frm-right-panel .frm-inline-modal .frm-with-line span{background:#fff !important}.frm-with-line::before,.accordion-section-content h4::before{content:"";display:block;position:absolute;border-bottom:1px solid var(--grey-300);left:0;width:100%;top:50%}.control-section .accordion-section-title::after,.customize-pane-child .accordion-section-title::after{top:15px}.accordion-container .frm-dropdown-menu{min-width:40px}.frm-btn-group .multiselect.dropdown-toggle{box-sizing:border-box;min-height:unset;cursor:pointer}.accordion-container .frm-dropdown-menu::before,.accordion-container .multiselect.dropdown-toggle::before{font-family:"s11-fp" !important}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0;width:100%;max-width:250px}.multiselect-container button.multiselect-option{width:100%;text-align:left;border:none;margin-bottom:4px}.multiselect-container button.multiselect-option label{margin-left:5px}.accordion-container .multiselect-container label{padding:3px 19px 3px 7px}.frm-btn-group.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.frm-btn-group.btn-group,.frm-btn-group.btn-group-vertical{display:block}.multiselect-option label{max-width:calc(100% - 22px);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.frm_scale{text-align:center;float:left;margin-right:10px}.frm_scale input{display:block;margin:5px}.frm_multi_fields_container{float:left}.frm_multi_fields_container,.frm_form_builder .frm_form_fields input[type=tel] .frm_form_builder .frm_form_fields input[type=range],.frm_form_builder .frm_form_fields input[type=text]{width:100%;height:auto}.frm_form_builder .frm_time_wrap .frm_time_sep{vertical-align:sub;vertical-align:-webkit-baseline-middle}.frm_form_builder input[type=range]::-webkit-slider-runnable-track{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-moz-range-track{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-ms-fill-lower{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-ms-fill-upper{background-color:var(--blue-border)}.frm-embed-field-placeholder{text-align:center;height:145px;display:flex;align-items:center;justify-content:center}.frm-fake-field{display:block;height:25px;background-color:var(--light-blue);border:1px solid var(--grey-300);margin:10px 0;border-radius:var(--small-radius)}.frm-embed-message{position:absolute;background:#fff;border:1px solid var(--grey-300);color:var(--grey-700);padding:var(--gap-md);font-size:var(--text-lg);max-width:200px;min-width:50%;margin:0 var(--gap-md);overflow:hidden;text-overflow:ellipsis}.frm-summary-message{top:50%;left:50%;padding:15px 0;font-size:var(--text-md);transform:translate(-50%, -50%)}.frm-summary-learn-more{font-size:inherit !important}.frm-single-settings .frm-embed-message{width:100%;position:static;border-radius:var(--small-radius)}#new_fields input[type=text],#new_fields input[type=number],.frm_field_box .frm_form_fields>textarea,.frm_form_fields .frm_form_field>textarea,.frm_form_fields .frm_form_field>input[type=email],.frm_form_fields .frm_form_field>input[type=url],.frm_form_fields .frm_form_field>input[type=number],.frm_form_fields .frm_form_field>input[type=tel],.frm_form_fields .frm_form_field>input[type=text],.frm_form_fields .frm_form_field>input[type=range]{width:100%}.frm_form_fields textarea.wp-editor-area{width:100%;border:none}.frm_form_fields input[type=file],.frm_form_fields input[type=file]:disabled{background:rgba(0,0,0,0);border:none;box-shadow:none;width:auto}.frm_form_fields select{width:auto;max-width:100%}input[type=radio],input[type=checkbox]{width:16px;padding:0}.frm_grid_container>p,.frm_grid_container>p.frm_form_field,.frm_grid_container>div.frm_form_field,#new_fields .frm_grid_container>p{margin-top:8px;margin-bottom:8px;margin-right:0}.frm_grid_container>p>label:only-child,.frm_grid_container>p.frm_form_field>label:only-child,.frm_grid_container>div.frm_form_field>label:only-child,#new_fields .frm_grid_container>p>label:only-child{margin-bottom:0}.frm_grid_container>.frm-has-modal>p:only-child{margin-bottom:var(--gap-xs)}#new_fields div.frm_grid_container>.frm_primary_label{margin-top:8px}#new_fields .frm_primary_label+p,#new_fields .frm_primary_label+.frm6+.frm6,#new_fields .frm_primary_label+.frm6+.frm-inline-modal+.frm6{margin-top:0}.frm_catlevel_2,.frm_catlevel_3,.frm_catlevel_4,.frm_catlevel_5{margin-left:18px}.frm_wrap .frm-fields .auto_width,.frm_form_fields input.auto_width,.frm_form_fields select.auto_width,.frm_form_fields textarea.auto_width{width:auto !important}.frm_form_fields select.auto_width{min-width:60px}.frm_form_fields input:focus,.frm_form_fields select:focus,.frm_form_fields textarea:focus,.frm_focus_field input{background-color:#fff;border-color:#ddd}.frm_form_builder .frm_radio,.frm_form_builder .frm_checkbox{display:block;margin-bottom:2px}.frm_form_builder .frm_radio label,.frm_form_builder .frm_checkbox label{font-size:var(--text-sm)}.horizontal_radio .frm_radio,.horizontal_radio .frm_checkbox{margin-right:5px;display:inline-block}.frm_form_builder .frm_opt_container .frm_radio.frm_image_option label,.frm_form_builder .frm_opt_container .frm_checkbox.frm_image_option label{display:flex;align-items:center;gap:9px;white-space:normal}.frm_form_field.frm_two_col .frm_opt_container,.frm_form_field.frm_three_col .frm_opt_container,.frm_form_field.frm_four_col .frm_opt_container{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:max-content;grid-gap:0 2.5%}.frm_form_field.frm_three_col .frm_opt_container{grid-template-columns:repeat(3, 1fr)}.frm_form_field.frm_four_col .frm_opt_container{grid-template-columns:repeat(4, 1fr)}.frm_form_field.frm_two_col .frm_radio,.frm_form_field.frm_two_col .frm_checkbox,.frm_form_field.frm_three_col .frm_radio,.frm_form_field.frm_three_col .frm_checkbox,.frm_form_field.frm_four_col .frm_radio,.frm_form_field.frm_four_col .frm_checkbox{grid-column-end:span 1}.frm_wrap .with_frm_style .frm_checkbox input[type=checkbox],.frm_wrap .with_frm_style .frm_radio input[type=radio],.frm_wrap input[type=checkbox],.frm-white-body input[type=checkbox],.field-group input[type=checkbox],.frm_scale input[type=radio],.frm_radio input[type=radio],.frm_checkbox input[type=checkbox]{width:15px;min-width:15px;height:15px;border:1px solid var(--grey-300);box-shadow:var(--box-shadow-sm);-webkit-appearance:none}.frm_wrap input[type=radio]{border-color:var(--grey-300);box-shadow:var(--box-shadow-sm)}.frm_wrap input[type=radio]:checked::before{background-color:var(--primary-500)}.frm_wrap .with_frm_style .frm_checkbox input[type=checkbox],.frm_wrap input[type=checkbox],.frm-white-body input[type=checkbox],.field-group input[type=checkbox],.frm_checkbox input[type=checkbox]{border-radius:4px}.frm-white-body input[type=checkbox]:checked,.frm_wrap input[type=checkbox]:checked{background-color:var(--border-color-active, var(--primary-500)) !important;border-color:var(--border-color-active, var(--primary-500)) !important}.frm-white-body input[type=checkbox]:checked:focus,.frm_wrap input[type=checkbox]:checked:focus{border-color:var(--border-color-active, var(--primary-500))}.frm-white-body input[type=checkbox]:checked::before,.frm_wrap input[type=checkbox]:checked::before{content:"";display:block;width:100% !important;height:100% !important;background-image:url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6667 1.5L4.25001 7.91667L1.33334 5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A") !important;background-size:8px !important;background-repeat:no-repeat !important;background-position:center !important;margin:0}.frm_radio input[type=radio],.frm_checkbox input[type=checkbox]{margin-right:5px}.frm_inner_field_container{margin-bottom:10px}.frm_conf_inline .frm_inner_field_container,.frm_conf_inline .frm_inner_conf_container{width:49%;float:left}.frm_conf_inline .frm_inner_field_container{margin-right:2%;clear:both}.frm_inner_field_container>label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.frm_field_box:not(.edit_field_type_divider):hover>.frm_inner_field_container>label,.frm_field_box .divider_section_only:hover>.frm_inner_field_container>label,li.ui-state-default.selected>.frm_inner_field_container>label{max-width:calc(100% - 100px)}.frm-drag-fade{background-color:var(--lightest-grey) !important;border-radius:4px}.frm-drag-fade *{opacity:0}.frm-dragging .divider_section_only,.frm-dragging .frm_field_box{pointer-events:none}.frm_form_settings #op-popup,.frm_form_settings com-1password-op-button,.frm_conf_below .frm_conf_field_container .frm_primary_label,.frm_conf_inline .frm_inner_field_container .frm-show-click a,.frm_conf_below .frm_conf_field_container .frm-show-click a{display:none !important}.frm_conf_inline .frm_inner_field_container .frm-field-action-icons{position:absolute;right:5px}.frm_conf_below .frm_conf_field_container{margin-top:10px}.frm_calc_dec{width:50px}.frm_ext_sc{display:none}.frm_long_input{width:100% !important;box-sizing:border-box}.frmcenter{text-align:center}img.frm_help{margin-left:2px;vertical-align:middle;padding-bottom:2px}.frm_spinner.frm-wait,.frm_spinner.spinner{float:left;visibility:hidden;margin:0 10px}.frm_visible_spinner.frm-wait,.frm_visible_spinner.spinner{visibility:visible;float:none}.frm_form_action_settings .frm_spinner.frm-wait,.frm_form_action_settings .frm_spinner.spinner{visibility:visible;float:none;vertical-align:bottom}.frm_form_action_settings .frm_loading{font-size:15px;text-align:center}.frm_ajax_settings_tab .frm-wait,.frm_ajax_settings_tab .spinner{visibility:visible;float:none;margin-top:20px}.wp-core-ui .frm_loading_button.button-primary.frm-button-primary,.frm_loading_button,.frm_loading_form.frm_button_submit{position:relative !important;opacity:.8;color:rgba(0,0,0,0) !important;text-shadow:none !important}.frm_loading_button:hover,.frm_loading_button:active,.frm_loading_button:focus,.frm_loading_form.frm_button_submit:hover,.frm_loading_form.frm_button_submit:active,.frm_loading_form.frm_button_submit:focus{cursor:not-allowed;color:rgba(0,0,0,0) !important;outline:none !important;box-shadow:none}.frm-wait{margin:20px;width:20px;height:20px;position:relative;display:inline-block}#frm-show-fields .frm-wait:only-child{position:absolute;left:50px;top:30px}.frm-wait::before,.frm_loading_button::before,.frm_loading_form.frm_button_submit::before{content:"";display:inline-block;position:absolute;background:rgba(0,0,0,0);border:1px solid #fff;border-top-color:rgba(0,0,0,0);border-left-color:rgba(0,0,0,0);border-radius:50%;box-sizing:border-box;top:50%;left:50%;margin-top:-10px;margin-left:-10px;width:20px;height:20px;animation:spin 2s linear infinite}.frm-wait::before{border-bottom-color:var(--primary-700);border-right-color:var(--primary-700)}.frm_loading_button.frm-button-secondary::before{border-bottom-color:var(--primary-500);border-right-color:var(--primary-500)}input[type=submit]:focus{outline:none !important}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}label input[type=checkbox],label input[type=radio]{vertical-align:inherit}#editorcontainer #dyncontent{margin:0;width:100%;padding:6px;line-height:var(--leading);border:0 none;outline:none;box-sizing:border-box}.frm_postbox_icon{margin:-6px 0 0 -10px}.frm_form_builder a:hover{text-decoration:underline}.frm_form_builder .widget-title h4{padding:10px 15px}.frm_form_builder .widget-top a.widget-action::after{margin:7px 12px 0}.frmbutton.frm_tgateway{display:none !important}.frm_html_legend pre{display:inline}#ed_fullscreen{display:none !important}.frm_posttax_opt_list{overflow:auto;max-height:200px;background-color:#fff}.frm_posttax_opt_list p.howto{font-size:12px}.frm_border_bottom{border-bottom:1px solid var(--grey-300);margin-bottom:10px;padding-bottom:10px}.frm_posttax_opt_list .frm_border_bottom span.howto{padding-right:10px}.frm_posttax_opt_list .frm_border_bottom input{margin-right:1px}.frm_add_remove div.frm_form_field{padding-bottom:5px}.frm_field_opts_list{max-height:260px;overflow:auto}.frm_white_bg{background-color:#fff}.frm_border_light{border:solid 1px #ddd}#new_fields .form-table input[type=text],#new_fields .form-table select,.form-table .form-field input,.form-table .form-field .quicktags-toolbar input,.form-field input,.form-field .quicktags-toolbar input{width:auto}.frm_aff_link{float:right}.frm_select_box{text-align:center;font-weight:700;width:100%;background-color:rgba(0,0,0,0) !important}.wp-list-table input.frm_select_box{text-align:left;font-weight:400;font-size:inherit !important;border:none;padding:0 !important;background-color:rgba(0,0,0,0) !important}.wp-list-table input.frm_select_box:focus{outline:none;box-shadow:none}.wp-list-table .frm_no_items.frm_select_box{text-align:center;font-weight:700;width:500px;max-width:100%;font-size:inherit}#frm-options-panel{padding:0 var(--gap-sm);color:var(--grey-900);overflow:hidden}.frm-right-panel a.frm_add_logic_link,#frm-options-panel h3{font-size:var(--text-md);font-weight:500;background-color:#fff;border-radius:var(--small-radius);padding:18px var(--gap-sm);margin:2px calc(-1*var(--gap-sm));transition:background-color 200ms ease-out,box-shadow 200ms ease-out,color 200ms ease-out}.frm-right-panel a.frm_add_logic_link .frmsvg,#frm-options-panel h3 .frmsvg{width:13px;height:13px;color:var(--grey-500);transition:transform 300ms ease-in}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):not(:first-of-type),.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):first-of-type:first-child,#frm-options-panel h3:not(.frm-collapsed):not(:first-of-type),#frm-options-panel h3:not(.frm-collapsed):first-of-type:first-child{color:var(--grey-700);box-shadow:var(--box-shadow-sm)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):not(:first-of-type) .frmsvg,.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):first-of-type:first-child .frmsvg,#frm-options-panel h3:not(.frm-collapsed):not(:first-of-type) .frmsvg,#frm-options-panel h3:not(.frm-collapsed):first-of-type:first-child .frmsvg{transform:rotate(-180deg)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div,#frm-options-panel h3:not(.frm-collapsed)+div{padding-top:6px;padding-bottom:6px}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container{padding-bottom:14px}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container>p:first-child,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container>p:first-child{margin-top:var(--gap-sm)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container>p:first-child.frm6+.frm6,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container>p:first-child.frm6+.frm6{margin-top:var(--gap-sm)}.frm-right-panel a.frm_add_logic_link.frm-collapsed,#frm-options-panel h3.frm-collapsed{color:var(--grey-500);background-color:rgba(0,0,0,0)}.frm-right-panel a.frm_add_logic_link:hover,#frm-options-panel h3:hover{color:var(--grey-700);background-color:#fff;box-shadow:var(--box-shadow-sm)}.frm-right-panel a.frm_add_logic_link:focus-visible,#frm-options-panel h3:focus-visible{outline:1px solid var(--primary-500) !important;outline-offset:-1px}.frm-right-panel a.frm_add_logic_link:focus{outline:auto}.frm_field_key{background-color:#f7f7f7}#frm_form_editor_container #edit-slug-box{padding:0}.frm-alt-table{position:relative;width:100%;border-collapse:collapse;margin-top:.5em;font-size:15px}#form_show_entry_page .frm-alt-table:not(.frm-zebra-striping)::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#fff}.frm-alt-table th{width:200px}.frm-alt-table tr,.frm-alt-table tr.frm-odd{background-color:rgba(0,0,0,0)}.frm-alt-table tr.frm-even{background-color:var(--sidebar-color)}.frm-alt-table th,.frm-alt-table td{background-color:rgba(0,0,0,0);vertical-align:top;text-align:left;padding:20px}.frm-alt-table h3{margin-bottom:0}.form-field .frm_cb_button{height:22px;line-height:20px;margin-bottom:10px;margin-right:5px}.edit_field_type_select .frm_option_val_label{margin-left:12px}.frm_rte{background:url(../images/rte.png) no-repeat}.frm_rte .howto{margin:10px 0 46px}.subform_section{margin:25px}.subform_section,.subform_section label,.subform_section input{opacity:80}.subform_section .frm_sortable_field_opts{display:none}#frm_form_editor_container .subform_section .frm_primary_label{display:block}.subform_section.subform_break{border-top:1px dashed #ccc}.button-secondary.frm_html_field{background-color:#ededed;padding:10px 20px;line-height:inherit;width:auto;height:auto !important;border-radius:0;box-sizing:content-box}.frm_html_field_placeholder{margin-bottom:10px;text-align:center}.recaptcha_placeholder{border:1px solid #d3d3d3;width:300px}.turnstile_placeholder{width:300px}.frm_sorting .frm_rte textarea{width:653px;background:#fff;margin:1px 0 0;border:1px solid #dfdfdf;border-top:none;border-radius:0;float:none !important}.frm_full_rte textarea{width:98%;padding:0}.frm_field_box{padding:5px;min-height:20px;margin:10px 0}.frm_indent_opt,td.frm_indent_opt{padding-left:25px}.frm_charts object{background:rgba(0,0,0,0)}.frm_charts h2{height:34px}.frm_single_option.ui-sortable-placeholder,li.sortable-placeholder{border:none;margin:0;visibility:visible !important;box-shadow:2px -10px 0 2px var(--primary-500)}#frm_form_editor_container>ul>.frm_single_option.ui-sortable-placeholder,#frm_form_editor_container>ul>li.sortable-placeholder{width:calc(100% - 5px) !important;height:0 !important}#frm_form_editor_container>ul>li>ul{position:relative}#frm_form_editor_container>ul>li>ul>li.sortable-placeholder,#frm_form_editor_container ul.start_divider>li>ul>li.sortable-placeholder{position:absolute;top:20px;bottom:0}.edit_field_type_divider+li.sortable-placeholder{box-shadow:2px 5px 0 2px var(--primary-500)}.start_divider li.sortable-placeholder{box-shadow:2px -5px 0 2px var(--primary-500)}.frm-is-collapsed+.sortable-placeholder{box-shadow:2px 15px 0 2px var(--primary-500)}.frm_single_option.ui-sortable-placeholder{box-shadow:0 0 1px 1px var(--primary-500)}.frm_sorting>li.edit_field_type_end_divider:first-child,.frm-show-click,li.ui-state-default.edit_field_type_divider .frm-show-click{display:none}.frm_form_field.ui-sortable-helper .frm-field-action-icons,.frm_form_field.ui-sortable-helper .frm_form_fields,.frm_form_field.ui-sortable-helper .frm_description,.frm_form_field.ui-sortable-helper .description{display:none}.frm_form_field.ui-sortable-helper .frm_primary_label,.frm_form_field.ui-sortable-helper .frm_inner_field_container{margin:0 !important}.frm-single-settings .frm-show-click{display:block !important}.frm-show-hover,.frm_single_visible_hover,li.ui-state-default.edit_field_type_divider .frm-show-hover{opacity:0;transition:opacity .15s ease-in-out}#frm-show-fields .frm-field-settings-open .frm-show-hover{opacity:1}.frm_sortable_field_opts{margin-top:5px}.frm_single_option{clear:both;margin:0 !important;padding-bottom:5px}.frm_single_option input[type=radio],.frm_single_option input[type=checkbox]{margin-top:0}.frm_single_option .frm-with-right-icon input[type=text]+.frmsvg{position:relative;right:27px;width:14px;height:14px;padding:0;margin:var(--gap-2xs) 0 0}.frm_product_price_wrapper,.frm_image_preview_wrapper,#new_fields .frm_single_option select,#new_fields .frm_single_option input[type=text]{width:calc(100% - 106px) !important;flex-grow:1}.frm-right-panel .frm_single_option a.frm_remove_tag,.frm_single_option a{padding-left:7px}.frm_single_option:hover .frm_single_visible_hover{opacity:100}.frm_single_option .frm-drag{font-size:23px;width:24px;height:24px;margin-left:-6px;margin-right:var(--gap-xs);color:var(--grey-500)}.frm_single_option .frm-drag::before{vertical-align:middle}.frm-drag,.frm_single_option.ui-sortable-helper{cursor:move}.frm_single_option .frm_option_key{margin-left:19px !important}.frm_option_key input[type=text]{margin-top:var(--gap-xs) !important;margin-left:11px !important}.frm_option_key input[type=checkbox]+input[type=text],.frm_option_key input[type=radio]+input[type=text]{margin-left:30px !important}li.ui-state-default.selected .frm-show-click,li.ui-state-default.selected.edit_field_type_divider .frm-show-click{display:inline;vertical-align:top}.frm_field_box:not(.edit_field_type_divider):hover>.frm_inner_field_container>.frm-show-hover,.frm_field_box .divider_section_only:hover>.frm_inner_field_container>.frm-show-hover,li.ui-state-default.selected>.frm_inner_field_container>.frm-show-hover,li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-show-hover{opacity:100}li.frm_field_box>ul.frm_grid_container{position:relative}.frm_sorting span.ui-icon{width:16px}body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) .frm_image_options .frm_image_option_container{--field-border-width: 1px;--border-color: var(--grey-300);--border-color-active: var(--primary-500);--border-radius: var(--small-radius)}#form_show_entry_page .frm_file_link,#form_show_entry_page .frm_image_option_container{display:inline-flex;flex-wrap:nowrap;flex-direction:column;text-align:center;align-items:center;width:150px;margin-right:10px;margin-bottom:10px}#form_show_entry_page .frm_image_option_container img{width:150px;height:150px;object-fit:cover}#form_show_entry_page .frm_file_link img{max-width:150px;height:auto}#form_show_entry_page .frm_file_link~br{display:none}#form_show_entry_page .frm_upload_label{padding:10px}#form_show_entry_page.frm_wrap .postbox{overflow:hidden}.frm_image_option_container .frm_image_placeholder_icon svg{height:150px}.frm_list_entry_page .frm_file_link,.frm_list_entry_page .frm_image_option_container.frm_label_with_image{display:block;text-align:center}.frm_list_entry_page .frm_image_option_container img{width:75px;height:75px;object-fit:cover}.frm_list_entry_page img{max-width:100%;height:auto}.frm_image_option_container .frm_empty_url{background-color:var(--sidebar-color)}.frm_list_entry_page .frm_image_option_container .frm_text_label_for_image{display:block;padding:5px 0 10px}.frm_list_entry_page .frm_upload_label,.frm-summary-page-wrapper .frm_text_label_for_image{display:block}#frm-welcome .frm_image_options .frm_image_option_container,#form_global_settings .frm_image_options .frm_image_option_container{background:var(--sidebar-color)}#frm-welcome .frm_image_option_container svg,#form_global_settings .frm_image_option_container svg{max-width:calc(100% - 20px)}#frm-new-template .frm_image_option_container svg{height:50px;margin:10px auto 0}.frm_image_option_container{position:relative}.frm_text_label_for_image>svg{width:30px;position:absolute;top:5px;right:calc(50% - 15px)}.frm_single_option .frm_option_key{margin-top:17px}.frm_single_option .frm_option_key.frm_image_preview_wrapper{margin-top:var(--gap-xs)}.frm_image_data{margin-left:var(--gap-sm);display:flex;flex-direction:column;font-size:var(--text-sm);justify-content:space-around;min-width:0}.frm_image_styling_frame{display:flex;align-items:stretch;margin-left:36px;margin-bottom:var(--gap-xs);width:100%}.frm_image_styling_frame img{height:54px;width:54px;min-width:auto;min-height:auto;border-radius:3px;object-fit:cover;object-position:center}.frm_image_styling_frame .frm_email_attachment_icon img{height:auto;width:auto;max-width:54px}.frm_image_preview_title{color:var(--grey-500);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0;flex:1 1 auto}.frm_wrap .frm_choose_image_box{cursor:pointer;color:var(--primary-500);background-color:#fff;margin-left:32px;text-align:center;width:100%}.frm-type-ranking .frm_option_key .frm_choose_image_box{margin-left:11px !important}.frm_wrap .frm_choose_image_box:hover{background:#fff}a.frm_remove_image_option,.frm_remove_image_option{color:var(--grey-400);cursor:pointer}a.frm_remove_image_option:hover .frmsvg,a.frm_remove_image_option:hover,.frm_remove_image_option:hover{color:rgba(40,47,54,.8)}.frm-form-setting-tabs{margin-top:var(--gap-sm) !important}.frm-right-panel>.postbox{background-color:rgba(0,0,0,0);border:none;box-shadow:none;margin:0}.frm-right-panel .postbox.frm_with_icons .inside,.frm-right-panel .postbox .inside,.frm-right-panel .inside{font-size:var(--text-md);padding:15px 20px 20px;color:var(--grey-700)}.frm-right-panel .misc-pub-section{padding:var(--gap-xs) 0;position:relative}.frm-right-panel .inside a,.frm-form-setting-tabs a{font-size:var(--text-md);color:var(--grey-700);padding:var(--gap-sm);display:block}.frm-form-setting-tabs a{color:var(--grey-900);padding:var(--gap-sm) var(--gap-md)}.frm-right-panel .inside a{padding:0;color:var(--primary-500);display:inline-block}.frm-right-panel .inside a:hover{color:var(--primary-700)}.frm-form-setting-tabs a:hover{background:var(--sidebar-hover);color:var(--grey-900)}.frm-right-panel .inside i,.frm-form-setting-tabs a i,.frm-form-setting-tabs a .frmsvg{margin:0 5px;display:inline-block;width:20px;height:20px;color:var(--grey-500)}.frm-form-setting-tabs a .frmsvg{margin:0}.frm-right-panel .inside a:hover i,.frm-right-panel .inside a:hover .frmsvg,.frm-form-setting-tabs a:hover .frmsvg,.frm-form-setting-tabs a:hover span{color:var(--grey-700)}.frm_settings_form .tabs-panel{padding:0 25px}#form_settings_page .tabs-panel,.frm_settings_form .tabs-panel{max-height:initial !important;min-height:50px !important}#frm_adv_info .tabs-panel{min-height:0 !important;overflow-x:hidden;padding:0;border:none;background:rgba(0,0,0,0)}select.frm_cancelnew,input.frm_enternew{width:175px}.frm_posttax_opt_list{border:1px solid var(--grey-300);padding:var(--gap-md);border-radius:var(--small-radius);margin:5px 0 5px var(--gap-md)}.frm-right-panel .wp-picker-open+.wp-picker-input-wrap{position:absolute;margin-left:calc((100% - 35px)*-1);margin-top:1px;width:calc(100% - 36px)}.frm-right-panel .wp-picker-container input[type=text].wp-color-picker{border:none;padding:5px 8px;font-family:inherit;color:var(--grey-700);font-size:var(--text-md);width:100%;line-height:var(--leading)}.frm-right-panel .wp-picker-input-wrap .wp-picker-clear{display:none !important}.frm-right-panel .wp-picker-holder{position:absolute;z-index:999}.frm-right-panel .wp-picker-input-wrap label{margin-bottom:0}.frm-right-panel .wp-picker-container .wp-color-result.button{width:100%;overflow:hidden;margin:0 !important;height:var(--h-md) !important;padding:0 0 0 var(--gap-lg) !important;border-radius:var(--small-radius);border-color:var(--grey-300)}.frm-right-panel .wp-color-result-text{line-height:var(--leading) !important;font-size:var(--text-md);background:#fff !important;color:var(--grey-900);padding:5px 8px;border-color:var(--grey-300);text-align:left}.frm-right-panel .color-alpha{width:var(--gap-lg) !important}.frm_grid_container .wp-picker-container{width:100%;position:relative}.wp-picker-container button.wp-color-result{border:1px solid var(--grey-300) !important}.wp-picker-container .wp-picker-input-wrap input.hex.wp-color-picker{max-width:100%;position:relative}.frm_end .wp-picker-holder{margin-left:-145px}.frm_end.frm6 .wp-picker-holder{margin-left:-86px}.frm_toggle_opt{padding:0;white-space:normal;display:inline;vertical-align:middle;font-weight:400}.frm_on_label,.frm_off_label{color:var(--grey-700)}.frm_toggle{position:relative;display:inline-block;width:40px;height:var(--h-xs);vertical-align:middle}.frm_toggle_block{display:inline-flex !important;gap:var(--gap-xs);align-items:center}.frm_toggle input,.frm_toggle_block input{display:none !important}.frm_toggle_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--grey-200);transition:.4s;border-radius:30px}.frm_toggle_slider::before{box-sizing:border-box;content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none'%3E%3Cpath stroke='%2398A2B3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m10.063 3.938-6.126 6.124M3.938 3.938l6.124 6.124'/%3E%3C/svg%3E");position:absolute;left:2px;bottom:2px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:20px;line-height:20px;background-color:#fff;border-radius:50%;transition:.4s;box-shadow:var(--box-shadow-md)}input:checked+.frm_toggle .frm_toggle_slider{background-color:var(--primary-500)}input:focus+.frm_toggle .frm_toggle_slider{box-shadow:var(--box-shadow-md)}input:checked+.frm_toggle .frm_toggle_slider::before{transform:translateX(16px);content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none'%3E%3Cpath stroke='%234199FD' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4.52 7.437 1.313 1.459L9.48 5.104'/%3E%3C/svg%3E")}input[disabled]+.frm_toggle_slider,input[disabled]+.frm_toggle .frm_toggle_slider{pointer-events:none;cursor:text;opacity:.5}.frm_toggle_opt~.frm_toggle .frm_toggle_slider::before{content:"" !important}.rtl .frm_toggle_opt{padding:0 8px}.rtl .frm_toggle_slider::before{left:17px}.rtl input:checked+.frm_toggle .frm_toggle_slider::before{transform:none !important;left:1px}.frm_toggle_off,.frm_toggle_on{display:none;color:#fff;z-index:999;position:absolute;font-size:10px;line-height:20px;left:6px}.frm_toggle_off{display:inline;left:auto;right:5px;color:var(--dark-grey)}.frm_toggle_long{width:80% !important;height:28px;display:inline-block !important}.frm_toggle_long .frm_toggle_slider{background:var(--primary-700);box-shadow:0 0 0 2px var(--primary-700)}.frm_toggle_long .frm_toggle_off,.frm_toggle_long .frm_toggle_on{width:50%;text-align:center;font-size:13px;line-height:28px}.frm_toggle_long .frm_toggle_on{left:0}.frm_toggle_long .frm_toggle_off{right:0}.frm_toggle_long .frm_toggle_slider::before{width:50%;left:0;top:0;border-radius:var(--border-radius) 0 0 var(--border-radius);height:100%;background-color:#fff;color:var(--primary-color);content:"" !important}.frm_toggle_long input:checked+.frm_toggle_slider::before{transform:translateX(101%);border-radius:0 var(--border-radius) var(--border-radius) 0}input:checked+.frm_toggle_slider+.frm_toggle_on{display:inline}input:checked+.frm_toggle_slider+.frm_toggle_on+.frm_toggle_off{display:none}.frm_toggle_long .frm_toggle_on,.frm_toggle_long input:checked+.frm_toggle_slider+.frm_toggle_on+.frm_toggle_off{display:inline;color:var(--primary-500);font-weight:400}.frm_toggle_long .frm_toggle_off,.frm_toggle_long input:checked+.frm_toggle_slider+.frm_toggle_on{color:#fff;font-weight:700}.tabs-panel{height:auto !important;min-height:260px}.tabs-panel.panel_secondary{min-height:20px;margin-top:10px;margin-left:150px}label.frm-example-icon{margin-right:20px !important;display:inline-block !important}#frm_stripe_icon{border-radius:5px}#captcha_settings .frm_primary_label{margin-top:var(--gap-sm)}.frm-long-icon-buttons{display:flex;gap:var(--gap-md)}.frm-long-icon-buttons>label{border:1px solid var(--grey-300);color:var(--grey-700);border-radius:var(--small-radius);display:flex;padding:var(--gap-sm);gap:var(--gap-sm);justify-content:center;align-items:center;width:calc(33% - var(--gap-sm));box-sizing:border-box}.frm-long-icon-buttons>label:hover{color:var(--primary-500)}.frm-long-icon-buttons input[type=radio]{display:none}.frm-long-icon-buttons input[type=radio]:checked+label{border-color:var(--primary-500);box-shadow:0 0 0 1px var(--primary-color)}.frm-long-icon-buttons label>svg{height:21px}.frm-example-icon .frmsvg,.frm-example-icon i{height:20px;width:20px;font-size:20px;color:var(--grey-700)}.frm_license_msg{margin-top:0}.frm_authorized_box .frm-show-unauthorized,.frm_unauthorized_box .frm-show-authorized{display:none}.edd_frm_status_icon.frmsvg{margin:0 5px}.edd_frm_license_row .frm_action_success .frmsvg{color:green}.edd_frm_license_row .frm_action_error .frmsvg{color:#d54e21}#form_global_settings .tabs-panel .num svg{display:none}.frm_no_items{margin:0 auto 50px;text-align:center;color:var(--grey-700);max-width:500px}.frm-subscribe{margin:var(--gap-lg) 0}.frm_inbox_count{color:#fff;border-radius:50%;display:inline-block;margin-right:8px;font-size:11px;text-align:center;min-width:18px;height:18px;margin-left:2px;vertical-align:text-bottom}#payments_settings .frm_payments_section .form-table td{padding-left:0;padding-right:0}#payments_settings .frm_payments_section .form-table{margin-top:0}#frm_authnet_general_settings>tr:first-of-type>td:first-of-type{padding-top:0}#frm_authnet_general_settings h3{margin-bottom:0}.frm_payment_settings_tab .frmsvg{height:22px}.frm_payment_settings_tab[for=frm_toggle_paypal_settings] .frmsvg{width:83px}.frm_payment_settings_tab[for=frm_toggle_authorize_net_settings] .frmsvg{width:99px}.frm_payment_settings_tab[for=frm_toggle_square_settings] .frmsvg{width:89px}.frm_payment_settings_tab[for=frm_toggle_stripe_settings] .frmsvg{width:53px}.frm-lite .xml_opts .frm-export-xml-items{display:none}.csv_opts #frm_csv_col_sep{width:45px}#frm_advanced td.frm_left_label{width:20%;padding-right:2px}#frm_where_options select{max-width:200px}#frm_where_options select.frm_insert_where_options{width:30%}#frm_where_options select.frm_where_is_options{width:20%}#frm_where_options span.frm_where_val{width:32%;display:inline-block;position:relative}#frm_where_options span.frm_where_val .frm_tooltip_icon,#frm_where_options span.frm_where_val .frm_help{left:-4px;position:absolute}#frm_where_options span.frm_where_val.frm_hidden{display:none}#frm_where_options span.frm_where_val input,#frm_where_options span.frm_where_val select{width:90%;margin-left:10px}#frm_where_options{min-height:31px}.tabs-panel.active .tabs-panel,.frm_settings_form .tabs-panel .tabs-panel{border:none;padding:0}.frm-feature-banner{background:var(--grey-700);color:#fff;border-radius:var(--small-radius);padding:20px;margin:10px 0}.frm-feature-banner p{font-size:var(--text-sm)}.frm-feature-banner .dismiss{margin-top:-10px;margin-right:-10px}.frm-feature-banner .dismiss svg{color:#fff}.frm-feature-banner .frm-big-icon{padding-right:20px;float:left;min-height:60px}.frm-big-icon svg{height:60px;width:60px}.frm-feature-banner p{margin-top:0}.frm_98_width{width:100% !important}h2.frm-h2,.frm_form_settings h2{border-bottom:1px solid var(--grey-300);color:var(--grey-900);font-weight:400 !important;padding:9px 0 5px;margin:0}.frm_settings_form h3,.frm_form_settings h3,.frm_form_settings span.frm_add_logic_link{font-size:var(--text-md);border-top:1px solid var(--grey-300);padding-top:var(--gap-sm);margin:var(--gap-sm) 0;font-weight:400;text-transform:uppercase;color:var(--medium-grey);display:block}.frm_form_settings .howto{color:var(--grey-500);font-size:var(--text-sm);margin-top:8px}.frm_form_settings .advanced_settings .form-table{margin-top:0}.frm_form_settings td.frm_175_width{width:175px}.frm_form_settings #success_url{width:95%}.frm_wrap .ui-autocomplete{padding:3px 0;max-height:310px}.frm_wrap .ui-widget{font-family:inherit}.frm_wrap .ui-autocomplete li{padding:2px 4px;background:none;color:var(--grey-700);border:none;font-weight:400}.frm_wrap .ui-autocomplete .ui-menu-item-wrapper.ui-state-active{border:none;font-weight:inherit}.frm_select_with_label{margin:7px 0 0}#frm-insert-fields-box,#frm-conditionals{max-height:none}#frm-conditionals,#frm-adv-info-tab{display:none;max-height:355px}#frm-insert-fields-box ul.subsubsub,#frm-conditionals ul.subsubsub{float:right;margin:0}#frm-insert-fields-box ul.alignleft,#frm-conditionals ul.alignleft{margin:4px 0 0}#frm_adv_info ul.frm_code_list.frm-full-hover{clear:both;max-height:215px;overflow:auto}#frm-insert-fields-box ul.frm_code_list li.clear.frm_block{height:10px}#frm_adv_info .frm_noallow{display:none}#frm_adv_info #frm-conditionals .frm_noallow{display:block}#frm_html_tab.frm_hidden{display:none}#frm_html_tab.active{display:inline}.frm_email_reply_container select,.frm_email_reply_container input,.form-table td.frm_150_width{width:170px}#frm_notification_settings .frm_no_top_padding{padding-top:0}.frm_email_settings.frm_email_settings.widgets-holder-wrap{overflow:auto;box-shadow:none}#frm_notification_settings .widget-top .widget-action,#frm_form_editor_container .widget-top .widget-action{border:0;margin:0;padding:8px;background:0 0;cursor:pointer;outline:0}#frm_notification_settings .widget-top .widget-action{padding-top:13.5px}#frm_email_addon_menu{border:1px solid var(--grey-300);padding:var(--gap-sm);border-radius:4px;margin:var(--gap-md) 0 var(--gap-sm)}#frm_email_addon_menu .frm-search{float:right;margin:0}#frm_email_addon_menu h3.frm-no-border{clear:none;padding-top:7px}.frm_email_settings .widget .widget-top{background-color:var(--sidebar-color)}.frm_email_settings .widget .widget-top,.frm_email_settings .widget .widget-top h3{cursor:pointer !important}.frm_email_settings .widget{margin-bottom:var(--gap-sm)}.frm_form_action_settings .widget-top{box-shadow:none;border-color:var(--grey-300);border-radius:var(--small-radius);background:var(--lightest-grey);color:var(--grey-700)}.frm_form_action_settings:hover .widget-top{border-color:var(--grey)}.frm_form_action_settings.open .widget-top{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}.frm_form_action_settings.open:hover .widget-top{border-color:var(--grey-300)}.frm_form_action_settings>.widget-inside{display:none}.frm_form_action_settings.open>.widget-inside{display:block}.frm_form_action_settings .widget-inside{min-height:25px;padding:15px;border-color:var(--grey-300);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.frm_form_action_settings .widget-title h4,.frm_form_action_settings .widget-title h3{display:inline-block;border-bottom:none;padding:10px 10px 5px;font-size:var(--text-md);font-weight:500}#frm_email_addon_menu h3{margin:0 0 var(--gap-sm);clear:both}.frm_single_api_settings p>label{display:inline}.frm_form_action_icon{margin-right:5px}.frm_actions_list{margin:0;display:inline}.frm_actions_list li{float:left;width:15.6%;margin:10px .5% 15px;height:100px;text-align:center}.frm-limited-actions .frm-group-heading,.frm-limited-actions #frm-hide-groups,.frm-all-actions #frm-show-groups,.frm-limited-actions .frm-not-installed:not(.frm-search-result):not(.frm-default-show){display:none}label.frm_action_events{padding-left:15px}#frm-hide-groups,#frm-show-groups{font-size:var(--text-md);float:right}.frm_actions_list a:active,.frm_actions_list a:focus{outline:none}.frm_actions_list a{font-size:var(--text-sm);color:var(--grey-700);word-break:break-word}.frm_actions_list span.frm-outer-circle{background-color:var(--grey-100);padding:10px;text-align:center;border-radius:50%;display:block;width:30px;height:30px;margin:0 auto 15px;line-height:1}.frm_email_settings .widget-title h4{color:var(--grey-700)}.frm_disabled_action .widget-title h4{color:var(--grey)}.frm_actions_list a .frmsvg,.frm_actions_list a i{height:18px;width:18px;font-size:18px;padding:2px;color:var(--lightest-grey)}span.frm-inner-circle,.frm_email_settings .widget-title .frm_form_action_icon{background-color:var(--grey-400);border-radius:50%;display:inline-block;text-align:center;line-height:1}span.frm-inner-circle{background-color:var(--primary-700);height:22px;width:22px;padding:4px;color:#fff}.frm-inner-circle svg{fill:currentColor}.frm_email_settings .widget-title .frm_form_action_icon{height:15px;width:15px;padding:5px;color:#fff;vertical-align:middle}.frm_actions_list .frmsvg,.frm_actions_list i::before,.frm_email_settings .widget-title .frm_form_action_icon i,.frm_email_settings .widget-title .frm_form_action_icon .frmsvg{height:15px;width:15px;vertical-align:text-top}.frm_actions_list i::before{vertical-align:middle}.frm_email_settings .widget-title:hover .frm_form_action_icon{background-color:var(--grey)}span.frm-inner-circle.frm-inverse{background-color:rgba(0,0,0,0);color:var(--primary-700);padding:0;height:30px;width:100%}.frm_actions_list span.frm-inverse i,.frm_actions_list span.frm-inverse .frmsvg{color:var(--primary-700);height:30px;width:30px;font-size:30px;padding:0}.frm_actions_list i.frm-inverse::before{height:30px;width:100%;font-size:30px}.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse{background:#fff;padding:0;height:24px;width:24px}.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse .frmsvg,.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse i::before{color:var(--grey-400);height:24px;width:24px;font-size:24px}.frm_email_settings .widget-title:hover .frm_form_action_icon.frm-inverse .frmsvg,.frm_email_settings .widget-title:hover .frm_form_action_icon.frm-inverse i::before{color:var(--grey-500)}.frm_email_icons{padding:10px 0 5px 6px;font-size:20px}.frm_email_icons a{margin-left:8px;color:var(--grey);opacity:0;transition:all .2s ease}.frm_email_icons a .frmsvg{color:var(--grey)}.frm_email_icons a:hover,.widget-top:hover .frm_email_icons a{opacity:1}.frm_actions_list a.frm_inactive_action{color:var(--grey)}.frm_inactive_action .frm-inner-circle,.frm_actions_list .frm_inactive_action i{opacity:.4}table td,.form-table tr td{vertical-align:top}#new_fields .form-table tr td{display:block;padding:7px 0 0}#new_fields .form-table tr td:first-child{margin:0}#new_fields .form-table tr td:last-child{margin-bottom:9px}.form-table #list-table th{text-align:center}#form_settings_page th,#form_settings_page td,.frm_settings_form td,#frm_notification_settings .frm_form_action_settings td p{padding:7px 0}#permissions_settings_settings .frm_grid_container{align-items:center}#frm_notification_settings .form-table>tbody>tr>th{width:150px;font-weight:400;padding-right:10px}#frm_notification_settings .frm_single_email_settings .form-table>tbody>tr>th{width:80px}#frm_notification_settings table tr td:first-child{padding-left:0}#frm_notification_settings table tr td:last-child{padding-right:0}#frm_notification_settings .frm_left_label{float:none;width:auto !important}.frm-fields .frm_autoresponder_rows select{width:auto}#frm_notification_settings .frm_with_left_label,#frm_notification_settings .frm_left_label+textarea,#frm_notification_settings .frm_left_label+select,#frm_notification_settings .frm_left_label+input[type=text]{width:100%}#frm_notification_settings .frm_email_buttons{padding:var(--gap-2xs);background:var(--light-blue);color:var(--primary-700);border-radius:var(--small-radius);border-color:var(--blue-border);line-height:1;height:auto;min-height:12px;font-size:var(--text-xs);box-shadow:none}p.frm_bcc_cc_container,p.frm_reply_to_container{float:right;z-index:1;position:relative}p.frm_bcc_cc_container{margin:14px 0 0}p.frm_reply_to_container{margin:-4px 0 0}.frm_email_row .frm_cancel1_icon::before{vertical-align:bottom}.frm_cc_row.frm_email_row .frm-with-right-icon,.frm_bcc_row.frm_email_row .frm-with-right-icon,.frm_reply_to_row.frm_email_row .frm-with-right-icon{width:calc(100% - 20px);display:inline-block}.frm_email_row .frm_remove_field .frm_close_icon{position:relative;fill:var(--grey-500);vertical-align:middle}.frm-inline-select,p.frm-inline-select,.frm_logic_rows .frm-collapse-me{line-height:var(--h-md) !important}.frm_logic_row{padding:var(--gap-xs) 0 0}.frm-single-settings ul.frm_sortable_field_opts{border-bottom:1px solid var(--grey-200);padding-bottom:var(--gap-xs);margin-bottom:var(--gap-xs)}.frm-single-settings .frm-add-other svg.frm_add_tag{position:relative;top:5px;margin-right:4px}.frm-single-settings .frm_single_option .frm_remove_tag::before{content:""}.frm-single-settings input[type=checkbox][readonly]{opacity:.5;pointer-events:none}.advanced_settings .frm_logic_row{margin:14px 0}.advanced_settings .frm_logic_row select,.advanced_settings .frm_logic_row input{max-width:30% !important}.frm_form_action_settings .frm_logic_row p{margin-top:0;margin-bottom:0;padding:0}#poststuff .widgets-holder-wrap .frm_form_action_settings .widget-inside{padding-bottom:0}#poststuff .frm_form_settings .widgets-holder-wrap .widget-inside{padding-left:15px;padding-right:15px}#form_global_settings h3{font-size:var(--text-sm);margin-top:25px}#form_global_settings .tabs-panel+h3{margin-top:0;border:none}#poststuff .frm_form_settings .widget-inside h3,#poststuff .frm_form_settings .advanced_settings h3,#poststuff .frm_settings_form h3,#frm_advanced .inside h3{border-top:1px solid #eee;border-bottom:none;margin:15px -15px 0;padding:8px 15px;font-size:var(--text-sm)}#poststuff .frm_form_settings h3.frm_first_h3,#poststuff h3.frm_first_h3{border:none;margin-top:0}h3.frm_add_logic_link{margin-bottom:0 !important}a.frm_add_logic_link.frm_hidden{display:none}a.frm_add_logic_link.frm_hidden+.frm_logic_rows{height:auto}.frm_icon_font{color:#a0a0a0;color:var(--grey)}.frm-fields label .frm_icon_font{font-size:inherit}.misc-pub-revisions.frm_icon_font,.misc-pub-revisions.frm_icon_font:hover{color:inherit}.postbox.frm_with_icons .inside{padding:0;margin:0}.frm_add_tag::before{content:"\e602"}.frm_remove_tag::before{content:"\e600"}.frm_logic_row .frm1>.frm_remove_tag{padding:0}.frm_tooltip_icon::before{font-size:13px;vertical-align:top}.frm_help svg,.frm_help .frmsvg{height:13px;width:13px;vertical-align:top;color:var(--grey-400)}.form-field input[type=text].frm_other_input{width:30%;margin-left:10px}.frm-add-other{text-align:right}.frm-add-other .frm_add_tag{vertical-align:20%}.frm_action_icon{margin:5px 0 0 5px}span.frm_action_icon{margin:0 4px 0 0}.frm_action_icon:active{outline:none}a.frm_action_icon:hover{text-decoration:none}.frm_action_icon.frm_error_icon::before{content:"\e608"}.frm_inactive_icon.frm_action_icon.frm_error_icon::before{content:"\e606"}.frm-field-action-icons{text-align:right;position:absolute;top:2px;right:2px;max-width:100%}.frm-field-action-icons .frm-field-id{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:80px;max-width:calc(100% - 50px);position:relative;top:2px}.frm-field-action-icons>a{font-size:var(--text-md);width:17px}.frm-field-action-icons a:hover{text-decoration:none}.frm-field-action-icons .dropdown{display:inline-block}.frm-field-action-icons>a .frmsvg{color:var(--grey-500) !important;font-size:17px;width:17px;height:17px}.frm-field-action-icons>a .frmsvg,.frm-field-action-icons>div>a .frmsvg{vertical-align:baseline}.edit_field_type_end_divider .frm-field-action-icons{display:none !important}.frm-move{cursor:grab}span.howto{display:inline}.frm_import_message{margin:15px 0;line-height:2.5}.frm_sorting .form-field .widget input[type=text],.frm_sorting .form-field .widget input[type=number],.frm_sorting .form-field .widget select,#wpcontent .frm_sorting .form-field .widget select,.frm_sorting .form-field .widget textarea{width:auto}.tagchecklist span.no_taglist{display:inline;float:none;line-height:15px;margin-right:0;font-size:inherit}.tagchecklist .frm_exclude_cat_list span{display:inline}.tagchecklist span a::before{line-height:23px;text-align:start}.frm_form_action_settings .frm_email_row .frm_tooltip_icon{position:relative;bottom:2px}.frm_no_entries_form{padding:60px 0}.frm_no_entries_form .frm_no_entries_header{font-size:20px;margin-bottom:10px}.frm_no_entries_form .frm_no_entries_text{line-height:var(--leading)}#form_entries_page #the-list .no-items{height:240px}#form_reports_page img.frm_no_reports{max-width:100%}.frm_wrap .google-visualization-table .gradient,.frm_wrap .google-visualization-table-tr-head,.frm_wrap .google-visualization-table-tr-odd,.frm_wrap .google-visualization-table-tr-odd.google-visualization-table-tr-over{background:var(--lightest-grey)}.frm_wrap .google-visualization-table-tr-over{background:#fff}.frm_wrap .google-visualization-table-table th,.frm_wrap .google-visualization-table-table td{border-right-width:0;padding:10px !important}.frm_wrap .google-visualization-table-tr-head,.frm_wrap .google-visualization-table-tr-head th{white-space:pre-wrap;font-size:var(--text-md);font-weight:400 !important;text-align:left}.frm_wrap .google-visualization-table-td-number{text-align:inherit}#form_reports_page .postbox{text-align:center;float:none;display:inline-block;margin-right:2%;width:20%;min-width:175px}#form_views_page img.frm_no_views{max-width:100%}.frm_field_opts_popup{min-width:300px;background-color:#fff}.frm_field_opts_popup #wpadminbar{display:none}.frm_prepop{width:100%;list-style:none;overflow:auto;margin:0;max-height:295px}.frm_prepop li{margin:0}.frm_prepop li a{display:block;text-decoration:none;cursor:pointer;padding:5px 20px}.frm_prepop li a:hover{background:var(--sidebar-color)}#frm_form_editor_container #frm_form_key_box{width:13em;max-width:30%}#frm_form_editor_container #frm_form_desc{width:70%}#frm_form_editor_container .ui-widget-content{display:none;padding:15px}#frm_form_editor_container .ui-widget-content label{float:left;width:170px;text-align:right;padding-right:5px;clear:both}#frm_form_editor_container .ui-widget-content label.nofloat{clear:none;float:none;margin-left:10px}#frm_form_editor_container .ui-state-default{color:#333 !important}.frm_green{color:var(--green) !important}#frm_form_editor_container .ui-state-default a.frm_orange,.frm-right-panel a.frm_orange,#postbox-container-1 a.frm_orange{color:#d54e21}#styling_settings input[type=checkbox],#styling_settings input[type=radio]{border:solid 1px #bbb}#styling_settings .widget .widget-top,#frm_form_editor_container .widget .widget-top{cursor:pointer}.frm_sorting .widget,.frm_settings_page .widget{background:#fff}.frm_sorting .widget-title h4{font-weight:400}.frm_sorting .widget,#postbox-container-1 .widget,.frm-right-panel .widget,.frm_settings_page .widget{margin-bottom:0}.frm_settings_page .widget-inside{padding:0 5px 5px}.frm_sorting .widget,.widget-inside,.frm_sorting .form-field .widget{display:none}#frm-show-fields{min-height:350px;padding:0 0 35px;margin:0;position:relative}.frm-has-fields #frm-show-fields{min-height:50px}#frm_builder_page .frm-lite-credit-card-element,body.frm-admin-page-styles .frm-lite-credit-card-element{position:relative}#frm_builder_page .frm-lite-credit-card-element>div,body.frm-admin-page-styles .frm-lite-credit-card-element>div{position:absolute;top:calc(50% - 1px);transform:translateY(-50%);right:10px;color:#d0d4dd}#frm_builder_page #frm_field_group_controls{position:absolute;padding:5px;border-radius:4px 4px 0 0;text-align:right;box-sizing:border-box;right:0;top:-28px;height:28px;z-index:3}.frm-field-group-hover-target,.frm-has-open-field-group-popup,#frm_builder_page #frm_field_group_controls,.frm-selected-field-group{background:rgba(65,153,253,.04)}.frm-selected-field-group{position:relative}#frm_builder_page #frm_field_group_controls>span:first-child{margin-right:5px}#frm_builder_page #frm_field_group_controls svg{pointer-events:none}#frm_field_group_controls{visibility:hidden}.frm-field-group-hover-target #frm_field_group_controls{visibility:visible}#frm_field_group_controls .dropdown-item a span{color:var(--grey-700)}#frm_field_group_controls .dropdown-item a:hover{text-decoration:none}.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider{display:none !important}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default,.frm_sorting>li.ui-state-default,.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider:hover{border:1px solid rgba(0,0,0,0);font-weight:400 !important;background-color:rgba(0,0,0,0);background-image:none;padding:5px;margin:0;box-shadow:none;display:block;text-align:inherit !important;overflow:visible;position:relative}#frm-show-fields li.frm_cancel_sort{display:none}.divider_drop{text-align:center}.divider_drop .howto .frm_icon_font{font-style:normal}.show_repeat_sec{display:none}.repeat_section .show_repeat_sec{display:inline-block;margin:5px 0 0}.repeat_section tr.show_repeat_sec{display:table-row}.repeat_format .frm_repeat_label,.repeat_formattext .frmsvg,.repeat_formattext i{display:none}.frm_button{text-decoration:none;border:1px solid #eee;padding:5px;color:#444;vertical-align:middle;box-shadow:none !important}a.frm_button:hover{text-decoration:none !important}.frm_button,.frm_button .frm_icon_font::before{font-size:13px;vertical-align:middle}.frm_button .frmsvg{width:13px;height:13px}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default{padding:0;margin:0}ul.start_divider{padding:8px 13px 0 8px;min-height:115px;transition:all .4s linear}.frm-section-collapsed .frm_no_section_fields,.frm-section-collapsed ul.start_divider{height:0;min-height:0 !important}.frm-section-collapsed ul.start_divider{overflow:hidden}.frm-section-collapsed .frm_no_section_fields{overflow:hidden;padding:0;opacity:0}.frm-section-collapsed .divider_section_only .frm-collapsed-label{display:inline}.frm-page-collapsed .frm_clone_icon,.frm-page-collapsed .frm_delete_field,.frm-page-collapsed .frm_clone_field,.frm-section-collapsed .frm_clone_icon{opacity:.5;cursor:not-allowed}.edit_field_type_summary .frm_more_options_li:nth-child(2){display:none !important}.edit_field_type_submit .frm_more_options_li:not(:last-child){display:none !important}.frm_no_section_fields:not(.frm_block)+ul.start_divider{padding:0;min-height:132px}.frm_sorting li.ui-state-default .divider_section_only{padding:6px;margin-top:-10px;border:2px solid rgba(0,0,0,0);border-radius:var(--small-radius);z-index:2;position:relative}.divider_section_only>.frm_inner_field_container{padding:5px 0;margin:0}.frm-collapsed-label,.divider_section_only>.frm_inner_field_container .frm_form_fields{display:none}.frm-section-collapsed .divider_section_only::after,.divider_section_only::before{content:"";display:block;padding:2px 0;line-height:1px;border-top:2px solid var(--grey-300);top:-2px;position:absolute;width:100%;transition:.5s border-color ease-in-out}.frm-section-collapsed .divider_section_only::after{top:auto;bottom:-6px}.frm-section-collapsed .divider_section_only:hover::after,li.selected.frm-section-collapsed .divider_section_only::before,li.selected.frm-section-collapsed .divider_section_only::after,.divider_section_only:hover::before,li.selected .divider_section_only::before{border-color:rgba(0,0,0,0)}.frm_sorting li.ui-state-default.edit_field_type_divider{overflow:visible;position:relative;padding:0 0 0 20px;margin:25px 0 0 -5px;border-left:1px solid var(--primary-700);transition:border .7s ease-out}.frm-section-collapsed{border-left-color:rgba(0,0,0,0) !important}.frm_sorting li.edit_field_type_end_divider,.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider:hover{margin:0 0 var(--gap-sm)}.frm-first-page .frm_prev_page{display:none}#frm_builder_page .frm_remove_form_row.frm_button,#frm_builder_page .frm_add_form_row.frm_button{border-radius:var(--small-radius);border:1px solid var(--blue-border)}#frm_builder_page .frm_remove_form_row .frmsvg,#frm_builder_page .frm_remove_form_row i::before,#frm_builder_page .frm_add_form_row .frmsvg,#frm_builder_page .frm_add_form_row i::before{color:var(--primary-700)}.frm-preview-buttons .frm_button_submit{margin:0 5px}.frm-page-break{border-top:1px dashed var(--primary-700);margin-top:var(--gap-lg);position:relative}.frm-page-break::before,.frm-page-break::after{content:"";position:absolute;background-color:#fff;border-radius:50%;border:1px solid var(--primary-700);text-rendering:auto;-webkit-font-smoothing:antialiased}.edit_field_type_divider .frm-divider-icon.frmsvg{padding:2px;position:absolute;left:-12px;color:#fff;background-color:var(--primary-700);border-radius:50%}.edit_field_type_divider .start_divider .frm-divider-icon.frmsvg{height:8px;width:8px;padding:0;bottom:-4px;left:-24.5px;color:var(--primary-700);background-color:#fff}.edit_field_type_divider.selected .frm-divider-icon.frmsvg,.edit_field_type_divider:hover .frm-divider-icon.frmsvg{background:var(--primary-500)}.edit_field_type_divider.selected .start_divider .frm-divider-icon.frmsvg,.edit_field_type_divider:hover .start_divider .frm-divider-icon.frmsvg{background-color:#fff;color:var(--primary-500)}.frm-page-break::before,.frm-page-break::after{width:8px;height:8px;top:-6px;border-color:var(--grey)}.frm-page-break::after{right:0}#frm-fake-page .frm-page-break{border-color:var(--grey)}#frm-fake-page{padding:0 5px}.frm_sorting li.edit_field_type_divider:hover,.frm_sorting li.edit_field_type_divider.selected{border-left-color:var(--primary-500)}.frm-section-collapsed::after{border-color:rgba(0,0,0,0) !important;color:rgba(0,0,0,0)}.frm-page-break .frm-collapse-page.button{margin-left:46%;margin-top:-16px;padding:6px 12px !important}#frm-fake-page.frm-page-collapsed{margin-bottom:0}.frm-page-collapsed{position:relative;overflow:visible !important;margin-bottom:var(--gap-lg)}.frm-collapse-page .frmsvg,.frm-collapse-page .frm_arrowdown6_icon{width:var(--text-sm);height:var(--text-sm);font-size:var(--text-sm);text-align:center;margin-left:2px;color:currentColor;transition:transform 300ms ease-in-out}.frm-page-collapsed .frm-collapse-page .frmsvg{transform:rotate(180deg)}#frm-fake-page .frm_arrowdown6_icon{color:currentColor}.frm-collapsed i::before,.frm-page-collapsed .frm_arrowdown6_icon::before{content:"\e913"}.frm-collapse-section svg{fill:var(--primary-color);transition:transform .2s ease-out,fill .2s ease-out}.frm-collapse-section:hover svg{fill:var(--primary-700)}.frm-section-collapsed .frm-collapse-section svg{transform:rotate(-90deg)}.open .widget-top .widget-title-action button .frmsvg{transform:rotate(90deg)}.widget-top .widget-title-action button .frmsvg use{color:var(--grey)}.frm-collapsed+.frm-collapse-me{overflow:hidden !important}.frm-collapse-me{padding-bottom:10px}.frm-collapse-me.frm_grid_container:has(.dropdown-toggle.multiselect){position:relative;z-index:1}.frm-collapsed+div{height:0;padding:0}.frm-collapsed+div.frm-collapse-me{display:none}.frm-collapsible{display:flex;justify-content:space-between;align-items:center;font-weight:700;padding:var(--gap-xs) 0;margin:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.frm-collapsible.frm-collapsed{font-weight:400}.frm-collapsible:not(.frm-collapsed) .frmsvg{transform:rotate(-180deg)}h4.frm-collapsible{font-size:var(--text-md)}.frm-collapsible+.frm-collapse-me{padding-bottom:0}.frm-collapsible:focus-visible{outline:1px solid var(--primary-500)}.frm_sorting .divider_section_only>.frm_ipe_field_label{font-size:116%}#frm_form_editor_container .edit_field_type_break .frm_primary_label.frm_ipe_field_label.button{width:150px;text-align:center;margin-bottom:3px;display:block}tr.frm_options_heading td{padding-bottom:0}.frm_sorting .widget-inside .form-table td p,.frm_sorting .widget-inside .form-wrap label{padding:10px 0}.frm_no_fields,.frm_no_section_fields{text-align:center;position:absolute;color:var(--medium-grey);font-size:var(--text-md);box-sizing:border-box;border:1px dashed var(--grey-300);outline:2px solid rgba(0,0,0,0)}.frm-over-droppable+.frm_no_fields{border-style:solid;border-color:var(--primary-500);outline-color:var(--primary-500)}.frm_no_section_fields{display:none;margin:0;padding:20px 0 0;width:calc(100% - 20px);height:121px;transition:all .4s linear}.frm-empty-fields .frm_updated_message~.frm_no_fields{top:60px}#frm_form_editor_container:not(.frm-has-fields) #frm-show-fields>.frm_field_box:last-child{visibility:hidden}.frm-has-fields .frm_no_fields{display:none}#frm_form_editor_container:not(.frm-has-fields) #frm_drag_placeholder{display:none}#frm-form-button{display:none;margin:0 7px 25px}.frm-has-fields #frm-form-button{display:block}.frm-large-plus.frmsvg{color:var(--primary-700);height:45px;width:45px}.frm_no_section_fields p{color:var(--grey);font-size:15px}.frm_no_fields{top:0;width:calc(100% - 24px);min-height:320px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-md);padding:var(--gap-md);border:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Crect width='99%25' height='99%25' fill='none' stroke='%23D0D5DD' stroke-width='1' stroke-dasharray='8,8' rx='8' ry='8' x='0.5%25' y='0.5%25' stroke-linecap='square' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");border-radius:var(--medium-radius);margin:var(--gap-sm) 12px}.frm_no_fields img{margin-left:calc(-1*var(--gap-lg))}.frm_no_fields .frm_drag_inst{font-size:20px;font-weight:600;margin:0 0 12px}.frm_no_fields p{color:var(--grey-600);font-size:var(--text-md);margin:0}.frm_product_price_wrapper{display:inline-block;vertical-align:middle}.frm_prod_type_single .frm_product_price_wrapper{width:100%}#new_fields .frm_product_price_wrapper input:first-child{width:60% !important;float:left}#new_fields .frm_product_price_wrapper input:nth-child(2){width:37% !important;float:right}li.frm_single_option{padding-bottom:var(--gap-sm);border-bottom:0}.frm_prod_type_single input[type=radio],.frm_prod_type_single .frm_drag_icon,.frm_prod_type_single .frm_sortable_field_opts li:nth-child(n+3),.frm_prod_type_single .frm_sortable_field_opts .frm_remove_tag,.frm_prod_type_single .frm_form_field:not(.frm_product_type):not(.frm_sep_val_product),.frm_prod_type_single .frm-bulk-edit-link,.frm_prod_type_user_def.frm_grid_container,.frm_prod_options_heading.frm_prod_user_def{display:none}.frm_prod_type_single .frm-ai-generate-options-modal-trigger{display:none !important}.frm_prod_type_single .frm_option_key{margin-left:0 !important}.frm_prod_type_single .frm_option_key input[type=checkbox]+input[type=text],.frm_prod_type_single .frm_option_key input[type=radio]+input[type=text]{margin-left:0 !important}.plugin-card-bottom .frm-trash{color:#a00}.frm-fields p>.frm_inline_label,.frm_inline_label{padding-left:3px;margin-right:12px;display:inline-block}.frm_left_label{clear:both;float:left;width:32% !important;margin-right:2% !important;line-height:2em}table td.frm_left_label{float:none;line-height:inherit;padding:5px 0 5px 2%}.frm_left_label.frm_alignright{padding-right:10px;text-align:right}.frm-fields .frm_left_label+textarea,.frm-fields .frm_left_label+select,.frm-fields .frm_left_label+input[type=text],.frm_with_left_label{width:66%}td.frm_left_label+td{width:66%;padding-top:0}#html_settings label{display:block}#html_settings .frm_field_html_box{width:100%}.frm-has-required .frm-required{color:var(--error-500)}ul.frm-category-tabs{margin-top:2px}.frm-category-tabs>li a,.frm-category-tabs>li a:active{outline:none;box-shadow:none;display:flex;gap:var(--gap-xs);align-items:center}.frm-category-tabs>li.active .frmsvg,.frm-category-tabs>li.active i,.frm-category-tabs>li.active span,.frm-category-tabs>li.active a{color:var(--primary-500)}.frm_wrap .manage-menus{margin-top:0;border:none;border-bottom:1px solid var(--grey-300);background:var(--lightest-grey)}.general_settings .postbox .manage-menus{border-top:none;border-left:none;border-right:none}.frm-postbox-no-h3{padding-top:10px}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default{color:var(--grey-900)}.no_repeat_section .frm_sorting>li.ui-state-default.edit_field_type_end_divider:hover{box-shadow:none}.frm-selected-field-group li.ui-state-default,.start_divider.frm_sorting li.ui-state-default.frm_not_divider.selected,.start_divider.frm_sorting li.ui-state-default.frm_not_divider:hover,.frm_sorting li.ui-state-default.frm_not_divider:hover,.frm_sorting li.ui-state-default.ui-sortable-helper,.frm_sorting li.ui-state-default.edit_field_type_divider .divider_section_only:hover,.frm_sorting .repeat_section li.ui-state-default.edit_field_type_end_divider:hover,.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only,.frm_update_msg,.frm_sorting li.ui-state-default.frm_not_divider.selected,.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only{border-color:var(--primary-500);transition:.5s border-color ease-in-out}.frm_sorting li.ui-state-default.frm_not_divider.selected{box-shadow:0 0 1px 0 var(--primary-500)}.frm_sorting li.ui-state-default{transition:.7s box-shadow ease-in-out,.7s height linear}.frm_sorting li.ui-state-default.frm-newly-added{box-shadow:inset 0 0 2px 1px var(--blue-border)}.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-show-hover{visibility:visible !important;display:inline !important}.edit_field_type_end_divider>label{display:none !important}.frm_email_actions.feature-filter{font-weight:700;border:1px solid #dfdfdf;background-color:#eee;padding:3px 5px 2px;font-size:var(--text-md);line-height:20px}.frm_update_msg{border-style:solid;margin:10px 0;color:#21759b;padding:8px 15px;border-radius:4px}.frm_update_msg.wrap{margin:10px 20px 0 2px}#frm-insert-fields-box .frm_update_msg{margin-right:.9em}.frm_update_msg a{font-weight:700}.widefat td{width:auto}.widefat .column-id{width:3.7em}.widefat .column-show_count{width:5em}.widefat .column-shortcode{width:9em}.toplevel_page_formidable .column-shortcode div{display:flex;gap:var(--gap-xs)}.widefat .column-entries,.widefat .column-link{width:10%;text-align:center}.widefat .column-form_key,.widefat .column-created_at{width:10%}.frm-white-body .search-box,.frm_wrap .frm-search{float:right;margin:0;clear:right}.frm-white-body .search-box,.frm-search{min-width:32%;position:relative;display:flex;gap:var(--gap-sm);align-items:center}.frm-inline-modal .frm-search,#frm_adv_info .frm-search{float:none;width:100%;clear:both;margin:var(--gap-xs) 0}.frm-button-group a{margin:0 7px !important}.frm_has_textarea .frm-with-right-icon{display:block}.frm-with-left-icon,.frm-with-right-icon{position:relative;display:block}i.frm-show-box,i.frm-show-inline-modal,.frm-with-left-icon i,.frm-with-right-icon i:not([class*=mce-]),.frmsvg.frm-show-box,.frmsvg.frm-show-inline-modal,.frm-with-left-icon .frmsvg,.frm-with-right-icon .frmsvg,.frm-search>.frmsvg,.frm-search span:not(.multiselect-selected-text):not(.multiselect-native-select){position:absolute;padding:0 14px;pointer-events:none;left:0;color:var(--grey-400);font-size:var(--text-xs)}.frm-search>.frmsvg,.frm-search span:not(.multiselect-selected-text):not(.multiselect-native-select){padding-left:var(--gap-xs);padding-right:var(--gap-xs)}.frm-search>.frmsvg{box-sizing:unset}.frm-with-right-icon .frmsvg,.frm-with-right-icon i:not([class*=mce-]){right:0;top:-3px;left:auto;padding:0 10px 0 5px}.frm_form_settings .frm-with-right-icon .frmsvg{top:0}.frm_form_settings .wp-editor-container .frm-with-right-icon .frmsvg,#frm_builder_page .wp-editor-container .frm-with-right-icon .frmsvg{top:auto;bottom:var(--gap-sm)}.frm_form_settings .tmce-active .wp-editor-container .frm-with-right-icon .frmsvg,#frm_builder_page .tmce-active .wp-editor-container .frm-with-right-icon .frmsvg{bottom:var(--gap-lg)}.frm_form_settings .frm_has_textarea .frm-with-right-icon .frmsvg{top:auto;bottom:6px}.frmsvg.frm-show-box,.frmsvg.frm-show-inline-modal,i.frm-show-box,i.frm-show-inline-modal{top:auto;background-color:var(--primary-50);color:var(--primary-500);border-radius:6px;padding:var(--gap-2xs);margin:5px;margin-bottom:0;z-index:1;cursor:pointer;pointer-events:initial}.frm-open+.frm-inline-modal{top:-10px;margin-bottom:0}.frm-open+.frm-inline-modal.frm-modal-no-dismiss .inside>.frm-search:first-child{margin-top:var(--gap-sm)}.frm_grid_container>.frm-open+.frm-inline-modal{top:-4px}.frm_grid_container>.frm-open+.frm-inline-modal.frm-modal-no-dismiss{top:0 !important}.frm-with-left-icon input{padding-left:37px !important}.frm_wrap .frm-with-right-icon textarea,.frm_wrap .frm-with-right-icon input,.frm_wrap .frm-with-right-icon input[type=text]{padding-right:var(--gap-md)}#frm-show-fields .frm-with-left-icon .frmsvg,#frm-show-fields .frm-with-left-icon i{padding-top:10px}.frm-search input[name=s],.frm-search .dropdown-toggle,.frm-search input.frm-search-input{color:var(--grey-800);border-color:var(--grey-300);border-radius:var(--small-radius);box-shadow:var(--box-shadow-xs)}.frm-search input[type=search],.frm-search input[type=text]{padding-left:var(--gap-lg) !important}.frm-search .dropdown-toggle{width:100%;float:none;max-width:200px;background:rgba(0,0,0,0);padding:7px;padding-left:33px !important;min-height:32px;text-align:inherit;overflow:hidden;text-overflow:ellipsis}.frm-search #search-submit a{color:var(--grey-800)}.frm-search #search-submit .caret{opacity:.7}.frm-white-body .search-box input[name=s],#wpwrap .frm-search input[type=search]{flex:1;font-size:var(--text-md);line-height:var(--text-xl);padding:var(--gap-xs)}span.multiselect-selected-text{white-space:nowrap;display:inline-block;max-width:90%;text-overflow:ellipsis;overflow:hidden}.frm-not-set input{color:var(--primary-500) !important;font-size:13px}.frm-not-set .frmsvg,.frm-not-set i{color:var(--primary-700);opacity:1}.post-type-frm_display select[name=m]+#post-query-submit,select[name=m]{display:none}.frm_shortcode_select optgroup option{margin-left:1em}.frm_shortcode_select optgroup{padding-top:5px}.frm_shortcode_select .frm_subopt{margin-left:2em}.misc-pub-section a.edit-frm_shortcode,.misc-pub-section a.edit-form-status{float:none;font-size:13px}.frm-grid{border-collapse:collapse;border:none;margin-right:10px}.frm-grid td,.frm-grid th{padding:5px;border:1px solid #000}.post-type-frm_display #poststuff #post-body.columns-2{margin-right:var(--big-sidebar)}.post-type-frm_display #post-body.columns-2 #postbox-container-1{margin-right:calc(var(--big-sidebar)*-1);width:calc(var(--big-sidebar) - 40px)}.post-type-frm_display #poststuff #post-body.columns-2 #side-sortables{width:100%}#frm_dyncontent .hndle,#frm_dyncontent .handlediv{display:none !important}.post-type-frm_display .meta-box-sortables .frm_form_nav>li>a,.post-type-frm_display .frm_form_nav .nav-tab-active{padding:0 2px 5px;line-height:1.4}.post-type-frm_display #advanced-sortables h2.hndle,.post-type-frm_display #side-sortables h2.hndle,.post-type-frm_display #normal-sortables h2.hndle{border-bottom:1px solid var(--grey-300);margin:10px 0 0 !important;padding:0 25px 8px}.post-type-frm_display #side-sortables h2.hndle{margin-top:0 !important;padding-top:10px}.post-type-frm_display #post-body-content{margin-top:var(--gap-lg)}.post-type-frm_display.edit-php #wpbody-content>.wrap{margin:0}.post-type-frm_display .postbox .hndle,.post-type-frm_display .postbox{border-color:var(--grey-300)}.post-type-frm_display #postbox-container-1 .postbox,.post-type-frm_display #postbox-container-2 .postbox{border-radius:var(--small-radius);border-color:var(--grey-300);box-shadow:none}.post-type-frm_display #side-sortables .postbox{border-radius:0;border-top-width:0;margin-bottom:0}.post-type-frm_display #side-sortables .misc-pub-section{padding:15px 20px 10px}.post-type-frm_display .misc-pub-section .frmsvg,.post-type-frm_display #post-body .misc-pub-post-status::before,.post-type-frm_display #post-body #visibility::before,.post-type-frm_display .curtime #timestamp::before,.post-type-frm_display #post-body .misc-pub-revisions::before,.post-type-frm_display span.wp-media-buttons-icon::before{color:var(--grey)}.post-type-frm_display #frm_top_bar+#poststuff #submitdiv #publishing-action,.post-type-frm_display #frm_top_bar+#poststuff #submitdiv #minor-publishing-actions,.post-type-frm_display #frm_top_bar+#poststuff #edit-slug-box,.post-type-frm_display .wrap h1.wp-heading-inline,.post-type-frm_display .wrap>.page-title-action{display:none}.post-type-frm_display #poststuff h2.nav-tab-wrapper{padding-left:10px;margin-bottom:0;padding-bottom:0}.post-type-frm_display .nav-menus-php .wrap{margin:10px 0 0}.post-type-frm_display .nav-menus-php .wrap p{padding-left:12px;padding-right:12px}.post-type-frm_display .nav-tab{display:inline-block;background-color:#f4f4f4}.post-type-frm_display .nav-tab.frm_hidden{display:none}.post-type-frm_display .nav-tab:hover{background-color:#e4e4e4}.frm_order_row,.frm_where_row{margin-bottom:7px;line-height:30px}.frm-single-settings .frm_prod_field_opt_cont{margin-top:initial;margin-bottom:20px}select.texture{display:none}.post-type-frm_display #wp-content-editor-tools,#wp-content-editor-tools{background-color:rgba(0,0,0,0)}.post-type-frm_display #major-publishing-actions{border-color:var(--grey-300);background:var(--sidebar-color)}.post-type-frm_display #frm_adv_info{width:calc(var(--big-sidebar) - 40px);height:calc(100vh - 32px);overflow:hidden}.post-type-frm_display #frm_adv_info:not(.frm_fixed){top:0 !important}.post-type-frm_display #frm_adv_info.frm_fixed{position:fixed;z-index:9999;top:32px}.post-type-frm_display #frm_adv_info ul.frm_code_list.frm-full-hover{max-height:calc(100vh - 180px)}.frm_col_one{margin-right:4%;clear:both}ul .frm_col_one{float:left}ul .frm_col_two{float:right}ul.frm_two_col{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:var(--gap-sm)}.frm_two_col li{margin-bottom:0}.frm-info-modal a,.frm-info-modal ul,.frm-info-modal p,.frm-info-modal,.settings-lite-cta a,.settings-lite-cta ul,.settings-lite-cta{color:var(--grey-500);font-size:var(--text-md);box-shadow:none !important}.frm-info-modal h3,.settings-lite-cta h3{font-size:17px !important}.frm-green-icons .frmsvg{color:var(--green)}.frm-info-modal .postbox .inside,.settings-lite-cta .postbox .inside{padding:var(--gap-md);margin:0}.cta-inside a{color:var(--orange)}.info-modal-inside a.frm-standard-link{color:var(--primary-500)}.info-modal-inside a.frm-standard-link:hover{color:var(--primary-700)}.frm_no_p_margin>p{margin:0}.frm_code_list a.button{display:block;text-align:center;font-size:11px;overflow:hidden}#frm-navbarDrop+.frm_code_list.frm-full-hover{margin:var(--gap-xs) 0 0;min-width:300px;max-height:256px}.frm_code_list.frm-full-hover li{margin:0}.frm-select-list-item,.frm_wrap .ui-autocomplete li>div,.multiselect-container button.multiselect-option,.frm-dropdown-menu>.dropdown-item>a,.frm-dropdown-menu>.dropdown-item>a:visited,.frm-dropdown-menu>.dropdown-item>a:link,.frm-dropdown-menu .frm_dropdown_li,.frm_code_list.frm-full-hover a{display:flex;color:var(--grey-700);padding:5px 10px;font-size:var(--text-md);gap:var(--gap-xs);align-items:center}.multiselect-container button.multiselect-option.disabled{opacity:.5}.frm_code_list.frm-full-hover a span{max-width:83px;margin-right:var(--gap-xs);margin-left:auto}.frm_code_list.frm-full-hover a{border-radius:var(--small-radius)}.frm_code_list.frm-full-hover a:not(#frm-insert-condition),.frm_code_list.frm-full-hover a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.frm_code_list.frm-full-hover a:focus span:last-child{outline:1px solid var(--primary-500);outline-offset:var(--gap-2xs)}.frm_code_list.frm-full-hover.frmcenter a{display:block}#frm-layout-classes frm-full-hover a span{max-width:45%}.frm-select-list-item.active,.frm-select-list-item:hover,.frm_wrap .ui-autocomplete li div.ui-state-active,.frm_wrap .ui-autocomplete li.ui-state-focus,.multiselect-container button.multiselect-option.active,.multiselect-container button.multiselect-option:hover,.frm-dropdown-menu>.dropdown-item>a:hover,.frm_code_list.frm-full-hover a:hover span,.frm_code_list.frm-full-hover a:hover{background:var(--primary-25);color:var(--primary-500)}.frm-select-list-item .frmsvg,.frm-dropdown-menu>.dropdown-item>a .frmsvg{opacity:.8}.frm-select-list-item:hover .frmsvg,.frm-dropdown-menu>.dropdown-item>a:hover .frmsvg{opacity:1}.frm-dropdown-menu.frm_code_list>li>a{padding:3px 15px;width:300px}#frm_edit_box_content_modal .frm-with-search,.frm-dropdown-menu .frm-with-search{padding:var(--gap-xs) 10px 0}.frm-dropdown-menu .subsubsub{padding:0 10px}.frm_grid_container{overflow:visible}.frm_code_list.frm_grid_container{grid-gap:var(--gap-xs)}.frm_code_list.frm_grid_container li{width:auto;margin:0}.frm_code_list.frm_grid_container a{display:block;font-size:var(--text-md) !important;font-weight:500;text-align:center;color:var(--primary-500);background-color:var(--light-blue);border:1px solid var(--primary-300);border-radius:var(--small-radius);padding:10px 0;box-shadow:var(--box-shadow-sm)}.frm_code_list.frm_grid_container a:hover{background-color:var(--primary-500);color:#fff}.frm_code_list.frm_grid_container a:focus-visible{outline:2px solid var(--primary-500);outline-offset:-1px}.frm-single-settings .frm_code_list.frm-full-hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover{padding:0;margin:var(--gap-xs) -10px 0}.frm-single-settings .frm_code_list.frm-full-hover>li>a,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a{font-size:var(--text-md);color:var(--grey-900);padding:var(--gap-xs) 12px}.frm-single-settings .frm_code_list.frm-full-hover>li>a span,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span{margin:0}.frm-single-settings .frm_code_list.frm-full-hover>li>a span:first-child,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span:first-child{max-width:130px}.frm-single-settings .frm_code_list.frm-full-hover>li>a span:last-child,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span:last-child{max-width:120px;margin-left:auto}.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover{font-weight:500}.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover,.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover .frmsvg,.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover span,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover .frmsvg,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover span{color:var(--primary-500)}#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover{margin:var(--gap-xs) 0 0}#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover a .frmsvg{width:20px;height:20px}.frm_field_list #frm-insert-fields{max-height:none;font-size:var(--text-sm)}.frm_field_list #frm-insert-fields .button a{display:block;max-width:95%;overflow:hidden}#frm-insert-fields{padding:0 var(--gap-xs);overflow:hidden}#frm-insert-fields .frm-search{float:none;margin:0 0 var(--gap-md);width:auto}#frm-insert-fields li,#frm-insert-fields li a{text-decoration:none;font-weight:500;font-size:var(--text-md) !important;color:var(--grey-900)}#frm-insert-fields li.frm_show_upgrade{cursor:pointer;opacity:.5}#frm-insert-fields li span:not(.frm-new-pill){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}#frm-insert-fields li a.disabled:hover{cursor:not-allowed}#frm-insert-fields li.ui-draggable-disabled{opacity:.5}#frm-insert-fields li a:not(.disabled):hover .frmsvg,#frm-insert-fields li a:not(.disabled):hover i{color:var(--grey-600)}#frm-insert-fields li.frm_show_upgrade,#frm-insert-fields li a{text-decoration:none;display:inline-flex !important;gap:var(--gap-xs);align-items:center;border-radius:var(--small-radius) !important;padding:11px var(--gap-md) 11px var(--gap-xs) !important;color:var(--grey-900) !important}#frm-insert-fields li a{display:flex !important;transition:background-color .2s ease-out,box-shadow .2s ease-out}#frm-insert-fields li a:not(.disabled):hover{background:#fff;box-shadow:var(--box-shadow-md)}#frm-insert-fields li a:focus-visible{outline:1px solid var(--primary-500)}#frm-insert-fields li.frm_show_upgrade.frm_hidden{display:none !important}#frm-insert-fields .frm-with-line{padding:12px var(--gap-md);font-weight:500;font-size:var(--text-sm)}#frm-insert-fields .frm-with-line::before{margin-left:calc(-1*var(--gap-sm));width:calc(100% + var(--gap-md))}.frm_code_list{clear:both}.frm_code_list.frm-full-hover a.frm_hidden,.frm_code_list .frmkeys{display:none}.frmsvg{fill:currentColor;width:18px;height:18px;vertical-align:middle}.frmsvg svg{pointer-events:none}.frmsvg.frm_svg40{width:40px;height:40px}.frmsvg.frm_svg24{width:24px;height:24px}.frmsvg.frm_svg20{width:20px;height:20px}.frmsvg.frm_svg15{width:15px;height:15px}.frmsvg.frm_svg14{width:14px !important;height:14px !important}.frmsvg.frm_svg13{width:13px;height:13px}.frmsvg.frm_svg12{width:12px;height:12px}.frmsvg.frm_svg9{width:9px;height:9px}input[disabled]{pointer-events:none}.frmbutton.ui-sortable-helper .frmsvg,.field_type_list li.frmbutton .frmsvg,.frmbutton.ui-sortable-helper i,.field_type_list li.frmbutton i,.frm_code_list a .frmsvg,.frm_code_list a i{color:var(--grey-500);display:inline-block;vertical-align:middle;width:var(--text-md);font-size:var(--text-md)}.field_type_list.frm_grid_container{gap:10px;margin:13px 0}.field_type_list li{margin:0;padding:0}.field_type_list li.frmbutton .frmsvg{width:24px;height:24px;font-size:24px}.frm_code_list i::before{font-size:inherit}.frmbutton.ui-draggable-dragging{pointer-events:none}.frmbutton.ui-draggable-dragging a{color:var(--grey-900) !important;background:var(--grey-100);text-decoration:none;display:inline-flex !important;gap:var(--gap-xs);align-items:center;border-radius:var(--small-radius) !important;padding:11px var(--gap-md) 11px var(--gap-xs) !important;box-shadow:var(--box-shadow-md)}.frmbutton.ui-draggable-dragging a{border:1px solid var(--grey-300);box-shadow:var(--box-shadow-md)}.frmbutton.ui-draggable-dragging span{font-size:15px}#frm-show-fields .frmbutton.ui-sortable-helper i,.frmbutton.ui-draggable-dragging i,.frmbutton.ui-draggable-dragging .frmsvg{color:#fff !important}.frmbutton.ui-draggable-dragging i,.frmbutton.ui-draggable-dragging .frmsvg{color:var(--grey-700) !important}.frm_sorting li.ui-state-default.ui-sortable-helper,.frmbutton.ui-sortable-helper{transition:opacity .2s;opacity:1;position:fixed;z-index:99999}#frm-insert-fields .frmbutton.ui-sortable-helper a,#frm-show-fields .frmbutton.ui-sortable-helper a{min-width:100px}li.frm_noallow.button,.frm_noallow{opacity:.5}.frm_actions_list a.frm_show_upgrade.frm_inactive_action::before,li.frm_noallow.button.frm_show_upgrade{cursor:pointer}.field_type_list li.frm_noallow.button.frm_show_upgrade:hover{border-color:inherit}.frm_noallow a{color:inherit}#frm_upgrade_modal_image{max-width:200px}#frm_upgrade_modal .frm-upgrade-message img{margin-top:10px;width:100%}.frm-tab-message{max-width:600px;margin:20px auto;color:rgba(63,75,91,.8)}.frm-settings-screenshot-toolbar{min-height:39px;display:flex}.frm-settings-screenshot-toolbar .frm-minmax-icon{height:8px;width:8px;border-radius:50%;align-self:center;margin-left:10px}.frm-settings-screenshot-toolbar .frm-minmax-icon:first-of-type{margin-left:20px}.frm-settings-screenshot-toolbar img{object-fit:contain;align-self:flex-end;margin-left:25px}.frm-settings-screenshot-toolbar+div{background:#fff;padding-top:25px;border-radius:0 0 16px 16px}.frm-settings-screenshot-toolbar+div img{max-width:calc(100% - 40px)}.frm-settings-screenshot-wrapper{max-width:700px;margin:50px auto 0;box-shadow:0 4px 4px rgba(189,196,205,.25),0 12px 56px rgba(42,57,75,.25);border-radius:16px;background:#ebecf1}.frm-dialog{z-index:100;padding:0 !important;border-radius:16px;border:none;background-color:#fff;max-width:100% !important}.frm-dialog .postbox{background:rgba(0,0,0,0);box-shadow:none;border:none;line-height:var(--leading)}.frm-dialog input[type=text],.frm-dialog textarea{font-size:var(--text-md)}.frm-dialog textarea{height:75px}.frm-dialog button.frm-button-primary{margin-right:10px}.frm-dialog .frm-sub-label,.frm-sub-label{color:var(--grey);text-transform:none;padding-left:8px}h2 .frm-sub-label{font-size:var(--text-md)}.frm-views-editor-body .ui-widget-overlay,.frm-white-body .ui-widget-overlay,.toplevel_page_formidable .ui-widget-overlay,body[class*=formidable-payments] .ui-widget-overlay,body.plugins-php .ui-widget-overlay{position:fixed;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background:var(--grey-500);opacity:.5;z-index:2}.frm-circled-icon{width:60px;height:60px;border-radius:50%;background-color:var(--primary-25)}.frm-circled-icon-large{width:80px;height:80px}.frm-circled-icon-green{background-color:var(--success-50)}.frm-circled-icon .frmsvg{width:21px;height:24px}.frm-circled-icon-large .frmsvg{width:24px}.frm-circled-icon .frmsvg use{color:var(--primary-500)}.frm-circled-icon-green .frmsvg use{color:var(--success-500)}.frm-border-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--grey-300);border-radius:var(--small-radius)}.frm-upgrade-message img{max-width:100%}a.frm-link-secondary{color:#c4c4c4;font-size:var(--text-sm);text-decoration:underline}.field_type_list li.button.frm_noallow,.field_type_list li.button.frm_noallow:hover,.button.frm_noallow,.button.frm_noallow:hover{color:inherit;border-color:#ccc;background:inherit}iframe#dyncontent_ifr{min-height:150px}/*! +@font-face{font-family:"s11-fp";src:url("../fonts/s11-fp.woff?v=7") format("woff");font-weight:400;font-style:normal}.frm-submenu-highlight{background:#1da867}.frm-submenu-highlight a span{color:#fff;font-weight:600}.frmfont,.frm_icon_font{text-decoration:none;text-shadow:none;font-weight:400;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:auto;line-height:1.5;transition:color .1s ease-in-out,opacity .1s ease-in-out;font-size:18px}i.frmfont,i.frm_icon_font{font-style:normal;font-variant:normal;speak:none}.frmfont::before,select.frmfont,.frm_icon_font::before,select.frm_icon_font{font-family:"s11-fp" !important;text-align:center}.frmfont,a.frmfont,.frmfont:hover,a.frmfont:hover .frm_icon_font,a.frm_icon_font,.frm_icon_font:hover,a.frm_icon_font:hover{text-decoration:none !important;box-shadow:none}.frmfont:focus,.frm_icon_font:focus{box-shadow:none}.frmfont:active,.frm_icon_font:active{outline:none}.frm_trigger .frm_icon_font{padding:0 5px}.frm_logo_icon::before{content:"\e601"}.frm_required_icon::before{content:"\e612"}.frm_delete_icon::before{content:"\e610" !important}.frm_move_icon::before{content:"\e61a"}.frm_drag_icon::before{content:"\e93b"}.frm_clear_icon::before{content:"\e60a"}.frm_noclear_icon::before{content:"\e60b"}.frm_duplicate_icon::before{content:"\e61b"}.frm_copy_icon::before{content:"\f0c5"}.frm_clone_icon::before{content:"\f24d"}.frm_tooltip_icon::before{content:"\e611"}.frm_tooltip_solid_icon::before{content:"\e907"}.frm_forbid_icon::before{content:"\e636"}.frm_checkmark_icon::before{content:"\e90a"}.frm_check_icon::before{content:"\e605"}.frm_check1_icon::before{content:"\e606"}.frm_plus_icon::before{content:"\e62f"}.frm_plus1_icon::before{content:"\e602"}.frm_plus2_icon::before{content:"\e603"}.frm_plus3_icon::before{content:"\e632"}.frm_plus4_icon::before{content:"\e60f"}.frm_minus_icon::before{content:"\e62e"}.frm_minus1_icon::before{content:"\e600"}.frm_minus2_icon::before{content:"\e604"}.frm_minus3_icon::before{content:"\e633"}.frm_minus4_icon::before{content:"\e613"}.frm_cancel_icon::before{content:"\e607"}.frm_cancel1_icon::before{content:"\e608"}.frm_close_icon::before{content:"\e928"}.frm_report_problem_solid_icon::before{content:"\e914"}.frm_report_problem_icon::before{content:"\e915"}.frm_arrowup_icon::before{content:"\e60d"}.frm_arrowup1_icon::before{content:"\e60e"}.frm_arrowup2_icon::before{content:"\e630"}.frm_arrowup3_icon::before{content:"\e62b"}.frm_arrowup4_icon::before{content:"\e62c"}.frm_arrowup5_icon::before{content:"\e635"}.frm_arrowup5_solid_icon::before{content:"\e9d"}.frm_arrowup7_icon::before{content:"\e908"}.frm_arrowup6_icon::before{content:"\e62d"}.frm_arrowdown_icon::before{content:"\e609"}.frm_arrowdown1_icon::before{content:"\e60c"}.frm_arrowdown2_icon::before{content:"\e631"}.frm_arrowdown3_icon::before{content:"\e628"}.frm_arrowdown4_icon::before{content:"\e629"}.frm_arrowdown5_icon::before{content:"\e634"}.frm_arrowdown5_solid_icon::before{content:"\e905"}.frm_arrowdown7_icon::before{content:"\e90b"}.frm_arrowdown6_icon::before{content:"\e62a"}.frm_arrow_left_icon::before{content:"\e912"}.frm_arrow_right_icon::before{content:"\e913"}.frm_filter_icon::before{content:"\e90c"}.frm_download_icon::before{content:"\e615"}.frm_upload2_icon::before{content:"\f093"}.frm_upload_icon::before{content:"\e616"}.frm_download2_icon::before{content:"\f019"}.frm_hard_drive_icon::before{content:"\e916"}.frm_pencil_solid_icon::before{content:"\e901"}.frm_pencil_icon::before{content:"\e61d"}.frm_signature_icon::before{content:"\e919"}.frm_user_icon::before{content:"\e7ff"}.frm_register_icon::before{content:"\e637"}.frm_account_circle_solid_icon::before{content:"\e853"}.frm_account_circle_icon::before{content:"\e921"}.frm_address_card_icon::before{content:"\e996"}.frm_paragraph_icon::before{content:"\f1dd"}.frm_checkbox_unchecked_icon::before{content:"\e91e"}.frm_checkbox_icon::before{content:"\e922"}.frm_checkbox_solid_icon::before{content:"\e91f"}.frm_dropdown_icon::before{content:"\e909"}.frm_caret_square_down_icon::before{content:"\f150"}.frm_check_square_icon::before{content:"\f14a"}.frm_radio_unchecked_icon::before{content:"\e971"}.frm_radio_checked_icon::before{content:"\ea54"}.frm_scrubber_icon::before{content:"\f2f8"}.frm_location_solid_icon::before{content:"\e955"}.frm_location_icon::before{content:"\e947"}.frm_toggle_on_icon::before{content:"\f205"}.frm_toggle_off_icon::before{content:"\f204"}.frm_shield_check_icon::before{content:"\f2f7"}.frm_shield_check_solid_icon::before{content:"\e97d"}.frm_clock_icon::before{content:"\e929"}.frm_clock_solid_icon::before{content:"\e985"}.frm_link_icon::before{content:"\f0c1"}.frm_email_icon::before{content:"\e626"}.frm_email_solid_icon::before{content:"\f0e0"}.frm_mail_bulk_icon::before{content:"\e95c"}.frm_phone_icon::before{content:"\e942"}.frm_calendar_icon::before{content:"\f073"}.frm_code_icon::before{content:"\e90d"}.frm_tag_icon::before{content:"\e98b"}.frm_tag_solid_icon::before{content:"\e989"}.frm_price_tags_icon::before{content:"\e936"}.frm_search_icon::before{content:"\e978"}.frm_sitemap_icon::before{content:"\f0e8"}.frm_file_icon::before{content:"\f15b"}.frm_file_text_solid_icon::before{content:"\f15c"}.frm_file_text_icon::before{content:"\e923"}.frm-option-icon::before,.frm_option_icon::before{content:"\e904"}.frm_option_solid_icon::before{content:"\e906"}.frm_more_horiz_icon::before{content:"\e5d3"}.frm_more_vert_icon::before{content:"\e5d4"}.frm_more_horiz_solid_icon{font-size:28px !important;font-weight:700;line-height:18px}.frm_more_horiz_solid_icon::before{content:"···"}.frm_more_vert_solid_icon::before{content:"\f142"}.frm_calculator_icon::before{content:"\f1ec"}.frm_keyboard_icon::before{content:"\e924"}.frm_eye_icon::before{content:"\f06e"}.frm_eye_solid_icon::before{content:"\e945"}.frm_eye_slash_icon::before{content:"\f070"}.frm_eye_slash_solid_icon::before{content:"\e949"}.frm_page_break_icon::before{content:"\e8e9"}.frm_view_day_icon::before{content:"\e8ed"}.frm_attach_file_icon::before{content:"\e226"}.frm_printer_icon::before{content:"\e926"}.frm_header_icon::before{content:"\f1dc"}.frm_h1_icon::before{content:"\e94c"}.frm_repeat_icon::before{content:"\f363"}.frm_repeater_icon::before{content:"\e974"}.frm_hashtag_icon::before{content:"\e292"}.frm_save_icon::before{content:"\e927"}.frm_sliders_icon::before{content:"\f1de"}.frm_code_commit_icon::before{content:"\f386"}.frm_star_icon::before{content:"\e9d7"}.frm_star_full_icon::before{content:"\e9d9"}.frm_star_half_icon::before{content:"\e9d8"}.frm_linear_scale_icon::before{content:"\e260"}.frm_pie_chart_icon::before{content:"\e99a"}.frm_stats_bars_icon::before{content:"\e99c"}.frm_sms_icon::before{content:"\e61c"}.frm_highrise_icon::before{content:"\e617"}.frm_mailchimp_icon::before{content:"\e622"}.frm_feed_icon::before{content:"\e624"}.frm_align_right_icon::before{content:"\e90f"}.frm_align_left_icon::before{content:"\e910"}.frm_button_icon::before{content:"\e911"}.frm_browser_icon::before{content:"\e925"}.frm_cloud_upload_solid_icon::before{content:"\e92c"}.frm_shuffle_icon::before{content:"\e917"}.frm_swap_icon::before{content:"\e918"}.frm_pallet_icon::before{content:"\e96d"}.frm_fingerprint_icon::before{content:"\e94a"}.frm_ghost_icon::before{content:"\e94b"}.frm_heart_solid_icon::before{content:"\e94d"}.frm_heart_icon::before{content:"\e94e"}.frm_history_icon::before{content:"\e94f"}.frm_import_icon::before{content:"\e91a"}.frm_export_icon::before{content:"\e91b"}.frm_label_solid_icon::before{content:"\e952"}.frm_label_icon::before{content:"\e953"}.frm_lock_open_icon::before{content:"\e957"}.frm_lock_icon::before{content:"\e959"}.frm_dollar_sign_icon::before{content:"\e91c"}.frm_percent_icon::before{content:"\e939"}.frm_external_link_icon::before{content:"\e966"}.frm_pageview_solid_icon::before{content:"\e96a"}.frm_pageview_icon::before{content:"\e96b"}.frm_settings_icon::before{content:"\e97a"}.frm_stamp_icon::before{content:"\e980"}.frm_support_icon::before{content:"\f1cd"}.frm_text_icon::before{content:"\e98d"}.frm_text2_icon::before{content:"\f031"}.frm_white_label_icon::before{content:"\e91d" !important}.frm_authorize_icon::before{content:"\e903"}.frm_icon_font.frm_activecampaign_icon{background-image:none}.frm_activecampaign_icon::before{content:"\e930"}.frm_aweber_icon::before{content:"\e627"}.frm_campaignmonitor_icon::before{content:"\e946"}.frm_constant_contact_icon::before{content:"\e931"}.frm_getresponse_icon::before{content:"\e932"}.frm_googlesheets_icon::before{content:"\e944"}.frm_building_icon::before{content:"\e93f"}.frm_hubspot_icon::before{content:"\e933"}.frm_icontact_icon::before{content:"\e940"}.frm_icon_font.frm_mailpoet_icon::before{content:"\e934"}.frm_paypal_icon::before{content:"\e61f"}.frm_sendinblue_icon::before{content:"\e943"}.frm_sendy_icon::before{content:"\e941"}.frm_salesforce_icon::before{content:"\e935"}.frm_salesforcealt_icon::before{content:"\e937"}.frm_stripe_icon::before{content:"\e902"}.frm_stripealt_icon::before{content:"\e93d"}.frm_twilio_icon::before{content:"\e620"}.frm_woocommerce_icon::before{content:"\e90e"}.frm_wordpress_icon::before{content:"\f19a"}.frm_credit_card_icon::before{content:"\e938"}.frm_credit-card-alt_icon::before,.frm_credit_card_alt_icon::before{content:"\f283"}.frm_cc_amex_icon::before{content:"\f1f3"}.frm_cc_discover_icon::before{content:"\f1f2"}.frm_cc_mastercard_icon::before{content:"\f1f1"}.frm_cc_visa_icon::before{content:"\f1f0"}.frm_cc_paypal_icon::before{content:"\f1f4"}.frm_cc_stripe_icon::before{content:"\f1f5"}:root,.frm-white-body,.frm_wrap{--grey-900: #101828;--grey-800: #1D2939;--grey-700: #344054;--grey-600: #475467;--grey-500: #667085;--grey-400: #98A2B3;--grey-300: #D0D5DD;--grey-200: #EAECF0;--grey-100: #F2F4F7;--grey-50: #F9FAFB;--grey-25: #FCFCFD;--dark-grey: var(--grey-700);--medium-grey: rgba(40, 47, 54, .65);--grey: var(--grey-500);--grey-border: var(--grey-300);--lightest-grey: rgb(250, 250, 250);--sidebar-color: var(--grey-50);--sidebar-hover: var(--grey-200);--primary-700: #2B66A9;--primary-500: #4199FD;--primary-300: #80BBFE;--primary-200: #C0DDFE;--primary-50: #ECF5FF;--primary-25: #F5FAFF;--primary-color: var(--primary-500);--primary-hover: var(--primary-700);--light-blue: var(--primary-25);--blue-border: rgb(188, 224, 253);--error-700: #B42318;--error-500: #F04438;--error-300: #FECDCA;--error-100: #FEE4E2;--error-25: #FFF5F4;--green: rgb(63, 172, 37);--orange: #F15A24;--warning-500: #F79009;--pink: rgb(226, 42, 110);--purple: rgb(141, 53, 245);--success-900: #054F31;--success-800: #065F46;--success-500: #12b76a;--success-100: #D1FAE5;--success-200: #A6F4C5;--success-50: #ECFDF3;--success-25: #f6fef9;--border-radius: 35px;--small-radius: 8px;--medium-radius: 16px;--small-sidebar: 275px;--medium-sidebar: 350px;--big-sidebar: 390px;--biggest-sidebar: 450px;--text-xs: 12px;--text-sm: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--h-xs: 24px;--h-sm: 30px;--h-md: 36px;--leading: 1.5;--gap-2xs: 4px;--gap-xs: 8px;--gap-sm: 16px;--gap-md: 24px;--gap-lg: 32px;--gap-xl: 40px;--gap-2xl: 48px;--box-shadow-xs: 0 0.47074466943740845px 0.9414893388748169px 0 rgba(16, 24, 40, 0.05);--box-shadow-sm: 0 0.470745px 1.41223px rgba(16, 24, 40, 0.1), 0 0.470745px 0.941489px rgba(16, 24, 40, 0.06);--box-shadow-md: 0 1.88298px 3.76596px -0.941489px rgba(16, 24, 40, 0.1), 0 0.941489px 1.88298px -0.941489px rgba(16, 24, 40, 0.06);--box-shadow-lg: 0 6px 8px -2px rgba(16, 24, 40, 0.08), 0 1.88298px 4px -1px rgba(16, 24, 40, 0.03), 0 0.470745px 1.41223px rgba(16, 24, 40, 0.1), 0 0.470745px 0.941489px rgba(16, 24, 40, 0.06);--box-shadow-xl: 0 9.41489px 11.2979px -1.88298px rgba(16, 24, 40, 0.08), 0 3.76596px 3.76596px -1.88298px rgba(16, 24, 40, 0.03);--box-shadow-xxl: 0 11px 22px -5px rgba(16, 24, 40, 0.18);--button-shadow: 0 0.47px 0.94px 0 rgba(16, 24, 40, 0.06), 0 0.47px 1.47px 0 rgba(16, 24, 40, 0.1);--check-label-color: var(--grey-700)}@font-face{font-family:"Inter";src:url("../fonts/Inter-VariableFont_slnt,wght.ttf?v=1") format("truetype")}.with_frm_style,.frm-white-body .wpbody-content,.frm_wrap{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}@media not all and (min-resolution: 0.001dpcm){@supports(-webkit-appearance: none) and (stroke-color: transparent){.with_frm_style,.frm-white-body .wpbody-content,.frm_wrap{-webkit-font-smoothing:antialiased}}}.frm-sm-z-index{z-index:1}.frm-md-z-index{z-index:5}.frm-white-body,.frm-white-body p,.frm_wrap,.frm_wrap p,.frm-modal,.frm-white-body .postbox .inside{font-size:var(--text-sm);color:var(--grey-500);line-height:var(--leading)}.frm-white-body p,.frm_wrap p{margin:var(--gap-sm) 0}body:not(.frm-admin-page-styles):not(.frm-admin-page-style) .with_frm_style .frm_form_fields>fieldset{--fieldset-padding: 15px 0}a,.widget .widget-top,.stuffbox h3,.frm-collapsed{cursor:pointer;text-decoration:none}.post-type-frm_display .wrap>#posts-filter,.wrap.frm-with-margin,.frm_wrap>.wrap{margin:var(--gap-sm) var(--gap-md) var(--gap-md)}#frm_top_bar+.wrap{margin:var(--gap-xl)}.frm-full-screen #wpbody-content>.wrap{margin:0}.post-type-frm_display .wrap{margin:0}.toplevel_page_formidable #post-body-content{overflow-x:visible}.frm-full-screen{height:100%;overflow:hidden}.frm-full-screen.frm-admin-page-reports,.frm-full-screen.frm-admin-page-entries,.frm-full-screen.post-type-frm_display{overflow:auto}.frm-full-screen #wpadminbar,.frm-full-screen #adminmenumain,.frm-full-screen .wp-header-end{display:none}body.frm-white-body:not(.frm-full-screen) .mce-fullscreen{top:32px;left:160px}.frm-full-screen #wpbody-content,.frm-full-screen #wpbody,.frm-full-screen #wpcontent{padding:0;overflow:hidden;margin:0 !important}.frm-white-body #wpbody-content{position:relative;padding-bottom:0}.post-new-php.post-type-frm_display #screen-meta-links,.post-php.post-type-frm_display #screen-meta-links{display:none}.frm-white-body #screen-meta-links{position:fixed;bottom:0;right:20px}.frm-full-screen #screen-meta-links .screen-meta-toggle{right:55px}.frm-white-body #screen-meta-links .show-settings{border-radius:var(--small-radius) var(--small-radius) 0 0;border:1px solid var(--grey-300);border-bottom:none}.frm-white-body.frm-lite #screen-meta-links .screen-meta-toggle{right:125px}.frm-white-body #screen-meta{margin:0}.frm-white-body #screen-meta-links .show-settings::after{color:var(--grey)}.frm-white-body .columns-2{border-bottom:1px solid var(--grey-300)}.frm-full-screen .columns-2{border:none}body.post-type-frm_display.edit-php,body.frm-white-body{background:#fff}body.frm-white-body ul#adminmenu a.wp-has-current-submenu::after,body.frm-white-body ul#adminmenu>li.current>a.current::after{border-right-color:#fff}.frm-white-body #wpcontent{padding-left:0;padding-right:0}.frm-white-body .wrap #post-body{padding:0 20px}.frm-grey-body #wpbody{background:var(--grey-100)}.frm-grey-body #frm_top_bar{background:#fff}.post-type-frm_display .tablenav,.frm_wrap .tablenav{margin-bottom:10px}.frm-white-body .tablenav .actions select,.wp-admin .frm_wrap .tablenav select{margin-right:var(--gap-xs)}.tablenav .actions .button{margin-top:1px}.frm-white-body table.widefat{background:var(--lightest-grey);border-width:0;box-shadow:none;margin:20px 0}.frm-white-body table.widefat tfoot,.frm-white-body table.widefat thead{background:#fff}.frm-white-body table.widefat th{font-size:var(--text-md)}.frm-white-body table.widefat th a{color:var(--grey-700)}.frm-white-body table.widefat strong a{color:var(--primary-700)}.frm-scroll-box{clear:both;overflow:auto;max-height:405px;border:1px solid var(--grey-300);border-radius:var(--small-radius)}.frm_form_field.frm_scroll_box .frm_opt_container{height:100px;overflow:auto;border:1px solid var(--grey-300)}.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+p,.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+div,.frm_form_field.frm6_followed:not(.frm_hidden):not(.frm_hidden\!)+span{grid-column:span 6/span 6;align-content:center}.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+p,.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+div,.frm_form_field.frm12_followed:not(.frm_hidden):not(.frm_hidden\!)+span{grid-column:span 12/span 12 !important;align-content:center}.frm_form_field.frm-phone-type~[id*=frm-field-format-custom-]>label,.frm_form_field.frm-format-dropdown~[id*=frm-field-format-custom-]>label{opacity:0}.frm_form_field.frm-format-dropdown~[id*=frm-field-format-custom-]{grid-column:span 6/span 6}.frm-single-settings.frm-type-textarea>.frm_grid_container [id*=frm-field-format-custom-]+p{grid-column:span 12/span 12}.frm-single-settings .frm_grid_container{column-gap:var(--gap-sm)}.frm-content-center{align-content:center}.frm-self-end{align-self:end}.frm-short-list{overflow:auto;max-height:190px}.frm-white-body table.frm-border td{font-size:var(--text-sm)}.frm-white-body .striped>tbody>:nth-child(odd){background-color:#fff}.frm_wrap td.column-title strong{display:inline}td.column-title .frm_actions_dropdown{float:right}#frm_top_bar{display:flex;gap:var(--gap-sm);width:100%;height:72px;margin:0;box-sizing:border-box;text-align:center;padding:0 var(--gap-md)}#frm_top_bar>.frm-full-close:last-child,#frm_top_bar>#frm-publishing:last-child{margin-left:auto}#frm_top_bar{border-bottom:1px solid var(--grey-300);padding:0 var(--gap-md);overflow:visible}.frm-white-body h1,.frm-white-body h2,.frm-white-body h3,.frm-white-body h4{color:var(--grey-900);font-weight:400;line-height:var(--leading) !important}.frm-white-body .wrap h1,.frm-white-body h1{font-size:var(--text-xl)}.frm-white-body .wrap h2,.frm-white-body h2{font-size:var(--text-lg);font-weight:500}.frm-white-body .wrap h3,.frm-white-body h3{font-size:var(--text-md)}.frm-white-body .wrap h4,.frm-white-body h4{font-size:var(--text-sm);font-weight:500}#frm_error_modal .frm_lock_simple{padding:20px;border-radius:50%;background-color:var(--primary-25);display:inline-block}#frm_error_modal #frm_lock_simple{color:var(--primary-500)}#frm_error_modal .frm-modal-title{display:block}#frm_error_modal .frm-modal-title h2{font-weight:600;font-size:var(--text-xl);margin:0}#frm_error_modal .frm_modal_content{padding:var(--gap-md);color:var(--grey-900)}.frm-views-editor-body .frm_page_container #frm_top_bar h1{padding:0 !important;color:var(--grey-900);font-size:var(--text-xl) !important}.post-type-frm_display .frm_top_left{padding-bottom:0 !important}.frm-new-table-view-option.frm-selected-table-view-option{border-radius:var(--small-radius);background:var(--primary-25)}.frm-views-editor-body #frm_adv_info .tabs-panel{padding-left:4px;padding-right:4px}#frm_edit_box_content_modal .frm_modal_footer{padding-top:var(--gap-sm);border-top:1px solid var(--grey-300)}#frm_edit_box_content_modal .frm_modal_footer>div{display:flex;justify-content:space-between}#frm_edit_box_content_modal #frm_modal_box_select_area,#frm_edit_box_content_modal #frm_box_content_wysiwyg_wrapper,#frm_edit_box_content_modal .frm_modal_content{max-height:calc(100vh - 176px) !important}#frm_edit_box_content_modal #frm_modal_box_select_area{height:calc(100vh - 176px) !important}#frm_edit_box_content_modal #wp-content-editor-tools{padding-top:0}#frm_edit_box_content_modal.frm-modal .postbox .frm-modal-title+div:last-child{right:var(--gap-md)}.frm_code_list.frm-full-hover .frm-dropdown-view a{flex-direction:row-reverse}#frm_view_editor_left.frm-right-panel .accordion-section-title::before{content:"" !important;margin:0}.frm-gradient,.frm-upgrade-bar{background:linear-gradient(90deg, #388CF3, #1961D5, #8C7FD8) !important;color:#fff !important;border:0 !important}.frm-gradient.frm-button-primary:not([disabled]),.frm-gradient.frm-button-primary:not([disabled]):hover,.frm-gradient.frm-button-primary:not([disabled]):focus{background:linear-gradient(90deg, #1961D5, #816CFA) !important}.frm-upgrade-bar,.frm-gradient{position:relative}.frm-upgrade-bar::before,.frm-gradient::before{content:"";display:none;position:absolute;top:0;right:0;bottom:0;left:0;background-color:hsla(0,0%,100%,.1);z-index:0}.frm-upgrade-bar:hover::before,.frm-gradient:hover::before,.frm-gradient:focus::before{display:block}.frm-upgrade-bar-inner,.frm-gradient>*{position:relative;z-index:1}.frm-upgrade-bar{border-bottom:1px solid var(--sidebar-hover);padding:9px 0;font-size:12px;text-align:center}.frm-upgrade-bar a{color:currentColor !important;text-decoration:underline}.frm-upgrade-bar a:focus{outline:1px dotted var(--sidebar-hover)}.frm-upgrade-bar span{opacity:.9}a h1 .frmsvg{color:var(--grey-400);vertical-align:middle;min-width:var(--text-sm)}a .frmsvg{color:currentColor}.frm_wrap .view-switch a.current::before,.frm-white-body a,.frm_wrap a,.frm_wrap a i{color:var(--primary-color)}.frm_wrap a:active,.frm_wrap a:hover{color:var(--primary-700);box-shadow:none}.post-type-frm_display a:focus,.frm_wrap a:focus{box-shadow:none}.frm_top_left{text-align:left;float:left;white-space:nowrap;max-width:250px;overflow:hidden;text-overflow:ellipsis;align-self:center}.post-type-frm_display .frm_top_left,.frm_top_left.frm_top_wide{max-width:100%}.post-type-frm_display .frm_nav_bar .frm-header-logo,.frm_nav_bar .frm-header-logo{margin:18px 0 10px}#frm_top_bar .frm_form_nav{flex:1}ul.frm_form_nav{margin:0 auto;padding-top:18px;display:block;min-width:240px}.nav-tab-wrapper.frm_form_nav{padding:0 25px}ul.frm_form_nav>li{margin:0 min(3.5%,32px) 0 0;display:inline-block}.post-type-frm_display #advanced-sortables h2.hndle,.post-type-frm_display #side-sortables h2.hndle,.post-type-frm_display #normal-sortables h2.hndle,.post-type-frm_display .frm_form_nav .nav-tab-active,.frm_form_nav>li>a{font-size:1.3em;text-decoration:none;display:block;padding:6px 2px 4px;font-weight:500;color:var(--grey-700);border-bottom:2px solid rgba(0,0,0,0)}.post-type-frm_display.js .postbox .handlediv .toggle-indicator::before{margin-top:10px}.frm-nav-tabs a:focus,.frm-nav-tabs a:active,.frm_form_nav a:active,.frm_form_nav a:focus{outline:none;box-shadow:none}.frm_form_nav>li>a{font-size:var(--text-md);font-weight:400;color:var(--grey-500)}.frm_form_nav>li>a:hover{border-color:var(--primary-700)}.frm_form_nav .frm-dropdown-menu a:hover{background-color:#eaf2fa}.post-type-frm_display .frm_form_nav .nav-tab-active,.post-type-frm_display .frm_form_nav .nav-tab-active:hover,.frm_form_nav>li a.current_page{color:var(--primary-500);border-color:var(--primary-500);background:rgba(0,0,0,0);opacity:1;font-weight:600}.frm-full-close{display:none;padding-left:var(--gap-md);border:0 solid var(--grey-300);border-left-width:1px;height:100%;box-sizing:border-box}.frm-full-screen .frm-full-close{display:flex;align-items:center}.frm-full-close a{display:block}.frm-full-close .frmsvg{font-size:20px;width:20px;height:20px;color:var(--grey-500)}#frm_top_bar h1{font-weight:400;padding:0;margin:0;color:var(--grey-900);display:inline-flex;gap:var(--gap-sm);align-items:center;text-align:left;min-width:200px}#frm_top_bar h1 span{max-width:175px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;display:inline-block;vertical-align:bottom}#frm_top_bar ul.frm_form_nav,#frm_top_bar .frm-header-logo,#frm_top_bar #frm_bs_dropdown{align-self:center;margin-top:0;margin-bottom:0;padding-top:0}#frm_top_bar .frm-header-logo{display:flex}#frm_top_bar h2{float:left;margin:0 0 0 var(--gap-sm);padding:2px 0 2px var(--gap-sm);font-weight:400;border-left:2px solid var(--grey)}.frm_wrap>#frm_top_bar #frm-publishing{margin-top:0}#frm-publishing{min-width:225px;align-self:center;align-items:center;display:flex;flex-direction:row-reverse;gap:0 var(--gap-sm);flex-wrap:wrap}.frm_wrap .postbox{border-color:var(--grey-300);border-radius:6px;box-shadow:none}.frm_wrap .postbox h3.hndle{cursor:default;padding:10px 20px;margin:0;line-height:1.4em;border-color:var(--grey-300)}.frm-pre-hndle{font-size:15px;padding:5px;margin:9px 15px}.frm-empty-row{display:none}.frm-child-row{box-shadow:5px 0 0 0 inset var(--sidebar-hover)}.frm_animate_bg{transition:background 200ms linear,color 200ms linear}.wrap>.subsubsub{clear:both;margin:0}.frm_wrap .subsubsub a{line-height:var(--leading);font-size:var(--text-sm)}.frm-admin-page-styles .frm_page_container,.frm_wrap .frm_page_container{height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden;padding-top:0;position:fixed;top:32px;bottom:0;left:0;right:0}.frm-admin-page-translate .frm_wrap .frm_page_container,.frm-admin-page-update_translations .frm_wrap .frm_page_container{position:static}.auto-fold.frm-admin-page-styles .frm_page_container,.auto-fold .frm_wrap .frm_page_container,.frm-unfold.frm-admin-page-styles .frm_page_container,.frm-unfold .frm_wrap .frm_page_container{left:160px}.folded.frm-admin-page-styles .frm_page_container,.folded .frm_wrap .frm_page_container{left:38px}.frm-full-screen.frm-admin-page-styles .frm_page_container,.frm-full-screen .frm_wrap .frm_page_container{height:100vh;top:0;left:0}.frm-full-screen.frm-admin-page-entries .frm_page_container,.frm-new-entry .frm_page_container,.frm-admin-page-reports .frm_page_container,.frm_list_entry_page .frm_page_container{height:auto;display:block}.frm-new-entry .columns-2{border:none}.frm-white-body #frm_top_bar,.frm-white-body .columns-2{flex:0 0 auto}.columns-2 .frm-right-panel+div{padding-bottom:var(--gap-md);border-left:1px solid var(--grey-300)}.columns-2 .frm-right-panel+div,.frm_wrap #post-body-content{padding-bottom:0;padding-top:var(--gap-sm);margin-bottom:0;background:#fff;width:auto;float:none;flex:2}.frm-white-body .columns-2{flex:1;display:flex;overflow:hidden}.frm-white-body .columns-2>div{overflow-y:auto;box-sizing:border-box}.frm_wrap .columns-2 .frm-right-panel,.frm-right-panel{flex:0 0 var(--biggest-sidebar);float:none;width:var(--biggest-sidebar);min-width:var(--biggest-sidebar);background-color:var(--sidebar-color);margin:0;box-shadow:none;border:none;padding-bottom:25px}.frm-right-panel .frm_field_list,.frm_wrap .frm-right-panel #frm_adv_info,.frm_wrap #postbox-container-1 #frm_adv_info{box-shadow:none;border:none;margin-bottom:26px}#new_fields,.frm-has-modal,p.frm_has_shortcodes{position:relative}.frm-inline-modal.postbox{background:#fff;border-color:var(--grey-100);border-radius:var(--small-radius);box-shadow:var(--box-shadow-lg)}.frm_has_shortcodes .frmsvg:not(.frm_help .frmsvg),.frm_has_shortcodes i:not([class*=mce-]){position:absolute;color:var(--primary-500);border-radius:50%;border:1px solid rgba(0,0,0,0);z-index:100;text-align:center}.frm_has_shortcodes .frmsvg.frm-show-box{border-radius:6px !important}.frm_has_shortcodes input,.frm_has_shortcodes textarea{padding-left:18px;box-sizing:border-box}#form_settings_page #frm_adv_info,#frm_builder_page #frm_adv_info{display:none;top:0;width:310px;max-height:315px;min-height:200px;overflow-y:scroll;z-index:100}#form_global_settings .columns-2>div{overflow:auto;height:calc(100vh - 32px)}#form_global_settings .columns-2 .frm-right-panel,#form_settings_page .columns-2 .frm-right-panel,#wpbody-content .frm-page-skeleton .frm-right-panel{flex:0 0 var(--small-sidebar);width:var(--small-sidebar);min-width:var(--small-sidebar)}#form_global_settings .frm_grid_container{gap:0 var(--gap-md)}.frm-inner-content{padding:var(--gap-md)}.post-type-frm_display #poststuff{padding:0 0 10px 40px}#postbox-container-2 .postbox .inside{padding:15px 25px}#postbox-container-2 #frm_advanced .inside h3{margin:15px -25px;font-weight:600}#form_settings_page .frm-inner-content{padding-top:0;padding-bottom:150px;position:relative}.frm_wrap #submitdiv{margin-bottom:0;border-width:0 0 1px;width:100%;min-width:unset}.frm_wrap #frm_adv_info .handlediv,.frm_wrap #frm_adv_info .hndle{display:none}.frm_wrap .menu-settings{border:none;margin-top:0}.nodrag a{cursor:pointer}.frm_wrap #frm_adv_info .inside{margin:0}#frm_adv_info>.inside{padding:0}#frm_adv_info ul.subsubsub{padding-bottom:var(--gap-xs) !important}#frm_adv_info ul.subsubsub a{font-weight:500}#frm_adv_info ul.subsubsub .frm-vertical-separator{display:inline-block;width:1px;height:8px;background-color:var(--grey-300)}#frm_adv_info #frm-insert-condition{background-color:var(--primary-50)}#frm_adv_info #frm-insert-condition:hover{background-color:var(--primary-25)}#frm_builder_page #frm_adv_info{width:322px;max-height:356px;border-radius:var(--small-radius);overflow:hidden}#frm_builder_page #frm_adv_info #taxonomy-linkcategory{height:356px;overflow:hidden}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div{max-height:286px;padding:0}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div>*{padding-bottom:var(--gap-sm);max-height:unset}#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div>*:last-child{padding-bottom:var(--gap-xs)}#frm_builder_page #frm_adv_info #frm-nav-tabs{display:flex;gap:var(--gap-xs);background-color:var(--grey-100);border-radius:var(--small-radius);border:0;padding:var(--gap-xs);margin:var(--gap-xs) var(--gap-2xs) var(--gap-sm)}#frm_builder_page #frm_adv_info #frm-nav-tabs>li{flex:1;text-align:center}#frm_builder_page #frm_adv_info #frm-nav-tabs>li a{font-weight:500;line-height:1;color:var(--grey-500);border-radius:var(--small-radius);border:0;padding:var(--gap-xs);margin:0}#frm_builder_page #frm_adv_info #frm-nav-tabs>li a:hover{background-color:#eaecf0;color:var(--grey-500) !important;box-shadow:var(--box-shadow-sm)}#frm_builder_page #frm_adv_info #frm-nav-tabs>li.frm-tabs a{background-color:#fff;color:var(--grey-900) !important;box-shadow:var(--box-shadow-sm)}#frm_builder_page #frm_adv_info .frm-search,#frm_builder_page #frm_adv_info .frm-with-search{padding-top:0;margin:0}.frm-right-panel .frm-inline-modal.postbox .inside{margin:0;padding:0 14px 14px}.frm-right-panel .frm-inline-modal.postbox .inside .frm-with-line,.frm-right-panel .frm-inline-modal.postbox .inside .accordion-section-content h4{margin-left:-14px;margin-right:-14px}.frm-right-panel .frm-inline-modal .inside p:not(.howto),.frm-right-panel .frm-inline-modal .inside a{font-size:15px}.frm-inline-modal .inside a.frm_icon_font{font-size:18px}.frm-nav-tabs{margin:10px 0 20px;padding:0 var(--gap-sm);display:block;border-bottom:1px solid var(--grey-300)}#frm-nav-tabs{position:-webkit-sticky;position:sticky;top:0;background-color:var(--sidebar-color);z-index:98;margin-top:0;padding-top:5px}.frm_form_settings #frm_adv_info #frm-nav-tabs{background-color:#fff;margin:0 -4px}.frm_form_settings span.frm-with-right-icon,#frm_builder_page .frm_has_shortcodes span.frm-with-right-icon:not(.frm_hidden){display:block}.frm-inline-modal .frm-nav-tabs,#frm_adv_info .frm-nav-tabs{margin:5px 0 0}#frm_adv_info .frm-nav-tabs.frm-compact-nav{padding-right:0;padding-left:20px}.frm-nav-tabs li{display:inline-block;margin:0}.frm-nav-tabs a{color:var(--grey-700);padding:10px 1px;margin:0 9px;border-bottom:2px solid rgba(0,0,0,0)}.frm_form_settings #frm_adv_info .frm-nav-tabs a{padding:5px 1px;color:var(--grey-500)}.frm-nav-tabs.frm-compact-nav a{margin:0 5px}.frm-nav-tabs a{display:block;opacity:.9}#frm_adv_info .frm-nav-tabs a{color:var(--grey-700)}.frm-nav-tabs a:hover,.frm-nav-tabs .frm-tabs a{color:var(--primary-500) !important;border-color:var(--primary-500)}.frm_form_settings #frm_adv_info .frm-nav-tabs .frm-tabs a{font-weight:500}#frm-bulk-modal .howto,#frm-bulk-modal h3{font-size:var(--text-sm);font-weight:400;margin:5px 0 10px;color:var(--grey)}#frm-bulk-modal h3{margin-left:20px}.frm-right-panel a.frm_add_logic_link,.frm-right-panel h3{color:var(--grey-700);font-size:var(--text-lg);font-weight:400;margin:0}.frm-right-panel h3 i{color:var(--grey-700);float:right;width:16px;cursor:pointer}.frm-settings-panel{padding:var(--gap-sm);padding-right:var(--gap-xs)}.frm-settings-panel .frm-style-tabs-wrapper .frm-tabs-delimiter{top:var(--gap-xs);left:var(--gap-xs);width:calc(100% - var(--gap-sm))}.frm-settings-panel .frm-style-tabs-wrapper .frm-tabs-navs{padding:var(--gap-xs) var(--gap-xs) 0}.frm-settings-panel .frm-embed-field-placeholder{height:unset}.frm-settings-panel .frm-embed-field-placeholder img{height:100px}.frm-settings-panel .frm-embed-field-placeholder .frm-embed-message{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-sm);max-width:unset;color:var(--grey-800);padding:var(--gap-lg);border:0;box-shadow:var(--box-shadow-sm);margin:1px}.frm-single-settings .frm-default-value-wrapper>p{margin-bottom:0}.frm-single-settings .frm-default-value-wrapper+p:empty{display:none}.frm-single-settings [class*=frm-lookup-box-] .frm_grid_container p{margin-top:0 !important}.frm-single-settings .frm_single_option[id^=frm_watch_lookup_]{margin-bottom:var(--gap-xs) !important}.frm-single-settings>h3:first-of-type{position:relative;background-color:rgba(0,0,0,0) !important;border-top:none;padding-top:0 !important;margin-top:0 !important}.frm-single-settings>h3:first-of-type::after{content:"";position:absolute;left:var(--gap-sm);right:var(--gap-sm);bottom:0;height:1px;background-color:var(--sidebar-hover)}.frm-flex-justify,.frm-right-panel .frm-single-settings h3{display:flex;justify-content:space-between;align-items:center}#post-body-content+.frm-right-panel{flex:0 0 var(--medium-sidebar);width:var(--medium-sidebar);min-width:var(--medium-sidebar);border-left:1px solid var(--sidebar-hover)}.frm-new-entry #post-body-content+.frm-right-panel,.frm-new-entry .frm-right-panel{background:none;border:none}#post-body-content+.frm-right-panel h3{padding:20px 20px 0;font-size:17px}#post-body-content+.frm-right-panel .frm_with_icons:first-of-type h3{border:none}#frm-insert-fields h3{color:var(--grey);font-size:15px;font-weight:400;border-top:none;border-bottom:1px solid var(--sidebar-hover);margin:0;padding:10px 10px 10px 25px}.frm_wrap #frm_adv_info ul.category-tabs{margin:0;padding:10px 0 9px;font-size:15px;background:rgba(0,0,0,0)}.frm_wrap #frm_adv_info ul.category-tabs li{padding:10px;background-color:rgba(0,0,0,0) !important}.frm_wrap #frm_adv_info ul.category-tabs li:first-child{border:none}.frm_wrap #frm_adv_info .categorydiv div.tabs-panel{border:none;background:rgba(0,0,0,0)}.frm_wrap #frm-categorydiv{border-right:none}#frm_adv_info #frm-conditionals{padding-top:var(--gap-sm)}#postbox-container-1 #taxonomy-linkcategory #frm-html-tags{display:none;max-height:none}#postbox-container-1 .frm_field_list #frm-insert-fields .frmbutton.dropdown{position:relative}.frm-white-body #footer-upgrade{display:none}.frm-admin-footer-links,.frm-admin-footer-links-nav,.frm-admin-footer-links-socials{display:flex;justify-content:center}.frm-admin-footer-links{gap:var(--gap-2xs);flex-direction:column;text-align:center;padding:var(--gap-xl) 0 var(--gap-lg);font-size:var(--text-xs);color:var(--grey-400)}body.frm-hidden-overflow{height:100%;overflow:hidden}.frm-admin-footer-links-nav{gap:var(--gap-2xs);margin-bottom:var(--gap-xs)}.frm-admin-footer-links-socials{gap:var(--gap-xs)}.frm-admin-footer-links-socials a{color:var(--grey-400)}.frm_list_entry_page h2{float:left}.frm_list_entry_page h2+.error{clear:both}.frm_sidebar select{width:100%;margin-left:0;margin-right:0}.frm_sidebar #search-submit{float:right}.frm_single_entry_page #submitdiv{margin:0}.frm_single_entry_page .hndle a{font-size:13px}.frm-right-panel #publishing-action{float:none}.frm-right-panel #major-publishing-actions{border-top:none;height:32px;background:rgba(0,0,0,0)}#major-publishing-actions .frm_submit_form{float:right;margin-left:5px}.frm_orange_button,.frm_reverse_button{font-size:12px;border:1px solid var(--orange);color:var(--orange);font-weight:600;padding:1px 4px;border-radius:4px;background:rgba(0,0,0,0)}.frm_reverse_button:hover,.frm_reverse_button:active,.frm_reverse_button:focus{color:#fff;background:var(--orange);border:1px solid var(--orange)}.frm_reverse_button{font-size:1em;transition:all .2s ease}.frm-button-primary,.wp-core-ui .button-primary.frm-button-primary,.wp-core-ui .button.frm-button-primary,.frm-button-secondary,.wp-core-ui .button-secondary.frm-button-secondary,.wp-core-ui .button.frm-button-secondary,.frm-white-body .frm-search .button,.frm-white-body .search-box .button,.frm-white-body .tablenav .button,.frm_orange_button,.toplevel_page_formidable #frm_upgrade_modal .button-primary,.wp-core-ui.frm-white-body .button-primary,.wp-core-ui.frm-white-body .button-secondary,.frm-white-body .button-primary,.frm-white-body .button-secondary,#frm-form-button button,.frm-form-button button,.frm-preview-buttons button,.frm-button-red,.frm-button-tertiary{text-shadow:none;box-shadow:none;border-radius:30px;border:1px solid var(--primary-500);font-size:var(--text-sm);transition:all .2s ease;padding:7px 16px;height:auto;min-height:28px;outline:none;line-height:var(--leading);box-sizing:border-box;font-weight:500;margin-bottom:0;display:inline-block}.frm-button-primary.frm-sharp,.frm-button-secondary.frm-sharp{border-radius:12px !important}#wpcontent .frm-button-secondary.frm-button-gradient{position:relative;border-color:rgba(0,0,0,0) !important;background-clip:padding-box !important}#wpcontent .frm-button-secondary.frm-button-gradient::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;margin:-1px;border-radius:inherit;background:linear-gradient(90deg, #129EFD 0%, #A334FD 100%);transition:opacity 150ms ease-out}#wpcontent .frm-button-secondary:hover::before{opacity:.5}.no-js.wp-core-ui .frm-search .button.hide-if-no-js,.js.wp-core-ui .frm-search .button.hide-if-js{display:none}.frm-button-tertiary{border-color:rgba(0,0,0,0);color:var(--primary-500)}.frm-button-tertiary:focus{outline:none}.frm-button-tertiary.frm_loading_button::before{border-right-color:var(--grey);border-bottom-color:var(--grey)}.frm-button-red,.frm-button-red:focus{--primary-color: var(--error-500);--primary-500: var(--error-500);--primary-700: var(--error-700)}.frm-button-red:not(.frm-button-tertiary),.frm-button-red:not(.frm-button-tertiary):focus{color:#fff !important}.frm-white-body h2 .button,.post-type-frm_display h2 .frm-button-primary,.frm-white-body .tablenav .button,.frm-button-primary.frm-button-sm,.frm-button-secondary.frm-button-sm,.frm-button-tertiary.frm-button-sm,.frm-button-red.frm-button-sm{padding:4px 12px !important;font-size:var(--text-xs) !important}.frm_no_style_button{background:rgba(0,0,0,0)}.frm-with-icon{display:flex;gap:var(--gap-xs);align-items:center}.frm-with-icon svg{opacity:.65}.frm-with-icon.button svg{height:var(--text-sm);width:var(--text-sm)}.frm-with-icon.frm-button-sm svg{height:var(--text-xs);width:var(--text-xs)}.frm-white-body .button.add_media{padding-left:12px !important;padding-right:12px !important;font-size:var(--text-xs);border-radius:var(--border-radius)}.wp-core-ui.frm-white-body #post-query-submit.button,.wp-core-ui.frm-white-body .button.tablenav-pages-navspan,.wp-core-ui.frm-white-body .button.first-page,.wp-core-ui.frm-white-body .button.prev-page,.wp-core-ui.frm-white-body .button.next-page,.wp-core-ui.frm-white-body .button.last-page,.wp-core-ui.frm-white-body .button.action{background-color:rgba(0,0,0,0);border-color:var(--grey-300);color:var(--grey-700);border-radius:var(--border-radius)}.post-type-frm_display.wp-core-ui .button-primary,.frm-button-primary,.wp-core-ui .button-primary.frm-button-primary,.frm_single_entry_page #frm-publishing .button-primary{background-color:var(--primary-500) !important;color:#fff !important}.frm-button-primary.frm_large,.frm-button-secondary.frm_large{height:auto !important;padding:12px 16px !important}.frm-button-secondary.frm-small,.frm-button-primary.frm-small{font-size:var(--text-xs) !important;height:auto !important;padding:var(--gap-2xs) 12px !important}.frm-button-primary i::before{color:#fff}.wp-core-ui .button-primary.frm-button-primary:not([disabled]):hover,.frm-button-primary:not([disabled]):hover{background:var(--primary-700) !important;border-color:var(--primary-700) !important}.wp-core-ui .button-primary.frm-button-primary:active{vertical-align:inherit}.frm-white-body #search-submit,#frm-form-button .frm_button_submit,.frm-form-button .frm_button_submit,.frm-white-body .frm-preview-buttons button,.frm-white-body .button:not(.frm-button-primary),.wp-core-ui.frm-white-body .button-secondary,.wp-core-ui .button-secondary.frm-button-secondary,.wp-core-ui .button.frm-button-secondary,.frm-white-body .frm-button-secondary,.frm-button-secondary{color:var(--grey-800);border-color:var(--grey-300);background-color:#fff}#wp-content-media-buttons button,#wp-content-media-buttons a.button{border-color:var(--grey-300)}.frm_orange_button{border-color:#da791d !important;background:var(--orange);color:#fff}.frm-white-body .button:not(.frm-button-primary):focus,.frm-white-body .button:not(.frm-button-primary):active,.frm-white-body .frm-button-secondary:hover,.wp-core-ui.frm-white-body .frm-button-secondary:hover,.wp-core-ui.frm-white-body .button-secondary:hover,.wp-core-ui.frm-white-body .button-secondary:focus,.wp-core-ui.frm-white-body .tablenav .button:hover,.frm_wrap .preview>.button:hover,.frm-white-body #search-submit:hover{border-color:var(--grey-300) !important;color:var(--grey-800);background:var(--grey-50) !important;box-shadow:none !important;outline:none !important}.frm-button-primary .frmsvg{color:#fff}.frm_wrap .preview i{font-size:inherit}.frm-white-body .frm-button-primary:focus,.frm-white-body .frm-button-primary:active,#frm-addons-page .button-primary:focus,#form_global_settings .button-primary:focus,#frm_upgrade_modal .button:focus{border-color:var(--primary-700) !important;background-color:var(--primary-700) !important;box-shadow:none !important;outline:none !important}.frm_wrap .preview>.button:focus,.frm_orange_button:hover,.frm_orange_button:focus,.toplevel_page_formidable #frm_upgrade_modal .button-primary:hover,.toplevel_page_formidable #frm_upgrade_modal .button-primary:focus,.toplevel_page_formidable .frm_wrap button.button-primary:hover,.toplevel_page_formidable .frm_wrap button.button-primary:focus{outline:none}.frm_orange_button:hover,.frm_orange_button:focus{border-color:var(--orange) !important;background:rgba(0,0,0,0);color:var(--orange);opacity:1}.major-publishing-actions.frm_create_form_header{padding:8px 0}.major-publishing-actions.frm_create_form_header .frm_create_form_header_inner{font-size:15px;background:rgba(0,0,0,0)}.frm-menu-boxes .frm_blank_form_text{padding-bottom:26px}input.frm_insert_in_template{font-size:10px;width:98%;font-weight:400}.frm-dismissible a.dismiss:focus{box-shadow:none}.frm-dismissible a.dismiss{top:10px;right:10px;position:absolute}.frm-dismissible a.dismiss svg{color:var(--grey-800)}.wp-admin .frm-review-notice{position:fixed !important;bottom:var(--gap-2xl);right:var(--gap-lg);width:380px;text-align:center;border-color:var(--grey-100);padding:var(--gap-lg);border-radius:var(--medium-radius);box-shadow:var(--box-shadow-lg) !important;z-index:999;box-sizing:border-box;--gap-sm: 16px;--gap-md: 24px;--gap-2xl: 48px}.wp-admin .frm-review-notice *{box-sizing:border-box}.frm-review-notice-icon{display:inline-flex;margin-bottom:var(--gap-sm)}.wp-admin .frm-review-notice-title{font-weight:600;margin-top:0;margin-bottom:var(--gap-xs)}.wp-admin .frm-review-notice-text{margin-top:0;margin-bottom:var(--gap-md)}.frm-review-notice-signature{text-align:left;margin:var(--gap-md) 0}.frm-review-notice-signature img{width:40px;height:40px;padding:3px;box-shadow:var(--box-shadow-md);border-radius:100%}#wpwrap .frm-dismiss-review-notice{top:16px;right:19px}.frm-review-notice #frmapi-feedback [class^=frm__]{display:none}.frm-review-notice #frmapi-feedback input,.frm-review-notice #frmapi-feedback textarea{border-color:var(--grey-300);border-radius:var(--small-radius)}.frm-review-notice #frmapi-feedback input{min-height:unset;max-height:36px}.frm-review-notice #frmapi-feedback textarea{max-height:80px;padding-top:var(--gap-xs)}.frm-review-notice #frmapi-feedback .frm_message{color:var(--success-900);background-color:var(--success-25);border:1px solid var(--success-200);padding:var(--gap-sm) var(--gap-md);margin:0}.frm-review-notice #frmapi-feedback .frm_message p{margin:0}.frm-review-notice #frmapi-feedback .frm_button_submit{background-color:var(--primary-500);border-color:var(--primary-500) !important;cursor:pointer}.frm-review-notice #frmapi-feedback .frm_button_submit:hover,.frm-review-notice #frmapi-feedback .frm_button_submit:focus{color:#fff;background-color:var(--primary-700);border-color:var(--primary-700) !important}.frm-review-notice .frm_error,.frm-review-notice label{color:#444;text-align:left}.frm-review-notice label{font-size:var(--text-sm)}.frm-floating-success-message{position:fixed;z-index:999;border-radius:4px;right:10px;bottom:10px}.frm-box-shadow-xxl{box-shadow:var(--box-shadow-xxl) !important}.frm-text-primary-500{color:var(--primary-500)}.frm-text-grey-400{color:var(--grey-400) !important}.frm-text-grey-500{color:var(--grey-500)}.frm-text-grey-600{color:var(--grey-600) !important}.frm-text-grey-700{color:var(--grey-700)}.frm-text-grey-900{color:var(--grey-900)}.frm-text-success-500{color:var(--success-500)}.frm-text-warning-500{color:var(--warning-500)}.frm_no_margin,.frm-m-0{margin:0 !important}.frm-m-12{margin:var(--gap-2xl)}.frm-m-2xs{margin:var(--gap-2xs) !important}.frm_no_top_margin,.frm-mt-0{margin-top:0 !important}.frm-mt-2xs{margin-top:var(--gap-2xs) !important}.-frm-mt-2xs{margin-top:calc(-1*var(--gap-2xs)) !important}.frm-mt-xs{margin-top:var(--gap-xs) !important}.frm-mt-sm{margin-top:var(--gap-sm) !important}.frm-mt-md{margin-top:var(--gap-md) !important}.frm-mt-lg{margin-top:var(--gap-lg) !important}.frm-mt-2xl{margin-top:var(--gap-2xl) !important}.frm-mt-auto{margin-top:auto !important}.frm_no_bottom_margin,.frm-mb-0{margin-bottom:0 !important}.frm-mb-2xs{margin-bottom:var(--gap-2xs) !important}.frm-mb-6{margin-bottom:6px !important}.frm-mb-sm{margin-bottom:var(--gap-sm) !important}.frm-mb-12{margin-bottom:12px !important}.frm-mb-xs{margin-bottom:var(--gap-xs) !important}.frm-mb-md{margin-bottom:var(--gap-md) !important}.frm-mb-lg{margin-bottom:var(--gap-lg) !important}.frm-ml-2xs{margin-left:var(--gap-2xs) !important}.frm-ml-xs{margin-left:var(--gap-xs) !important}.frm-ml-auto{margin-left:auto}.-frm-ml-2xs{margin-left:calc(-1*var(--gap-2xs)) !important}.frm-mr-auto{margin-right:auto}.frm-mr-auto\!{margin-right:auto !important}.frm-mr-2xs{margin-right:var(--gap-2xs) !important}.frm-mr-xs{margin-right:var(--gap-xs) !important}.frm-mr-2{margin-right:2px !important}.frm-mx-0{margin-left:0 !important;margin-right:0 !important}.frm-mx-xs{margin-left:var(--gap-xs) !important;margin-right:var(--gap-xs) !important}.frm-mx-sm{margin-left:var(--gap-sm) !important;margin-right:var(--gap-sm) !important}.frm-my-sm{margin-top:var(--gap-sm) !important;margin-bottom:var(--gap-sm) !important}.frm-my-xs{margin-top:var(--gap-xs) !important;margin-bottom:var(--gap-xs) !important}.frm-p-0{padding:0 !important}.frm-p-1,.frm-p-2xs{padding:var(--gap-2xs)}.frm-p-sm,.frm-p-4{padding:var(--gap-sm) !important}.frm-p-sm{padding:var(--gap-sm) !important}.frm-p-6,.frm-p-md{padding:var(--gap-md) !important}.frm-p-xl{padding:var(--gap-xl) !important}.frm-px-0{padding-left:0 !important;padding-right:0 !important}.frm-py-0{padding-top:0 !important;padding-bottom:0 !important}.frm-py-2xs{padding-top:var(--gap-2xs) !important;padding-bottom:var(--gap-2xs) !important}.frm-py-sm{padding-top:var(--gap-sm) !important;padding-bottom:var(--gap-sm) !important}.frm-pt-0{padding-top:0 !important}.frm-pt-2xs{padding-top:var(--gap-2xs) !important}.frm-pt-xs{padding-top:var(--gap-xs) !important}.frm-pt-sm{padding-top:var(--gap-sm) !important}.frm-pt-md{padding-top:var(--gap-md) !important}.frm-pt-xl{padding-top:var(--gap-xl) !important}.frm-pr-lg{padding-right:var(--gap-lg) !important}.frm-pb-md{padding-bottom:var(--gap-md) !important}.frm-pb-sm{padding-bottom:var(--gap-sm) !important}.frm-pb-xs{padding-bottom:var(--gap-xs) !important}.frm-pb-2xs{padding-bottom:var(--gap-2xs) !important}.frm-pb-0{padding-bottom:0 !important}.frm-px-sm{padding-right:var(--gap-sm) !important;padding-left:var(--gap-sm) !important}.frm-px-xs{padding-right:var(--gap-xs) !important;padding-left:var(--gap-xs) !important}.frm-px-md{padding-right:var(--gap-md) !important;padding-left:var(--gap-md) !important}.frm-text-xs{font-size:var(--text-xs) !important}.frm-text-sm{font-size:var(--text-sm) !important}.frm-text-md{font-size:var(--text-md) !important}.frm-text-lg{font-size:var(--text-lg) !important}.frm-text-xl{font-size:var(--text-xl) !important}.frm-leading-none{line-height:1}.frm-italic{font-style:italic}.frm-no-italic{font-style:normal}.frm-capitalize{text-transform:capitalize}.frm-font-normal{font-weight:400 !important}.frm-font-medium{font-weight:500 !important}.frm-font-semibold{font-weight:600 !important}.frm-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[class*=frm-line-clamp-]{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.frm-line-clamp-2{-webkit-line-clamp:2}.frm-white-space-nowrap{white-space:nowrap}.frm-rounded-sm{border-radius:var(--small-radius) !important}.frm-rounded-6{border-radius:6px !important}.frm-w-auto{width:auto !important}.frm-w-full{width:100% !important}.frm-w-half{width:50% !important}.frm-w-fit{width:fit-content !important}.frm-max-w-fit{max-width:fit-content}.frm-h-auto{height:auto !important}#wpwrap .frm_hidden\!{display:none !important}.frm_block,.frm-block{display:block}.frm_inline{display:inline}.frm-inline\!{display:inline !important}.frm_inline_block{display:inline-block !important}.frm-inline-flex,#wpbody-content .frm-inline-flex{display:inline-flex}.frm-flex{display:flex}.frm-flex\!{display:flex !important}.frm_hidden,.js .frm-hide-js{display:none}.frm-flex-box{display:flex;gap:var(--gap-sm)}.frm-flex-col{display:flex;flex-direction:column}.frm-flex-full{flex:1}.frm-flex-center\!,.frm-flex-center{justify-content:center;align-items:center}.frm-flex-center{display:flex}.frm-flex-center\!{display:flex !important}.frm-shrink-0{flex-shrink:0}.frm-gap-0{gap:0 !important}.frm-gap-2xs{gap:var(--gap-2xs)}.frm-gap-xs{gap:var(--gap-xs)}.frm-gap-xs\!{gap:var(--gap-xs) !important}.frm-gap-sm{gap:var(--gap-sm)}.frm-gap-md{gap:var(--gap-md)}.frm-gap-xl{gap:var(--gap-xl)}.frm-justify-start{justify-content:start !important}.frm-justify-center{justify-content:center !important}.frm-justify-between{justify-content:space-between}.frm-justify-end{justify-content:end}.frm-items-center{align-items:center}.frm-items-stretch{align-items:stretch}#wpbody-content .frm-flex-wrap{flex-wrap:wrap}.frm-grow{flex-grow:1}.frm-order-first{order:-9999}.frm-order-last{order:9999}.frm-order-none{order:0}.frm-h-stack-sm,.frm-h-stack-xs,.frm-h-stack{display:flex !important;align-items:center}.frm-h-stack-sm>input[type=checkbox],.frm-h-stack-xs>input[type=checkbox],.frm-h-stack>input[type=checkbox],.frm-h-stack-sm>input[type=radio],.frm-h-stack-xs>input[type=radio],.frm-h-stack>input[type=radio]{margin:0 !important}.frm-h-stack{gap:var(--gap-2xs)}.frm-h-stack-xs{gap:var(--gap-xs)}.frm-h-stack-sm{gap:var(--gap-sm)}.frm-transition-ease{transition:all .2s ease}.frm_invisible{visibility:hidden;transition:all .2s ease}.frm_disabled{opacity:.5;cursor:default;pointer-events:none}.frm_disabled .frm-show-inline-modal{pointer-events:none !important}.frm_no_float{float:none}.frm-text-right{text-align:right}.frm-border-b{border-bottom:1px solid var(--grey-300)}.frm-no-border{border:none !important}.frm-hr{display:block;height:1px;background-color:var(--grey-200);margin:var(--gap-xs) 0}.frm-opacity-100{opacity:1}.frm-on-bottom{z-index:-1}.frm-rotate-90{transform:rotate(90deg)}.frm-cursor-pointer{cursor:pointer}.frm-align-baseline{vertical-align:baseline !important}.frm-fields p>label.frm_hidden,#wpbody-content label.frm_hidden,.frm-lookup-modal .dismiss,.frm-right-panel .inside a.frm_hidden,#form_global_settings .frm_hidden,ul.frm_form_nav>li.frm_hidden,a.frm_hidden,.button.frm_hidden,.wp-core-ui .button.frm_hidden{display:none}.postbox .inside>p.frm_no_bottom_margin:last-child{margin-bottom:0 !important}.frm_no_section_fields.frm_block{display:block}.actions.frm_visible_overflow{overflow:visible !important}.frm_full_opacity,.frm_submit .frm_full_opacity,.frm_submit .frm-opacity-100{opacity:1}.frm-dropdown-menu.frm-on-top{z-index:99999}.frm-vertical-line{display:inline-block;width:1px;height:12px;background-color:var(--grey-300)}.frm-admin-full-screen #adminmenumain,.frm-admin-full-screen #wpadminbar,.frm-admin-full-screen #adminmenuback,.frm-admin-full-screen #adminmenuwrap,.frm-admin-full-screen #wpfooter{display:none}.frm-admin-full-screen #wpcontent,.frm-admin-full-screen.auto-fold #wpcontent{margin:0;padding:0}.frm-admin-full-screen.appearance_page_starter-templates #wpbody-content{padding:0}.frm_forms.with_frm_style{max-width:100%}.post-type-frm_display .wrap>.subsubsub,.post-type-frm_display .wrap>.icl_subsubsub,.frm_form_settings>p{margin:6px var(--gap-md);padding:0}.frm-entry-container{margin:0 40px 40px;padding:0}#form_reports_page .frm-inner-content{width:calc(100% - 40px);max-width:900px;margin:20px auto;padding:20px}.frm_inner_field_container>.frm_form_fields{clear:both}.post-type-frm_display h2,.frm_wrap h2{margin-top:0 !important;font-size:var(--text-lg);line-height:var(--leading)}.post-type-frm_display .wrap>h2:first-child,.frm_wrap .wrap>h2:first-child{padding-top:0;margin-top:0 !important;font-size:var(--text-lg)}#frm_form_editor_container{position:relative;margin-top:28px}.form-field p{background:none;border:none}.form-field label.frm_primary_label{display:block;float:none;width:auto}#frm_view_editor_left label,#frm_view_editor_left .frm_primary_label,.frm-dialog .frm-sub-label,.frm-dialog label,.dropdown .frm_primary_label,.accordion-container label,.frm-fields td>label,.frm-fields td>div>label,.frm_form_field>label:first-child,.frm-fields p>label,.frm_on_submit_type>label,.post-type-frm_display .frm_form_field>label,#new_fields .frm_primary_label,#form_global_settings .frm_primary_label,#frm_form_editor_container .frm_primary_label,#permissions_settings_settings .frm_primary_label{color:var(--grey-700);margin:0 0 6px;padding:0;width:auto;font-size:var(--text-sm);display:block;line-height:var(--leading)}#frm_form_editor_container #frm-show-fields .frm_primary_label{min-height:21px}.frm-fields td input+label{display:inline}#frm_form_editor_container .edit_field_type_end_divider .frm_primary_label,#frm_form_editor_container .edit_field_type_break .frm_primary_label{display:none}form .frm_primary_label input{font-size:12px}.with_frm_style form .form-field{margin-bottom:20px}#frm_builder_page .with_frm_style form .frm_combo_inputs_container>.form-field{margin-bottom:0}.frm_description,.with_frm_style form div.description,.frm_error,.with_frm_style form div.description textarea{padding:0;font-size:11px}.with_frm_style .description{color:inherit}#frm_form_editor_container .divider_section_only .frm_primary_label{display:flex;align-items:center;gap:var(--gap-xs);font-size:20px}#frm_form_editor_container .divider_section_only .frm_primary_label .frm-sub-label{padding:0}.frm-token-container{position:relative;display:block;direction:ltr}.frm-token-container .frm-tokens{position:absolute;top:0;left:0;max-width:calc(100% - var(--gap-xl));display:flex;align-items:center;flex-wrap:wrap;gap:var(--gap-2xs);padding:6px var(--gap-xs);margin:0}.frm-token-container .frm-token{position:relative;display:flex;align-items:center;gap:var(--gap-xs);min-height:24px;height:auto;color:var(--grey-900);background:var(--grey-100);border-radius:4px;padding:0 var(--gap-xs);font-size:var(--text-md);margin:0;z-index:2}.frm-token-container .frm-token .frm-token-value{line-height:var(--leading);white-space:normal;word-break:break-word}.frm-token-container .frm-token .frm-token-remove{display:flex;flex-shrink:0;cursor:pointer}.frm-token-container .frm-token .frm-token-remove .frmsvg{color:var(--grey-900);position:static;width:12px;height:12px;padding:0}.frm-token-container .frm-token .frm-token-remove:hover .frmsvg{color:var(--error-500)}.frm-token-container .frm-show-inline-modal{z-index:3 !important}.frm-token-container .frm-token-proxy-input{position:relative;z-index:1;padding-right:var(--gap-xl) !important}form .form-field.frm_field_loading{margin-bottom:0;min-height:0;padding:0;text-align:center}.frm_sorting>.frm_field_loading .frm_visible_spinner.frm-wait{margin-bottom:10px}.frm_sorting>.frm_field_loading~.frm_field_loading .frm_visible_spinner.frm-wait{margin-bottom:0;display:none}.frm_description,.with_frm_style form div.description,.frm_error{margin:0}.frm_error{color:#f04438}form .frm_blank_field input,form .frm_blank_field textarea,form .frm_blank_field select,form .frm_blank_field .frm-g-recaptcha iframe,form .frm_blank_field .g-recaptcha iframe{border-color:#f04438}form .frm_blank_field label{color:#f04438}.frm_required{color:#f04438}.with_frm_style .wp-editor-container textarea,.postbox .wp-editor-container textarea,.frm_remove_border{border:none}.with_frm_style .mceIframeContainer,.postbox .mceIframeContainer{background-color:#fff}.frm_pro_license_msg{clear:left;margin-top:10px}.frm-license-input{position:relative}.frm-license-input span{font-size:var(--text-sm)}.frm-license-input .frmsvg{width:20px;height:20px;margin-left:5px;vertical-align:text-top}.frm-license-input .frmsvg,.frm-license-input span,.frm-license-input i{color:#00831a}.upgrade_to_pro{padding:10px 25px 25px;max-width:700px;margin:20px auto !important}.upgrade_to_pro .error{display:none}.toplevel_page_formidable #wpbody-content>.error{margin:1px;padding:5px 12px}.frm_error_style,.frm_warning_style,.frm_note_style2,.frm_note_style,.frm_message,#post-body-content .frm_updated_message,div.frm_updated_message{border-radius:var(--small-radius);background-color:#d5f2dc;color:#1e561f;padding:var(--gap-sm) var(--gap-md);font-size:var(--text-sm);margin:var(--gap-sm) 0;text-align:left}.frm_note_style2{background:linear-gradient(90deg, #e9effa, #fcf6fe) padding-box,linear-gradient(90deg, #1961D5, #E8ABEF) border-box;border:1px solid rgba(0,0,0,0)}#frm_top_bar+.wrap>.frm_updated_message,#frm_top_bar+.wrap>.frm_warning_style{display:inline-block;width:100%;box-sizing:border-box}#post-body-content>.frm_updated_message{margin:5px 65px}#form_global_settings #post-body-content>.frm_updated_message,#form_global_settings #post-body-content>.frm_warning_style{margin:5px 25px}.frm_error_style{color:#973937;background-color:#ebcccc;clear:both}.frm_error_style a{text-decoration:underline;font-weight:600}.frm_error_style svg{opacity:.7}.frm_warning_style{color:#7a4d05;background-color:#fff2d2}.frm_warning_heading{font-weight:700;margin-bottom:4px}.frm_warning_style{position:relative;padding-right:calc(var(--gap-md) + 15px)}body.rtl .frm_warning_style{padding-right:var(--gap-md);padding-left:calc(var(--gap-md) + 15px)}.frm-warning-dismiss{position:absolute;top:10px;right:10px;display:flex;cursor:pointer;transition:opacity .2s ease-out}body.rtl .frm-warning-dismiss{left:10px;right:auto}.frm-warning-dismiss:hover{opacity:.8}.frm-warning-dismiss.frmsvg,.frm-warning-dismiss.frmsvg svg{width:15px;height:15px}.frm_note_style{background:rgba(188,224,253,.23);color:var(--grey-700)}.frm-banner-alert{text-align:left;margin:0;border-radius:0;padding:10px 0 10px 40px}.frm-banner-alert a{color:var(--primary-500);font-weight:400;text-decoration:none}.frm_updated_message ul,.frm_updated_message li,.frm_warning_style ul,.frm_warning_style li,.frm_error_style ul,.frm_error_style li{margin:0}.frm-inline-message{border:1px solid var(--primary-700);border-radius:var(--small-radius);color:var(--primary-700);background:#fff;text-align:center;padding:20px;font-size:var(--text-sm);line-height:var(--leading)}.frm-inline-message a{text-decoration:underline;font-weight:600;color:var(--primary-700)}.frm_pro_heading span{margin-top:10px}.frm_pro_heading .alignright{text-align:right}.frm-yes{color:var(--green);font-size:var(--text-xl)}.frm-nope{color:var(--grey-400);font-size:var(--text-xl)}.upgrade_to_pro a{color:var(--orange)}.upgrade_to_pro table .frmsvg{height:var(--text-xl);width:var(--text-xl)}.upgrade_to_pro table.widefat{background-color:#fff;border-collapse:collapse}.frm-white-body .upgrade_to_pro table th,.upgrade_to_pro table td{padding:10px 15px;border:1px solid var(--grey-300);line-height:var(--leading);font-size:var(--text-sm)}.upgrade_to_pro table th.frmcenter{text-align:center}.widefat th.frm_table_break{background-color:var(--sidebar-color)}h2.frm-h2+.howto{color:var(--medium-grey);max-width:850px;margin:5px 0 20px}.frm-card{width:100%;border-radius:10px;border:1px solid var(--grey-300);opacity:1;transition:opacity 1s}.frm-card-box{max-width:524px;background-color:#fff;border-radius:var(--medium-radius);padding:var(--gap-xl);border:1px solid var(--grey-200);box-shadow:var(--box-shadow-md)}.frm-card-box.frm-has-progress-bar{position:relative;overflow:hidden;border-radius:var(--medium-radius)}.frm-card-box-progress-bar{position:absolute;top:0;left:0;right:0;height:var(--gap-xs);background-color:var(--primary-25)}.frm-card-box-progress-bar>span{position:absolute;top:0;left:0;bottom:0;width:33%;background-color:var(--primary-500)}.frm-card-box-header{display:flex;justify-content:center;margin-bottom:var(--gap-sm)}.frm-card-box.frm-has-progress-bar .frm-card-box-header{margin-top:var(--gap-xs)}.frm-card-box-content>:last-child{margin-bottom:0}.frm-card-box-footer{display:flex;justify-content:end;gap:var(--gap-sm);margin-top:var(--gap-lg)}.frm-card-box-title{font-size:var(--text-xl) !important;font-weight:600 !important;margin-bottom:var(--gap-xs)}.frm-card-box-text{font-size:var(--text-md) !important;color:var(--grey-600) !important;margin-top:0 !important}.frm-fade{opacity:0;transition:all 1s}.frm-addons .frm-card.frm-addon-not-installed{position:relative}.frm-addons .plugin-card-top{min-height:155px;padding-top:var(--gap-lg);overflow:hidden}.frm-addons .plugin-card-top h2{margin-top:0;font-weight:400}.frm-template-row p,.frm-addons .plugin-card-top p{opacity:.8}.frm-addons .plugin-card-top>:not(p):not(h2){display:none}.frm-addons .plugin-card-bottom{padding:5px 20px 20px;text-align:center;background:rgba(0,0,0,0);border-top:none}.frm-addons .plugin-card-bottom,.frm-addons .plugin-card-bottom .button{font-size:15px}.frm-addons .button,.frm-addons .frm-button-tertiary{float:right}.frm-addons .addon-status{float:left;padding-top:4px}.frm-addon-not-installed .frm-activate-addon,.frm-addon-not-installed .frm-deactivate-addon,.frm-addon-not-installed .frm-uninstall-addon,.frm-addon-installed .frm-install-addon,.frm-addon-installed .frm-deactivate-addon,.frm-addon-active .frm-activate-addon,.frm-addon-active .frm-install-addon,.frm-addon-active .frm-uninstall-addon,.plugin-card-pro.frm-addon-active .button,.plugin-card-pro.frm-addon-active .frm-button-tertiary{display:none !important}.frm-save-and-reload-options{margin-top:10px;font-size:13px}.frm-save-and-reload,.frm-save-and-reload+.frm-button-secondary{visibility:visible !important}.addon-status-label{opacity:.7}.frm-addon-active .addon-status-label{color:var(--green);opacity:1}.frm-addon-error{position:absolute;top:55px;left:10px;right:10px;font-weight:700;text-align:center}.frm-new-template.plugin-card-bottom{overflow:visible}#frm-new-template p:first-child{margin-top:0}.frm-admin-page-formidableedit #wpbody-content>*:not(.frm-review-notice):not(.frm_previous_install):not(.frm-banner-alert):not(#frm-svg-icons-pack),#wpbody-content>.updated,#wpbody-content>#update-nag,#wpbody-content>.update-nag,#wpbody-content>.notice,#wpbody-content>.error:not(.frm_previous_install),.frm-white-body .updated,.frm-white-body .notice,.frm_wrap>.wrap>.notice,.frm-white-body .error:not(.frm_previous_install){display:none}.frm-admin-page-formidableedit #frm_builder_page{display:block !important}.frm-white-body .updated,.frm-white-body .error{margin:0;padding:10px 20px}.frm-modal:not(#frm-dismissable-cta) .postbox{max-height:600px;overflow:hidden;margin-bottom:0}.frm-modal .postbox .frm_modal_top,.frm-dialog .frm_common_modal .postbox>div:first-child,.frm-error-modal .frm_modal_top{padding:var(--gap-md) var(--gap-md) 0;position:relative}.frm-modal h2,.frm-modal .postbox .inside h2,.frm-modal .postbox .frm-modal-title,.frm-dialog .frm_common_modal .postbox>div:first-child>div:first-child,.frm-error-modal .frm-modal-title{display:inline-block;font-size:var(--text-lg);color:var(--grey-900);font-weight:600;margin:0;padding:0}.frm-modal h3{font-weight:500}.frm-inline-modal>a.dismiss,.frm-modal .postbox>a.dismiss,.frm-modal .postbox .frm-modal-title+div:last-child,.frm-dialog .frm_common_modal .postbox>div:first-child>div:last-child{position:absolute;top:19px;right:19px;display:flex;z-index:2}body.rtl .frm-inline-modal>a.dismiss,body.rtl .frm-modal .postbox>a.dismiss,body.rtl .frm-modal .postbox .frm-modal-title+div:last-child,body.rtl .frm-dialog .frm_common_modal .postbox>div:first-child>div:last-child{right:unset;left:30px}.frm-info-modal .postbox>a.dismiss,.frm-inline-modal>a.dismiss{right:13px;top:13px}.frm-modal .postbox .frm-modal-title+div:last-child a,.frm-modal a.dismiss .frmsvg,.frm_common_modal .frm_modal_top a .frmsvg{color:var(--grey-500)}.frm-modal .postbox .frm-modal-title+div:last-child a:hover,.frm-modal a.dismiss .frmsvg:hover,.frm_common_modal .frm_modal_top a .frmsvg:hover{color:var(--grey-700)}.frm-modal .frm_modal_content>div.inside,.frm_common_modal .frm_modal_content>div.inside{padding:var(--gap-md);margin:0;font-size:var(--text-sm);color:var(--grey-700)}.frm-modal p{color:var(--grey-900)}.frm_common_modal .postbox{display:flex;flex-direction:column}.frm-modal .postbox>div.inside .cta-inside{overflow-y:auto;height:auto}.frm_modal_footer{padding:0 var(--gap-md) var(--gap-sm);text-align:right}body.frm-body-with-open-modal{overflow-y:hidden}.frm-templates-list{margin-top:0}.frm-templates-list.frm_grid_container li{margin-bottom:0}.frm-templates-list li{vertical-align:top;position:relative;box-sizing:border-box;border-radius:6px;border:1px solid rgba(0,0,0,0);text-align:left}.frm-templates-list li:not(.frm_hidden){display:inline-block}.frm-templates-list.frm-categories-list li{width:100%}.frm-templates-list li.frm-selectable{cursor:pointer}.frm-templates-list li.frm-selectable:hover{background:var(--light-blue);border-color:rgba(65,153,253,.5)}.frm-templates-list li.frm-selectable:hover h3,.frm-templates-list li.frm-selectable:hover p{max-width:calc(100% - 65px)}.frm-templates-list .frm-featured-form{display:flex;width:100%}.frm-templates-list li .frm-featured-form{padding:7px 5px}.frm-templates-list li li>div{padding-left:0}.frm-templates-list li>div>div{vertical-align:middle}.frm-category-icon,.frm-icon-wrapper{background:var(--primary-500);border-radius:var(--small-radius);color:#fff;width:32px;height:32px;font-size:18px;box-sizing:border-box;align-self:center;justify-content:center;align-items:center;display:inline-flex}.frm-templates-list li .frm-category-icon{overflow:hidden}.frm-templates-list li h3,.frm-templates-list li p{text-align:left;margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.frm-templates-list li h3,.frm-templates-list .frm-install-template h3{font-size:var(--text-sm) !important}.frm-templates-list .frm-install-template div{text-align:left}#frm_leave_email,#frm_code_from_email{width:480px;max-width:100%}.frm-templates-list.frm-categories-list li>div>div:last-child{padding-left:0}.frm-hover-icons{position:absolute;right:0;top:17px;max-width:91px;height:100%;box-sizing:border-box;padding:0 10px 0 5px !important;border-radius:var(--small-radius);text-align:right;display:flex;gap:5px}.frm-ready-made-solution .frm-hover-icons{visibility:hidden}.frm-ready-made-solution:hover .frm-hover-icons{visibility:visible}.frm-hover-icons a{width:22px;height:22px;font-size:var(--text-md);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;box-sizing:border-box;line-height:var(--leading);text-align:center}.frm-hover-icons>.frm-preview-form,.frm-hover-icons>.frm-delete-form{border:1px solid var(--primary-500)}.frm-hover-icons>.frm-create-form,.frm-ready-made-solution .frm-hover-icons a{background-color:var(--primary-500)}.frm-hover-icons>a .frmsvg{width:14px;height:14px;vertical-align:baseline}.frm-hover-icons>.frm-preview-form .frmsvg,.frm-hover-icons>.frm-delete-form .frmsvg{color:var(--primary-500)}.frm-hover-icons>.frm-unlock-form{background-color:var(--primary-500)}.frm-hover-icons>.frm-unlock-form .frmsvg{background-color:var(--primary-500)}.frm-ready-made-solution .frmsvg{width:14px;height:14px}.frm-hover-icons .frm-create-form svg,.frm-ready-made-solution .frm-hover-icons svg{color:#fff}.frm-hover-icons .frm-create-form:hover,.frm-ready-made-solution .frm-hover-icons a:hover,.frm-hover-icons>.frm-unlock-form:hover,.frm-hover-icons>.frm-unlock-form:hover .frmsvg{background-color:var(--primary-700) !important}.frm-hover-icons .frm-preview-form:hover,.frm-hover-icons .frm-delete-form:hover{border:1px solid var(--primary-700) !important}.frm-hover-icons .frm-preview-form:hover .frmsvg,.frm-hover-icons .frm-delete-form:hover .frmsvg{color:var(--primary-700) !important}.frm-application-card h4 .frmsvg,.frm-locked-template h3 .frmsvg{height:var(--text-sm);width:var(--text-sm);vertical-align:text-top;color:var(--grey-500)}.frm-modal-back{cursor:pointer;margin-right:4px}.frm-modal-cancel{float:left}.frm-meta-tag,.frm-meta-tag:hover{padding:var(--gap-2xs) var(--gap-xs);border-radius:var(--small-radius);font-weight:600;display:inline-flex;background-color:#d9ebff;gap:2px}.frm-meta-tag.frm-grey-tag,.frm-meta-tag.frm-grey-tag:hover{background-color:var(--sidebar-hover);color:var(--grey-900)}.frm-meta-tag.frm-red-tag,.frm-meta-tag.frm-red-tag:hover{background:var(--error-100);color:var(--error-700)}.frm-meta-tag.frm-orange-tag,.frm-meta-tag.frm-orange-tag:hover{background-color:#fef7f4;color:var(--orange)}.frm-meta-tag.frm-green-tag,.frm-meta-tag.frm-green-tag:hover{background-color:var(--success-500);color:#fff}.frm-entry-status-0,.frm-meta-tag.frm-lt-green-tag,.frm-meta-tag.frm-lt-green-tag:hover{background-color:var(--success-100);color:var(--success-800)}.frm-meta-tag.frm-new-pill{background-color:var(--success-500);vertical-align:text-bottom}.frm_add_field span+.frm-meta-tag{margin-left:0}.frm-entry-status{font-weight:500}.frm-entry-status-1{color:#7a4d05;background:#fff2d2}#frm-create-footer{padding:15px 20px}li .frm-hover-icons .frm-preview-form,.frm-hover-icons .frm-unlock-form,.frm-locked-template .frm-hover-icons .frm-create-form,.frm-modal-back{display:none}.frm-locked-template .frm-hover-icons .frm-unlock-form,li[data-preview] .frm-hover-icons .frm-preview-form{display:inline-flex}.frm-modal-back svg{color:#7f7f7f}#frm-upgrade-body-list-wrapper>div{display:inline-block;width:33.3333333333%;vertical-align:top;text-align:left;margin-bottom:10px}#frm-upgrade-body-list-wrapper ul{padding-left:40px}#frm-upgrade-body-list-wrapper ul li::before{content:"\2022";color:var(--primary-500);display:inline-block;width:1em;margin-left:-1em}.frm-embed-modal-content{padding:var(--gap-md)}.frm-embed-modal-content.frm-loading-page-options{display:flex;justify-content:center}#frm_embed_modal .frm_embed_example{background:var(--sidebar-color);border:1px solid var(--sidebar-hover);border-radius:var(--small-radius);color:var(--grey-900);font-size:var(--text-sm);padding-right:var(--gap-lg);width:100%;height:auto !important;resize:none}#frm_embed_modal textarea.frm_embed_example{padding-bottom:0}.frm-embed-modal-content>div a{position:absolute;right:0;top:0}.frm-embed-modal-content>div{position:relative;margin-bottom:var(--gap-sm)}.frm-embed-modal-content>div:last-child{margin-bottom:0}.frm-embed-modal-content svg[id^=frm_copy_embed_]{position:absolute;bottom:10px;right:10px;cursor:pointer;opacity:.5}.frm-border-info-box,.frm-embed-modal-option{border-radius:var(--small-radius);border:1px solid var(--grey-300);padding:var(--gap-sm);cursor:pointer;display:flex;gap:var(--gap-sm);font-size:var(--text-sm)}.frm-embed-modal-option+.frm-embed-modal-option{margin-top:var(--gap-sm)}.caret.rotate-270,.frm-embed-modal-option .caret{align-self:center;margin-left:auto;transform:rotate(-90deg)}#frm_embed_modal .frm_modal_footer{display:none}#frm_embed_modal.frm-on-page-2 .frm_modal_footer{display:block}.frm-embed-modal-content ul{max-height:300px;overflow-y:scroll}.frm-embed-modal-wrapper.frm-dialog{overflow:visible}#frm-bulk-modal .frm_grid_container{grid-template-columns:repeat(12, 8.33%);grid-gap:0}#frm-bulk-modal .frm8{border-right:1px solid var(--grey-300);padding:10px 20px 10px var(--gap-lg)}#frm-bulk-modal .frm4{padding:10px 0}.frm-inline-modal .howto{margin:5px 0 10px;color:var(--grey)}.frm-inline-modal .frm_code_list+.howto{margin-bottom:0}#frm_bulk_options{height:240px;width:100%;border:none;box-shadow:none;padding:0}.frm-bulk-edit-link{display:flex;align-items:center;justify-content:flex-end;gap:var(--gap-2xs);font-size:var(--text-sm);margin:12px 0 12px auto}.frm-bulk-edit-link .frm-bulk-edit-link{margin:0}.frm-small-add{font-size:var(--text-sm) !important}.frm-small-add span{color:var(--primary-500);font-size:12px;height:12px;width:12px}.frm_no_captcha_text{font-weight:700;color:#a00}.frm_image_from_url{height:50px}h1 .fa-caret-down{font-size:18px}.caret{display:inline-block;width:19px;height:9px;margin-right:-8px;vertical-align:middle}.caret,.wp-admin .frm_wrap select,.frm_wrap .frm_form_builder select,.frm_wrap .ui-autocomplete-input{background:rgba(0,0,0,0) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none'%3E%3Cpath stroke='%2398A2B3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M12.708 8.959 10 11.875 7.292 8.96'/%3E%3C/svg%3E") no-repeat right 8px top 50%;padding-right:var(--gap-lg) !important}.caret{padding-right:var(--gap-xs) !important;background-position-x:5px}.frm-btn-group .caret{float:right;margin-top:calc(var(--text-md)/2)}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.frm_wrap .ui-autocomplete,#frm_adv_info.frm-dropdown-menu,.frm-dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;padding-left:4px;padding-right:4px;margin:var(--gap-xs) 0 0;text-align:left;list-style:none;background:none;background-color:#fff;background-clip:padding-box;border:1px solid var(--grey-100);border-radius:.25rem;box-shadow:var(--box-shadow-lg);max-height:200px;overflow-y:auto;overflow-x:hidden;font-size:var(--text-md);width:auto;min-width:160px}.frm6 .frm-dropdown-menu{min-width:100px;max-width:99%}#frm_bs_dropdown .frm-dropdown-menu{max-width:400px}.field_type_list .frm-dropdown-menu{min-width:150px !important}#frm_field_group_controls .frm-dropdown-menu,.frm-field-action-icons .frm-dropdown-menu{min-width:180px !important}.frm-field-action-icons .frm-dropdown-toggle svg{color:#9ea9b8}.multiselect-container.frm-dropdown-menu,#search-submit .frm-dropdown-menu{min-width:200px !important}.preview .frm-dropdown-menu{min-width:230px !important}.frm-dropdown-menu.dropdown-menu-right{right:0;left:auto}.frm-dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.frm-dropdown-menu>.dropdown-item{margin:0}.frm-select-list-item,.frm_wrap .ui-autocomplete li>div,.multiselect-container button.multiselect-option,.frm-dropdown-menu>.dropdown-item>a,.frm-dropdown-menu .frm_dropdown_li{clear:both;font-weight:400;white-space:nowrap;text-decoration:none;border-radius:var(--small-radius)}.frm-dropdown-menu>.active>a,.frm-dropdown-menu>.active>a:hover,.frm-dropdown-menu>.active>a:focus{text-decoration:none;outline:0}.frm-select-list-item.disabled,.frm-dropdown-menu>.disabled>a,.frm-dropdown-menu>.disabled>a:hover,.frm-dropdown-menu>.disabled>a:focus{color:#999}.frm-select-list-item.disabled:hover,.frm-dropdown-menu>.disabled>a:hover,.frm-dropdown-menu>.disabled>a:focus{text-decoration:none;background-color:rgba(0,0,0,0);background-image:none;cursor:not-allowed}.open>.frm-dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 10px;font-size:var(--text-xs);color:var(--grey-400)}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.dropdown-menu-right>.frm-dropdown-menu,.pull-right>.frm-dropdown-menu{right:0;left:auto}.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.navbar-fixed-bottom .dropdown .frm-dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.btn{border:1px solid #ddd;background:#fff;height:28px;line-height:var(--leading)}a.frm_option_icon::before{color:var(--primary-500);font-size:22px;width:22px;height:22px}a.frm_option_icon:focus::before,a.frm_option_icon:hover::before{color:var(--primary-700)}.frm_top_left .frm-dropdown-toggle{color:#999}.frm-card ol{margin-left:15px}.frm-dropdown-toggle{text-decoration:none}.frm-card .frm-dropdown-toggle{border:1px solid var(--grey-300);border-radius:var(--small-radius);font-size:13px;color:var(--grey-700);padding:7px 20px}.frm_actions_dropdown .frm-dropdown-menu{font-size:var(--text-sm);color:#5f6c72}.frm-dropdown-menu .frm_icon_font{vertical-align:middle;color:#5f6c72;margin-right:3px}.multiselect-container.frm-dropdown-menu{top:auto;left:auto;font-size:var(--text-sm);padding:4px;margin-bottom:3px}#post-body-content+.frm-right-panel h3.accordion-section-title{padding:7px 10px 8px 14px;font-size:var(--text-md);color:var(--grey-700)}.frm-with-line,.accordion-section-content h4{font-size:var(--text-md);font-weight:400;margin:20px -20px 10px;padding:0 20px;color:var(--grey-700);position:relative;border:none !important}.frm-with-line span,.accordion-section-content h4 span{background:#fff;padding:0 var(--gap-xs);position:relative;display:inline-block;z-index:2}.accordion-section-content h4 span{background:var(--sidebar-color)}.frm-right-panel .frm-with-line span{background:var(--sidebar-color) !important;margin-left:-4px}.frm-right-panel .frm-inline-modal .frm-with-line span{background:#fff !important}.frm-with-line::before,.accordion-section-content h4::before{content:"";display:block;position:absolute;border-bottom:1px solid var(--grey-300);left:0;width:100%;top:50%}.control-section .accordion-section-title::after,.customize-pane-child .accordion-section-title::after{top:15px}.accordion-container .frm-dropdown-menu{min-width:40px}.frm-btn-group .multiselect.dropdown-toggle{box-sizing:border-box;min-height:unset;cursor:pointer}.accordion-container .frm-dropdown-menu::before,.accordion-container .multiselect.dropdown-toggle::before{font-family:"s11-fp" !important}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0;width:100%;max-width:250px}.multiselect-container button.multiselect-option{width:100%;text-align:left;border:none;margin-bottom:4px}.multiselect-container button.multiselect-option label{margin-left:5px}.accordion-container .multiselect-container label{padding:3px 19px 3px 7px}.frm-btn-group.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.frm-btn-group.btn-group,.frm-btn-group.btn-group-vertical{display:block}.multiselect-option label{max-width:calc(100% - 22px);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.frm_scale{text-align:center;float:left;margin-right:10px}.frm_scale input{display:block;margin:5px}.frm_multi_fields_container{float:left}.frm_multi_fields_container,.frm_form_builder .frm_form_fields input[type=tel] .frm_form_builder .frm_form_fields input[type=range],.frm_form_builder .frm_form_fields input[type=text]{width:100%;height:auto}.frm_form_builder .frm_time_wrap .frm_time_sep{vertical-align:sub;vertical-align:-webkit-baseline-middle}.frm_form_builder input[type=range]::-webkit-slider-runnable-track{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-moz-range-track{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-ms-fill-lower{background-color:var(--blue-border)}.frm_form_builder input[type=range]::-ms-fill-upper{background-color:var(--blue-border)}.frm-embed-field-placeholder{text-align:center;height:145px;display:flex;align-items:center;justify-content:center}.frm-fake-field{display:block;height:25px;background-color:var(--light-blue);border:1px solid var(--grey-300);margin:10px 0;border-radius:var(--small-radius)}.frm-embed-message{position:absolute;background:#fff;border:1px solid var(--grey-300);color:var(--grey-700);padding:var(--gap-md);font-size:var(--text-lg);max-width:200px;min-width:50%;margin:0 var(--gap-md);overflow:hidden;text-overflow:ellipsis}.frm-summary-message{top:50%;left:50%;padding:15px 0;font-size:var(--text-md);transform:translate(-50%, -50%)}.frm-summary-learn-more{font-size:inherit !important}.frm-single-settings .frm-embed-message{width:100%;position:static;border-radius:var(--small-radius)}#new_fields input[type=text],#new_fields input[type=number],.frm_field_box .frm_form_fields>textarea,.frm_form_fields .frm_form_field>textarea,.frm_form_fields .frm_form_field>input[type=email],.frm_form_fields .frm_form_field>input[type=url],.frm_form_fields .frm_form_field>input[type=number],.frm_form_fields .frm_form_field>input[type=tel],.frm_form_fields .frm_form_field>input[type=text],.frm_form_fields .frm_form_field>input[type=range]{width:100%}.frm_form_fields textarea.wp-editor-area{width:100%;border:none}.frm_form_fields input[type=file],.frm_form_fields input[type=file]:disabled{background:rgba(0,0,0,0);border:none;box-shadow:none;width:auto}.frm_form_fields select{width:auto;max-width:100%}input[type=radio],input[type=checkbox]{width:16px;padding:0}.frm_grid_container>p,.frm_grid_container>p.frm_form_field,.frm_grid_container>div.frm_form_field,#new_fields .frm_grid_container>p{margin-top:8px;margin-bottom:8px;margin-right:0}.frm_grid_container>p>label:only-child,.frm_grid_container>p.frm_form_field>label:only-child,.frm_grid_container>div.frm_form_field>label:only-child,#new_fields .frm_grid_container>p>label:only-child{margin-bottom:0}.frm_grid_container>.frm-has-modal>p:only-child{margin-bottom:var(--gap-xs)}#new_fields div.frm_grid_container>.frm_primary_label{margin-top:8px}#new_fields .frm_primary_label+p,#new_fields .frm_primary_label+.frm6+.frm6,#new_fields .frm_primary_label+.frm6+.frm-inline-modal+.frm6{margin-top:0}.frm_catlevel_2,.frm_catlevel_3,.frm_catlevel_4,.frm_catlevel_5{margin-left:18px}.frm_wrap .frm-fields .auto_width,.frm_form_fields input.auto_width,.frm_form_fields select.auto_width,.frm_form_fields textarea.auto_width{width:auto !important}.frm_form_fields select.auto_width{min-width:60px}.frm_form_fields input:focus,.frm_form_fields select:focus,.frm_form_fields textarea:focus,.frm_focus_field input{background-color:#fff;border-color:#ddd}.frm_form_builder .frm_radio,.frm_form_builder .frm_checkbox{display:block;margin-bottom:2px}.frm_form_builder .frm_radio label,.frm_form_builder .frm_checkbox label{font-size:var(--text-sm)}.horizontal_radio .frm_radio,.horizontal_radio .frm_checkbox{margin-right:5px;display:inline-block}.frm_form_builder .frm_opt_container .frm_radio.frm_image_option label,.frm_form_builder .frm_opt_container .frm_checkbox.frm_image_option label{display:flex;align-items:center;gap:9px;white-space:normal}.frm_form_field.frm_two_col .frm_opt_container,.frm_form_field.frm_three_col .frm_opt_container,.frm_form_field.frm_four_col .frm_opt_container{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:max-content;grid-gap:0 2.5%}.frm_form_field.frm_three_col .frm_opt_container{grid-template-columns:repeat(3, 1fr)}.frm_form_field.frm_four_col .frm_opt_container{grid-template-columns:repeat(4, 1fr)}.frm_form_field.frm_two_col .frm_radio,.frm_form_field.frm_two_col .frm_checkbox,.frm_form_field.frm_three_col .frm_radio,.frm_form_field.frm_three_col .frm_checkbox,.frm_form_field.frm_four_col .frm_radio,.frm_form_field.frm_four_col .frm_checkbox{grid-column-end:span 1}.frm_wrap .with_frm_style .frm_checkbox input[type=checkbox],.frm_wrap .with_frm_style .frm_radio input[type=radio],.frm_wrap input[type=checkbox],.frm-white-body input[type=checkbox],.field-group input[type=checkbox],.frm_scale input[type=radio],.frm_radio input[type=radio],.frm_checkbox input[type=checkbox]{width:15px;min-width:15px;height:15px;border:1px solid var(--grey-300);box-shadow:var(--box-shadow-sm);-webkit-appearance:none}.frm_wrap input[type=radio]{border-color:var(--grey-300);box-shadow:var(--box-shadow-sm)}.frm_wrap input[type=radio]:checked::before{background-color:var(--primary-500)}.frm_wrap .with_frm_style .frm_checkbox input[type=checkbox],.frm_wrap input[type=checkbox],.frm-white-body input[type=checkbox],.field-group input[type=checkbox],.frm_checkbox input[type=checkbox]{border-radius:4px}.frm-white-body input[type=checkbox]:checked,.frm_wrap input[type=checkbox]:checked{background-color:var(--border-color-active, var(--primary-500)) !important;border-color:var(--border-color-active, var(--primary-500)) !important}.frm-white-body input[type=checkbox]:checked:focus,.frm_wrap input[type=checkbox]:checked:focus{border-color:var(--border-color-active, var(--primary-500))}.frm-white-body input[type=checkbox]:checked::before,.frm_wrap input[type=checkbox]:checked::before{content:"";display:block;width:100% !important;height:100% !important;background-image:url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.6667 1.5L4.25001 7.91667L1.33334 5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A") !important;background-size:8px !important;background-repeat:no-repeat !important;background-position:center !important;margin:0}.frm_radio input[type=radio],.frm_checkbox input[type=checkbox]{margin-right:5px}.frm_inner_field_container{margin-bottom:10px}.frm_conf_inline .frm_inner_field_container,.frm_conf_inline .frm_inner_conf_container{width:49%;float:left}.frm_conf_inline .frm_inner_field_container{margin-right:2%;clear:both}.frm_inner_field_container>label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.frm_field_box:not(.edit_field_type_divider):hover>.frm_inner_field_container>label,.frm_field_box .divider_section_only:hover>.frm_inner_field_container>label,li.ui-state-default.selected>.frm_inner_field_container>label{max-width:calc(100% - 100px)}.frm-drag-fade{background-color:var(--lightest-grey) !important;border-radius:4px}.frm-drag-fade *{opacity:0}.frm-dragging .divider_section_only,.frm-dragging .frm_field_box{pointer-events:none}.frm_form_settings #op-popup,.frm_form_settings com-1password-op-button,.frm_conf_below .frm_conf_field_container .frm_primary_label,.frm_conf_inline .frm_inner_field_container .frm-show-click a,.frm_conf_below .frm_conf_field_container .frm-show-click a{display:none !important}.frm_conf_inline .frm_inner_field_container .frm-field-action-icons{position:absolute;right:5px}.frm_conf_below .frm_conf_field_container{margin-top:10px}.frm_calc_dec{width:50px}.frm_ext_sc{display:none}.frm_long_input{width:100% !important;box-sizing:border-box}.frmcenter{text-align:center}img.frm_help{margin-left:2px;vertical-align:middle;padding-bottom:2px}.frm_spinner.frm-wait,.frm_spinner.spinner{float:left;visibility:hidden;margin:0 10px}.frm_visible_spinner.frm-wait,.frm_visible_spinner.spinner{visibility:visible;float:none}.frm_form_action_settings .frm_spinner.frm-wait,.frm_form_action_settings .frm_spinner.spinner{visibility:visible;float:none;vertical-align:bottom}.frm_form_action_settings .frm_loading{font-size:15px;text-align:center}.frm_ajax_settings_tab .frm-wait,.frm_ajax_settings_tab .spinner{visibility:visible;float:none;margin-top:20px}.wp-core-ui .frm_loading_button.button-primary.frm-button-primary,.frm_loading_button,.frm_loading_form.frm_button_submit{position:relative !important;opacity:.8;color:rgba(0,0,0,0) !important;text-shadow:none !important}.frm_loading_button:hover,.frm_loading_button:active,.frm_loading_button:focus,.frm_loading_form.frm_button_submit:hover,.frm_loading_form.frm_button_submit:active,.frm_loading_form.frm_button_submit:focus{cursor:not-allowed;color:rgba(0,0,0,0) !important;outline:none !important;box-shadow:none}.frm-wait{margin:20px;width:20px;height:20px;position:relative;display:inline-block}#frm-show-fields .frm-wait:only-child{position:absolute;left:50px;top:30px}.frm-wait::before,.frm_loading_button::before,.frm_loading_form.frm_button_submit::before{content:"";display:inline-block;position:absolute;background:rgba(0,0,0,0);border:1px solid #fff;border-top-color:rgba(0,0,0,0);border-left-color:rgba(0,0,0,0);border-radius:50%;box-sizing:border-box;top:50%;left:50%;margin-top:-10px;margin-left:-10px;width:20px;height:20px;animation:spin 2s linear infinite}.frm-wait::before{border-bottom-color:var(--primary-700);border-right-color:var(--primary-700)}.frm_loading_button.frm-button-secondary::before{border-bottom-color:var(--primary-500);border-right-color:var(--primary-500)}input[type=submit]:focus{outline:none !important}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}label input[type=checkbox],label input[type=radio]{vertical-align:inherit}#editorcontainer #dyncontent{margin:0;width:100%;padding:6px;line-height:var(--leading);border:0 none;outline:none;box-sizing:border-box}.frm_postbox_icon{margin:-6px 0 0 -10px}.frm_form_builder a:hover{text-decoration:underline}.frm_form_builder .widget-title h4{padding:10px 15px}.frm_form_builder .widget-top a.widget-action::after{margin:7px 12px 0}.frmbutton.frm_tgateway{display:none !important}.frm_html_legend pre{display:inline}#ed_fullscreen{display:none !important}.frm_posttax_opt_list{overflow:auto;max-height:200px;background-color:#fff}.frm_posttax_opt_list p.howto{font-size:12px}.frm_border_bottom{border-bottom:1px solid var(--grey-300);margin-bottom:10px;padding-bottom:10px}.frm_posttax_opt_list .frm_border_bottom span.howto{padding-right:10px}.frm_posttax_opt_list .frm_border_bottom input{margin-right:1px}.frm_add_remove div.frm_form_field{padding-bottom:5px}.frm_field_opts_list{max-height:260px;overflow:auto}.frm_white_bg{background-color:#fff}.frm_border_light{border:solid 1px #ddd}#new_fields .form-table input[type=text],#new_fields .form-table select,.form-table .form-field input,.form-table .form-field .quicktags-toolbar input,.form-field input,.form-field .quicktags-toolbar input{width:auto}.frm_aff_link{float:right}.frm_select_box{text-align:center;font-weight:700;width:100%;background-color:rgba(0,0,0,0) !important}.wp-list-table input.frm_select_box{text-align:left;font-weight:400;font-size:inherit !important;border:none;padding:0 !important;background-color:rgba(0,0,0,0) !important}.wp-list-table input.frm_select_box:focus{outline:none;box-shadow:none}.wp-list-table .frm_no_items.frm_select_box{text-align:center;font-weight:700;width:500px;max-width:100%;font-size:inherit}#frm-options-panel{padding:0 var(--gap-sm);color:var(--grey-900);overflow:hidden}.frm-right-panel a.frm_add_logic_link,#frm-options-panel h3{font-size:var(--text-md);font-weight:500;background-color:#fff;border-radius:var(--small-radius);padding:18px var(--gap-sm);margin:2px calc(-1*var(--gap-sm));transition:background-color 200ms ease-out,box-shadow 200ms ease-out,color 200ms ease-out}.frm-right-panel a.frm_add_logic_link .frmsvg,#frm-options-panel h3 .frmsvg{width:13px;height:13px;color:var(--grey-500);transition:transform 300ms ease-in}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):not(:first-of-type),.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):first-of-type:first-child,#frm-options-panel h3:not(.frm-collapsed):not(:first-of-type),#frm-options-panel h3:not(.frm-collapsed):first-of-type:first-child{color:var(--grey-700);box-shadow:var(--box-shadow-sm)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):not(:first-of-type) .frmsvg,.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed):first-of-type:first-child .frmsvg,#frm-options-panel h3:not(.frm-collapsed):not(:first-of-type) .frmsvg,#frm-options-panel h3:not(.frm-collapsed):first-of-type:first-child .frmsvg{transform:rotate(-180deg)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div,#frm-options-panel h3:not(.frm-collapsed)+div{padding-top:6px;padding-bottom:6px}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container{padding-bottom:14px}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container>p:first-child,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container>p:first-child{margin-top:var(--gap-sm)}.frm-right-panel a.frm_add_logic_link:not(.frm-collapsed)+div.frm_grid_container>p:first-child.frm6+.frm6,#frm-options-panel h3:not(.frm-collapsed)+div.frm_grid_container>p:first-child.frm6+.frm6{margin-top:var(--gap-sm)}.frm-right-panel a.frm_add_logic_link.frm-collapsed,#frm-options-panel h3.frm-collapsed{color:var(--grey-500);background-color:rgba(0,0,0,0)}.frm-right-panel a.frm_add_logic_link:hover,#frm-options-panel h3:hover{color:var(--grey-700);background-color:#fff;box-shadow:var(--box-shadow-sm)}.frm-right-panel a.frm_add_logic_link:focus-visible,#frm-options-panel h3:focus-visible{outline:1px solid var(--primary-500) !important;outline-offset:-1px}.frm-right-panel a.frm_add_logic_link:focus{outline:auto}.frm_field_key{background-color:#f7f7f7}#frm_form_editor_container #edit-slug-box{padding:0}.frm-alt-table{position:relative;width:100%;border-collapse:collapse;margin-top:.5em;font-size:15px}#form_show_entry_page .frm-alt-table:not(.frm-zebra-striping)::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:#fff}.frm-alt-table th{width:200px}.frm-alt-table tr,.frm-alt-table tr.frm-odd{background-color:rgba(0,0,0,0)}.frm-alt-table tr.frm-even{background-color:var(--sidebar-color)}.frm-alt-table th,.frm-alt-table td{background-color:rgba(0,0,0,0);vertical-align:top;text-align:left;padding:20px}.frm-alt-table h3{margin-bottom:0}.form-field .frm_cb_button{height:22px;line-height:20px;margin-bottom:10px;margin-right:5px}.edit_field_type_select .frm_option_val_label{margin-left:12px}.frm_rte{background:url(../images/rte.png) no-repeat}.frm_rte .howto{margin:10px 0 46px}.subform_section{margin:25px}.subform_section,.subform_section label,.subform_section input{opacity:80}.subform_section .frm_sortable_field_opts{display:none}#frm_form_editor_container .subform_section .frm_primary_label{display:block}.subform_section.subform_break{border-top:1px dashed #ccc}.button-secondary.frm_html_field{background-color:#ededed;padding:10px 20px;line-height:inherit;width:auto;height:auto !important;border-radius:0;box-sizing:content-box}.frm_html_field_placeholder{margin-bottom:10px;text-align:center}.recaptcha_placeholder{border:1px solid #d3d3d3;width:300px}.turnstile_placeholder{width:300px}.frm_sorting .frm_rte textarea{width:653px;background:#fff;margin:1px 0 0;border:1px solid #dfdfdf;border-top:none;border-radius:0;float:none !important}.frm_full_rte textarea{width:98%;padding:0}.frm_field_box{padding:5px;min-height:20px;margin:10px 0}.frm_indent_opt,td.frm_indent_opt{padding-left:25px}.frm_charts object{background:rgba(0,0,0,0)}.frm_charts h2{height:34px}.frm_single_option.ui-sortable-placeholder,li.sortable-placeholder{border:none;margin:0;visibility:visible !important;box-shadow:2px -10px 0 2px var(--primary-500)}#frm_form_editor_container>ul>.frm_single_option.ui-sortable-placeholder,#frm_form_editor_container>ul>li.sortable-placeholder{width:calc(100% - 5px) !important;height:0 !important}#frm_form_editor_container>ul>li>ul{position:relative}#frm_form_editor_container>ul>li>ul>li.sortable-placeholder,#frm_form_editor_container ul.start_divider>li>ul>li.sortable-placeholder{position:absolute;top:20px;bottom:0}.edit_field_type_divider+li.sortable-placeholder{box-shadow:2px 5px 0 2px var(--primary-500)}.start_divider li.sortable-placeholder{box-shadow:2px -5px 0 2px var(--primary-500)}.frm-is-collapsed+.sortable-placeholder{box-shadow:2px 15px 0 2px var(--primary-500)}.frm_single_option.ui-sortable-placeholder{box-shadow:0 0 1px 1px var(--primary-500)}.frm_sorting>li.edit_field_type_end_divider:first-child,.frm-show-click,li.ui-state-default.edit_field_type_divider .frm-show-click{display:none}.frm_form_field.ui-sortable-helper .frm-field-action-icons,.frm_form_field.ui-sortable-helper .frm_form_fields,.frm_form_field.ui-sortable-helper .frm_description,.frm_form_field.ui-sortable-helper .description{display:none}.frm_form_field.ui-sortable-helper .frm_primary_label,.frm_form_field.ui-sortable-helper .frm_inner_field_container{margin:0 !important}.frm-single-settings .frm-show-click{display:block !important}.frm-show-hover,.frm_single_visible_hover,li.ui-state-default.edit_field_type_divider .frm-show-hover{opacity:0;transition:opacity .15s ease-in-out}#frm-show-fields .frm-field-settings-open .frm-show-hover{opacity:1}.frm_sortable_field_opts{margin-top:5px}.frm_single_option{clear:both;margin:0 !important;padding-bottom:5px}.frm_single_option input[type=radio],.frm_single_option input[type=checkbox]{margin-top:0}.frm_single_option .frm-with-right-icon input[type=text]+.frmsvg{position:relative;right:27px;width:14px;height:14px;padding:0;margin:var(--gap-2xs) 0 0}.frm_product_price_wrapper,.frm_image_preview_wrapper,#new_fields .frm_single_option select,#new_fields .frm_single_option input[type=text]{width:calc(100% - 106px) !important;flex-grow:1}.frm-right-panel .frm_single_option a.frm_remove_tag,.frm_single_option a{padding-left:7px}.frm_single_option:hover .frm_single_visible_hover{opacity:100}.frm_single_option .frm-drag{font-size:23px;width:24px;height:24px;margin-left:-6px;margin-right:var(--gap-xs);color:var(--grey-500)}.frm_single_option .frm-drag::before{vertical-align:middle}.frm-drag,.frm_single_option.ui-sortable-helper{cursor:move}.frm_single_option .frm_option_key{margin-left:19px !important}.frm_option_key input[type=text]{margin-top:var(--gap-xs) !important;margin-left:11px !important}.frm_option_key input[type=checkbox]+input[type=text],.frm_option_key input[type=radio]+input[type=text]{margin-left:30px !important}li.ui-state-default.selected .frm-show-click,li.ui-state-default.selected.edit_field_type_divider .frm-show-click{display:inline;vertical-align:top}.frm_field_box:not(.edit_field_type_divider):hover>.frm_inner_field_container>.frm-show-hover,.frm_field_box .divider_section_only:hover>.frm_inner_field_container>.frm-show-hover,li.ui-state-default.selected>.frm_inner_field_container>.frm-show-hover,li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-show-hover{opacity:100}li.frm_field_box>ul.frm_grid_container{position:relative}.frm_sorting span.ui-icon{width:16px}body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) .frm_image_options .frm_image_option_container{--field-border-width: 1px;--border-color: var(--grey-300);--border-color-active: var(--primary-500);--border-radius: var(--small-radius)}#form_show_entry_page .frm_file_link,#form_show_entry_page .frm_image_option_container{display:inline-flex;flex-wrap:nowrap;flex-direction:column;text-align:center;align-items:center;width:150px;margin-right:10px;margin-bottom:10px}#form_show_entry_page .frm_image_option_container img{width:150px;height:150px;object-fit:cover}#form_show_entry_page .frm_file_link img{max-width:150px;height:auto}#form_show_entry_page .frm_file_link~br{display:none}#form_show_entry_page .frm_upload_label{padding:10px}#form_show_entry_page.frm_wrap .postbox{overflow:hidden}.frm_image_option_container .frm_image_placeholder_icon svg{height:150px}.frm_list_entry_page .frm_file_link,.frm_list_entry_page .frm_image_option_container.frm_label_with_image{display:block;text-align:center}.frm_list_entry_page .frm_image_option_container img{width:75px;height:75px;object-fit:cover}.frm_list_entry_page img{max-width:100%;height:auto}.frm_image_option_container .frm_empty_url{background-color:var(--sidebar-color)}.frm_list_entry_page .frm_image_option_container .frm_text_label_for_image{display:block;padding:5px 0 10px}.frm_list_entry_page .frm_upload_label,.frm-summary-page-wrapper .frm_text_label_for_image{display:block}#frm-welcome .frm_image_options .frm_image_option_container,#form_global_settings .frm_image_options .frm_image_option_container{background:var(--sidebar-color)}#frm-welcome .frm_image_option_container svg,#form_global_settings .frm_image_option_container svg{max-width:calc(100% - 20px)}#frm-new-template .frm_image_option_container svg{height:50px;margin:10px auto 0}.frm_image_option_container{position:relative}.frm_text_label_for_image>svg{width:30px;position:absolute;top:5px;right:calc(50% - 15px)}.frm_single_option .frm_option_key{margin-top:17px}.frm_single_option .frm_option_key.frm_image_preview_wrapper{margin-top:var(--gap-xs)}.frm_image_data{margin-left:var(--gap-sm);display:flex;flex-direction:column;font-size:var(--text-sm);justify-content:space-around;min-width:0}.frm_image_styling_frame{display:flex;align-items:stretch;margin-left:36px;margin-bottom:var(--gap-xs);width:100%}.frm_image_styling_frame img{height:54px;width:54px;min-width:auto;min-height:auto;border-radius:3px;object-fit:cover;object-position:center}.frm_image_styling_frame .frm_email_attachment_icon img{height:auto;width:auto;max-width:54px}.frm_image_preview_title{color:var(--grey-500);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0;flex:1 1 auto}.frm_wrap .frm_choose_image_box{cursor:pointer;color:var(--primary-500);background-color:#fff;margin-left:32px;text-align:center;width:100%}.frm-type-ranking .frm_option_key .frm_choose_image_box{margin-left:11px !important}.frm_wrap .frm_choose_image_box:hover{background:#fff}a.frm_remove_image_option,.frm_remove_image_option{color:var(--grey-400);cursor:pointer}a.frm_remove_image_option:hover .frmsvg,a.frm_remove_image_option:hover,.frm_remove_image_option:hover{color:rgba(40,47,54,.8)}.frm-form-setting-tabs{margin-top:var(--gap-sm) !important}.frm-right-panel>.postbox{background-color:rgba(0,0,0,0);border:none;box-shadow:none;margin:0}.frm-right-panel .postbox.frm_with_icons .inside,.frm-right-panel .postbox .inside,.frm-right-panel .inside{font-size:var(--text-md);padding:15px 20px 20px;color:var(--grey-700)}.frm-right-panel .misc-pub-section{padding:var(--gap-xs) 0;position:relative}.frm-right-panel .inside a,.frm-form-setting-tabs a{font-size:var(--text-md);color:var(--grey-700);padding:var(--gap-sm);display:block}.frm-form-setting-tabs a{color:var(--grey-900);padding:var(--gap-sm) var(--gap-md)}.frm-right-panel .inside a{padding:0;color:var(--primary-500);display:inline-block}.frm-right-panel .inside a:hover{color:var(--primary-700)}.frm-form-setting-tabs a:hover{background:var(--sidebar-hover);color:var(--grey-900)}.frm-right-panel .inside i,.frm-form-setting-tabs a i,.frm-form-setting-tabs a .frmsvg{margin:0 5px;display:inline-block;width:20px;height:20px;color:var(--grey-500)}.frm-form-setting-tabs a .frmsvg{margin:0}.frm-right-panel .inside a:hover i,.frm-right-panel .inside a:hover .frmsvg,.frm-form-setting-tabs a:hover .frmsvg,.frm-form-setting-tabs a:hover span{color:var(--grey-700)}.frm_settings_form .tabs-panel{padding:0 25px}#form_settings_page .tabs-panel,.frm_settings_form .tabs-panel{max-height:initial !important;min-height:50px !important}#frm_adv_info .tabs-panel{min-height:0 !important;overflow-x:hidden;padding:0;border:none;background:rgba(0,0,0,0)}select.frm_cancelnew,input.frm_enternew{width:175px}.frm_posttax_opt_list{border:1px solid var(--grey-300);padding:var(--gap-md);border-radius:var(--small-radius);margin:5px 0 5px var(--gap-md)}.frm-right-panel .wp-picker-open+.wp-picker-input-wrap{position:absolute;margin-left:calc((100% - 35px)*-1);margin-top:1px;width:calc(100% - 36px)}.frm-right-panel .wp-picker-container input[type=text].wp-color-picker{border:none;padding:5px 8px;font-family:inherit;color:var(--grey-700);font-size:var(--text-md);width:100%;line-height:var(--leading)}.frm-right-panel .wp-picker-input-wrap .wp-picker-clear{display:none !important}.frm-right-panel .wp-picker-holder{position:absolute;z-index:999}.frm-right-panel .wp-picker-input-wrap label{margin-bottom:0}.frm-right-panel .wp-picker-container .wp-color-result.button{width:100%;overflow:hidden;margin:0 !important;height:var(--h-md) !important;padding:0 0 0 var(--gap-lg) !important;border-radius:var(--small-radius);border-color:var(--grey-300)}.frm-right-panel .wp-color-result-text{line-height:var(--leading) !important;font-size:var(--text-md);background:#fff !important;color:var(--grey-900);padding:5px 8px;border-color:var(--grey-300);text-align:left}.frm-right-panel .color-alpha{width:var(--gap-lg) !important}.frm_grid_container .wp-picker-container{width:100%;position:relative}.wp-picker-container button.wp-color-result{border:1px solid var(--grey-300) !important}.wp-picker-container .wp-picker-input-wrap input.hex.wp-color-picker{max-width:100%;position:relative}.frm_end .wp-picker-holder{margin-left:-145px}.frm_end.frm6 .wp-picker-holder{margin-left:-86px}.frm_toggle_opt{padding:0;white-space:normal;display:inline;vertical-align:middle;font-weight:400}.frm_on_label,.frm_off_label{color:var(--grey-700)}.frm_toggle{position:relative;display:inline-block;width:40px;height:var(--h-xs);vertical-align:middle}.frm_toggle_block{display:inline-flex !important;gap:var(--gap-xs);align-items:center}.frm_toggle input,.frm_toggle_block input{display:none !important}.frm_toggle_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--grey-200);transition:.4s;border-radius:30px}.frm_toggle_slider::before{box-sizing:border-box;content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none'%3E%3Cpath stroke='%2398A2B3' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m10.063 3.938-6.126 6.124M3.938 3.938l6.124 6.124'/%3E%3C/svg%3E");position:absolute;left:2px;bottom:2px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:20px;line-height:20px;background-color:#fff;border-radius:50%;transition:.4s;box-shadow:var(--box-shadow-md)}input:checked+.frm_toggle .frm_toggle_slider{background-color:var(--primary-500)}input:focus+.frm_toggle .frm_toggle_slider{box-shadow:var(--box-shadow-md)}input:checked+.frm_toggle .frm_toggle_slider::before{transform:translateX(16px);content:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none'%3E%3Cpath stroke='%234199FD' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4.52 7.437 1.313 1.459L9.48 5.104'/%3E%3C/svg%3E")}input[disabled]+.frm_toggle_slider,input[disabled]+.frm_toggle .frm_toggle_slider{pointer-events:none;cursor:text;opacity:.5}.frm_toggle_opt~.frm_toggle .frm_toggle_slider::before{content:"" !important}.rtl .frm_toggle_opt{padding:0 8px}.rtl .frm_toggle_slider::before{left:17px}.rtl input:checked+.frm_toggle .frm_toggle_slider::before{transform:none !important;left:1px}.frm_toggle_off,.frm_toggle_on{display:none;color:#fff;z-index:999;position:absolute;font-size:10px;line-height:20px;left:6px}.frm_toggle_off{display:inline;left:auto;right:5px;color:var(--dark-grey)}.frm_toggle_long{width:80% !important;height:28px;display:inline-block !important}.frm_toggle_long .frm_toggle_slider{background:var(--primary-700);box-shadow:0 0 0 2px var(--primary-700)}.frm_toggle_long .frm_toggle_off,.frm_toggle_long .frm_toggle_on{width:50%;text-align:center;font-size:13px;line-height:28px}.frm_toggle_long .frm_toggle_on{left:0}.frm_toggle_long .frm_toggle_off{right:0}.frm_toggle_long .frm_toggle_slider::before{width:50%;left:0;top:0;border-radius:var(--border-radius) 0 0 var(--border-radius);height:100%;background-color:#fff;color:var(--primary-color);content:"" !important}.frm_toggle_long input:checked+.frm_toggle_slider::before{transform:translateX(101%);border-radius:0 var(--border-radius) var(--border-radius) 0}input:checked+.frm_toggle_slider+.frm_toggle_on{display:inline}input:checked+.frm_toggle_slider+.frm_toggle_on+.frm_toggle_off{display:none}.frm_toggle_long .frm_toggle_on,.frm_toggle_long input:checked+.frm_toggle_slider+.frm_toggle_on+.frm_toggle_off{display:inline;color:var(--primary-500);font-weight:400}.frm_toggle_long .frm_toggle_off,.frm_toggle_long input:checked+.frm_toggle_slider+.frm_toggle_on{color:#fff;font-weight:700}.tabs-panel{height:auto !important;min-height:260px}.tabs-panel.panel_secondary{min-height:20px;margin-top:10px;margin-left:150px}label.frm-example-icon{margin-right:20px !important;display:inline-block !important}#frm_stripe_icon{border-radius:5px}#captcha_settings .frm_primary_label{margin-top:var(--gap-sm)}.frm-long-icon-buttons{display:flex;gap:var(--gap-md)}.frm-long-icon-buttons>label{border:1px solid var(--grey-300);color:var(--grey-700);border-radius:var(--small-radius);display:flex;padding:var(--gap-sm);gap:var(--gap-sm);justify-content:center;align-items:center;width:calc(33% - var(--gap-sm));box-sizing:border-box}.frm-long-icon-buttons>label:hover{color:var(--primary-500)}.frm-long-icon-buttons input[type=radio]{display:none}.frm-long-icon-buttons input[type=radio]:checked+label{border-color:var(--primary-500);box-shadow:0 0 0 1px var(--primary-color)}.frm-long-icon-buttons label>svg{height:21px}.frm-example-icon .frmsvg,.frm-example-icon i{height:20px;width:20px;font-size:20px;color:var(--grey-700)}.frm_license_msg{margin-top:0}.frm_authorized_box .frm-show-unauthorized,.frm_unauthorized_box .frm-show-authorized{display:none}.edd_frm_status_icon.frmsvg{margin:0 5px}.edd_frm_license_row .frm_action_success .frmsvg{color:green}.edd_frm_license_row .frm_action_error .frmsvg{color:#d54e21}#form_global_settings .tabs-panel .num svg{display:none}.frm_no_items{margin:0 auto 50px;text-align:center;color:var(--grey-700);max-width:500px}.frm-subscribe{margin:var(--gap-lg) 0}.frm_inbox_count{color:#fff;border-radius:50%;display:inline-block;margin-right:8px;font-size:11px;text-align:center;min-width:18px;height:18px;margin-left:2px;vertical-align:text-bottom}#payments_settings .frm_payments_section .form-table td{padding-left:0;padding-right:0}#payments_settings .frm_payments_section .form-table{margin-top:0}#frm_authnet_general_settings>tr:first-of-type>td:first-of-type{padding-top:0}#frm_authnet_general_settings h3{margin-bottom:0}.frm_payment_settings_tab .frmsvg{height:22px}.frm_payment_settings_tab[for=frm_toggle_paypal_settings] .frmsvg{width:83px}.frm_payment_settings_tab[for=frm_toggle_authorize_net_settings] .frmsvg{width:99px}.frm_payment_settings_tab[for=frm_toggle_square_settings] .frmsvg{width:89px}.frm_payment_settings_tab[for=frm_toggle_stripe_settings] .frmsvg{width:53px}.frm-lite .xml_opts .frm-export-xml-items{display:none}.csv_opts #frm_csv_col_sep{width:45px}#frm_advanced td.frm_left_label{width:20%;padding-right:2px}#frm_where_options select{max-width:200px}#frm_where_options select.frm_insert_where_options{width:30%}#frm_where_options select.frm_where_is_options{width:20%}#frm_where_options span.frm_where_val{width:32%;display:inline-block;position:relative}#frm_where_options span.frm_where_val .frm_tooltip_icon,#frm_where_options span.frm_where_val .frm_help{left:-4px;position:absolute}#frm_where_options span.frm_where_val.frm_hidden{display:none}#frm_where_options span.frm_where_val input,#frm_where_options span.frm_where_val select{width:90%;margin-left:10px}#frm_where_options{min-height:31px}.tabs-panel.active .tabs-panel,.frm_settings_form .tabs-panel .tabs-panel{border:none;padding:0}.frm-feature-banner{background:var(--grey-700);color:#fff;border-radius:var(--small-radius);padding:20px;margin:10px 0}.frm-feature-banner p{font-size:var(--text-sm)}.frm-feature-banner .dismiss{margin-top:-10px;margin-right:-10px}.frm-feature-banner .dismiss svg{color:#fff}.frm-feature-banner .frm-big-icon{padding-right:20px;float:left;min-height:60px}.frm-big-icon svg{height:60px;width:60px}.frm-feature-banner p{margin-top:0}.frm_98_width{width:100% !important}h2.frm-h2,.frm_form_settings h2{border-bottom:1px solid var(--grey-300);color:var(--grey-900);font-weight:400 !important;padding:9px 0 5px;margin:0}.frm_settings_form h3,.frm_form_settings h3,.frm_form_settings span.frm_add_logic_link{font-size:var(--text-md);border-top:1px solid var(--grey-300);padding-top:var(--gap-sm);margin:var(--gap-sm) 0;font-weight:400;text-transform:uppercase;color:var(--medium-grey);display:block}.frm_form_settings .howto{color:var(--grey-500);font-size:var(--text-sm);margin-top:8px}.frm_form_settings .advanced_settings .form-table{margin-top:0}.frm_form_settings td.frm_175_width{width:175px}.frm_form_settings #success_url{width:95%}.frm_wrap .ui-autocomplete{padding:3px 0;max-height:310px}.frm_wrap .ui-widget{font-family:inherit}.frm_wrap .ui-autocomplete li{padding:2px 4px;background:none;color:var(--grey-700);border:none;font-weight:400}.frm_wrap .ui-autocomplete .ui-menu-item-wrapper.ui-state-active{border:none;font-weight:inherit}.frm_select_with_label{margin:7px 0 0}#frm-insert-fields-box,#frm-conditionals{max-height:none}#frm-conditionals,#frm-adv-info-tab{display:none;max-height:355px}#frm-insert-fields-box ul.subsubsub,#frm-conditionals ul.subsubsub{float:right;margin:0}#frm-insert-fields-box ul.alignleft,#frm-conditionals ul.alignleft{margin:4px 0 0}#frm_adv_info ul.frm_code_list.frm-full-hover{clear:both;max-height:215px;overflow:auto}#frm-insert-fields-box ul.frm_code_list li.clear.frm_block{height:10px}#frm_adv_info .frm_noallow{display:none}#frm_adv_info #frm-conditionals .frm_noallow{display:block}#frm_html_tab.frm_hidden{display:none}#frm_html_tab.active{display:inline}.frm_email_reply_container select,.frm_email_reply_container input,.form-table td.frm_150_width{width:170px}#frm_notification_settings .frm_no_top_padding{padding-top:0}.frm_email_settings.frm_email_settings.widgets-holder-wrap{overflow:auto;box-shadow:none}#frm_notification_settings .widget-top .widget-action,#frm_form_editor_container .widget-top .widget-action{border:0;margin:0;padding:8px;background:0 0;cursor:pointer;outline:0}#frm_notification_settings .widget-top .widget-action{padding-top:13.5px}#frm_email_addon_menu{border:1px solid var(--grey-300);padding:var(--gap-sm);border-radius:4px;margin:var(--gap-md) 0 var(--gap-sm)}#frm_email_addon_menu .frm-search{float:right;margin:0}#frm_email_addon_menu h3.frm-no-border{clear:none;padding-top:7px}.frm_email_settings .widget .widget-top{background-color:var(--sidebar-color)}.frm_email_settings .widget .widget-top,.frm_email_settings .widget .widget-top h3{cursor:pointer !important}.frm_email_settings .widget{margin-bottom:var(--gap-sm)}.frm_form_action_settings .widget-top{box-shadow:none;border-color:var(--grey-300);border-radius:var(--small-radius);background:var(--lightest-grey);color:var(--grey-700)}.frm_form_action_settings:hover .widget-top{border-color:var(--grey)}.frm_form_action_settings.open .widget-top{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}.frm_form_action_settings.open:hover .widget-top{border-color:var(--grey-300)}.frm_form_action_settings>.widget-inside{display:none}.frm_form_action_settings.open>.widget-inside{display:block}.frm_form_action_settings .widget-inside{min-height:25px;padding:15px;border-color:var(--grey-300);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.frm_form_action_settings .widget-title h4,.frm_form_action_settings .widget-title h3{display:inline-block;border-bottom:none;padding:10px 10px 5px;font-size:var(--text-md);font-weight:500}#frm_email_addon_menu h3{margin:0 0 var(--gap-sm);clear:both}.frm_single_api_settings p>label{display:inline}.frm_form_action_icon{margin-right:5px}.frm_actions_list{margin:0;display:inline}.frm_actions_list li{float:left;width:15.6%;margin:10px .5% 15px;height:100px;text-align:center}.frm-limited-actions .frm-group-heading,.frm-limited-actions #frm-hide-groups,.frm-all-actions #frm-show-groups,.frm-limited-actions .frm-not-installed:not(.frm-search-result):not(.frm-default-show){display:none}label.frm_action_events{padding-left:15px}#frm-hide-groups,#frm-show-groups{font-size:var(--text-md);float:right}.frm_actions_list a:active,.frm_actions_list a:focus{outline:none}.frm_actions_list a{font-size:var(--text-sm);color:var(--grey-700);word-break:break-word}.frm_actions_list span.frm-outer-circle{background-color:var(--grey-100);padding:10px;text-align:center;border-radius:50%;display:block;width:30px;height:30px;margin:0 auto 15px;line-height:1}.frm_email_settings .widget-title h4{color:var(--grey-700)}.frm_disabled_action .widget-title h4{color:var(--grey)}.frm_actions_list a .frmsvg,.frm_actions_list a i{height:18px;width:18px;font-size:18px;padding:2px;color:var(--lightest-grey)}span.frm-inner-circle,.frm_email_settings .widget-title .frm_form_action_icon{background-color:var(--grey-400);border-radius:50%;display:inline-block;text-align:center;line-height:1}span.frm-inner-circle{background-color:var(--primary-700);height:22px;width:22px;padding:4px;color:#fff}.frm-inner-circle svg{fill:currentColor}.frm_email_settings .widget-title .frm_form_action_icon{height:15px;width:15px;padding:5px;color:#fff;vertical-align:middle}.frm_actions_list .frmsvg,.frm_actions_list i::before,.frm_email_settings .widget-title .frm_form_action_icon i,.frm_email_settings .widget-title .frm_form_action_icon .frmsvg{height:15px;width:15px;vertical-align:text-top}.frm_actions_list i::before{vertical-align:middle}.frm_email_settings .widget-title:hover .frm_form_action_icon{background-color:var(--grey)}span.frm-inner-circle.frm-inverse{background-color:rgba(0,0,0,0);color:var(--primary-700);padding:0;height:30px;width:100%}.frm_actions_list span.frm-inverse i,.frm_actions_list span.frm-inverse .frmsvg{color:var(--primary-700);height:30px;width:30px;font-size:30px;padding:0}.frm_actions_list i.frm-inverse::before{height:30px;width:100%;font-size:30px}.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse{background:#fff;padding:0;height:24px;width:24px}.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse .frmsvg,.frm_email_settings .widget-title .frm_form_action_icon.frm-inverse i::before{color:var(--grey-400);height:24px;width:24px;font-size:24px}.frm_email_settings .widget-title:hover .frm_form_action_icon.frm-inverse .frmsvg,.frm_email_settings .widget-title:hover .frm_form_action_icon.frm-inverse i::before{color:var(--grey-500)}.frm_email_icons{padding:10px 0 5px 6px;font-size:20px}.frm_email_icons a{margin-left:8px;color:var(--grey);opacity:0;transition:all .2s ease}.frm_email_icons a .frmsvg{color:var(--grey)}.frm_email_icons a:hover,.widget-top:hover .frm_email_icons a{opacity:1}.frm_actions_list a.frm_inactive_action{color:var(--grey)}.frm_inactive_action .frm-inner-circle,.frm_actions_list .frm_inactive_action i{opacity:.4}table td,.form-table tr td{vertical-align:top}#new_fields .form-table tr td{display:block;padding:7px 0 0}#new_fields .form-table tr td:first-child{margin:0}#new_fields .form-table tr td:last-child{margin-bottom:9px}.form-table #list-table th{text-align:center}#form_settings_page th,#form_settings_page td,.frm_settings_form td,#frm_notification_settings .frm_form_action_settings td p{padding:7px 0}#permissions_settings_settings .frm_grid_container{align-items:center}#frm_notification_settings .form-table>tbody>tr>th{width:150px;font-weight:400;padding-right:10px}#frm_notification_settings .frm_single_email_settings .form-table>tbody>tr>th{width:80px}#frm_notification_settings table tr td:first-child{padding-left:0}#frm_notification_settings table tr td:last-child{padding-right:0}#frm_notification_settings .frm_left_label{float:none;width:auto !important}.frm-fields .frm_autoresponder_rows select{width:auto}#frm_notification_settings .frm_with_left_label,#frm_notification_settings .frm_left_label+textarea,#frm_notification_settings .frm_left_label+select,#frm_notification_settings .frm_left_label+input[type=text]{width:100%}#frm_notification_settings .frm_email_buttons{padding:var(--gap-2xs);background:var(--light-blue);color:var(--primary-700);border-radius:var(--small-radius);border-color:var(--blue-border);line-height:1;height:auto;min-height:12px;font-size:var(--text-xs);box-shadow:none}p.frm_bcc_cc_container,p.frm_reply_to_container{float:right;z-index:1;position:relative}p.frm_bcc_cc_container{margin:14px 0 0}p.frm_reply_to_container{margin:-4px 0 0}.frm_email_row .frm_cancel1_icon::before{vertical-align:bottom}.frm_cc_row.frm_email_row .frm-with-right-icon,.frm_bcc_row.frm_email_row .frm-with-right-icon,.frm_reply_to_row.frm_email_row .frm-with-right-icon{width:calc(100% - 20px);display:inline-block}.frm_email_row .frm_remove_field .frm_close_icon{position:relative;fill:var(--grey-500);vertical-align:middle}.frm-inline-select,p.frm-inline-select,.frm_logic_rows .frm-collapse-me{line-height:var(--h-md) !important}.frm_logic_row{padding:var(--gap-xs) 0 0}.frm-single-settings ul.frm_sortable_field_opts{border-bottom:1px solid var(--grey-200);padding-bottom:var(--gap-xs);margin-bottom:var(--gap-xs)}.frm-single-settings .frm-add-other svg.frm_add_tag{position:relative;top:5px;margin-right:4px}.frm-single-settings .frm_single_option .frm_remove_tag::before{content:""}.frm-single-settings input[type=checkbox][readonly]{opacity:.5;pointer-events:none}.advanced_settings .frm_logic_row{margin:14px 0}.advanced_settings .frm_logic_row select,.advanced_settings .frm_logic_row input{max-width:30% !important}.frm_form_action_settings .frm_logic_row p{margin-top:0;margin-bottom:0;padding:0}#poststuff .widgets-holder-wrap .frm_form_action_settings .widget-inside{padding-bottom:0}#poststuff .frm_form_settings .widgets-holder-wrap .widget-inside{padding-left:15px;padding-right:15px}#form_global_settings h3{font-size:var(--text-sm);margin-top:25px}#form_global_settings .tabs-panel+h3{margin-top:0;border:none}#poststuff .frm_form_settings .widget-inside h3,#poststuff .frm_form_settings .advanced_settings h3,#poststuff .frm_settings_form h3,#frm_advanced .inside h3{border-top:1px solid #eee;border-bottom:none;margin:15px -15px 0;padding:8px 15px;font-size:var(--text-sm)}#poststuff .frm_form_settings h3.frm_first_h3,#poststuff h3.frm_first_h3{border:none;margin-top:0}h3.frm_add_logic_link{margin-bottom:0 !important}a.frm_add_logic_link.frm_hidden{display:none}a.frm_add_logic_link.frm_hidden+.frm_logic_rows{height:auto}.frm_icon_font{color:#a0a0a0;color:var(--grey)}.frm-fields label .frm_icon_font{font-size:inherit}.misc-pub-revisions.frm_icon_font,.misc-pub-revisions.frm_icon_font:hover{color:inherit}.postbox.frm_with_icons .inside{padding:0;margin:0}.frm_add_tag::before{content:"\e602"}.frm_remove_tag::before{content:"\e600"}.frm_logic_row .frm1>.frm_remove_tag{padding:0}.frm_tooltip_icon::before{font-size:13px;vertical-align:top}.frm_help svg,.frm_help .frmsvg{height:13px;width:13px;vertical-align:top;color:var(--grey-400)}.form-field input[type=text].frm_other_input{width:30%;margin-left:10px}.frm-add-other{text-align:right}.frm-add-other .frm_add_tag{vertical-align:20%}.frm_action_icon{margin:5px 0 0 5px}span.frm_action_icon{margin:0 4px 0 0}.frm_action_icon:active{outline:none}a.frm_action_icon:hover{text-decoration:none}.frm_action_icon.frm_error_icon::before{content:"\e608"}.frm_inactive_icon.frm_action_icon.frm_error_icon::before{content:"\e606"}.frm-field-action-icons{text-align:right;position:absolute;top:2px;right:2px;max-width:100%}.frm-field-action-icons .frm-field-id{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:80px;max-width:calc(100% - 50px);position:relative;top:2px}.frm-field-action-icons>a{font-size:var(--text-md);width:17px}.frm-field-action-icons a:hover{text-decoration:none}.frm-field-action-icons .dropdown{display:inline-block}.frm-field-action-icons>a .frmsvg{color:var(--grey-500) !important;font-size:17px;width:17px;height:17px}.frm-field-action-icons>a .frmsvg,.frm-field-action-icons>div>a .frmsvg{vertical-align:baseline}.edit_field_type_end_divider .frm-field-action-icons{display:none !important}.frm-move{cursor:grab}span.howto{display:inline}.frm_import_message{margin:15px 0;line-height:2.5}.frm_sorting .form-field .widget input[type=text],.frm_sorting .form-field .widget input[type=number],.frm_sorting .form-field .widget select,#wpcontent .frm_sorting .form-field .widget select,.frm_sorting .form-field .widget textarea{width:auto}.tagchecklist span.no_taglist{display:inline;float:none;line-height:15px;margin-right:0;font-size:inherit}.tagchecklist .frm_exclude_cat_list span{display:inline}.tagchecklist span a::before{line-height:23px;text-align:start}.frm_form_action_settings .frm_email_row .frm_tooltip_icon{position:relative;bottom:2px}.frm_no_entries_form{padding:60px 0}.frm_no_entries_form .frm_no_entries_header{font-size:20px;margin-bottom:10px}.frm_no_entries_form .frm_no_entries_text{line-height:var(--leading)}#form_entries_page #the-list .no-items{height:240px}#form_reports_page img.frm_no_reports{max-width:100%}.frm_wrap .google-visualization-table .gradient,.frm_wrap .google-visualization-table-tr-head,.frm_wrap .google-visualization-table-tr-odd,.frm_wrap .google-visualization-table-tr-odd.google-visualization-table-tr-over{background:var(--lightest-grey)}.frm_wrap .google-visualization-table-tr-over{background:#fff}.frm_wrap .google-visualization-table-table th,.frm_wrap .google-visualization-table-table td{border-right-width:0;padding:10px !important}.frm_wrap .google-visualization-table-tr-head,.frm_wrap .google-visualization-table-tr-head th{white-space:pre-wrap;font-size:var(--text-md);font-weight:400 !important;text-align:left}.frm_wrap .google-visualization-table-td-number{text-align:inherit}#form_reports_page .postbox{text-align:center;float:none;display:inline-block;margin-right:2%;width:20%;min-width:175px}#form_views_page img.frm_no_views{max-width:100%}.frm_field_opts_popup{min-width:300px;background-color:#fff}.frm_field_opts_popup #wpadminbar{display:none}.frm_prepop{width:100%;list-style:none;overflow:auto;margin:0;max-height:295px}.frm_prepop li{margin:0}.frm_prepop li a{display:block;text-decoration:none;cursor:pointer;padding:5px 20px}.frm_prepop li a:hover{background:var(--sidebar-color)}#frm_form_editor_container #frm_form_key_box{width:13em;max-width:30%}#frm_form_editor_container #frm_form_desc{width:70%}#frm_form_editor_container .ui-widget-content{display:none;padding:15px}#frm_form_editor_container .ui-widget-content label{float:left;width:170px;text-align:right;padding-right:5px;clear:both}#frm_form_editor_container .ui-widget-content label.nofloat{clear:none;float:none;margin-left:10px}#frm_form_editor_container .ui-state-default{color:#333 !important}.frm_green{color:var(--green) !important}#frm_form_editor_container .ui-state-default a.frm_orange,.frm-right-panel a.frm_orange,#postbox-container-1 a.frm_orange{color:#d54e21}#styling_settings input[type=checkbox],#styling_settings input[type=radio]{border:solid 1px #bbb}#styling_settings .widget .widget-top,#frm_form_editor_container .widget .widget-top{cursor:pointer}.frm_sorting .widget,.frm_settings_page .widget{background:#fff}.frm_sorting .widget-title h4{font-weight:400}.frm_sorting .widget,#postbox-container-1 .widget,.frm-right-panel .widget,.frm_settings_page .widget{margin-bottom:0}.frm_settings_page .widget-inside{padding:0 5px 5px}.frm_sorting .widget,.widget-inside,.frm_sorting .form-field .widget{display:none}#frm-show-fields{min-height:350px;padding:0 0 35px;margin:0;position:relative}.frm-has-fields #frm-show-fields{min-height:50px}#frm_builder_page .frm-lite-credit-card-element,body.frm-admin-page-styles .frm-lite-credit-card-element{position:relative}#frm_builder_page .frm-lite-credit-card-element>div,body.frm-admin-page-styles .frm-lite-credit-card-element>div{position:absolute;top:calc(50% - 1px);transform:translateY(-50%);right:10px;color:#d0d4dd}#frm_builder_page #frm_field_group_controls{position:absolute;padding:5px;border-radius:4px 4px 0 0;text-align:right;box-sizing:border-box;right:0;top:-28px;height:28px;z-index:3}.frm-field-group-hover-target,.frm-has-open-field-group-popup,#frm_builder_page #frm_field_group_controls,.frm-selected-field-group{background:rgba(65,153,253,.04)}.frm-selected-field-group{position:relative}#frm_builder_page #frm_field_group_controls>span:first-child{margin-right:5px}#frm_builder_page #frm_field_group_controls svg{pointer-events:none}#frm_field_group_controls{visibility:hidden}.frm-field-group-hover-target #frm_field_group_controls{visibility:visible}#frm_field_group_controls .dropdown-item a span{color:var(--grey-700)}#frm_field_group_controls .dropdown-item a:hover{text-decoration:none}.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider{display:none !important}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default,.frm_sorting>li.ui-state-default,.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider:hover{border:1px solid rgba(0,0,0,0);font-weight:400 !important;background-color:rgba(0,0,0,0);background-image:none;padding:5px;margin:0;box-shadow:none;display:block;text-align:inherit !important;overflow:visible;position:relative}#frm-show-fields li.frm_cancel_sort{display:none}.divider_drop{text-align:center}.divider_drop .howto .frm_icon_font{font-style:normal}.show_repeat_sec{display:none}.repeat_section .show_repeat_sec{display:inline-block;margin:5px 0 0}.repeat_section tr.show_repeat_sec{display:table-row}.repeat_format .frm_repeat_label,.repeat_formattext .frmsvg,.repeat_formattext i{display:none}.frm_button{text-decoration:none;border:1px solid #eee;padding:5px;color:#444;vertical-align:middle;box-shadow:none !important}a.frm_button:hover{text-decoration:none !important}.frm_button,.frm_button .frm_icon_font::before{font-size:13px;vertical-align:middle}.frm_button .frmsvg{width:13px;height:13px}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default{padding:0;margin:0}ul.start_divider{padding:8px 13px 0 8px;min-height:115px;transition:all .4s linear}.frm-section-collapsed .frm_no_section_fields,.frm-section-collapsed ul.start_divider{height:0;min-height:0 !important}.frm-section-collapsed ul.start_divider{overflow:hidden}.frm-section-collapsed .frm_no_section_fields{overflow:hidden;padding:0;opacity:0}.frm-section-collapsed .divider_section_only .frm-collapsed-label{display:inline}.frm-page-collapsed .frm_clone_icon,.frm-page-collapsed .frm_delete_field,.frm-page-collapsed .frm_clone_field,.frm-section-collapsed .frm_clone_icon{opacity:.5;cursor:not-allowed}.edit_field_type_summary .frm_more_options_li:nth-child(2){display:none !important}.edit_field_type_submit .frm_more_options_li:not(:last-child){display:none !important}.frm_no_section_fields:not(.frm_block)+ul.start_divider{padding:0;min-height:132px}.frm_sorting li.ui-state-default .divider_section_only{padding:6px;margin-top:-10px;border:2px solid rgba(0,0,0,0);border-radius:var(--small-radius);z-index:2;position:relative}.divider_section_only>.frm_inner_field_container{padding:5px 0;margin:0}.frm-collapsed-label,.divider_section_only>.frm_inner_field_container .frm_form_fields{display:none}.frm-section-collapsed .divider_section_only::after,.divider_section_only::before{content:"";display:block;padding:2px 0;line-height:1px;border-top:2px solid var(--grey-300);top:-2px;position:absolute;width:100%;transition:.5s border-color ease-in-out}.frm-section-collapsed .divider_section_only::after{top:auto;bottom:-6px}.frm-section-collapsed .divider_section_only:hover::after,li.selected.frm-section-collapsed .divider_section_only::before,li.selected.frm-section-collapsed .divider_section_only::after,.divider_section_only:hover::before,li.selected .divider_section_only::before{border-color:rgba(0,0,0,0)}.frm_sorting li.ui-state-default.edit_field_type_divider{overflow:visible;position:relative;padding:0 0 0 20px;margin:25px 0 0 -5px;border-left:1px solid var(--primary-700);transition:border .7s ease-out}.frm-section-collapsed{border-left-color:rgba(0,0,0,0) !important}.frm_sorting li.edit_field_type_end_divider,.frm_sorting .no_repeat_section li.ui-state-default.edit_field_type_end_divider:hover{margin:0 0 var(--gap-sm)}.frm-first-page .frm_prev_page{display:none}#frm_builder_page .frm_remove_form_row.frm_button,#frm_builder_page .frm_add_form_row.frm_button{border-radius:var(--small-radius);border:1px solid var(--blue-border)}#frm_builder_page .frm_remove_form_row .frmsvg,#frm_builder_page .frm_remove_form_row i::before,#frm_builder_page .frm_add_form_row .frmsvg,#frm_builder_page .frm_add_form_row i::before{color:var(--primary-700)}.frm-preview-buttons .frm_button_submit{margin:0 5px}.frm-page-break{border-top:1px dashed var(--primary-700);margin-top:var(--gap-lg);position:relative}.frm-page-break::before,.frm-page-break::after{content:"";position:absolute;background-color:#fff;border-radius:50%;border:1px solid var(--primary-700);text-rendering:auto;-webkit-font-smoothing:antialiased}.edit_field_type_divider .frm-divider-icon.frmsvg{padding:2px;position:absolute;left:-12px;color:#fff;background-color:var(--primary-700);border-radius:50%}.edit_field_type_divider .start_divider .frm-divider-icon.frmsvg{height:8px;width:8px;padding:0;bottom:-4px;left:-24.5px;color:var(--primary-700);background-color:#fff}.edit_field_type_divider.selected .frm-divider-icon.frmsvg,.edit_field_type_divider:hover .frm-divider-icon.frmsvg{background:var(--primary-500)}.edit_field_type_divider.selected .start_divider .frm-divider-icon.frmsvg,.edit_field_type_divider:hover .start_divider .frm-divider-icon.frmsvg{background-color:#fff;color:var(--primary-500)}.frm-page-break::before,.frm-page-break::after{width:8px;height:8px;top:-6px;border-color:var(--grey)}.frm-page-break::after{right:0}#frm-fake-page .frm-page-break{border-color:var(--grey)}#frm-fake-page{padding:0 5px}.frm_sorting li.edit_field_type_divider:hover,.frm_sorting li.edit_field_type_divider.selected{border-left-color:var(--primary-500)}.frm-section-collapsed::after{border-color:rgba(0,0,0,0) !important;color:rgba(0,0,0,0)}.frm-page-break .frm-collapse-page.button{margin-left:46%;margin-top:-16px;padding:6px 12px !important}#frm-fake-page.frm-page-collapsed{margin-bottom:0}.frm-page-collapsed{position:relative;overflow:visible !important;margin-bottom:var(--gap-lg)}.frm-collapse-page .frmsvg,.frm-collapse-page .frm_arrowdown6_icon{width:var(--text-sm);height:var(--text-sm);font-size:var(--text-sm);text-align:center;margin-left:2px;color:currentColor;transition:transform 300ms ease-in-out}.frm-page-collapsed .frm-collapse-page .frmsvg{transform:rotate(180deg)}#frm-fake-page .frm_arrowdown6_icon{color:currentColor}.frm-collapsed i::before,.frm-page-collapsed .frm_arrowdown6_icon::before{content:"\e913"}.frm-collapse-section svg{fill:var(--primary-color);transition:transform .2s ease-out,fill .2s ease-out}.frm-collapse-section:hover svg{fill:var(--primary-700)}.frm-section-collapsed .frm-collapse-section svg{transform:rotate(-90deg)}.open .widget-top .widget-title-action button .frmsvg{transform:rotate(90deg)}.widget-top .widget-title-action button .frmsvg use{color:var(--grey)}.frm-collapsed+.frm-collapse-me{overflow:hidden !important}.frm-collapse-me{padding-bottom:10px}.frm-collapse-me.frm_grid_container:has(.dropdown-toggle.multiselect){position:relative;z-index:1}.frm-collapsed+div{height:0;padding:0}.frm-collapsed+div.frm-collapse-me{display:none}.frm-collapsible{display:flex;justify-content:space-between;align-items:center;font-weight:700;padding:var(--gap-xs) 0;margin:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.frm-collapsible.frm-collapsed{font-weight:400}.frm-collapsible:not(.frm-collapsed) .frmsvg{transform:rotate(-180deg)}h4.frm-collapsible{font-size:var(--text-md)}.frm-collapsible+.frm-collapse-me{padding-bottom:0}.frm-collapsible:focus-visible{outline:1px solid var(--primary-500)}.frm_sorting .divider_section_only>.frm_ipe_field_label{font-size:116%}#frm_form_editor_container .edit_field_type_break .frm_primary_label.frm_ipe_field_label.button{width:150px;text-align:center;margin-bottom:3px;display:block}tr.frm_options_heading td{padding-bottom:0}.frm_sorting .widget-inside .form-table td p,.frm_sorting .widget-inside .form-wrap label{padding:10px 0}.frm_no_fields,.frm_no_section_fields{text-align:center;position:absolute;color:var(--medium-grey);font-size:var(--text-md);box-sizing:border-box;border:1px dashed var(--grey-300);outline:2px solid rgba(0,0,0,0)}.frm-over-droppable+.frm_no_fields{border-style:solid;border-color:var(--primary-500);outline-color:var(--primary-500)}.frm_no_section_fields{display:none;margin:0;padding:20px 0 0;width:calc(100% - 20px);height:121px;transition:all .4s linear}.frm-empty-fields .frm_updated_message~.frm_no_fields{top:60px}#frm_form_editor_container:not(.frm-has-fields) #frm-show-fields>.frm_field_box:last-child{visibility:hidden}.frm-has-fields .frm_no_fields{display:none}#frm_form_editor_container:not(.frm-has-fields) #frm_drag_placeholder{display:none}#frm-form-button{display:none;margin:0 7px 25px}.frm-has-fields #frm-form-button{display:block}.frm-large-plus.frmsvg{color:var(--primary-700);height:45px;width:45px}.frm_no_section_fields p{color:var(--grey);font-size:15px}.frm_no_fields{top:0;width:calc(100% - 24px);min-height:320px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--gap-md);padding:var(--gap-md);border:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25'%3E%3Crect width='99%25' height='99%25' fill='none' stroke='%23D0D5DD' stroke-width='1' stroke-dasharray='8,8' rx='8' ry='8' x='0.5%25' y='0.5%25' stroke-linecap='square' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");border-radius:var(--medium-radius);margin:var(--gap-sm) 12px}.frm_no_fields img{margin-left:calc(-1*var(--gap-lg))}.frm_no_fields .frm_drag_inst{font-size:20px;font-weight:600;margin:0 0 12px}.frm_no_fields p{color:var(--grey-600);font-size:var(--text-md);margin:0}.frm_product_price_wrapper{display:inline-block;vertical-align:middle}.frm_prod_type_single .frm_product_price_wrapper{width:100%}#new_fields .frm_product_price_wrapper input:first-child{width:60% !important;float:left}#new_fields .frm_product_price_wrapper input:nth-child(2){width:37% !important;float:right}li.frm_single_option{padding-bottom:var(--gap-sm);border-bottom:0}.frm_prod_type_single input[type=radio],.frm_prod_type_single .frm_drag_icon,.frm_prod_type_single .frm_sortable_field_opts li:nth-child(n+3),.frm_prod_type_single .frm_sortable_field_opts .frm_remove_tag,.frm_prod_type_single .frm_form_field:not(.frm_product_type):not(.frm_sep_val_product),.frm_prod_type_single .frm-bulk-edit-link,.frm_prod_type_user_def.frm_grid_container,.frm_prod_options_heading.frm_prod_user_def{display:none}.frm_prod_type_single .frm-ai-generate-options-modal-trigger{display:none !important}.frm_prod_type_single .frm_option_key{margin-left:0 !important}.frm_prod_type_single .frm_option_key input[type=checkbox]+input[type=text],.frm_prod_type_single .frm_option_key input[type=radio]+input[type=text]{margin-left:0 !important}.plugin-card-bottom .frm-trash{color:#a00}.frm-fields p>.frm_inline_label,.frm_inline_label{padding-left:3px;margin-right:12px;display:inline-block}.frm_left_label{clear:both;float:left;width:32% !important;margin-right:2% !important;line-height:2em}table td.frm_left_label{float:none;line-height:inherit;padding:5px 0 5px 2%}.frm_left_label.frm_alignright{padding-right:10px;text-align:right}.frm-fields .frm_left_label+textarea,.frm-fields .frm_left_label+select,.frm-fields .frm_left_label+input[type=text],.frm_with_left_label{width:66%}td.frm_left_label+td{width:66%;padding-top:0}#html_settings label{display:block}#html_settings .frm_field_html_box{width:100%}.frm-has-required .frm-required{color:var(--error-500)}ul.frm-category-tabs{margin-top:2px}.frm-category-tabs>li a,.frm-category-tabs>li a:active{outline:none;box-shadow:none;display:flex;gap:var(--gap-xs);align-items:center}.frm-category-tabs>li.active .frmsvg,.frm-category-tabs>li.active i,.frm-category-tabs>li.active span,.frm-category-tabs>li.active a{color:var(--primary-500)}.frm_wrap .manage-menus{margin-top:0;border:none;border-bottom:1px solid var(--grey-300);background:var(--lightest-grey)}.general_settings .postbox .manage-menus{border-top:none;border-left:none;border-right:none}.frm-postbox-no-h3{padding-top:10px}.frm-right-panel .ui-state-default,#postbox-container-1 .ui-state-default{color:var(--grey-900)}.no_repeat_section .frm_sorting>li.ui-state-default.edit_field_type_end_divider:hover{box-shadow:none}.frm-selected-field-group li.ui-state-default,.start_divider.frm_sorting li.ui-state-default.frm_not_divider.selected,.start_divider.frm_sorting li.ui-state-default.frm_not_divider:hover,.frm_sorting li.ui-state-default.frm_not_divider:hover,.frm_sorting li.ui-state-default.ui-sortable-helper,.frm_sorting li.ui-state-default.edit_field_type_divider .divider_section_only:hover,.frm_sorting .repeat_section li.ui-state-default.edit_field_type_end_divider:hover,.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only,.frm_update_msg,.frm_sorting li.ui-state-default.frm_not_divider.selected,.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only{border-color:var(--primary-500);transition:.5s border-color ease-in-out}.frm_sorting li.ui-state-default.frm_not_divider.selected{box-shadow:0 0 1px 0 var(--primary-500)}.frm_sorting li.ui-state-default{transition:.7s box-shadow ease-in-out,.7s height linear}.frm_sorting li.ui-state-default.frm-newly-added{box-shadow:inset 0 0 2px 1px var(--blue-border)}.frm_sorting li.ui-state-default.selected.edit_field_type_divider .divider_section_only .frm-show-hover{visibility:visible !important;display:inline !important}.edit_field_type_end_divider>label{display:none !important}.frm_email_actions.feature-filter{font-weight:700;border:1px solid #dfdfdf;background-color:#eee;padding:3px 5px 2px;font-size:var(--text-md);line-height:20px}.frm_update_msg{border-style:solid;margin:10px 0;color:#21759b;padding:8px 15px;border-radius:4px}.frm_update_msg.wrap{margin:10px 20px 0 2px}#frm-insert-fields-box .frm_update_msg{margin-right:.9em}.frm_update_msg a{font-weight:700}.widefat td{width:auto}.widefat .column-id{width:3.7em}.widefat .column-show_count{width:5em}.widefat .column-shortcode{width:9em}.toplevel_page_formidable .column-shortcode div{display:flex;gap:var(--gap-xs)}.widefat .column-entries,.widefat .column-link{width:10%;text-align:center}.widefat .column-form_key,.widefat .column-created_at{width:10%}.frm-white-body .search-box,.frm_wrap .frm-search{float:right;margin:0;clear:right}.frm-white-body .search-box,.frm-search{min-width:32%;position:relative;display:flex;gap:var(--gap-sm);align-items:center}.frm-inline-modal .frm-search,#frm_adv_info .frm-search{float:none;width:100%;clear:both;margin:var(--gap-xs) 0}.frm-button-group a{margin:0 7px !important}.frm_has_textarea .frm-with-right-icon{display:block}.frm-with-left-icon,.frm-with-right-icon{position:relative;display:block}i.frm-show-box,i.frm-show-inline-modal,.frm-with-left-icon i,.frm-with-right-icon i:not([class*=mce-]),.frmsvg.frm-show-box,.frmsvg.frm-show-inline-modal,.frm-with-left-icon .frmsvg,.frm-with-right-icon .frmsvg,.frm-search>.frmsvg,.frm-search span:not(.multiselect-selected-text):not(.multiselect-native-select){position:absolute;padding:0 14px;pointer-events:none;left:0;color:var(--grey-400);font-size:var(--text-xs)}.frm-search>.frmsvg,.frm-search span:not(.multiselect-selected-text):not(.multiselect-native-select){padding-left:var(--gap-xs);padding-right:var(--gap-xs)}.frm-search>.frmsvg{box-sizing:unset}.frm-with-right-icon .frmsvg,.frm-with-right-icon i:not([class*=mce-]){right:0;top:-3px;left:auto;padding:0 10px 0 5px}.frm_form_settings .frm-with-right-icon .frmsvg{top:0}.frm_form_settings .wp-editor-container .frm-with-right-icon .frmsvg,#frm_builder_page .wp-editor-container .frm-with-right-icon .frmsvg{top:auto;bottom:var(--gap-sm)}.frm_form_settings .tmce-active .wp-editor-container .frm-with-right-icon .frmsvg,#frm_builder_page .tmce-active .wp-editor-container .frm-with-right-icon .frmsvg{bottom:var(--gap-lg)}.frm_form_settings .frm_has_textarea .frm-with-right-icon .frmsvg{top:auto;bottom:6px}.frmsvg.frm-show-box,.frmsvg.frm-show-inline-modal,i.frm-show-box,i.frm-show-inline-modal{top:auto;background-color:var(--primary-50);color:var(--primary-500);border-radius:6px;padding:var(--gap-2xs);margin:5px;margin-bottom:0;z-index:1;cursor:pointer;pointer-events:initial}.frm-open+.frm-inline-modal{top:-10px;margin-bottom:0}.frm-open+.frm-inline-modal.frm-modal-no-dismiss .inside>.frm-search:first-child{margin-top:var(--gap-sm)}.frm_grid_container>.frm-open+.frm-inline-modal{top:-4px}.frm_grid_container>.frm-open+.frm-inline-modal.frm-modal-no-dismiss{top:0 !important}.frm-with-left-icon input{padding-left:37px !important}.frm_wrap .frm-with-right-icon textarea,.frm_wrap .frm-with-right-icon input,.frm_wrap .frm-with-right-icon input[type=text]{padding-right:var(--gap-md)}#frm-show-fields .frm-with-left-icon .frmsvg,#frm-show-fields .frm-with-left-icon i{padding-top:10px}.frm-search input[name=s],.frm-search .dropdown-toggle,.frm-search input.frm-search-input{color:var(--grey-800);border-color:var(--grey-300);border-radius:var(--small-radius);box-shadow:var(--box-shadow-xs)}.frm-search input[type=search],.frm-search input[type=text]{padding-left:var(--gap-lg) !important}.frm-search .dropdown-toggle{width:100%;float:none;max-width:200px;background:rgba(0,0,0,0);padding:7px;padding-left:33px !important;min-height:32px;text-align:inherit;overflow:hidden;text-overflow:ellipsis}.frm-search #search-submit a{color:var(--grey-800)}.frm-search #search-submit .caret{opacity:.7}.frm-white-body .search-box input[name=s],#wpwrap .frm-search input[type=search]{flex:1;font-size:var(--text-md);line-height:var(--text-xl);padding:var(--gap-xs)}span.multiselect-selected-text{white-space:nowrap;display:inline-block;max-width:90%;text-overflow:ellipsis;overflow:hidden}.frm-not-set input{color:var(--primary-500) !important;font-size:13px}.frm-not-set .frmsvg,.frm-not-set i{color:var(--primary-700);opacity:1}.post-type-frm_display select[name=m]+#post-query-submit,select[name=m]{display:none}.frm_shortcode_select optgroup option{margin-left:1em}.frm_shortcode_select optgroup{padding-top:5px}.frm_shortcode_select .frm_subopt{margin-left:2em}.misc-pub-section a.edit-frm_shortcode,.misc-pub-section a.edit-form-status{float:none;font-size:13px}.frm-grid{border-collapse:collapse;border:none;margin-right:10px}.frm-grid td,.frm-grid th{padding:5px;border:1px solid #000}.post-type-frm_display #poststuff #post-body.columns-2{margin-right:var(--big-sidebar)}.post-type-frm_display #post-body.columns-2 #postbox-container-1{margin-right:calc(var(--big-sidebar)*-1);width:calc(var(--big-sidebar) - 40px)}.post-type-frm_display #poststuff #post-body.columns-2 #side-sortables{width:100%}#frm_dyncontent .hndle,#frm_dyncontent .handlediv{display:none !important}.post-type-frm_display .meta-box-sortables .frm_form_nav>li>a,.post-type-frm_display .frm_form_nav .nav-tab-active{padding:0 2px 5px;line-height:1.4}.post-type-frm_display #advanced-sortables h2.hndle,.post-type-frm_display #side-sortables h2.hndle,.post-type-frm_display #normal-sortables h2.hndle{border-bottom:1px solid var(--grey-300);margin:10px 0 0 !important;padding:0 25px 8px}.post-type-frm_display #side-sortables h2.hndle{margin-top:0 !important;padding-top:10px}.post-type-frm_display #post-body-content{margin-top:var(--gap-lg)}.post-type-frm_display.edit-php #wpbody-content>.wrap{margin:0}.post-type-frm_display .postbox .hndle,.post-type-frm_display .postbox{border-color:var(--grey-300)}.post-type-frm_display #postbox-container-1 .postbox,.post-type-frm_display #postbox-container-2 .postbox{border-radius:var(--small-radius);border-color:var(--grey-300);box-shadow:none}.post-type-frm_display #side-sortables .postbox{border-radius:0;border-top-width:0;margin-bottom:0}.post-type-frm_display #side-sortables .misc-pub-section{padding:15px 20px 10px}.post-type-frm_display .misc-pub-section .frmsvg,.post-type-frm_display #post-body .misc-pub-post-status::before,.post-type-frm_display #post-body #visibility::before,.post-type-frm_display .curtime #timestamp::before,.post-type-frm_display #post-body .misc-pub-revisions::before,.post-type-frm_display span.wp-media-buttons-icon::before{color:var(--grey)}.post-type-frm_display #frm_top_bar+#poststuff #submitdiv #publishing-action,.post-type-frm_display #frm_top_bar+#poststuff #submitdiv #minor-publishing-actions,.post-type-frm_display #frm_top_bar+#poststuff #edit-slug-box,.post-type-frm_display .wrap h1.wp-heading-inline,.post-type-frm_display .wrap>.page-title-action{display:none}.post-type-frm_display #poststuff h2.nav-tab-wrapper{padding-left:10px;margin-bottom:0;padding-bottom:0}.post-type-frm_display .nav-menus-php .wrap{margin:10px 0 0}.post-type-frm_display .nav-menus-php .wrap p{padding-left:12px;padding-right:12px}.post-type-frm_display .nav-tab{display:inline-block;background-color:#f4f4f4}.post-type-frm_display .nav-tab.frm_hidden{display:none}.post-type-frm_display .nav-tab:hover{background-color:#e4e4e4}.frm_order_row,.frm_where_row{margin-bottom:7px;line-height:30px}.frm-single-settings .frm_prod_field_opt_cont{margin-top:initial;margin-bottom:20px}select.texture{display:none}.post-type-frm_display #wp-content-editor-tools,#wp-content-editor-tools{background-color:rgba(0,0,0,0)}.post-type-frm_display #major-publishing-actions{border-color:var(--grey-300);background:var(--sidebar-color)}.post-type-frm_display #frm_adv_info{width:calc(var(--big-sidebar) - 40px);height:calc(100vh - 32px);overflow:hidden}.post-type-frm_display #frm_adv_info:not(.frm_fixed){top:0 !important}.post-type-frm_display #frm_adv_info.frm_fixed{position:fixed;z-index:9999;top:32px}.post-type-frm_display #frm_adv_info ul.frm_code_list.frm-full-hover{max-height:calc(100vh - 180px)}.frm_col_one{margin-right:4%;clear:both}ul .frm_col_one{float:left}ul .frm_col_two{float:right}ul.frm_two_col{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:var(--gap-sm)}.frm_two_col li{margin-bottom:0}.frm-info-modal a,.frm-info-modal ul,.frm-info-modal p,.frm-info-modal,.settings-lite-cta a,.settings-lite-cta ul,.settings-lite-cta{color:var(--grey-500);font-size:var(--text-md);box-shadow:none !important}.frm-info-modal h3,.settings-lite-cta h3{font-size:17px !important}.frm-green-icons .frmsvg{color:var(--green)}.frm-info-modal .postbox .inside,.settings-lite-cta .postbox .inside{padding:var(--gap-md);margin:0}.cta-inside a{color:var(--orange)}.info-modal-inside a.frm-standard-link{color:var(--primary-500)}.info-modal-inside a.frm-standard-link:hover{color:var(--primary-700)}.frm_no_p_margin>p{margin:0}.frm_code_list a.button{display:block;text-align:center;font-size:11px;overflow:hidden}#frm-navbarDrop+.frm_code_list.frm-full-hover{margin:var(--gap-xs) 0 0;min-width:300px;max-height:256px}.frm_code_list.frm-full-hover li{margin:0}.frm-select-list-item,.frm_wrap .ui-autocomplete li>div,.multiselect-container button.multiselect-option,.frm-dropdown-menu>.dropdown-item>a,.frm-dropdown-menu>.dropdown-item>a:visited,.frm-dropdown-menu>.dropdown-item>a:link,.frm-dropdown-menu .frm_dropdown_li,.frm_code_list.frm-full-hover a{display:flex;color:var(--grey-700);padding:5px 10px;font-size:var(--text-md);gap:var(--gap-xs);align-items:center}.multiselect-container button.multiselect-option.disabled{opacity:.5}.frm_code_list.frm-full-hover a span{max-width:83px;margin-right:var(--gap-xs);margin-left:auto}.frm_code_list.frm-full-hover a{border-radius:var(--small-radius)}.frm_code_list.frm-full-hover a:not(#frm-insert-condition),.frm_code_list.frm-full-hover a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.frm_code_list.frm-full-hover a:focus span:last-child{outline:1px solid var(--primary-500);outline-offset:var(--gap-2xs)}.frm_code_list.frm-full-hover.frmcenter a{display:block}#frm-layout-classes frm-full-hover a span{max-width:45%}.frm-select-list-item.active,.frm-select-list-item:hover,.frm_wrap .ui-autocomplete li div.ui-state-active,.frm_wrap .ui-autocomplete li.ui-state-focus,.multiselect-container button.multiselect-option.active,.multiselect-container button.multiselect-option:hover,.frm-dropdown-menu>.dropdown-item>a:hover,.frm_code_list.frm-full-hover a:hover span,.frm_code_list.frm-full-hover a:hover{background:var(--primary-25);color:var(--primary-500)}.frm-select-list-item .frmsvg,.frm-dropdown-menu>.dropdown-item>a .frmsvg{opacity:.8}.frm-select-list-item:hover .frmsvg,.frm-dropdown-menu>.dropdown-item>a:hover .frmsvg{opacity:1}.frm-dropdown-menu.frm_code_list>li>a{padding:3px 15px;width:300px}#frm_edit_box_content_modal .frm-with-search,.frm-dropdown-menu .frm-with-search{padding:var(--gap-xs) 10px 0}.frm-dropdown-menu .subsubsub{padding:0 10px}.frm_grid_container{overflow:visible}.frm_code_list.frm_grid_container{grid-gap:var(--gap-xs)}.frm_code_list.frm_grid_container li{width:auto;margin:0}.frm_code_list.frm_grid_container a{display:block;font-size:var(--text-md) !important;font-weight:500;text-align:center;color:var(--primary-500);background-color:var(--light-blue);border:1px solid var(--primary-300);border-radius:var(--small-radius);padding:10px 0;box-shadow:var(--box-shadow-sm)}.frm_code_list.frm_grid_container a:hover{background-color:var(--primary-500);color:#fff}.frm_code_list.frm_grid_container a:focus-visible{outline:2px solid var(--primary-500);outline-offset:-1px}.frm-single-settings .frm_code_list.frm-full-hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover{padding:0;margin:var(--gap-xs) -10px 0}.frm-single-settings .frm_code_list.frm-full-hover>li>a,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a{font-size:var(--text-md);color:var(--grey-900);padding:var(--gap-xs) 12px}.frm-single-settings .frm_code_list.frm-full-hover>li>a span,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span{margin:0}.frm-single-settings .frm_code_list.frm-full-hover>li>a span:first-child,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span:first-child{max-width:130px}.frm-single-settings .frm_code_list.frm-full-hover>li>a span:last-child,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a span:last-child{max-width:120px;margin-left:auto}.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover{font-weight:500}.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover,.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover .frmsvg,.frm-single-settings .frm_code_list.frm-full-hover>li>a:hover span,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover .frmsvg,#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover>li>a:hover span{color:var(--primary-500)}#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover{margin:var(--gap-xs) 0 0}#frm_builder_page #frm_adv_info .frm_code_list.frm-full-hover a .frmsvg{width:20px;height:20px}.frm_field_list #frm-insert-fields{max-height:none;font-size:var(--text-sm)}.frm_field_list #frm-insert-fields .button a{display:block;max-width:95%;overflow:hidden}#frm-insert-fields{padding:0 var(--gap-xs);overflow:hidden}#frm-insert-fields .frm-search{float:none;margin:0 0 var(--gap-md);width:auto}#frm-insert-fields li,#frm-insert-fields li a{text-decoration:none;font-weight:500;font-size:var(--text-md) !important;color:var(--grey-900)}#frm-insert-fields li.frm_show_upgrade{cursor:pointer;opacity:.5}#frm-insert-fields li span:not(.frm-new-pill){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}#frm-insert-fields li a.disabled:hover{cursor:not-allowed}#frm-insert-fields li.ui-draggable-disabled{opacity:.5}#frm-insert-fields li a:not(.disabled):hover .frmsvg,#frm-insert-fields li a:not(.disabled):hover i{color:var(--grey-600)}#frm-insert-fields li.frm_show_upgrade,#frm-insert-fields li a{text-decoration:none;display:inline-flex !important;gap:var(--gap-xs);align-items:center;border-radius:var(--small-radius) !important;padding:11px var(--gap-md) 11px var(--gap-xs) !important;color:var(--grey-900) !important}#frm-insert-fields li a{display:flex !important;transition:background-color .2s ease-out,box-shadow .2s ease-out}#frm-insert-fields li a:not(.disabled):hover{background:#fff;box-shadow:var(--box-shadow-md)}#frm-insert-fields li a:focus-visible{outline:1px solid var(--primary-500)}#frm-insert-fields li.frm_show_upgrade.frm_hidden{display:none !important}#frm-insert-fields .frm-with-line{padding:12px var(--gap-md);font-weight:500;font-size:var(--text-sm)}#frm-insert-fields .frm-with-line::before{margin-left:calc(-1*var(--gap-sm));width:calc(100% + var(--gap-md))}.frm_code_list{clear:both}.frm_code_list.frm-full-hover a.frm_hidden,.frm_code_list .frmkeys{display:none}.frmsvg{fill:currentColor;width:18px;height:18px;vertical-align:middle}.frmsvg svg{pointer-events:none}.frmsvg.frm_svg40{width:40px;height:40px}.frmsvg.frm_svg24{width:24px;height:24px}.frmsvg.frm_svg20{width:20px;height:20px}.frmsvg.frm_svg15{width:15px;height:15px}.frmsvg.frm_svg14{width:14px !important;height:14px !important}.frmsvg.frm_svg13{width:13px;height:13px}.frmsvg.frm_svg12{width:12px;height:12px}.frmsvg.frm_svg9{width:9px;height:9px}input[disabled]{pointer-events:none}.frmbutton.ui-sortable-helper .frmsvg,.field_type_list li.frmbutton .frmsvg,.frmbutton.ui-sortable-helper i,.field_type_list li.frmbutton i,.frm_code_list a .frmsvg,.frm_code_list a i{color:var(--grey-500);display:inline-block;vertical-align:middle;width:var(--text-md);font-size:var(--text-md)}.field_type_list.frm_grid_container{gap:10px;margin:13px 0}.field_type_list li{margin:0;padding:0}.field_type_list li.frmbutton .frmsvg{width:24px;height:24px;font-size:24px}.frm_code_list i::before{font-size:inherit}.frmbutton.ui-draggable-dragging{pointer-events:none}.frmbutton.ui-draggable-dragging a{color:var(--grey-900) !important;background:var(--grey-100);text-decoration:none;display:inline-flex !important;gap:var(--gap-xs);align-items:center;border-radius:var(--small-radius) !important;padding:11px var(--gap-md) 11px var(--gap-xs) !important;box-shadow:var(--box-shadow-md)}.frmbutton.ui-draggable-dragging a{border:1px solid var(--grey-300);box-shadow:var(--box-shadow-md)}.frmbutton.ui-draggable-dragging span{font-size:15px}#frm-show-fields .frmbutton.ui-sortable-helper i,.frmbutton.ui-draggable-dragging i,.frmbutton.ui-draggable-dragging .frmsvg{color:#fff !important}.frmbutton.ui-draggable-dragging i,.frmbutton.ui-draggable-dragging .frmsvg{color:var(--grey-700) !important}.frm_sorting li.ui-state-default.ui-sortable-helper,.frmbutton.ui-sortable-helper{transition:opacity .2s;opacity:1;position:fixed;z-index:99999}#frm-insert-fields .frmbutton.ui-sortable-helper a,#frm-show-fields .frmbutton.ui-sortable-helper a{min-width:100px}li.frm_noallow.button,.frm_noallow{opacity:.5}.frm_actions_list a.frm_show_upgrade.frm_inactive_action::before,li.frm_noallow.button.frm_show_upgrade{cursor:pointer}.field_type_list li.frm_noallow.button.frm_show_upgrade:hover{border-color:inherit}.frm_noallow a{color:inherit}#frm_upgrade_modal_image{max-width:200px}#frm_upgrade_modal .frm-upgrade-message img{margin-top:10px;width:100%}.frm-tab-message{max-width:600px;margin:20px auto;color:rgba(63,75,91,.8)}.frm-settings-screenshot-toolbar{min-height:39px;display:flex}.frm-settings-screenshot-toolbar .frm-minmax-icon{height:8px;width:8px;border-radius:50%;align-self:center;margin-left:10px}.frm-settings-screenshot-toolbar .frm-minmax-icon:first-of-type{margin-left:20px}.frm-settings-screenshot-toolbar img{object-fit:contain;align-self:flex-end;margin-left:25px}.frm-settings-screenshot-toolbar+div{background:#fff;padding-top:25px;border-radius:0 0 16px 16px}.frm-settings-screenshot-toolbar+div img{max-width:calc(100% - 40px)}.frm-settings-screenshot-wrapper{max-width:700px;margin:50px auto 0;box-shadow:0 4px 4px rgba(189,196,205,.25),0 12px 56px rgba(42,57,75,.25);border-radius:16px;background:#ebecf1}.frm-dialog{z-index:100;padding:0 !important;border-radius:16px;border:none;background-color:#fff;max-width:100% !important}.frm-dialog .postbox{background:rgba(0,0,0,0);box-shadow:none;border:none;line-height:var(--leading)}.frm-dialog input[type=text],.frm-dialog textarea{font-size:var(--text-md)}.frm-dialog textarea{height:75px}.frm-dialog button.frm-button-primary{margin-right:10px}.frm-dialog .frm-sub-label,.frm-sub-label{color:var(--grey);text-transform:none;padding-left:8px}h2 .frm-sub-label{font-size:var(--text-md)}.frm-views-editor-body .ui-widget-overlay,.frm-white-body .ui-widget-overlay,.toplevel_page_formidable .ui-widget-overlay,body[class*=formidable-payments] .ui-widget-overlay,body.plugins-php .ui-widget-overlay{position:fixed;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background:var(--grey-500);opacity:.5;z-index:2}.frm-circled-icon{width:60px;height:60px;border-radius:50%;background-color:var(--primary-25)}.frm-circled-icon-large{width:80px;height:80px}.frm-circled-icon-green{background-color:var(--success-50)}.frm-circled-icon .frmsvg{width:21px;height:24px}.frm-circled-icon-large .frmsvg{width:24px}.frm-circled-icon .frmsvg use{color:var(--primary-500)}.frm-circled-icon-green .frmsvg use{color:var(--success-500)}.frm-border-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--grey-300);border-radius:var(--small-radius)}.frm-upgrade-message img{max-width:100%}a.frm-link-secondary{color:#c4c4c4;font-size:var(--text-sm);text-decoration:underline}.field_type_list li.button.frm_noallow,.field_type_list li.button.frm_noallow:hover,.button.frm_noallow,.button.frm_noallow:hover{color:inherit;border-color:#ccc;background:inherit}iframe#dyncontent_ifr{min-height:150px}/*! * Bootstrap v4.6.1 */.tooltip{position:absolute;display:block;margin:0;font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0;z-index:9999999;pointer-events:none}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem;margin-left:0 !important}.tooltip .arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-tooltip-top,.bs-tooltip-auto[x-placement^=top]{padding:.4rem 0}.bs-tooltip-top .arrow,.bs-tooltip-auto[x-placement^=top] .arrow{bottom:0}.bs-tooltip-top .arrow::before,.bs-tooltip-auto[x-placement^=top] .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-right,.bs-tooltip-auto[x-placement^=right]{padding:0 .4rem}.bs-tooltip-right .arrow,.bs-tooltip-auto[x-placement^=right] .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-right .arrow::before,.bs-tooltip-auto[x-placement^=right] .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-bottom,.bs-tooltip-auto[x-placement^=bottom]{padding:.4rem 0}.bs-tooltip-bottom .arrow,.bs-tooltip-auto[x-placement^=bottom] .arrow{top:0}.bs-tooltip-bottom .arrow::before,.bs-tooltip-auto[x-placement^=bottom] .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-left,.bs-tooltip-auto[x-placement^=left]{padding:0 .4rem}.bs-tooltip-left .arrow,.bs-tooltip-auto[x-placement^=left] .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-left .arrow::before,.bs-tooltip-auto[x-placement^=left] .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.frm-dropdown-menu.show{display:block}.frm-single-settings .frm-dropdown-menu.show{background:#fff}.preview.dropdown .dropdown-menu{min-width:205px}.frm_clear{clear:both}.frm_clearfix::after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.frm_clearfix{display:block}.frm_admin_progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.frm_admin_progress_bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);transition:width .6s ease;background-color:#04a4cc}.tooltip.frm_tooltip{position:fixed;top:auto !important;bottom:0 !important;left:0 !important;max-width:none;width:100% !important;z-index:99999}.tooltip.frm_tooltip.bottom{padding:0}.frm_tooltip .tooltip-inner{max-width:none;min-height:40px !important;text-align:left;box-shadow:5px 5px 25px rgba(0,0,0,.5);padding:10px 40px;border-top-color:#ccc;background:var(--sidebar-color);color:var(--grey-700);border-radius:0;opacity:1;font-size:var(--text-sm)}#frm_custom_css_box{width:100%}.frmdates_add_blackout_date_link,.frmdates_add_exception_link,.frm_form_field.frm_scroll_box .frm_opt_container,.frm-white-body .wrap input[type=text],.frm-white-body .wrap input[type=search],.frm-white-body .wrap input[type=number],.frm-white-body .wrap select,#frm-form-templates-modal select,.frm-white-body .wrap textarea,button.frm_choose_image_box,#titlediv input[type=text],.frm-fields button.btn,.frm_wrap textarea,.frm_wrap input[type=tel],.frm_wrap input[type=text],.frm_wrap input[type=email] .frm_wrap input[type=search],.frm_wrap input[type=number],.frm_wrap input[type=date],.frm_wrap select,.wp-admin .frm_wrap select,.field-group textarea,.field-group input[type=text],.field-group select,.frm-fields .frm-input-field{outline:0;box-shadow:var(--box-shadow-xs);border-radius:var(--small-radius);padding:5px 14px;border-color:var(--grey-300);color:var(--grey-800);font-size:var(--text-md);margin:0;background-color:#fff;line-height:var(--leading)}.frm_input_with_suffix{border-radius:var(--small-radius);border:1px solid var(--grey-300);display:inline-block;padding-right:14px}.frm_input_with_suffix input{border:0 !important;padding-right:5px !important}.frm_wrap ::-webkit-datetime-edit{line-height:var(--leading)}.frm-white-body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) textarea:focus,.frm-white-body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) input:focus,.frm-white-body:not(.frm-admin-page-styles):not(.frm-admin-page-entries) select:focus,.frm_wrap input:focus,.frm_wrap select:focus,.wp-core-ui .frm_wrap select:focus,#frm-form-templates-modal select:focus,.frm-btn-group .multiselect.dropdown-toggle:focus,.frm_wrap textarea:focus{border-color:var(--primary-500) !important;box-shadow:none !important}.wp-admin .frm_fields_container textarea:focus,.wp-admin .frm_fields_container input:focus,.wp-admin .frm_fields_container select:focus{border-color:var(--primary-500);box-shadow:none}#postbox-container-2 textarea,.frm_wrap textarea,.field-group textarea{line-height:2}.frm_wrap input[type=number]{height:auto}.frm_wrap select{padding:2px}.wp-admin .frm_wrap select,#frm-form-templates-modal select{max-width:100%}.frm_form_field.frm_scroll_box .frm_opt_container{padding:10px 12px}.frm_wrap input[disabled],.frm_wrap select[disabled],.frm_wrap textarea[disabled],.frm_wrap input[readonly],.frm_wrap select[readonly],.frm_wrap textarea[readonly],.frm_wrap input::placeholder{color:var(--grey-500)}textarea[id^=frm_calc_]::placeholder{font-size:var(--text-sm);line-height:var(--leading);font-style:italic;color:var(--grey-400);padding-top:5px}.frm_wrap .frm-button-primary.frm-disabled{opacity:.5;cursor:default}#postcustomstuff table td>div{padding-top:0 !important}.wp-admin .frm_wrap .form-table select{vertical-align:top}.frm_wrap .frm_form_builder select{line-height:var(--leading);height:var(--text-md);width:100%}#postbox-container-2 select,.wp-admin .frm_wrap select,.frm_wrap .frm_form_builder select,#frm-form-templates-modal select{height:auto}.frm-white-body .tablenav select,.frm-white-body .tablenav input[type=text],.wp-admin .frm_wrap .tablenav select,.frm_wrap .tablenav input[type=date],.frm_wrap .tablenav input[type=text]{padding-top:0;padding-bottom:0;line-height:1}.frm_wrap .tablenav ::-webkit-datetime-edit{line-height:1}.frm-fields button.btn,.frm-fields textarea,.frm-fields input[type=text],.frm-fields select,.field-group textarea,.field-group input[type=text],.field-group select,.accordion-container input.hex,.frm-fields .frm-input-field{width:100%;outline:0}.frm-fields button.btn{height:var(--h-md);text-align:inherit}.global-font .field-group input[type=text]{width:auto}.wp-core-ui .frm_grey.frm-button-primary.disabled,.wp-core-ui .frm_grey.frm-button-primary,#frm-welcome .frm_grey{opacity:.5;background:#f6f6f6 !important;border-color:#ddd !important;color:#9fa5aa !important}.windows::-webkit-scrollbar,.windows ::-webkit-scrollbar{width:7px;background:rgba(0,0,0,0)}.windows::-webkit-scrollbar-thumb,.windows ::-webkit-scrollbar-thumb{background:var(--grey-300);-webkit-border-radius:var(--border-radius);-webkit-box-shadow:none}.windows::-webkit-scrollbar-corner,.windows ::-webkit-scrollbar-corner{background:rgba(0,0,0,0)}.frm-scrollbar-wrapper,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list,#frm_builder_page #frm_adv_info .frm_code_list,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div,.frm-single-settings .frm_field_opts_list{overflow-x:hidden;overflow-y:auto !important;-ms-overflow-style:none;scrollbar-color:rgba(0,0,0,0) rgba(0,0,0,0);scrollbar-width:thin}.frm-scrollbar-wrapper:hover,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list:hover,#frm_builder_page #frm_adv_info .frm_code_list:hover,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div:hover,.frm-single-settings .frm_field_opts_list:hover{scrollbar-color:var(--grey-300) rgba(0,0,0,0)}.frm-scrollbar-wrapper:hover::-webkit-scrollbar-thumb,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list:hover::-webkit-scrollbar-thumb,#frm_builder_page #frm_adv_info .frm_code_list:hover::-webkit-scrollbar-thumb,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div:hover::-webkit-scrollbar-thumb,.frm-single-settings .frm_field_opts_list:hover::-webkit-scrollbar-thumb{background:var(--grey-300)}.frm-scrollbar-wrapper::-webkit-scrollbar,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list::-webkit-scrollbar,#frm_builder_page #frm_adv_info .frm_code_list::-webkit-scrollbar,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div::-webkit-scrollbar,.frm-single-settings .frm_field_opts_list::-webkit-scrollbar{width:3px}.frm-scrollbar-wrapper::-webkit-scrollbar-track,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list::-webkit-scrollbar-track,#frm_builder_page #frm_adv_info .frm_code_list::-webkit-scrollbar-track,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div::-webkit-scrollbar-track,.frm-single-settings .frm_field_opts_list::-webkit-scrollbar-track{background:rgba(0,0,0,0);border-radius:100vw}.frm-scrollbar-wrapper::-webkit-scrollbar-thumb,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list::-webkit-scrollbar-thumb,#frm_builder_page #frm_adv_info .frm_code_list::-webkit-scrollbar-thumb,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div::-webkit-scrollbar-thumb,.frm-single-settings .frm_field_opts_list::-webkit-scrollbar-thumb{background:rgba(0,0,0,0);border-radius:100vw}.frm-scrollbar-wrapper::-webkit-scrollbar-thumb:hover,.frm-single-settings .frm_code_list.frm-full-hover.frm-short-list::-webkit-scrollbar-thumb:hover,#frm_builder_page #frm_adv_info .frm_code_list::-webkit-scrollbar-thumb:hover,#frm_builder_page #frm_adv_info #taxonomy-linkcategory>div::-webkit-scrollbar-thumb:hover,.frm-single-settings .frm_field_opts_list::-webkit-scrollbar-thumb:hover{background:var(--grey-300)}.rtl h3{font-weight:inherit !important}.rtl.js .accordion-section-title::after{left:10px;right:auto}.rtl #frm_top_bar #frm_bs_dropdown{padding-left:15px}.rtl .frm-full-close,.rtl .frm_wrap .columns-2 .frm-right-panel+div,.rtl .frm-right-panel{border-left-width:0;border-right:1px solid var(--grey-300)}.rtl .frm-full-close{padding-left:0;padding-right:var(--gap-md)}.rtl .frm-text-right{text-align:left}.rtl .frm_wrap #frm_adv_info ul.category-tabs li:first-child{border-left-width:1px}.rtl .frm-dropdown-menu{text-align:right}.rtl .frm_actions_dropdown .frm_icon_font{float:right;margin-right:0;margin-left:3px}.rtl #frm-insert-fields-box,.rtl #frm-conditionals{padding-right:.9em}.rtl #html_settings .frm_field_html_box{margin-right:0}.rtl .frm_list_entry_page h2{float:right}.rtl .frm_scale{float:right;margin-left:10px;margin-right:0}.rtl .frm-page-break .frm-collapse-page.button{margin-left:0;margin-right:46%}.rtl .frm-field-action-icons{right:unset;left:2px}.rtl .frm_has_shortcodes>i{right:auto;left:5px}.rtl p.frm_reply_to_container,.rtl p.frm_bcc_cc_container{float:left}.rtl .frm-with-right-icon:not(.frm-token-container) .frmsvg{right:auto;left:0}.rtl .frm-inline-modal>a.dismiss{left:13px;right:auto}.rtl.wp-admin .frm_wrap select{padding-left:var(--gap-lg) !important;padding-right:5px !important;background-position:left 11px top 55%}.rtl .frm_code_list.frm-full-hover a span{margin-left:var(--gap-xs)}.rtl .frm-style-tabs-wrapper .frm-tabs-navs ul li:first-child{margin-left:unset;margin-right:var(--gap-xs)}.rtl .frm-style-tabs-wrapper .frm-tabs-navs ul li:last-child{margin-right:unset;margin-left:var(--gap-xs)}.rtl .frm-style-tabs-wrapper .frm-tabs-active-underline{left:unset !important;right:0}.rtl .frm-style-tabs-wrapper .frm-tabs-active-underline.frm-first{right:var(--gap-xs)}.rtl .frm-style-tabs-wrapper .frm-tabs-active-underline.frm-last{right:calc(-1*var(--gap-xs))}.rtl .frm-unit-input .frm-input-group-suffix{right:unset;left:1px;padding-right:unset;padding-left:var(--gap-xs)}.rtl .frm-unit-input .frm-input-group-suffix select{text-align:left;background-position:left 0 top 50%;padding-left:21px !important}span.clear{display:block}.clearfix::after{content:".";display:block;height:0;clear:both;visibility:hidden}.clearfix{display:inline-block}.frm_form_fields .clear{height:auto}* html .clearfix{height:1%}.clearfix{display:block}#frm_small_device_message_container{display:none}@media only screen and (max-width: 1200px){.frm-addons{grid-template-columns:1fr 1fr}#frm_top_bar h1{min-width:0}}@media only screen and (max-width: 1050px){.frm-white-body,.frm_wrap{--biggest-sidebar: 390px}#form_settings_page .columns-2{margin:0}.frm_actions_list{margin-left:0}#frm_bs_dropdown .frm_bstooltip{display:none !important}}@media only screen and (max-width: 960px){.frm-white-body,.frm_wrap{--gap-sm: 8px;--gap-md: 16px;--gap-2xl: 24px}.frm-settings-panel{--gap-sm: 16px;--gap-md: 24px;--gap-2xl: 32px}.auto-fold #adminmenuwrap{width:36px}.frm_wrap #postbox-container-1 #frm_adv_info{min-width:220px}p.howto{display:inline-block}.auto-fold.frm-admin-page-styles:not(.frm-full-screen) .frm_page_container,.auto-fold:not(.frm-full-screen) .frm_wrap .frm_page_container{left:36px}}@media only screen and (max-width: 850px){.frm-white-body,.frm_wrap{--biggest-sidebar: 350px;--big-sidebar: 350px}.frm_col_one{clear:none}.frm-fields p>.frm_inline_label,.frm_inline_label{display:block;margin:5px 0}#frm_top_bar h1{width:auto;max-width:200px}#frm-publishing{width:auto}#frm_form_editor_container,.frm-entry-container{margin:0 20px}.frm_wrap .frm-search{float:none !important;width:auto;clear:both}.post-type-frm_display #frm_adv_info{top:auto !important;position:static;width:auto}.frm_wrap .frm-right-panel #frm_adv_info,.frm_wrap #postbox-container-1 #frm_adv_info{min-width:275px}.frm_wrap #frm_adv_info ul.category-tabs li,.frm_wrap #frm_adv_info ul.category-tabs li.tabs{border:none}.frm_wrap #frm_adv_info ul.category-tabs li:first-child{margin-left:12px}.frm_wrap #frm_adv_info ul.category-tabs li.tabs{border-bottom:2px solid #5b9dd9;padding-bottom:8px}.post-type-frm_display #poststuff{padding:10px 25px}.post-type-frm_display #side-sortables .postbox{margin-bottom:20px;border-radius:var(--small-radius);border-top-width:1px}#frm_top_bar .frm_form_nav{box-shadow:0 -0.47px 10px 0 rgba(16,24,40,.0588235294)}#frm_top_bar ul.frm_form_nav{padding:1em 0;position:fixed;bottom:0;width:100%;background:#fff;z-index:99;transform:translate(-50%, 0);left:50%}.frm_page_container>.columns-2,#frm_styler_wrapper{padding-bottom:64px}#frm_style_preview .frm_floating_style_button:not(.frm_hidden){position:static;display:inline-block}.frm_wrap .columns-2 .frm-right-panel{padding-bottom:0}#frm-publishing{margin-left:auto}#frm_top_bar>.frm-full-close:last-child{margin-left:0}#frm_bs_dropdown{display:block}#frm_bs_dropdown .frm_bstooltip{display:block !important}}@media only screen and (max-width: 782px){.frm-white-body,.frm_wrap{--small-sidebar: 20%;--medium-sidebar: 35% }#form_settings_page .advanced_settings .form-table td,.form-table th{display:table-cell;width:auto !important}.frm-white-body #publishing-action,.frm_wrap #publishing-action{line-height:normal}.frm-white-body #screen-meta-links{display:none}.frm_wrap .misc-pub-section{padding:6px 0}.frm_wrap .misc-pub-section>a{float:none;white-space:nowrap}.frm-form-setting-tabs a{position:relative;padding:10px 5px 10px 40px}.frm-form-setting-tabs a .frmsvg,.frm-form-setting-tabs a i{position:absolute;left:13px;top:calc(50% - 10px);margin:0}#frm-insert-fields .button,#frm-insert-fields .button a,.frmbutton.ui-sortable-helper a{line-height:26px;max-height:28px}a.frm_add_logic_link{margin-left:0;margin-right:0;width:100%;box-sizing:border-box}a.frm_add_logic_link:not([id^=logic_]) .frmsvg,a.frm_add_logic_link i{display:none}#new_fields .frm_single_option select,#new_fields .frm_single_option input[type=text]{width:calc(100% - 83px)}.frm_single_entry_page .frm_form_fields input[type=text],.frm_single_entry_page .frm_form_fields select,.frm_single_entry_page .frm_form_fields textarea{width:100%}.with_frm_style .frm_radio input[type=radio],.with_frm_style .frm_checkbox input[type=checkbox]{width:25px !important}.frm_single_entry_page .with_frm_style .frm_radio input[type=radio],.frm_single_entry_page .with_frm_style .frm_checkbox input[type=checkbox]{width:18px !important}.wp-list-table.toplevel_page_formidable .column-entries,.wp-list-table.toplevel_page_formidable .column-form_key,.wp-list-table.toplevel_page_formidable .column-shortcode,.wp-list-table.toplevel_page_formidable .column-created_at{display:none !important}.wp-list-table.toplevel_page_formidable td.column-entries,.wp-list-table.toplevel_page_formidable td.column-form_key,.wp-list-table.toplevel_page_formidable td.column-shortcode,.wp-list-table.toplevel_page_formidable td.column-created_at{padding:3px 8px 3px 35%;text-align:left}#form_entries_page .wp-list-table th.frm_hidden,#form_entries_page .wp-list-table td.frm_hidden{display:none !important}.frm-white-body.auto-fold #wpcontent{padding-left:0}.frm_right_addon .frm_remove_field{bottom:11px}.frm-addons{grid-template-columns:1fr}.frm-admin-page-styles .frm_page_container,.frm_wrap .frm_page_container{left:0 !important}.frm_single_entry_page.frm_wrap .columns-2{display:block;border-bottom:none}.frm_single_entry_page .wrap.frm-with-margin{margin:10px 20px}.frm_single_entry_page #post-body-content+.frm-right-panel{width:auto;margin:0 20px;border:1px solid var(--sidebar-hover);border-radius:6px}#wp-content-media-buttons a.frm_insert_form{padding:0 var(--gap-sm)}.frm-white-body input[type=checkbox]:checked::before,.frm_wrap input[type=checkbox]:checked::before{width:1.2rem;height:1.2rem}}@media only screen and (max-width: 700px){.frm-white-body,.frm_wrap{--biggest-sidebar: 50%;--big-sidebar: 50%}}@media only screen and (max-width: 600px){.frm-white-body,.frm_wrap{--small-sidebar: 45px}.frm-form-setting-tabs a{visibility:collapse;font-size:0;padding:0 var(--gap-sm)}.frm-form-setting-tabs a .frmsvg,.frm-form-setting-tabs a i{visibility:visible;position:initial;font-size:18px}#frm_builder_page #frm-insert-fields{padding:0}.frm_wrap #frm_adv_info ul.category-tabs li{display:inline-block;padding:0;margin:2px 0;border-bottom:2px solid rgba(0,0,0,0)}.frm_wrap #frm_adv_info ul.category-tabs li.tabs,.frm_wrap #frm_adv_info ul.category-tabs li:first-child{margin-left:0;padding:0}.field_type_list li{text-align:center}#frm-insert-fields li a{padding:5px}#frm_form_editor_container .frm_primary_label{clear:both}#frm_builder_page .frm_code_list a.button{padding:2px}#frm_builder_page .frm_actions_dropdown>.frm-dropdown-menu{right:0;left:auto}.frm-right-panel h3.accordion-section-title{padding-right:10px;padding-left:10px;font-size:20px;white-space:nowrap;overflow:hidden}.frm-right-panel .accordion-section-title::before{margin-left:0;margin-right:3px}.rtl #frm_builder_page .frm_actions_dropdown>.frm-dropdown-menu{right:auto;left:0}.frm_on_submit_type svg{display:none}}@media only screen and (max-width: 475px){#frm_bs_dropdown{float:none}#frm-nav-tabs{padding:0;white-space:nowrap}#frm-nav-tabs a{margin-right:0}#frm_small_device_message_container{display:flex;flex-direction:column;align-items:center;justify-content:center;position:fixed;top:0;width:100%;height:100%;z-index:999999;background:var(--primary-500)}#frm_small_device_message{text-align:center;display:flex;flex-direction:column;align-items:center;width:80%;padding:1rem;background:#fff;border:solid 1px #fff;border-radius:var(--medium-radius)}#frm_small_device_message::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-78%, -65%);width:900px;height:900px;background-color:#0d7dfc;border-radius:50%;z-index:-1;opacity:.3}#frm_small_device_message>svg{padding-bottom:1rem}.toplevel_page_formidable:has(#frm_small_device_message_container) #posts-filter,.post-type-frm_display:has(#frm_small_device_message_container) #posts-filter{display:none}}@media print{a,.misc-pub-section a{color:#000 !important}.add-new-h2,#frm_top_bar,.dashicons,#adminmenuwrap,#adminmenuback,#wphead,#button_bar,#submitdiv,.button-secondary,#screen-metas,#screen-meta-links,#footer,#wpfooter,.inner-sidebar,.frm_form_nav,.frm_flash_graph,.frm_no_print,object,.error{visibility:hidden;display:none !important}.widget,.postbox,.stuffbox,.postbox h3{border-width:0 !important;border-color:#fff}.postbox{background:#fff !important;border:none;position:static}.postbox h3,.postbox h4{background:#fff !important}#wpbody-content{float:none}#wpcontent,#post-body-content,.has-right-sidebar #post-body,#poststuff .columns-2{margin:0 !important}.frm_wrap #poststuff .columns-2{display:block}#post-body-content+.frm-right-panel,.frm_wrap .columns-2 .frm-right-panel,.frm-right-panel{border:none;width:auto;display:block;padding:20px}.frm_wrap .columns-2,.frm_wrap .frm_page_container{height:auto;display:block}.misc-pub-section>span{padding:0}.frm-right-panel .postbox .inside{padding-left:12px;padding-right:12px}.curtime #timestamp::before{display:none;content:none !important}.frm_charts .alignleft{float:none}.pg_odd,.pg_even{page-break-inside:avoid;max-width:600px}.form-table td,.form-table th{padding:0}.frm_file_container a{display:block;width:100%}}.frm-admin-page-styles #frm-publishing #save_menu_header,.frm-admin-page-styles2 #frm-publishing #save_menu_header{display:inline-block}.edit_form_item .frm_combo_inputs_container[data-name-layout=last_first] .frm_form_subfield-first{order:2}.frm-video-wrapper iframe{width:100%;max-width:843px;border-radius:var(--border-radius)}#frm_field_group_popup{position:absolute;top:0;right:0;width:366px;max-height:231px;border-radius:8px;background:#fff;box-shadow:0 20px 48px rgba(40,47,54,.15);z-index:3;box-sizing:border-box;padding:24px 0;text-align:left}.rtl #frm_field_group_popup{text-align:right}.frm-merge-fields-into-row #frm_field_group_popup{top:unset;bottom:50px;height:196px}#frm_field_group_popup>hr{margin:12px 0}#frm_field_group_popup .frm-cancel-custom-field-group-layout,#frm_field_group_popup .frm-save-custom-field-group-layout{padding:4px 18px}#frm_field_group_popup .frm-cancel-custom-field-group-layout:hover{border-color:var(--primary-500) !important;color:var(--primary-500);background-color:rgba(0,0,0,0) !important}.frm-merge-fields-into-row #frm_field_group_popup .frm-break-field-group{display:none}.frm-merge-fields-into-row>a{color:rgba(40,47,54,.85);position:relative;top:2px}.frm-row-layout-title{font-weight:600;font-size:11px;line-height:15px;text-transform:uppercase;color:rgba(40,47,54,.45);margin-bottom:27px}.frm-row-layout-option{background:#f6f7fb;box-sizing:border-box;border-radius:2px;padding:15px 10px}#frm_field_group_popup .frm-row-layout-option .frm_grid_container{grid-gap:0 5%;grid-template-columns:repeat(12, auto)}#frm_field_group_popup .frm-row-layout-option{cursor:pointer;border:2px solid rgba(0,0,0,0)}#frm_field_group_popup .frm-row-layout-option.frm-active-row-layout,#frm_field_group_popup .frm-row-layout-option:hover{border-color:var(--primary-500)}.frm-custom-field-group-layout,.frm-break-field-group{padding:4px 24px;cursor:pointer;font-size:var(--text-sm);line-height:19px;color:#484e54}.frm-custom-field-group-layout:hover,.frm-break-field-group:hover{background-color:rgba(245,245,245,.9607843137)}.frm-custom-field-group-layout svg,.frm-break-field-group svg{margin-right:5px}#frm_field_multiselect_popup{background:#fff;height:48px;position:fixed;border-radius:4px;box-shadow:0 8px 24px rgba(40,47,54,.15);color:rgba(40,47,54,.85);font-size:13px;right:30px;bottom:10px;z-index:2}#frm_field_multiselect_popup>div{display:inline-block;line-height:48px;vertical-align:top}#frm_field_multiselect_popup.frm-unmergable>.frm-merge-fields-into-row,#frm_field_multiselect_popup.frm-unmergable>.frm-multiselect-popup-separator{display:none}#frm_field_multiselect_popup>div:not(.frm-multiselect-popup-separator){padding:0 20px;cursor:pointer}#frm_field_multiselect_popup>div:not(.frm-multiselect-popup-separator):hover{background:rgba(245,245,245,.9607843137)}.frm-builder-popup-heading{font-weight:600;font-size:11px;line-height:15px;text-transform:uppercase;color:rgba(40,47,54,.45);margin-bottom:7px}.frm-builder-popup-subheading{font-size:12px;line-height:16px;color:rgba(40,47,54,.45)}#frm_field_group_popup input[type=text]{height:30px;border-radius:3px;font-size:14px;padding:8px;color:#545f6e;border-color:rgba(40,47,54,.2)}.frm-multiselect-popup-separator{height:36px;width:1px;position:relative;top:6px;background:#c4c4c4}.frm-sortable-helper,.frm-multiselect-key-is-down li.form-field:not(.edit_field_type_divider){pointer-events:none}.frm-sortable-helper{z-index:99}#frm_banner{width:100%;color:#fff;background:var(--primary-500);height:40px;line-height:40px;text-align:center;position:relative}.frm-banner-emoji{font-size:19px}.frm-banner-emoji,.frm-banner-title{margin-right:5px;vertical-align:top}.frm-banner-cta a{text-decoration:underline !important}#frm_banner .frm-banner-cta a.frm_inbox_dismiss{display:none}.frm-banner-dismiss{cursor:pointer;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.frm-banner-dismiss .frmsvg{vertical-align:top}.frm-ready-made-solution:not(.frm-search-result){display:none !important}#frm_leave_email_wrapper .frmsvg{top:0}#frm-add-my-email-address{margin-top:30px}.frm-ready-made-solution h3~a{color:var(--primary-500)}.frm-ready-made-solution img{max-width:100%;display:block;box-shadow:var(--box-shadow-lg)}.frm_single_on_submit_settings .frm_form_field{margin:22px 0}.frm_on_submit_type_setting{padding:8px 0}.frm_on_submit_type label{display:flex;border:1px solid var(--grey-border);border-radius:var(--small-radius);gap:16px;padding:16px;align-items:center;justify-content:center}.frm_on_submit_type input{opacity:0 !important;position:absolute;z-index:-1}.frm_on_submit_type input[type=radio]:checked+label{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color)}#form_settings_page .frm_on_submit_type label:hover,.frm_on_submit_type input[type=radio]:checked+label svg{color:var(--primary-color)}.frm_pro_tip,.frm-cta{justify-content:space-between;align-items:center;gap:var(--gap-2xl);padding:var(--gap-xs) var(--gap-sm);border-radius:var(--small-radius);background:var(--primary-25)}.frm-cta.frm-cta-border{border:1px solid var(--primary-200)}.frm-cta.frm-cta-border .frm-cta-footer{background-color:#fff;padding:12px var(--gap-sm);border-top:1px solid var(--primary-200);border-bottom-left-radius:var(--small-radius);border-bottom-right-radius:var(--small-radius);margin-top:12px;margin-bottom:calc(-1*var(--gap-sm));margin-left:calc(-1*var(--gap-sm));margin-right:calc(-1*var(--gap-sm))}.frm-cta h4{font-weight:600;margin-top:0;margin-bottom:var(--gap-2xs)}.frm-cta-green{background-color:var(--success-25)}.frm-cta-green .frm-banner-title{gap:calc(var(--gap-2xs) + 1px);color:var(--grey-700)}.frm-cta-green.frm-cta-border{border-color:var(--success-100)}.frm-cta-green.frm-cta-border .frm-cta-footer{border-color:var(--success-100)}.frm-cta-red{background-color:var(--error-25)}.frm-cta-red.frm-cta-border{border-color:var(--error-100)}.frm-cta-icon{padding:3px 15px 3px 0;border-right:1px solid currentColor}#frm-upgrade-banner{gap:0}#frm-upgrade-banner .frm-cta-icon+.frm-cta-content{margin-right:auto;padding-left:15px}#frm-upgrade-banner.frm-gradient h4,#frm-upgrade-banner.frm-gradient p{color:currentColor}#frm-upgrade-banner.frm-gradient h4{font-size:16px;font-weight:600}#frm-upgrade-banner.frm-gradient p{font-size:14px}.frm-right-panel .inside .frm_pro_tip,.frm_pro_tip{color:var(--grey-700);background:#ffe7de;margin:0 auto;display:flex;gap:var(--gap-xs)}.frm_field_list .frm_pro_tip{margin:10px 15px;position:relative;width:calc(100% - 30px);box-sizing:border-box;font-size:14px}.frm_pro_tip .frmsvg,.frm_pro_tip i{color:var(--orange)}.frm-tip-info{flex:1;text-align:left}.frm-tip-cta{color:var(--orange)}.frm-gradient .frm-tip-cta,.frm-light-tip .frm-gradient .frm-tip-cta{color:currentColor;font-weight:700}.frm-tip-badge{font-size:9px;font-weight:700;text-transform:uppercase;color:#1e63d5;background-color:#fff;line-height:1;border-radius:4px;padding:3px 4px}.frm-light-tip .frm_pro_tip{background:var(--primary-25)}.frm-light-tip .frm_pro_tip .frmsvg,.frm-light-tip .frm_pro_tip i,.frm-light-tip .frm-tip-cta{color:var(--primary-500)}.nav-tab-wrapper .frm_pro_tip{float:right}#frm-form-templates-modal textarea{height:108px}#frm-form-templates-modal .frm-fields button.btn{border-color:var(--grey-300);color:var(--grey-900);cursor:pointer}#frm-form-templates-modal .frm-fields button.btn .frmsvg{color:var(--grey-400);width:14px;height:14px}#frm-form-templates-modal .frm-form-templates-modal-fieldset{position:relative}#frm-form-templates-modal .frm-form-templates-modal-fieldset .frm-with-left-icon .frmsvg{padding:0;top:0;left:13px}#frm-form-templates-modal .postbox{display:block !important}#frm_empty_inbox #frm-leave-email-modal{margin-top:var(--gap-2xl)}#frm-name-your-form-modal .frm_modal_top{padding-top:var(--gap-sm)}#frm-field-group-message{position:absolute;bottom:32px;right:calc(50% - var(--biggest-sidebar));padding:var(--gap-xs) var(--gap-sm);border-radius:100px;background-color:var(--primary-25)}#frm-field-group-message .frm-field-group-message-text{gap:10px;color:var(--grey-800)}#frm-field-group-message-dismiss{margin-left:var(--gap-xs)}#frm-field-group-message-dismiss .frmsvg{color:var(--grey-800);width:15px;height:15px;cursor:pointer;transition:color 300ms ease-in-out}#frm-field-group-message-dismiss .frmsvg:hover{color:var(--grey-500)}.frm-card-item{display:flex;border:1px solid var(--grey-200);border-radius:var(--small-radius);padding:var(--gap-sm);box-shadow:var(--box-shadow-xs);background:#fff}.frm-card-item:not(.frm-counter-card){gap:10px}.frm-compact-card-item{padding:var(--gap-sm) 35px 10px 35px}.frm-card-bottom{background-color:var(--grey-50);margin-left:calc(var(--gap-sm)*-1);margin-bottom:calc(var(--gap-sm)*-1);margin-right:calc(var(--gap-sm)*-1);padding:var(--gap-sm);border-radius:0 0 var(--small-radius) var(--small-radius)}#welcome-panel:has(#frm_form_pf_importer){background-color:#fff;margin:var(--gap-sm) var(--gap-md) var(--gap-md);line-height:2}#welcome-panel:has(#frm_form_pf_importer) .welcome-panel-content{text-align:start !important;min-height:unset;display:block}#frm_form_pf_importer div{margin:10px 0 !important}#frm_form_pf_importer button{border:1px solid var(--primary-500);padding:7px 16px;min-height:28px;line-height:var(--leading);margin-bottom:0;background:var(--primary-500);color:#fff !important}#frm_form_pf_importer button:hover{background:#135e96;border-color:#135e96}.frm-option-box{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:500;background-color:#fff;padding:12px var(--gap-sm);border:1px solid var(--grey-200);border-radius:var(--small-radius);margin-bottom:var(--gap-xs);transition:background-color 100ms ease-out;cursor:pointer}.frm-option-box:hover{background-color:var(--grey-25)}.frm-option-box.frm-checked{background-color:var(--primary-25);border-color:var(--primary-200)}.frm-option-box.frm-disabled{cursor:default}.frm-option-box input[type=checkbox]{margin:0}.frm-option-box.frm-disabled input[type=checkbox]{opacity:.5}.frm-option-box .frm_help .frmsvg{width:12px;height:12px}.frm-validation-error:not(.frm_hidden){display:flex}.frm-validation-error{gap:calc(var(--gap-xs) + var(--gap-2xs))}.frm-validation-error span{color:var(--error-500)}.frm-validation-error span[frm-error]{display:none}.frm-validation-error[frm-error=empty] span[frm-error=empty],.frm-validation-error[frm-error=invalid] span[frm-error=invalid],.frm-validation-error[frm-error=custom] span[frm-error=custom]{display:inline-block}.frm-box{padding:var(--gap-sm);border:1px solid var(--grey-200);border-radius:var(--small-radius)}.frm-link-with-external-icon{display:flex;align-items:center;gap:var(--gap-2xs);font-size:var(--text-xs)}.frm-link-with-external-icon .frmsvg{width:16px;height:16px;transform:rotate(45deg)}#wpbody-content .frm-page-skeleton ul,#wpbody-content .frm-page-skeleton li{margin:0}#wpbody-content .frm-page-skeleton .frm-right-panel{padding:2px;overflow-y:initial}#wpbody-content .frm-page-skeleton .frm-scrollbar-wrapper{padding:var(--gap-md) var(--gap-sm)}#wpbody-content .frm-page-skeleton .frm-search{float:none;padding:0 var(--gap-2xs)}#wpbody-content .frm-page-skeleton .frm-search>svg{left:var(--gap-2xs)}#wpbody-content .frm-page-skeleton .frm-search>input{width:100%}.frm-page-skeleton-cat{cursor:pointer;padding:var(--gap-xs);border-radius:var(--small-radius);background-color:rgba(0,0,0,0);transition:background-color 250ms ease-out}.frm-page-skeleton-cat:hover{background-color:var(--grey-100)}.frm-page-skeleton-cat>*{z-index:2}.frm-page-skeleton-cat-text{color:var(--grey-900);text-transform:capitalize}.frm-page-skeleton-cat-count{color:var(--grey-400)}.frm-current .frm-page-skeleton-cat-text,.frm-current .frm-page-skeleton-cat-count{color:var(--primary-500)}.frm-list-grid-layout{display:grid;grid-template-columns:repeat(auto-fill, minmax(303px, 1fr));grid-auto-rows:max-content;gap:var(--gap-sm)}.frm-list-grid-layout>*{grid-column:span 1}#frm-page-skeleton-empty-state{height:100%;margin-top:calc(-1*var(--gap-md))}#frm-page-skeleton-empty-state .frm-page-skeleton-text{max-width:420px}.frm-page-skeleton-divider{border-top:1px solid var(--grey-200);margin:0}.field_type_list .frm_tsubmit{display:none !important}#frm_style_sidebar .accordion-section-title::after,#frm_view_editor_left .accordion-section-title::after{content:""}a[href="#square_settings"] svg.frmsvg{width:23px !important;height:22px !important}#frm_square_test_setup_modal a:focus{box-shadow:none !important}@media only screen and (max-width: 900px){#square_settings .frm_grid_container:has(.frm-card-item){grid-template-columns:repeat(1, 1fr)}#square_settings .frm-card-item+.frm-card-item{margin-top:var(--gap-sm)}}#frm_sale_banner{display:flex;height:90px;flex-direction:row;align-items:center;gap:var(--gap-sm);cursor:pointer;position:relative}#frm_sale_banner>div:first-child{align-self:flex-end;width:150px;height:100%;display:flex;justify-content:center}#frm_sale_banner>div:first-child img{align-self:center}#frm_sale_banner>div:nth-child(3){margin-left:auto;margin-right:50px}#frm_sale_banner>div:nth-child(2)>div:last-child{opacity:.8}#frm_sale_banner a:not(.dismiss){text-shadow:none;border-radius:30px;border:1px rgba(0,0,0,0);font-size:var(--text-sm);padding:7px 16px;height:auto;min-height:28px;outline:none;line-height:var(--leading);box-sizing:border-box;margin-bottom:0;display:inline-block;font-weight:700;background-color:#fff;color:#000}#frm_sale_banner .dismiss{position:absolute;color:#fff;opacity:.6;right:15px;top:10px}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: #fff"]{background-color:#f0f0f0 !important}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: rgba(241, 90, 36, 1)"]{background-color:#e6470f !important}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: rgba(239, 58, 78, 1)"]{background-color:#ed1d34 !important}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: rgba(33, 2, 14, 1)"]{background-color:#3e041a !important}#frm_sale_banner:hover a:not(.dismiss)[style*="background-color: rgba(72, 51, 64, 1)"]{background-color:#362630 !important}.frm-lookup-box-label{display:none}.frm-inline-modal[id^=frm-lookup-box]{background-color:rgba(0,0,0,0);border:0;box-shadow:none}.frm-inline-modal[id^=frm-lookup-box] .frm-nav-tabs,.frm-inline-modal[id^=frm-lookup-box] .dismiss{display:none}.frm_single_option a.frm_remove_tag svg,.frm_single_option a.frm_add_opt svg{width:15px;height:15px}#frm_builder_page #frm-options-panel .frm-single-settings.frm-type-ranking .frm_image_styling_frame{margin-left:12px} diff --git a/resources/scss/admin/utilities/layout/_flex.scss b/resources/scss/admin/utilities/layout/_flex.scss index 0d4c958014..9a92b2dd0f 100644 --- a/resources/scss/admin/utilities/layout/_flex.scss +++ b/resources/scss/admin/utilities/layout/_flex.scss @@ -118,11 +118,11 @@ } .frm-order-first { - order: calc(-infinity); + order: -9999; } .frm-order-last { - order: calc(infinity); + order: 9999; } .frm-order-none { From 6076b5dea00d8b37b8a33f106c42864661aded11 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 16:35:32 -0300 Subject: [PATCH 217/230] Re-apply Lauras e2e2 test updates --- tests/cypress/e2e/Forms/formsSettings.cy.js | 4 ++-- tests/cypress/support/commands.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/cypress/e2e/Forms/formsSettings.cy.js b/tests/cypress/e2e/Forms/formsSettings.cy.js index 37e1f19b78..268ef546c9 100644 --- a/tests/cypress/e2e/Forms/formsSettings.cy.js +++ b/tests/cypress/e2e/Forms/formsSettings.cy.js @@ -120,7 +120,7 @@ describe( 'Updating form settings', () => { cy.log( 'Verify URL redirect after submitting form' ); cy.origin( 'https://formidableforms.com', () => { - cy.location( 'href' ).should( 'include', 'https://formidableforms.com/' ); + cy.location( 'href', { timeout: 10000 } ).should( 'include', 'https://formidableforms.com/' ); } ); cy.log( 'Navigate back to the formidable form page' ); @@ -141,7 +141,7 @@ describe( 'Updating form settings', () => { cy.log( 'Verify URL redirect after submitting form' ); cy.origin( 'https://formidableforms.com', () => { - cy.location( 'href' ).should( 'include', 'https://formidableforms.com/' ); + cy.location( 'href', { timeout: 10000 } ).should( 'include', 'https://formidableforms.com/' ); } ); cy.log( 'Navigate back to the formidable form page' ); diff --git a/tests/cypress/support/commands.js b/tests/cypress/support/commands.js index 8c47384c2b..5d78b45c5a 100644 --- a/tests/cypress/support/commands.js +++ b/tests/cypress/support/commands.js @@ -66,7 +66,7 @@ Cypress.Commands.add( 'openForm', () => { cy.get( 'h1 > .frm_bstooltip' ).should( 'contain', 'Test Form' ); cy.get( '.current_page' ).should( 'contain', 'Build' ); - cy.get( '.frm_field_list > #frm-nav-tabs > .frm-tabs > #frm_insert_fields_tab' ).should( 'contain', 'Add Fields' ); + cy.xpath( "//li[@class='frm-active']//a[@id='frm_insert_fields_tab']" ).should( "contain", "Add Fields" ); } ); Cypress.Commands.add( 'getCurrentFormattedDate', () => { From fb0d3bcbec40d4f3cc3b187911d7afebfa9eb346 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 16:37:25 -0300 Subject: [PATCH 218/230] Use single quotes --- tests/cypress/support/commands.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/cypress/support/commands.js b/tests/cypress/support/commands.js index 5d78b45c5a..559caf7385 100644 --- a/tests/cypress/support/commands.js +++ b/tests/cypress/support/commands.js @@ -66,7 +66,7 @@ Cypress.Commands.add( 'openForm', () => { cy.get( 'h1 > .frm_bstooltip' ).should( 'contain', 'Test Form' ); cy.get( '.current_page' ).should( 'contain', 'Build' ); - cy.xpath( "//li[@class='frm-active']//a[@id='frm_insert_fields_tab']" ).should( "contain", "Add Fields" ); + cy.xpath( "//li[@class='frm-active']//a[@id='frm_insert_fields_tab']" ).should( 'contain', 'Add Fields' ); } ); Cypress.Commands.add( 'getCurrentFormattedDate', () => { From 942070e7c29be6d620e66315d56ddb1c566cdcc9 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 16:41:06 -0300 Subject: [PATCH 219/230] Apply more of Lauras changes --- tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js b/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js index 1ad6171a9a..7c61de67a8 100644 --- a/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js +++ b/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js @@ -117,7 +117,7 @@ describe( 'Fields in the form builder', () => { cy.log( `Set ${ fieldType } field as require` ); cy.get( `li[data-ftype="${ fieldId }"] [id^="field_"][id$="_inner_container"] > .frm-field-action-icons > .dropdown > .frm_bstooltip > .frmsvg > use`, { timeout: 10000 } ).click( { force: true } ); cy.get( `li[data-ftype="${ fieldId }"] .frm_select_field > span` ).should( 'contain', 'Field Settings' ).click( { force: true } ); - cy.get( '.frm_field_list div[id^="frm-single-settings-"] .frm_grid_container .frm-hide-empty input[type="checkbox"]', { timeout: 10000 } ).check( { force: true } ); + cy.get( 'input.frm_req_field[type="checkbox"]' ).check( { force: true } ); }; cy.openForm(); @@ -141,7 +141,7 @@ describe( 'Fields in the form builder', () => { } ); cy.log( 'Update form' ); - cy.get( '#frm_submit_side_top' ).should( 'contain', 'Update' ).click(); + cy.get( '#frm_submit_side_top' ).should( 'contain', 'Update' ).click( { force: true } ); cy.log( 'Click on Preview - Blank Page' ); cy.get( '#frm-previewDrop', { timeout: 5000 } ).should( 'contain', 'Preview' ).click(); @@ -187,7 +187,7 @@ describe( 'Fields in the form builder', () => { cy.get( `li[id="phone"] a[title="Phone"]` ).click( { force: true } ); cy.log( 'Update form' ); - cy.get( '#frm_submit_side_top' ).should( 'contain', 'Update' ).click(); + cy.get( '#frm_submit_side_top' ).should( 'contain', 'Update' ).click( { force: true } ); cy.log( "Enabling the 'Validate this form with javascript' setting" ); cy.xpath( "//ul[@class='frm_form_nav']//a[contains(text(),'Settings')]" ).should( 'contain', 'Settings' ).click(); From 11bb93eed0e95242e193588844a1970f9aa53450 Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 16:45:43 -0300 Subject: [PATCH 220/230] Use force: true once more --- tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js b/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js index 7c61de67a8..69c0becf39 100644 --- a/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js +++ b/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js @@ -193,7 +193,7 @@ describe( 'Fields in the form builder', () => { cy.xpath( "//ul[@class='frm_form_nav']//a[contains(text(),'Settings')]" ).should( 'contain', 'Settings' ).click(); cy.get( ':nth-child(3) > td > .frm_inline_block', { timeout: 5000 } ).should( 'contain', 'Validate this form with javascript' ); cy.get( '#js_validate' ).click( { force: true } ); - cy.get( '#frm_submit_side_top' ).should( 'contain', 'Update' ).click(); + cy.get( '#frm_submit_side_top' ).should( 'contain', 'Update' ).click( { force: true } ); cy.log( 'Click on Preview - Blank Page' ); cy.get( '#frm-previewDrop', { timeout: 5000 } ).should( 'contain', 'Preview' ).click(); From 0d7a9e1311620720741191bdfb5a053b73ec51eb Mon Sep 17 00:00:00 2001 From: Mike Letellier Date: Mon, 8 Sep 2025 16:50:50 -0300 Subject: [PATCH 221/230] Update another reference --- tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js b/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js index 69c0becf39..30bb1a63d9 100644 --- a/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js +++ b/tests/cypress/e2e/Forms/fieldsInFormBuilder.cy.js @@ -38,7 +38,8 @@ describe( 'Fields in the form builder', () => { cy.get( 'h1 > .frm_bstooltip' ).should( 'contain', 'Test Form' ); cy.get( '.current_page' ).should( 'contain', 'Build' ); - cy.get( '.frm_field_list > #frm-nav-tabs > .frm-tabs > #frm_insert_fields_tab' ).should( 'contain', 'Add Fields' ); + + cy.xpath( "//li[@class='frm-active']//a[@id='frm_insert_fields_tab']" ).should( 'contain', 'Add Fields' ); cy.log( 'Create and duplicate fields for each type' ); const fieldsToDelete = [ From 5307f81035da6ed22a3c53a3098a6f5386174fd5 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 9 Sep 2025 12:56:57 +0300 Subject: [PATCH 222/230] Replace `frm_hidden` with `frm-force-hidden`. --- classes/helpers/FrmFieldsHelper.php | 2 +- js/src/admin/admin.js | 2 +- resources/scss/admin/utilities/layout/_display.scss | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/classes/helpers/FrmFieldsHelper.php b/classes/helpers/FrmFieldsHelper.php index 66fdaa75ab..9102eadca1 100644 --- a/classes/helpers/FrmFieldsHelper.php +++ b/classes/helpers/FrmFieldsHelper.php @@ -2440,7 +2440,7 @@ public static function render_ai_generate_options_button( $args, $should_hide_bu $attributes = array( 'class' => self::get_ai_generate_options_button_class() ); if ( ! empty( $should_hide_bulk_edit ) ) { - $attributes['class'] .= ' frm_hidden!'; + $attributes['class'] .= ' frm-force-hidden'; } $data = FrmAppHelper::get_upgrade_data_params( diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index 52efb64f7c..238d94a306 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -5126,7 +5126,7 @@ function frmAdminBuildJS() { watchRowBlock.fadeIn( 'slow' ); // Show the "Watch Lookup Fields" label if it was hidden - document.getElementById( `frm_watch_lookup_label_${ id }` )?.classList.remove( 'frm_hidden!' ); + document.getElementById( `frm_watch_lookup_label_${ id }` )?.classList.remove( 'frm-force-hidden' ); } } ); return false; diff --git a/resources/scss/admin/utilities/layout/_display.scss b/resources/scss/admin/utilities/layout/_display.scss index 33d6b05b30..4a82479877 100644 --- a/resources/scss/admin/utilities/layout/_display.scss +++ b/resources/scss/admin/utilities/layout/_display.scss @@ -2,7 +2,7 @@ * Utilities - Display */ -#wpwrap .frm_hidden\! { +#wpwrap .frm-force-hidden { display: none !important; } From b9e6ae69ee197ac987ccd52dc60afd4c00deb197 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 9 Sep 2025 14:00:18 +0300 Subject: [PATCH 223/230] Replace `.frm-inline\!` with `.frm-force-inline` --- resources/scss/admin/utilities/layout/_display.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/scss/admin/utilities/layout/_display.scss b/resources/scss/admin/utilities/layout/_display.scss index 4a82479877..135cc3e435 100644 --- a/resources/scss/admin/utilities/layout/_display.scss +++ b/resources/scss/admin/utilities/layout/_display.scss @@ -15,7 +15,7 @@ display: inline; } -.frm-inline\! { +.frm-force-inline { display: inline !important; } From 7b59ea60cf339816a52fd84ff1ebb3b3d349d705 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 9 Sep 2025 14:02:35 +0300 Subject: [PATCH 224/230] Replace `.frm-flex\!` with `.frm-force-flex` --- classes/views/frm-fields/back-end/default-value-setting.php | 2 +- classes/views/frm-fields/back-end/settings.php | 2 +- resources/scss/admin/utilities/layout/_flex.scss | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/classes/views/frm-fields/back-end/default-value-setting.php b/classes/views/frm-fields/back-end/default-value-setting.php index 2cb3a95f3f..e6280d8bb2 100644 --- a/classes/views/frm-fields/back-end/default-value-setting.php +++ b/classes/views/frm-fields/back-end/default-value-setting.php @@ -8,7 +8,7 @@ class="frm-has-modal frm-default-value-wrapper default-value-section-echo_field_default_setting_attributes( $field ); ?> id="default-value-for-" > -
                      • ").addClass("frm_field_box").html(jQuery("
                          ").addClass("frm_grid_container frm_sorting").append(e)))})),r}function We(e){var t=s("ul",{className:"frm_grid_container frm_sorting"}),r=s("li",{className:"frm_field_box",child:t});e.replaceWith(r),t.appendChild(e),K(t),X(r,".frm-move")}function Ue(e,t){var r,n,i=/id="(\S+)"/.exec(e),o=document.getElementById(i[1]),a="#"+i[1]+".edit_field_type_divider ul.frm_sorting.start_divider",l=jQuery(a),s=o.getAttribute("data-type");r=e,(n=d()).innerHTML=r,n.querySelectorAll(".form-field").forEach(Ve);var c,f,u=!1;if(Mi(),V(a),"quantity"===s&&function(e){var t=e.getAttribute("data-fid"),r=document.getElementById("field_options[product_field_"+t+"]");null!==r&&(rt(r),ii(document.getElementById("frm-single-settings-"+t)))}(o),"product"!==s&&"quantity"!==s||Be(),l.length)l.parent(".frm_field_box").children(".frm_no_section_fields").addClass("frm_block");else{var m=jQuery(o).closest("ul.frm_sorting.start_divider");m.length&&(En(m),u=!0)}if(-1!==e.indexOf("frm-collapse-page")&&Tr(),f="frm-newly-added",(c=o).classList?c.classList.add(f):c.className+=" "+f,setTimeout((function(){o.classList.remove("frm-newly-added")}),1e3),t){var _=o.getBoundingClientRect(),p=document.getElementById("post-body-content");_.top>=0&&_.left>=0&&_.right<=(window.innerWidth||document.documentElement.clientWidth)&&_.bottom<=(window.innerHeight||document.documentElement.clientHeight)||p.scroll({top:p.scrollHeight,left:0,behavior:"smooth"}),!1===u&&En(l)}Je(),lo(),document.getElementById("frm-show-fields").classList.remove("frm-over-droppable");var g=new Event("frm_added_field",{bubbles:!1});g.frmField=o,g.frmSection=a,g.frmType=s,g.frmToggles=u,document.dispatchEvent(g)}function Ve(e){if(e.dataset.fid){var t=document.getElementById("draft_fields");t&&(""===t.value?t.value=e.dataset.fid:t.value.split(",").includes(e.dataset.fid)||(t.value+=","+e.dataset.fid))}}function Ke(e){jQuery("#new_fields .frm-single-settings").addClass("frm_hidden"),jQuery("#frm-options-panel > .frm-single-settings").removeClass("frm_hidden"),Je(e)}function Je(e){jQuery("li.ui-state-default.selected").removeClass("selected"),jQuery(".frm-show-field-settings.selected").removeClass("selected"),e||gr()}function Ye(){var e=this.value,t=function(e){var t,r=[],n=e.split(""),i=n.length,o=["{","[","("],l={"}":"{",")":"(","]":"["},s=[];for(t=0;t0||s.length>0?a.unmatched_parens+"\n\n":""}(e);t+=function(e,t){var r=function(e,t){var r="";return function(e){return jQuery(e).siblings('label[for^="calc_type"]').children("input").prop("checked")}(t)||/\[(date|time|email|ip)\]/.test(e)&&(r=a.text_shortcodes+"\n\n"),r}(e,t);return r+=function(e){var t="";return/\[id\]|\[key\]|\[if\s\w+\]|\[foreach\s\w+\]|\[created-at(\s*)?/g.test(e)&&(t+=a.view_shortcodes+"\n\n"),t}(e)}(e,this),""!==t&&H(e+"\n\n"+t)}function Xe(e,t){for(var r,n,i,o=!1,a=0;a"+l[t].fieldName+"")):(r=r?" checked":"",i.push('"));e.innerHTML=i.join("")}function nt(){for(var e=document.querySelectorAll(".frmjs_prod_field_opt"),t=0;t'):(n.innerHTML=mn(r),"TEXTAREA"===n.nodeName&&n.classList.contains("wp-editor-area")&&jQuery(n).trigger("change"),n.classList.contains("frm_primary_label")&&"break"===n.nextElementSibling.getAttribute("data-ftype")&&(n.nextElementSibling.querySelector(".frm_button_submit").textContent=r)))}function at(e){var t=parseFloat(e.getAttribute("max")),r=parseFloat(e.getAttribute("min"));return(t-r)/2+r}function lt(){var e,t=this.getAttribute("data-fid"),r="";["field_options_max_","frm_format_"].forEach((function(e){var n=document.getElementById(e+t);n&&(r+=n.value)})),"text"===(e=document.getElementsByName("field_options[type_"+t+"]")[0]).options[e.selectedIndex].value&&dt(""!==r,".frm_invalid_msg"+t)}function st(){var e=this.id.replace("frm_","").replace("req_field_",""),t=this.checked,r=jQuery("#field_label_"+e+" .frm_required");if(dt(t,".frm_required_details"+e),t){var n=jQuery('input[name="field_options[required_indicator_'+e+']"]');""===n.val()&&n.val("*"),r.removeClass("frm_hidden")}else r.addClass("frm_hidden")}function dt(e,t){if($msg=jQuery(t),e)$msg.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast");else{var r=$msg.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not("+t+"):visible").length;r.css("display",""),0===n&&$msg.closest(".frm_validation_msg").fadeOut("fast")}}function ct(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(".frm_unique_details"+e);if(this.checked)t.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast"),$unqDetail=jQuery(".frm_unique_details"+e+" input"),""===$unqDetail.val()&&$unqDetail.val(a.default_unique);else{var r=t.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not(.frm_unique_details"+e+"):visible").length;r.css("display",""),0===n&&t.closest(".frm_validation_msg").fadeOut("fast")}}function ft(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(this).val(),r=jQuery(document.getElementById("frm_field_id_"+e));if(dt(""!==t,".frm_conf_details"+e),""!==t){var n=jQuery(".frm_validation_box .frm_conf_details"+e+" input");""===n.val()&&n.val(a.default_conf),function(e){var t=document.getElementsByName("field_options[type_"+e+"]")[0].value;ut(document.getElementById("field_description_"+e),"field_options[description_"+e+"]",a["enter_"+t]),ut(document.getElementById("conf_field_description_"+e),"field_options[conf_desc_"+e+"]",a["confirm_"+t])}(e),"inline"===t?r.removeClass("frm_conf_below").addClass("frm_conf_inline"):"below"===t&&r.removeClass("frm_conf_inline").addClass("frm_conf_below"),jQuery(".frm-conf-box-"+e).removeClass("frm_hidden")}else jQuery(".frm-conf-box-"+e).addClass("frm_hidden"),setTimeout((function(){r.removeClass("frm_conf_inline frm_conf_below")}),200)}function ut(e,t,r){e.innerHTML===a.desc&&(e.innerHTML=r,document.getElementsByName(t)[0].value=r)}function mt(e){var t=JSON.parse(this.getAttribute("data-opts"));return e.preventDefault(),document.getElementById("frm_bulk_options").value=t.join("\n"),!1}function _t(){var e,t=jQuery(this).closest(".frm-single-settings").data("fid"),r=jQuery("#frm_field_"+t+"_opts .frm_option_template").prop("outerHTML"),n=jQuery(this).data("opttype"),i=0,o=function(e){for(var t=0,r=0,n=jQuery("#frm_field_"+e+"_opts li"),i=0;ti||"000"===i)&&(i=r)}return i}(t);if("000"!==o&&(i=o+1),"other"===n){document.getElementById("other_input_"+t).value=1;var a=jQuery(this).data("ftype");"radio"!==a&&"select"!==a||jQuery(this).fadeOut("slow");var l={action:"frm_add_field_option",field_id:t,opt_key:i,opt_type:n,nonce:frmGlobal.nonce};jQuery.post(ajaxurl,l,(function(e){jQuery(document.getElementById("frm_field_"+t+"_opts")).append(e),rn(t)}))}else r=(r=(r=(r=(r=r.replace(new RegExp('optkey="000"',"g"),'optkey="'+i+'"')).replace(new RegExp("-000_","g"),"-"+i+"_")).replace(new RegExp('-000"',"g"),"-"+i+'"')).replace(new RegExp("\\[000\\]","g"),"["+i+"]")).replace("frm_hidden frm_option_template",""),zo(t,r={newOption:r}),this.closest(".frm_single_option").after(r.newOption),rn(t);null===(e=this.closest(".frm_sortable_field_opts"))||void 0===e||null===(e=e.querySelectorAll(".frm_remove_tag.frm_disabled"))||void 0===e||e.forEach((function(e){return e.classList.remove("frm_disabled")})),Mi()}function pt(){gt(jQuery(this).closest(".frm-single-settings").data("fid"),this.value)}function gt(e,t){var r=jQuery(".frm_multiple_cont_"+e);"select"===t?r.fadeIn("fast"):r.fadeOut("fast")}function yt(){var e=jQuery(this).closest(".frm-single-settings").data("fid");Oo(jQuery(".field_"+e+"_option_key")),jQuery(".field_"+e+"_option").toggleClass("frm_with_key")}function ht(){var e,t,r=jQuery(this).closest(".frm-single-settings"),n=r.data("fid"),i=document.getElementById("frm_field_id_"+n);wt(jQuery(this)),Oo(jQuery(".field_"+n+"_image_id")),Oo(jQuery(".frm_toggle_image_options_"+n)),Oo(jQuery(".frm_image_size_"+n)),Oo(jQuery(".frm_alignment_"+n)),Oo(jQuery(".frm-add-other#frm_add_field_"+n)),(e=gn(n))?(bt(n,"inline"),vt(i),t=tn(n),i.classList.add("frm_image_options"),i.classList.add("frm_image_size_"+t),r.find(".frm-bulk-edit-link").hide()):(i.classList.remove("frm_image_options"),vt(i),bt(n,"block"),r.find(".frm-bulk-edit-link").show()),wp.hooks.doAction("frm_image_options_toggled",r[0],e)}function vt(e){e.classList.remove("frm_image_size_","frm_image_size_small","frm_image_size_medium","frm_image_size_large","frm_image_size_xlarge")}function bt(e,t){jQuery("#field_options_align_"+e).val(t).trigger("change")}function jt(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);Qt(),gn(e)&&(vt(t),t.classList.add("frm_image_options"),t.classList.add("frm_image_size_"+tn(e)))}function wt(e){var t=e.closest(".frm-single-settings").data("fid");jQuery(".field_"+t+"_option").trigger("change")}function Qt(){wt(jQuery(this))}function xt(e){var t=e.target.closest(".frm_image_preview_wrapper");e.preventDefault(),wp.media.model.settings.post.id=0;var r=wp.media.frames.file_frame=wp.media({multiple:!1,library:{type:["image"]}});r.on("select",(function(){var e=r.state().get("selection").first().toJSON(),n=t.querySelector("img");n.setAttribute("src",e.url),n.classList.remove("frm_hidden"),n.removeAttribute("srcset"),t.querySelector(".frm_image_preview_frame").style.display="block",t.querySelector(".frm_image_preview_title").textContent=e.filename,t.querySelector(".frm_choose_image_box").style.display="none";var i=jQuery(t);i.siblings('input[name*="[label]"]').data("frmimgurl",e.url),i.find("input.frm_image_id").val(e.id).trigger("change"),wp.media.model.settings.post.id=0})),r.open()}function Et(e){var t=jQuery(this).closest(".frm_image_preview_wrapper");e.preventDefault(),e.stopPropagation(),t.find("img").attr("src",""),t.find(".frm_image_preview_frame").hide(),t.find(".frm_choose_image_box").show(),t.find("input.frm_image_id").val(0).trigger("change")}function kt(){var e=jQuery(this).closest("li").find(".frm_form_fields select");this.checked?e.attr("multiple","multiple"):e.removeAttr("multiple")}function Lt(){var e=document.getElementById("dropform-search-input");null!==e&&setTimeout((function(){e.focus()}),100)}function St(e){var t=e.target,r=t.closest(".frm_warning_style");jQuery(r).fadeOut(400,(function(){return r.remove()}));var n=t.dataset.action,i=new FormData;g(n,i)}function At(e){e.preventDefault()}function It(){var e,t=this.parentNode,r=t.parentNode,n=r.querySelectorAll("li:not(.frm_hidden)");2===n.length&&(null===(e=Array.from(n).find((function(e){return e!==t})).querySelector(".frm_remove_tag"))||void 0===e||e.classList.add("frm_disabled"));var i,o=this.getAttribute("data-fid");jQuery(t).fadeOut("fast",(function(){wp.hooks.doAction("frm_before_delete_field_option",this),jQuery(t).remove(),jQuery(r).find(".frm_other_option").length<1&&(null!==(i=document.getElementById("other_input_"+o))&&(i.value=0),jQuery("#other_button_"+o).fadeIn("fast"))})),Mi()}function Bt(){var e,t,r,n;(e=jQuery(this)).is(":checked")&&(t=function(){setTimeout((function(){e.prop("checked",!1)}),0)},r=function(){e.off("mouseup",n)},n=function(){t(),r()},e.on("mouseup",n),e.one("mouseout",r))}function Ct(){this.value===a.new_option&&(this.setAttribute("data-value-on-focus",this.value),this.value="")}function qt(e){return C(B("Are you sure you want to delete these %1$s selected field(s)?","formidable"),e)}function Nt(){var e=a.conf_delete,t=this.parentNode.parentNode.parentNode.parentNode.parentNode,r=t.parentNode,n=jQuery(this).closest("li.form-field"),i=n.data("fid");if("divider"===n.data("ftype")){var o=document.querySelectorAll(".frm-field-group-hover-target .start_divider .frm_field_box"),l=0;o.forEach((function(e){var t=e.querySelectorAll("li.form-field");t&&(l+=t.length)})),l&&(e=qt(++l))}return r.classList.contains("frm-section-collapsed")||r.classList.contains("frm-page-collapsed")||("divider_section_only"===t.className&&(e=a.conf_delete_sec),this.setAttribute("data-frmverify",e),this.setAttribute("data-frmverify-btn","frm-button-red"),this.setAttribute("data-deletefield",i),Te(),F(this)),!1}function Tt(){this.closest("li.form-field").click()}function Ot(){var e,t;null!==(e=document.querySelector(".frm-field-group-hover-target"))&&(e.classList.add("frm-selected-field-group"),(t=document.createElement("div")).classList.add("frm-delete-field-groups","frm_hidden"),document.body.appendChild(t),t.click())}function Dt(){var e=document.querySelector(".frm-field-group-hover-target");if(null!==e){var t="frm_field_group_"+we(),r=document.createTextNode("");We(r);var n=jQuery(r).closest("li").get(0);n.classList.add("frm_hidden");var i=n.querySelector("ul");i.id=t,jQuery(e.closest("li.frm_field_box")).after(n);var o=ae(jQuery(e)),a=[],l=[],s=o.length,d={},c=0;jQuery(n).on("frm_added_duplicated_field_to_row",(function(e,t){if(d[jQuery(t.duplicatedFieldHtml).attr("data-fid")]=t.originalFieldId,!(s>++c)){var r=jQuery(i),o=ae(r);l.forEach((function(e){e.remove()}));for(var f=0;f0&&ir(Ut(t)))&&l>=12&&(l=Math.floor(12/t)),s=0;s',""),t);e.prepend(r),document.getElementById("frm-field-group-message-dismiss").addEventListener("click",(function(){mr(document.getElementById("frm-field-group-message"))}))}}(),"ul"===e.originalEvent.target.nodeName.toLowerCase()){var t=document.querySelector(".frm-field-group-hover-target");if(t){var r=e.ctrlKey||e.metaKey,n=e.shiftKey,i=t.classList.contains("frm-selected-field-group"),o=function(){var e=jQuery(".frm-selected-field-group");if(e.length)return e;var t=_r();if(t){var r=t.closest("ul");if(r&&1===ae(jQuery(r)).length)return r.classList.add("frm-selected-field-group"),jQuery(r)}return jQuery()}(),a=o.length;if(r||n){var l=_r();if(null===l||jQuery(l).siblings("li.form-field").length||(l.parentNode.classList.add("frm-selected-field-group"),++a),r){if(i)return--a,t.classList.remove("frm-selected-field-group"),void pr(a);++a}else if(n&&!i){++a;var s=o.first();(s.parent().index()=2||1===e&&ae(jQuery(document.querySelector(".frm-selected-field-group"))).length>1?function(){var e,t,r,n,i;if(null!==(e=document.getElementById("frm_field_multiselect_popup")))return e.classList.toggle("frm-unmergable",!hr()),e;(e=d()).id="frm_field_multiselect_popup",hr()||e.classList.add("frm-unmergable"),(t=d()).classList.add("frm-merge-fields-into-row"),t.textContent=B("Merge into row","formidable"),(r=document.createElement("a")).style.marginLeft="5px",r.classList.add("frm_icon_font","frm_arrowdown6_icon"),r.setAttribute("href","#"),t.appendChild(r),e.appendChild(t),(n=d()).classList.add("frm-multiselect-popup-separator"),e.appendChild(n),(i=d()).classList.add("frm-delete-field-groups"),i.appendChild(Rt("frm_trash_svg")),e.appendChild(i),document.getElementById("post-body-content").appendChild(e),jQuery(e).hide().fadeIn()}():yr(),Me()}function gr(e){if(void 0!==e){if(null!==e.originalEvent.target.closest("#frm-show-fields"))return;if(e.originalEvent.target.classList.contains("frm-merge-fields-into-row"))return;if(null!==e.originalEvent.target.closest(".frm-merge-fields-into-row"))return;if(e.originalEvent.target.classList.contains("frm-custom-field-group-layout"))return;if(e.originalEvent.target.classList.contains("frm-cancel-custom-field-group-layout"))return}jQuery(".frm-selected-field-group").removeClass("frm-selected-field-group"),jQuery(document).off("click",gr),yr()}function yr(){var e=document.getElementById("frm_field_multiselect_popup");null!==e&&e.remove()}function hr(){var e,t,r,n,i;if(1===(r=(e=document.querySelectorAll(".frm-selected-field-group")).length))return!1;for(t=0,n=0;n6)return!1}return!0}function vr(e){var t;null===e.originalEvent.target.closest("#frm_field_group_popup")&&(e.originalEvent.target.classList.contains("frm-custom-field-group-layout")||(t=Pt(br(),document.querySelector(".frm-selected-field-group").firstChild),this.appendChild(t)))}function br(){var e=0;return jQuery(document.querySelectorAll(".frm-selected-field-group")).each((function(){e+=ae(jQuery(this)).length})),e}function jr(){var e,t,r,n;n=[],jQuery(".frm-selected-field-group > li.form-field").each((function(){n.push(this.dataset.fid)})),t=function(e){return function(t){t.preventDefault(),function(e){e.forEach((function(e){Qr(e)}))}(e)}}(e=n),null!==(r=document.getElementById("frm_field_multiselect_popup"))&&r.remove(),this.setAttribute("data-frmverify",qt(e.length)),F(this);var i=document.getElementById("frm-confirmed-click");null==i||i.removeAttribute("data-deletefield"),jQuery(i).on("click",t),jQuery("#frm_confirm_modal").one("dialogclose",(function(){jQuery(i).off("click",t)}))}function wr(){Qr(this.getAttribute("data-deletefield"))}function Qr(e){var t=jQuery("#frm_field_id_"+e);xr(e),t.hasClass("edit_field_type_divider")&&t.find("li.frm_field_box[data-fid]").each((function(){xr(this.getAttribute("data-fid"))})),xn()}function xr(e){jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_delete_field",field_id:e,nonce:frmGlobal.nonce},success:function(){var t,r=jQuery(document.getElementById("frm_field_id_"+e)),n=jQuery("#frm-single-settings-"+e);n.is(":visible")&&(null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click(),document.querySelector("#frm-options-panel .frm-single-settings").classList.remove("frm_hidden")),function(e){var t=e[0].querySelectorAll(".frm-inline-modal[data-fills]");t.length&&t.forEach((function(e){e.classList.add("frm_hidden"),e.removeAttribute("data-fills"),e.closest("form").appendChild(e)}))}(n),n.remove(),r.fadeOut("slow",(function(){var e,t=r.closest(".start_divider"),n=r.data("type"),i=r.siblings("li.form-field");if(i.length||(r.is(".edit_field_type_end_divider")?i.length=r.closest("li.form-field").siblings():e=r.closest("ul.frm_sorting").parent()),r.remove(),"break"===n?Tr():"product"===n&&(Be(),nt()),i.length?le(i.first()):e.remove(),0===jQuery("#frm-show-fields li").length||function(){if(j.get(0).childElementCount>1)return!1;var e=j.get(0).firstElementChild.firstElementChild.querySelectorAll("li.frm_field_box");return!(e.length>1)&&e[0].classList.contains("edit_field_type_submit")}()){var o=document.getElementById("frm_form_editor_container");o.classList.remove("frm-has-fields"),o.classList.add("frm-empty-fields")}else t.length&&En(t);R()})),r.length&&wp.hooks.doAction("frm_after_delete_field",r[0])}})}function Er(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_logic_row_"+e).querySelectorAll(".frm_logic_row");return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_logic_row",form_id:t,field_id:e,nonce:frmGlobal.nonce,meta_name:kr(r,"frm_logic_"+e+"_"),fields:tt()},success:function(t){jQuery(document.getElementById("logic_"+e)).fadeOut("fast",(function(){var r=document.getElementById("frm_logic_row_"+e);r.insertAdjacentHTML("beforeend",t);var n=r.querySelector(".frm_logic_row:last-child .frm-logic-rule-text");n&&(n.textContent=r.dataset.ruleText);var i=r.closest(".frm_logic_rows");i.style.height="auto",jQuery(i).fadeIn("fast")}))}}),!1}function kr(e,t,r){return e.length?parseInt(e[e.length-1].id.replace(t,""),10)+1:void 0!==r?r:0}function Lr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_watch_lookup_block_"+e).children;return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_watch_lookup_row",form_id:t,field_id:e,row_key:kr(r,"frm_watch_lookup_"+e+"_"),nonce:frmGlobal.nonce},success:function(t){var r,n=jQuery(document.getElementById("frm_watch_lookup_block_"+e));n.append(t),n.fadeIn("slow"),null===(r=document.getElementById("frm_watch_lookup_label_".concat(e)))||void 0===r||r.classList.remove("frm_hidden!")}}),!1}function Sr(e){var t,r,n=jQuery(e).closest(".frm-single-settings").attr("data-fid"),i=jQuery(e).closest("ul").get(0).querySelectorAll(".field_"+n+"_option");for(t in i)if((r=i[t]).id!==e.id&&r.value===e.value&&"true"!==r.getAttribute("data-duplicate"))return!0;return!1}function Ar(){var e,t;null===this.getAttribute("data-value-on-load")&&(this.setAttribute("data-value-on-load",this.value),t=jQuery(this).closest(".frm-single-settings").attr("data-fid"),(e=document.createElement("input")).value=this.value,e.setAttribute("type","hidden"),e.setAttribute("name","optionmap["+t+"]["+this.value+"]"),this.parentNode.appendChild(e),void 0===S[t]&&(S[t]={}),S[t][this.value]=e),"true"===this.getAttribute("data-duplicate")&&(this.removeAttribute("data-duplicate"),Sr(this))?this.setAttribute("data-value-on-focus",this.getAttribute("data-value-on-load")):""===this.value&&a.new_option===this.getAttribute("data-value-on-focus")||this.setAttribute("data-value-on-focus",this.value)}function Ir(e){var t,r=e.closest(".frm_single_option");return e.parentElement.classList.contains("frm_single_option")?{newValue:r.querySelector('.frm_option_key input[type="text"]').value,newLabel:t=e.value}:(t=r.querySelector('input[type="text"]').value,{newValue:e.value,newLabel:t})}function Br(){var e,t,r,n,i,o,a,l,s,d,c,f,u=function(e){var t=function(e){var t,r,n=null!==(t=null===(r=e.closest(".frm-single-settings").querySelector(".frm_toggle_sep_values"))||void 0===r?void 0:r.checked)&&void 0!==t&&t,i=e.closest(".frm_single_option");return n&&e.parentElement.classList.contains("frm_single_option")?{oldValue:i.querySelector('.frm_option_key input[type="text"]').getAttribute("data-value-on-focus"),oldLabel:e.getAttribute("data-value-on-focus")}:{oldValue:e.getAttribute("data-value-on-focus"),oldLabel:i.querySelector('input[type="text"]').getAttribute("data-value-on-focus")}}(e),r=t.oldValue,n=t.oldLabel,i=Ir(e);return{oldValue:r,oldLabel:n,newValue:i.newValue,newLabel:i.newLabel}}(this),m=u.oldValue,_=u.oldLabel,p=u.newValue,g=u.newLabel;if(m!==p||_!==g){var y=this.closest(".frm-single-settings");if(t=y.getAttribute("data-fid"),e=this.getAttribute("data-value-on-load"),Sr(this))return this.setAttribute("data-duplicate","true"),void(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=e));for(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=p),s=[],rows=D.querySelectorAll(".frm_logic_row"),o=rows.length,a=0;a1)for(document.getElementById("frm-fake-page").style.display="block",e=0;e200)&&(H(a.repeat_limit_min),this.value="")}function Jr(){var e=this.value;""!==e&&(e<1||e>200)&&(H(a.checkbox_limit),this.value="")}function Yr(e,t){jQuery(e).closest(".frm_field_box").find(".frm_"+t+"_form_row .frm_repeat_label").text(e.value)}function Xr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=this.value,r=document.getElementById("frm_show_selected_fields_"+e),n=document.getElementById("frm_show_selected_forms_"+e);jQuery(n).find("select").val(""),"form"===t?(n.style.display="inline",function(e){if(null!==e)for(;e.firstChild;)e.removeChild(e.firstChild)}(r)):(r.style.display="none",n.style.display="none",wn(t,e))}function Zr(){var e,t;(e=en(this))&&(t=jQuery(this).closest(".frm_single_option"),function(e,t,r){var n,i,o,a,l,s,c=r.data("optkey"),f=pn(e),u=jQuery('label[for="field_'+t+"-"+c+'"]'),m="field_options[options_"+e+"]["+c+"]",_=jQuery('input[name="'+m+'[label]"]');if(u.length<1)return rn(e),void((o=r.find('input[name^="default_value_"]')).is(":checked")&&_.length>0&&jQuery('select[name^="item_meta['+e+']"]').val(_.val()));if(a=u.children("input"),n=_.length<1?(_=jQuery('input[name="'+m+'"]')).val():f?jQuery('input[name="'+m+'[value]"]').val():_.val(),!(_.length<1)){if(i=u[0].childNodes,gn(e))l=function(e,t,r){var n,i,o;return(n=e.find("img"))&&(i=n.attr("src")),o=yn(t),fn(t),_n(r.val(),o,i)}(r,e,_),(s=u.find(".frm_image_option_container")).length>0?s.replaceWith(l):(i[i.length-1].nodeValue="",u.append(l));else{var p=!1;i.forEach((function(t,r){if(!1===p)"INPUT"===t.tagName&&(p=r);else if(r===p+1){var n="";!function(e){var t=document.getElementsByName("field_options[image_options_"+e+"]"),r=Array.from(t).find((function(e){return e.checked&&"buttons"===e.value}));return void 0!==r}(e)?t.nodeValue=" "+_.val():(n=d({className:"frm_label_button_container",text:" "+_.val()}),u[0].replaceChild(n,t))}else u[0].removeChild(t)}))}a.val(n),o=r.find('input[name^="default_value_"]'),a.prop("checked",!!o.is(":checked"))}}(e.fieldId,e.fieldKey,t))}function en(e){var t;return!!(t=jQuery(e).closest(".frm_sortable_field_opts")).length&&{fieldId:t.attr("id").replace("frm_field_","").replace("_opts",""),fieldKey:t.data("key")}}function tn(e){var t,r=document.getElementById("field_options_image_size_"+e),n="";return null!==r&&""!==(t=r.value)&&(n=t),n}function rn(e){var t,r,n,i,o,a=jQuery('[name^="item_meta['+e+']"]');if(!(a.length<1)){if(a.is("select"))null!==(i=document.getElementById("frm_placeholder_"+e))&&""===i.value?sn(a[0],{sourceID:e}):sn(a[0],{sourceID:e,placeholder:i.value});else{r=cn(e),jQuery("#field_"+e+"_inner_container > .frm_form_fields").html(""),o=en(jQuery("#frm_delete_field_"+e+"-000_container"));var l=jQuery("#field_"+e+"_inner_container > .frm_form_fields"),s=gn(e),d=s?tn(e):"",c=s?"frm_image_option frm_image_"+d+" ":"",f=Ho(e);for(n="hidden"===a.attr("type")?a.data("field-type"):a.attr("type"),t=0;t=0;a--){var u;l=d[a];var m=null===(u=document.getElementById("frm_field_"+e+"_opts").querySelector('.frm_option_key input[type="text"]'))||void 0===u?void 0:u.value;m||(m=l),s=i.querySelector('option[value="'+m+'"]');var _=nn(e,l),p=_.newValue,g=_.newLabel,y=document.querySelectorAll("#frm_field_"+e+"_opts input[data-value-on-focus]"),h=Array.from(y).find((function(e){return e.value===l}));if(h){var v=h.dataset.valueOnFocus;if(v&&i.querySelector('option[value="'+v+'"]'))continue}an(i,s,p,g)}null!==(s=i.querySelector('option[value=""]'))&&i.prepend(s)}}function an(e,t,r,n){null!==t||e.querySelector('option[value="'+r+'"]')||((t=frmDom.tag("option",{text:n})).value=r),e.prepend(t)}function ln(e,t,r,n,i,o){var a,l="",s=-1!==t.key.indexOf("other"),d="field_"+n+"-"+t.key,c="scale"===e?"radio":e;return a='',this.getSingle=function(){return""!==(l=wp.hooks.applyFilters("frm_admin.build_single_option_template",l,{opt:t,type:e,fieldId:r,classes:o,id:d}))?l:'
                          "+(s?a:"")+"
                          "},this.getSingle()}function sn(e,t){if(null!==e){var r=t.sourceID,n=t.placeholder,i=Ho(r),o=t.other;!function(e){var t;if(void 0!==e.options)for(t=e.options.length-1;t>=0;t--)e.remove(t)}(e);for(var a=cn(r),l=void 0!==n,s=0;s0||d[t].name.indexOf("[value]")>0||d[t].name.indexOf("[image]")>0||d[t].name.indexOf("[price]")>0||(i=r=d[t].value,o=d[t].name.replace("field_options[options_"+e+"][","").replace("[label]","").replace("]",""),m&&(n=d[t].name.replace("[label]","[value]"),r=jQuery('input[name="'+n+'"]').val()),u&&(i=_n(i,f,un(d[t]),fn(e))),a={saved:r,label:i=frmAdminBuild.hooks.applyFilters("frm_choice_field_label",i,e,d[t],u),checked:(l=d[t].id,field=jQuery("#"+l),0!==field.length&&(checkbox=field.siblings("input[type=checkbox]"),checkbox.length&&checkbox.prop("checked"))),key:o},c&&(n=d[t].name.replace("[label]","[price]"),a.price=jQuery('input[name="'+n+'"]').val()),s.push(a));return s}function fn(e){var t=document.getElementById("frm-single-settings-"+e);return null===t?"radio":t.classList.contains("frm-type-checkbox")?"checkbox":"radio"}function un(e){var t,r=jQuery(e).siblings(".frm_image_preview_wrapper");return r.length&&(t=r.find("img")).length?t.attr("src"):""}function mn(e){(e instanceof Element||e instanceof Document)&&(e=e.outerHTML);var t=jQuery.parseHTML(e).reduce((function(e,t){var r=frmDom.cleanNode(t);return"#text"===r.nodeName?e+r.textContent:e+r.outerHTML}),"");return t!==e?mn(t):t}function _n(e,t,r,n){var i,o,l,c=e;return c=mn(c),r?o=m({src:r,alt:c}):(o=d({className:"frm_empty_url"})).innerHTML=a.image_placeholder_icon,i=t?" frm_label_with_image":"",(l=s("span",{className:"frm_text_label_for_image_inner"})).innerHTML=c,s("span",{className:"frm_image_option_container"+i,children:[o,s("span",{className:"frm_text_label_for_image",child:l})]})}function pn(e){return hn("separate_value_"+e)}function gn(e){for(var t=!1,r=document.getElementsByName("field_options[image_options_"+e+"]"),n=0;n=0&&(r.splice(t,1),e.val(r),e.next(".btn-group").find('.multiselect-container input[value=""]').prop("checked",!1))}(jQuery(this))}function An(e){e.val(""),e.next(".btn-group").find('.multiselect-container input[value!=""]').prop("checked",!1)}function In(){jQuery(".frm-hide-empty").each((function(){0===jQuery(this).text().trim().length&&jQuery(this).remove()}))}function Bn(e){e.preventDefault(),Cn(this)}function Cn(e,t){var r=document.getElementById(e.getAttribute("data-open")),n=jQuery(e).closest("p,ul"),i=void 0!==t;n.hasClass("frm-open")?(n.removeClass("frm-open"),r.classList.add("frm_hidden")):(i||(t=Gi(e)),null!==t&&(i||t.focus(),n.after(r),r.setAttribute("data-fills",t.id.replace("-proxy-input","")),0===r.id.indexOf("frm-calc-box")&&Ze(r,!0)),n.addClass("frm-open"),r.classList.remove("frm_hidden"),wp.hooks.doAction("frm_show_inline_modal",r,e))}function qn(e){e.preventDefault(),this.parentNode.classList.add("frm_hidden"),jQuery('.frm-open [data-open="'+this.parentNode.id+'"]').closest(".frm-open").removeClass("frm-open")}function Nn(e){var t=e.target;t.closest(".frm-inline-modal.frm-modal-no-dismiss")||t.closest(".frm-show-inline-modal")||t.closest("#frm_adv_info")||t.closest(".frm-token-proxy-input")||document.querySelectorAll(".frm-inline-modal.frm-modal-no-dismiss:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden"),e.previousElementSibling.classList.remove("frm-open")}))}function Tn(){var e,t,r,n,i,o,a,l=this.getAttribute("data-frmchange").split(",");for(e=0;e',r)),o.innerHTML=c,e.dataset.upsellImage&&o.appendChild(m({src:e.dataset.upsellImage,alt:e.dataset.upgrade})),a.href=function(e,t){var r=e.getAttribute("data-link");return null!=r&&""!==r||(r=t.getAttribute("data-default")),r}(e,a),s.style.display="none",i.style.display=_,l.style.display="block"===_?"inline-block":_,o.style.display=u,a.style.display="block"===f?"inline-block":f}function Yn(e){void 0===e&&(e=""),function(e){var t,r=jQuery(e+" :not(.frm_has_shortcodes) .frm_not_email_message, "+e+" :not(.frm_has_shortcodes) .frm_not_email_to, "+e+" :not(.frm_has_shortcodes) .frm_not_email_subject");for(t=0;t').before('')}function Xn(){var e="success";"options[edit_action]"===this.name&&(e="edit");var t=jQuery(this).val();jQuery("."+e+"_action_box").hide(),"redirect"===t?jQuery("."+e+"_action_redirect_box."+e+"_action_box").fadeIn("slow"):"page"===t?jQuery("."+e+"_action_page_box."+e+"_action_box").fadeIn("slow"):jQuery("."+e+"_action_message_box."+e+"_action_box").fadeIn("slow")}function Zn(e){if(m=e.target,p=jQuery(m),g=p.closest(".frm_form_action_settings"),(y=g.find(".widget-inside")).find("p, div, table").length||((_=g.find(".widget-top")).on("frm-action-loaded",(function(){p.trigger("click"),g.removeClass("open"),y.hide()})),_.trigger("click"),0)){var t=e.target.closest(".frm_form_action_settings"),r=t.querySelectorAll(".wp-editor-area");r.length&&r.forEach((function(e){tinymce.EditorManager.execCommand("mceRemoveEditor",!0,e.id)}));var n=jQuery(t).clone(),i=n.attr("id").replace("frm_form_action_",""),o=ei(i);n.find(".frm_action_id, .frm-btn-group").remove(),n.find('input[name$="['+i+'][ID]"]').val(""),n.find(".widget-inside").hide(),n.find("input[type=text], textarea, input[type=number]").prop("defaultValue",(function(){return this.value})),n.find("input[type=checkbox], input[type=radio]").prop("defaultChecked",(function(){return this.checked}));var a=new RegExp("\\["+i+"\\]","g"),l=new RegExp("_"+i+'"',"g"),s=new RegExp("-"+i+'"',"g"),c=new RegExp('"'+i+'"',"g"),f=n.html().replace(a,"["+o+"]").replace(l,"_"+o+'"');f=f.replace(s,"-"+o+'"').replace(c,'"'+o+'"');var u=d({id:"frm_form_action_"+o,className:n.get(0).className});u.setAttribute("data-actionkey",o),u.innerHTML=f,u.querySelectorAll(".wp-editor-wrap, .wp-editor-wrap *").forEach((function(e){"string"==typeof e.className&&(e.className=e.className.replace(i,o)),e.id=e.id.replace(i,o)})),u.classList.remove("open"),document.getElementById("frm_notification_settings").appendChild(u),r.length&&(r.forEach((function(e){frmDom.wysiwyg.init(e)})),u.querySelectorAll(".wp-editor-area").forEach((function(e){frmDom.wysiwyg.init(e)}))),u.classList.contains("frm_single_on_submit_settings")&&u.querySelector("input.frm-page-search")&&jo(u),lo(),wp.hooks.doAction("frm_after_duplicate_action",u)}var m,_,p,g,y}function ei(e){var t=parseInt(e,10)+11;return null!==document.getElementById("frm_form_action_"+t)&&(t=ei(++t)),t}function ti(){var e,t=jQuery(this).data("actiontype");if(!di(t)){var r=(e=kr(document.querySelectorAll(".frm_form_action_settings"),"frm_form_action_"),void 0!==document.getElementById("frm_form_action_"+e)&&(e+=100),A>=e&&(e=A+1),A=e,e),n=k,i=document.createElement("div");i.classList.add("frm_single_"+t+"_settings");var o=document.getElementById("frm_notification_settings");o.appendChild(i),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_action",type:t,list_id:r,form_id:n,nonce:frmGlobal.nonce},success:function(e){Mi(),i.remove(),document.querySelectorAll(".frm_form_action_settings.open").forEach((function(e){return e.classList.remove("open")}));var n=d();n.innerHTML=e;var a=n.querySelector(".widget-top");Array.from(n.children).forEach((function(e){return o.appendChild(e)})),jQuery(".frm_form_action_settings").fadeIn("slow");var l=document.getElementById("frm_form_action_"+r);l.classList.add("open"),document.getElementById("post-body-content").scroll({top:l.offsetTop+10,left:0,behavior:"smooth"}),si(t),Yn("#frm_form_action_"+r),lo(),jo(l),a&&jQuery(a).trigger("frm-action-loaded"),frmAdminBuild.hooks.doAction("frm_added_form_action",l)}})}}function ri(){var e=document.getElementById("frm_email_addon_menu").classList,t=document.getElementById("actions-search-input");e.contains("frm-all-actions")?(e.remove("frm-all-actions"),e.add("frm-limited-actions")):(e.add("frm-all-actions"),e.remove("frm-limited-actions")),t.value="",Io(t,"input")}function ni(e){e.on("Change",(function(){!function(e){var t,r;(t=document.querySelector(".frm-single-settings:not(.frm_hidden)"))&&null!==(r=t.querySelector(".wp-editor-wrap"))&&r.classList.contains("tmce-active")&&!tinyMCE.activeEditor.isHidden()&&(e.targetElm.value=e.getContent(),jQuery(e.targetElm).trigger("change"))}(e)}))}function ii(e){var t=this;if(null!==e)return this.fragment=document.createDocumentFragment(),this.initOnceInAllInstances=function(){void 0===ii.prototype.endMarker&&(ii.prototype.endMarker=document.getElementById("frm-end-form-marker"))},this.append=function(e){var r=null!==e?e.parentElement.classList:"";null!==e&&(r.contains("frm_field_box")||r.contains("divider_section_only"))&&t.fragment.appendChild(e)},this.moveFields=function(){w.insertBefore(t.fragment,ii.prototype.endMarker)},this.initOnceInAllInstances(),void 0!==e?(this.append(e),void this.moveFields()):{append:this.append,moveFields:this.moveFields}}function oi(){var e=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),t=this.getAttribute("data-emailrow");jQuery("#frm_form_action_"+e+" .frm_"+t+"_row").fadeIn("slow"),jQuery(this).fadeOut("slow")}function ai(){var e=jQuery(this).closest(".frm_form_action_settings"),t=this.getAttribute("data-emailrow"),r=".frm_"+t+"_row",n=".frm_"+t+"_button";jQuery(e).find(n).fadeIn("slow"),jQuery(e).find(r).fadeOut("slow",(function(){jQuery(e).find(r+" input").val("")}))}function li(){var e=jQuery(this).closest(".frm_form_action_settings"),t=".frm_from_to_match_row";e.find('input[name$="[post_content][from]"]').val()===e.find('input[name$="[post_content][email_to]"]').val()?jQuery(e).find(t).fadeIn("slow"):jQuery(e).find(t).fadeOut("slow")}function si(e){var t,r,n=document.querySelectorAll(".frm_"+e+"_action");di(e)?(t=n,r=ci(e)>0,t.forEach((function(e){e.classList.remove("frm_active_action"),e.classList.add("frm_inactive_action"),r&&e.classList.add("frm_already_used")}))):n.forEach((function(e){e.querySelector(".frm_show_upgrade")||(e.classList.remove("frm_inactive_action","frm_already_used"),e.classList.add("frm_active_action"))}))}function di(e){var t=function(e){return jQuery(".frm_single_"+e+"_settings").length}(e)>=ci(e),r={type:e};return wp.hooks.applyFilters("frm_action_at_limit",t,r)}function ci(e){return parseInt(jQuery(".frm_"+e+"_action").data("limit"),10)}function fi(){var e=a.only_one_action,t=this.dataset.limit;void 0!==t&&((t=parseInt(t))>1?e=e.replace(1,t).trim():e+=" "+a.edit_action_text),H(e)}function ui(){var e=jQuery(this).data("emailkey"),t=jQuery(this).closest(".frm_form_action_settings").find(".frm_action_name").val(),r=document.getElementById("form_id").value,n=document.getElementById("frm_logic_row_"+e),i=kr(n.querySelectorAll(".frm_logic_row"),"frm_logic_"+e+"_"),o=d({id:"frm_logic_"+e+"_"+i,className:"frm_logic_row frm_hidden"});return n.appendChild(o),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_logic_row",email_id:e,form_id:r,meta_name:i,type:t,nonce:frmGlobal.nonce},success:function(t){jQuery(document.getElementById("logic_link_"+e)).fadeOut("slow",(function(){o.insertAdjacentHTML("beforebegin",t),o.remove(),jQuery(n).parent(".frm_logic_rows").fadeIn("slow")}))}}),!1}function mi(){var e=jQuery("select.frm_single_post_field");e.css("border-color","");var t=this,r=jQuery(t).val();if(""===r||"checkbox"===r)return!1;e.each((function(){if(jQuery(this).val()===r&&this.name!==t.name)return this.style.borderColor="red",jQuery(t).val(""),H(a.field_already_used),!1}))}function _i(){var e=jQuery(this).val();""===e?(jQuery(".frm_post_content_opt, select.frm_dyncontent_opt").hide().val(""),jQuery(".frm_dyncontent_opt").hide()):"post_content"===e?(jQuery(".frm_post_content_opt").show(),jQuery(".frm_dyncontent_opt").hide(),jQuery("select.frm_dyncontent_opt").val("")):(jQuery(".frm_post_content_opt").hide().val(""),jQuery("select.frm_dyncontent_opt, .frm_form_field.frm_dyncontent_opt").show())}function pi(){var e=jQuery(this).val(),t=jQuery(document.getElementById("frm_dyncontent"));""===e||"new"===e?(t.val(""),jQuery(".frm_dyncontent_opt").show()):jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_display_get_content",id:e,nonce:frmGlobal.nonce},success:function(e){t.val(e),jQuery(".frm_dyncontent_opt").show()}})}function gi(){var e,t,r=document.getElementById("frm_posttax_rows").childNodes,n=document.querySelector(".frm_post_parent_field"),o=document.querySelector(".frm_post_menu_order_field"),a=this.value;jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_replace_posttax_options",post_type:a,nonce:frmGlobal.nonce},success:function(n){for(i=0;i');var e=jQuery(this).closest(".frm_form_action_settings").find('select[name$="[post_content][post_type]"]').val(),t=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),r=jQuery(this).closest(".frm_posttax_row").attr("id").replace("frm_posttax_",""),n=jQuery(this).val(),i=jQuery(document.getElementById(r+"_show_exclude")).is(":checked")?1:0,o=jQuery('select[name$="[post_category]['+r+'][field_id]"]').val(),a=jQuery('input[name="id"]').val();jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_posttax_row",form_id:a,post_type:e,tax_key:r,action_key:t,meta_name:n,field_id:o,show_exclude:i,nonce:frmGlobal.nonce},success:function(e){jQuery(document.getElementById("frm_posttax_"+r)).replaceWith(e)}})}}function wi(){var e=jQuery(this).closest(".frm_postmeta_row"),t=e.find(".frm_cancelnew"),r=e.find(".frm_enternew");return e.find("select.frm_cancelnew").is(":visible")?(t.hide(),r.show()):(t.show(),r.hide()),e.find("input.frm_enternew, select.frm_cancelnew").val(""),!1}function Qi(){var e=jQuery(this),t=e.val();"checkbox"===e.attr("type")&&!1===this.checked&&(t="");var r=e.data("toggleclass");""===t?jQuery("."+r).hide():(jQuery("."+r).show(),jQuery(".hide_"+r+"_"+t).hide())}function xi(){Rn()||(Wn(this),Hn(document.querySelector(".frm_form_settings")))}function Ei(e){return e.preventDefault(),ki(jQuery(this),this.getAttribute("data-code")),!1}function ki(e,t){var r=!1,i=e;if("object"===n(e)){if(e.hasClass("frm_noallow"))return;void 0===(i=jQuery(e).closest("[data-fills]").attr("data-fills"))&&void 0!==(i=e.closest("div").attr("class"))&&(i=i.split(" ")[1])}if(void 0===i){var o=document.activeElement;"search"===o.type?null===(i=o.id.replace("-search-input","")).match(/\d/gi)&&(i=(o=jQuery(".frm-single-settings:visible ."+i)).attr("id")):i=o.id}i&&(r=jQuery("#wp-"+i+"-wrap.wp-editor-wrap").length>0);var a=jQuery(document.getElementById(i));if(void 0===e.attr("data-shortcode")&&(!a.length||void 0===a.attr("data-shortcode"))){var l=e.parents("ul.frm_code_list").attr("data-shortcode");"undefined"!==l&&"no"===l||(t="["+t+"]")}if(r&&(wpActiveEditor=i),!a.length)return!1;if("[default-html]"===t||"[default-plain]"===t){var s=0;"[default-plain]"===t&&(s=1),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_get_default_html",form_id:jQuery('input[name="id"]').val(),plain_text:s,nonce:frmGlobal.nonce},elementId:i,success:function(e){if(r){var t=document.createElement("p");t.innerText=e,send_to_editor(t.innerHTML)}else Li(a,e)}})}else t=function(e,t,r){return"object"===n(t)&&t instanceof jQuery&&0===r[0].id.indexOf("success_url_")&&(t=t[0]).closest("#frm-insert-fields-box")?(t.parentNode.classList.contains("frm_insert_url")||(e=e.replace("]"," sanitize_url=1]")),e):e}(t,e,a),r?send_to_editor(t):Li(a,t);return!1}function Li(e,t){if(document.selection)e[0].focus(),document.selection.createRange().text=t;else{obj=e[0];var r=obj.selectionEnd;t=function(e,t,r,n){var i=e.data("sep");if(void 0===i)return t;var o=e.val();if(!o.trim().length)return t;var a=new RegExp(i+"\\s*$"),l=new RegExp("^\\s*"+i);return o.substr(0,r).trim().length&&!1===a.test(o.substr(0,r))&&(t=i+t),o.substr(n,o.length).trim().length&&!1===l.test(o.substr(n,o.length))&&(t+=i),t}(e,t,obj.selectionStart,r),obj.value=obj.value.substr(0,obj.selectionStart)+t+obj.value.substr(obj.selectionEnd,obj.value.length);var n=r+t.length;!function(e,t){if(e.classList.contains("frm_classes")&&Si(t)){var r=e.value.split(" ").filter(Si);r.length&&(e.value=function(e,t,r){var n=e.split(" ").filter((function(e){return(e=e.trim()).length&&!t.includes(e)}));return n.includes(r)||n.push(r),n.join(" ")}(e.value,r,t.trim()))}}(obj,t),obj.focus(),obj.setSelectionRange(n,n)}Pn(e)}function Si(e){return["frm_half","frm_third","frm_two_thirds","frm_fourth","frm_three_fourths","frm_fifth","frm_sixth","frm2","frm3","frm4","frm6","frm8","frm9","frm10","frm12"].includes(e.trim())}function Ai(){var e=document.getElementById("frm-id-condition"),t=document.getElementById("frm-key-condition");"id"===this.value?(e.classList.remove("frm_hidden"),t.classList.add("frm_hidden"),Io(t,"change")):(e.classList.add("frm_hidden"),t.classList.remove("frm_hidden"),Io(e,"change"))}function Ii(){var e,t,r=document.getElementById("frm-id-key-condition-id").checked?"frm-id-condition":"frm-key-condition",n=document.getElementById("frm-is-condition").value,i=document.getElementById("frm-text-condition").value,o=document.getElementById("frm-insert-condition");t="if "+(e=(r=document.getElementById(r)).options[r.selectedIndex].value)+" "+n+'="'+i+'"]',o.setAttribute("data-code",t+a.conditional_text+"[/if "+e),o.innerHTML="["+t+"[/if "+e+"]"}function Bi(){Cn($i(this),this)}function Ci(e){e.preventDefault(),e.stopPropagation(),Oi(this)}function qi(e){!function(e){var t;if(e.id.startsWith("field_options_type_")){var r=e.id.split("_"),n=r.length&&r[r.length-1];null!==(t=document.querySelector("#frm-single-settings-".concat(n)))&&void 0!==t&&t.classList.contains("frm-type-".concat(e.value))||Ni()}}(e.target)}function Ni(e){var t;void 0===e&&(e=B("You are changing the field type. Not all field settings will appear as expected until you reload the page. Would you like to reload the page now?","formidable")),frmDom.modal.maybeCreateModal("frmSaveAndReloadModal",{title:B("Save and Reload?","formidable"),content:(t=d(e),t.style.padding="var(--gap-md)",t),footer:function(){var e=frmDom.modal.footerButton({text:B("Save and Reload","formidable"),buttonType:"primary"});_(e,(function(){Pi()}));var t=frmDom.modal.footerButton({text:B("Cancel","formidable"),buttonType:"cancel"});return t.classList.add("dismiss"),frmDom.div({children:[t,e]})}()})}function Ti(e){var t;if(e instanceof Event){var r=document.querySelectorAll(".frm-single-settings .frm-show-box.frmsvg use"),n=Array.from(r).find((function(e){return"#frm_close_icon"===e.getAttribute("href")}));if(void 0===n)return;t=n.parentElement}else t=e;var i=t.getBoundingClientRect(),o=document.getElementById("frm_adv_info"),a=o.parentElement.getBoundingClientRect();o.style.top=i.top-a.top+32+"px",o.style.left=i.left-a.left-280+"px"}function Oi(e,r){var n=Gi(e),i=document.getElementById("frm_adv_info"),o=e.className;if("svg"===e.tagName&&(e=e.firstElementChild),"use"===e.tagName&&null===(o=e.getAttributeNS("http://www.w3.org/1999/xlink","href"))&&(o=e.getAttribute("href")),-1!==o.indexOf("frm_close_icon"))Wi(i);else{if(Ti(e),jQuery(".frm_code_list a").removeClass("frm_noallow"),n.classList.contains("frm_not_email_to")?jQuery("#frm-insert-fields-box .frm_code_list li:not(.show_frm_not_email_to) a").addClass("frm_noallow"):n.classList.contains("frm_not_email_subject")&&jQuery(".frm_code_list li.hide_frm_not_email_subject a").addClass("frm_noallow"),i.setAttribute("data-fills",n.id),i.style.display="block","use"===e.tagName)if(e.hasAttributeNS("http://www.w3.org/1999/xlink","href"))e.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon");else{var l=document.createElementNS("http://www.w3.org/2000/svg","use");l.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon"),e.parentNode.replaceChild(l,e)}else e.className=o.replace("frm_more_horiz_solid_icon","frm_close_icon");"nofocus"!==r&&("none"!==n.style.display?n.focus():jQuery(tinymce.get(n.id)).trigger("focus")),function(e){["address","body"].forEach((function(r){!function(e,r){var n,i;n=a.contextualShortcodes[r+"Selector"],i=a.contextualShortcodes[r];var o,l=e.matches(n),s=function(e){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=t(e))){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw o}}}}(i);try{for(s.s();!(o=s.n()).done;){var d,c=o.value,f=null===(d=document.querySelector('#frm-adv-info-tab .frm_code_list [data-code="'+c+'"]'))||void 0===d?void 0:d.closest("li");null==f||f.classList.toggle("frm_hidden",!l)}}catch(e){s.e(e)}finally{s.f()}}(e,r)}))}(n)}}function Di(e){return 0===a.contextualShortcodes.length||!function(e){var t=e.querySelector("a");if(!t)return!1;var r=t.dataset.code;return a.contextualShortcodes.address.includes(r)||a.contextualShortcodes.body.includes(r)}(e)||function(e){var t=e.querySelector("a").dataset.code,r=document.getElementById("frm_adv_info").dataset.fills,n=document.getElementById(r),i=a.contextualShortcodes;return i.address.includes(t)?n.matches(i.addressSelector):n.matches(i.bodySelector)}(e)}function Mi(){E||(E=1,window.addEventListener("beforeunload",zi))}function Fi(){E=0}function Hi(){E=0}function Pi(){var e=document.getElementById("frm_submit_side_top");e.classList.contains("frm_submit_ajax")&&e.setAttribute("data-new-addon-installed",!0),e.click()}function zi(e){E&&(e.preventDefault(),e.returnValue="")}function Ri(e,t){var r={my:"top",at:"top+"+t,of:window};e.dialog("option","position",r)}function Gi(e){for(var t,r=e.nextElementSibling;null!==r&&("INPUT"!==r.tagName&&"TEXTAREA"!==r.tagName||r.classList.contains("frm-token-input-field"));)r=Gi(r);return r||(r=null===(t=e.closest(".frm-field-formula"))||void 0===t?void 0:t.querySelector(".frm-calc-field")),r}function $i(e){for(var t=e.previousElementSibling;null!==t&&"I"!==t.tagName&&"svg"!==t.tagName;)t=$i(t);return t}function Wi(e){var t,r,n,i;if((void 0!==e||null!==(e=document.getElementById("frm_adv_info")))&&null===document.getElementById("frm_dyncontent")){for(e.style.display="none",n=document.querySelectorAll(".frm-show-box.frm_close_icon"),t=0;t"+r.data.name+": "+r.data.msg+"

                          ":'

                          Imported '+r.data.name+"

                          ",e.find(".status").prepend(n),e.find(".status").show(),N.importQueue=jQuery.grep(N.importQueue,(function(e){return e!=t})),N.imported++,0===N.importQueue.length?(e.find(".process-count").hide(),e.find(".forms-completed").text(N.imported),e.find(".process-completed").show()):(e.find(".form-current").text(N.imported+1),Xi(e)))}))}function Zi(e){e.preventDefault();var t=!1,r=jQuery('input[name="frm_export_forms[]"]');jQuery('input[name="frm_export_forms[]"]:checked').val()||(r.closest(".frm-table-box").addClass("frm_blank_field"),t="stop");var n=jQuery('input[name="type[]"]');if(jQuery('input[name="type[]"]:checked').val()||"checkbox"!==n.attr("type")||(n.closest("p").addClass("frm_blank_field"),t="stop"),"stop"===t)return!1;e.stopPropagation(),this.submit()}function eo(){var e=jQuery(this).closest(".frm_blank_field");if(void 0!==e){var t=this.name;("type[]"===t&&jQuery('input[name="type[]"]:checked').val()||"frm_export_forms[]"===t&&jQuery(this).val())&&e.removeClass("frm_blank_field")}}function to(){null!==jQuery(this).val().match(/\.csv$/i)?jQuery(".show_csv").fadeIn():jQuery(".show_csv").fadeOut()}function ro(){var e=document.querySelector('select[name="format"]');return e?e.value:""}function no(e){var t,r,n=e.target.value;oo(n),io.call(e.target),t=n,r=document.getElementById("frm-export-select-all"),"csv"===t?(r.checked=!1,r.disabled=!0):r.disabled=!1}function io(){var e=jQuery(this),t=e.find(":selected"),r=t.data("support"),n=r.indexOf("|");jQuery('input[name="type[]"]').each((function(){this.checked=!1,r.indexOf(this.value)>=0?(this.disabled=!1,-1===n&&(this.checked=!0)):this.disabled=!0})),"csv"===e.val()?(jQuery(".csv_opts").show(),jQuery(".xml_opts").hide()):(jQuery(".csv_opts").hide(),jQuery(".xml_opts").show());var i=t.data("count"),o=jQuery('input[name="frm_export_forms[]"]');"single"===i?(o.prop("multiple",!1),o.prop("checked",!1)):(o.prop("multiple",!0),o.prop("disabled",!1)),e.trigger("change")}function oo(e){if(""!==e){var t=document.querySelectorAll(".frm-is-repeater");t.length&&("csv"===e?t.forEach((function(e){e.classList.remove("frm_hidden")})):t.forEach((function(e){e.classList.add("frm_hidden")})),Lo.call(document.querySelector(".frm-auto-search")))}}function ao(){var e=jQuery("select[name=format]").find(":selected").data("count"),t=jQuery('input[name="frm_export_forms[]"]');"single"===e&&this.checked?(t.prop("disabled",!0),this.removeAttribute("disabled")):t.prop("disabled",!1)}function lo(){jQuery(".frm_multiselect").hide().each(frmDom.bootstrap.multiselect.init)}function so(e){e.preventDefault(),uo(this,"frm_multiple_addons")}function co(e){e.preventDefault(),uo(this,"frm_activate_addon")}function fo(e){e.preventDefault(),uo(this,"frm_install_addon")}function uo(e,t){var r,n,i,o;jQuery(".frm-addon-error").remove(),n=(r=jQuery(e)).attr("rel"),i=r.parent(),o=i.parent().find(".addon-status-label"),r.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:t,nonce:frmGlobal.nonce,plugin:n},success:function(e){var n,a,l;"string"!=typeof(e=null!==(n=null===(a=e)||void 0===a?void 0:a.data)&&void 0!==n?n:e)&&"string"==typeof e.message&&(void 0!==e.saveAndReload&&(l=e.saveAndReload),e=e.message);var s=go(e);s?yo(s,i,r):(_o(e,r,o,i,l,t),wp.hooks.doAction("frm_update_addon_state",e))},error:function(){r.removeClass("frm_loading_button")}})}function mo(e){e.preventDefault();var t=jQuery(this),r=t.parent().parent(),n=t.attr("rel");t.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:"frm_install_addon",nonce:a.nonce,plugin:n,hostname:r.find("#hostname").val(),username:r.find("#username").val(),password:r.find("#password").val()},success:function(e){var n,i,o=go(e=null!==(n=null===(i=e)||void 0===i?void 0:i.data)&&void 0!==n?n:e);o?yo(o,r,t):_o(e,t,message,r)},error:function(){t.removeClass("frm_loading_button")}})}function _o(e,t,r,n,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"frm_activate_addon",l=document.querySelectorAll(".frm-addon-status");l.forEach((function(t){t.textContent=e,t.style.display="block"})),t.css({opacity:"0"}),document.querySelectorAll(".frm-oneclick").forEach((function(e){e.style.display="none"})),jQuery("#frm_upgrade_modal h2").hide(),jQuery("#frm_upgrade_modal .frm_lock_icon").addClass("frm_lock_open_icon"),jQuery("#frm_upgrade_modal .frm_lock_icon use").attr("xlink:href","#frm_lock_open_icon");var s={frm_activate_addon:{class:"frm-addon-active",message:a.active},frm_deactivate_addon:{class:"frm-addon-installed",message:a.installed},frm_uninstall_addon:{class:"frm-addon-not-installed",message:a.not_installed}};s.frm_install_addon=s.frm_activate_addon;var c=r[0];c&&(c.textContent=s[o].message);var f=n[0].parentElement;f.classList.remove("frm-addon-not-installed","frm-addon-installed","frm-addon-active"),f.classList.add(s[o].class),t[0].classList.remove("frm_loading_button"),document.querySelectorAll(".frm-admin-page-import, #frm-admin-smtp, #frm-welcome").length>0?window.location.reload():["settings","form_builder"].includes(i)&&l.forEach((function(e){var t=null!==e.closest("#frm_upgrade_modal");e.appendChild(function(e,t){var r=[po(e)];return t&&r.push(function(){var e=document.createElement("a");return e.setAttribute("href","#"),e.classList.add("button","button-secondary","frm-button-secondary","dismiss"),e.textContent=B("Close","formidable"),e}()),d({className:"frm-save-and-reload-options",children:r})}(i,t))}))}function po(e){var t=document.createElement("button");return t.classList.add("frm-save-and-reload","button","button-primary","frm-button-primary"),t.textContent=B("Save and Reload","formidable"),t.addEventListener("click",(function(){var t,r;"form_builder"===e?Pi():"settings"===e&&null!==(t=document.getElementById("form_settings_page"))&&null!==(r=t.querySelector("form.frm_form_settings"))&&(E=0,r.submit())})),t}function go(e){return"string"!=typeof e&&(void 0===e.success||!e.success)&&(e.form&&jQuery(e.form).is("#message")?{message:jQuery(e.form).find("p").html()}:e)}function yo(e,t,r){e.form?(jQuery(".frm-inline-error").remove(),r.closest(".frm-card").html(e.form).css({padding:5}).find("#upgrade").attr("rel",r.attr("rel")).on("click",mo)):(t.append('

                          '+e.message+"

                          "),r.removeClass("frm_loading_button"),jQuery(".frm-addon-error").delay(4e3).fadeOut())}function ho(){bo()}function vo(e){!function(e,t,r){var n=jQuery("#frm_leave_email_error");n.removeClass("frm_hidden").attr("frm-error",r),jQuery("#frm_leave_email").one("keyup",(function(){n.addClass("frm_hidden")}))}(0,0,e)}function bo(){var e=document.getElementById("frmapi-email-form");jQuery.ajax({dataType:"json",url:e.getAttribute("data-url"),success:function(t){var r=t.renderedHtml;r=r.replace(/]*(formidableforms.css|action=frmpro_css)[^>]*>/gi,""),e.innerHTML=r}})}function jo(e){frmDom.autocomplete.initSelectionAutocomplete(e)}function wo(e){var t=this.parentNode.parentNode,r=t.elements.type.value;e.preventDefault(),this.classList.add("frm_loading_button"),xo(t,r,this)}function Qo(e){var t=this.elements.type.value,r=this.querySelector("button");e.preventDefault(),r.classList.add("frm_loading_button"),xo(this,t,r)}function xo(e,t,r){var n=function(e){var t,r,n={},i=e.elements;for(r=0;r=0||So(l,n)?(s&&Di(o[e])&&o[e].classList.remove("frm_hidden"),o[e].classList.add("frm-search-result")):(o[e].classList.add("frm_hidden"),o[e].classList.remove("frm-search-result"))}(t=document.querySelector("#frm-insert-fields"))&&t.querySelectorAll(":scope > .frm-with-line").forEach((function(e){var t=e.nextElementSibling;if(t){var r=t.querySelectorAll(":scope > li.frmbutton"),n=Array.from(r).every((function(e){return e.classList.contains("frm_hidden")}));e.classList.toggle("frm_hidden",n)}})),jQuery(this).trigger("frmAfterSearch")}function So(e,t){return"s"!==t&&"s"!==e[e.length-1]&&(e+"s").indexOf(t)>=0}function Ao(e){e.stopPropagation()}function Io(e,t){var r=document.createEvent("HTMLEvents");r.initEvent(t,!1,!0),e.dispatchEvent(r)}function Bo(e,t){var r,n=new XMLHttpRequest,i="string"==typeof e?e:Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&");return n.open("post",ajaxurl,!0),n.onreadystatechange=function(){if(n.readyState>3&&200==n.status){r=n.responseText;try{r=JSON.parse(r)}catch(e){}t(r)}},n.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.setRequestHeader("Content-type","application/x-www-form-urlencoded"),n.send(i),n}function Co(e,t){e.classList.add("frm-fade"),setTimeout(t,1e3)}function qo(e){jQuery(e).css("visibility","hidden")}function No(e){jQuery(e).css("visibility","visible")}function To(e,t){var r=jQuery(e);if(!r.length)return!1;void 0===t&&(t="550px");var n={dialogClass:"frm-dialog",modal:!0,autoOpen:!1,closeOnEscape:!0,width:t,resizable:!1,draggable:!1,open:function(){var e,t;jQuery(".ui-dialog-titlebar").addClass("frm_hidden").removeClass("ui-helper-clearfix"),jQuery("#wpwrap").addClass("frm_overlay"),jQuery(".frm-dialog").removeClass("ui-widget ui-widget-content ui-corner-all"),r.removeClass("ui-dialog-content ui-widget-content"),e=r,t=function(){e.dialog("close")},jQuery(".ui-widget-overlay").on("click",t),e.on("click","a.dismiss",t)},close:function(){jQuery("#wpwrap").removeClass("frm_overlay"),jQuery(".spinner").css("visibility","hidden"),this.removeAttribute("data-option-type");var e=document.getElementById("bulk-option-type");e&&(e.value="")}};return r.dialog(n),r}function Oo(e,t){if("#"===t){var r=document.getElementById(e),n=r.style.display;r.style.display="none"===n?"block":"none"}else e.is(":visible")?e.hide():e.show()}function Do(){window.onbeforeunload=null;var e=jQuery(window);e.off("beforeunload.widgets"),e.off("beforeunload.edit-post")}function Mo(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);if(null!==t&&"form"===t.dataset.type)if(t=jQuery(t),this.options[this.selectedIndex].value){t.find(".frm-not-set")[0].classList.add("frm_hidden");var r=t.find(".frm-embed-message");r.html(r.data("embedmsg")+this.options[this.selectedIndex].text),t.find(".frm-embed-field-placeholder")[0].classList.remove("frm_hidden")}else t.find(".frm-not-set")[0].classList.remove("frm_hidden"),t.find(".frm-embed-field-placeholder")[0].classList.add("frm_hidden")}function Fo(){var e=jQuery(this).closest(".frm-single-settings"),t=e.find(".frmjs_product_choices"),r=e.find(".frm_prod_options_heading"),n=this.options[this.selectedIndex].value;t.removeClass("frm_prod_type_single frm_prod_type_user_def"),r.removeClass("frm_prod_user_def"),"single"===n?t.addClass("frm_prod_type_single"):"user_def"===n&&(t.addClass("frm_prod_type_user_def"),r.addClass("frm_prod_user_def"))}function Ho(e){var t=document.getElementById("frm_field_id_"+e);return null!==t&&"product"===t.getAttribute("data-type")}function Po(){var t=function(e,t){return window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]},r=function(e,t,r){window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]=r},n=[1,2,3,4,5,6,7,8,9,10,11,12].map((function(e){return"frm"+e})),i=["first","middle","last"];document.addEventListener("change",(function(o){o.target.matches(".frm_name_layout_dropdown")&&function(o){var a,l=o.target.value.split("_"),s=o.target.dataset.fieldId,d=document.querySelector("#field_"+s+"_inner_container .frm_combo_inputs_container"),c=(a=l.length,"frm"+parseInt(12/a));i.forEach((function(t){var i,o=d.querySelector('[data-sub-field-name="'+t+'"]');o&&(o.classList.add("frm_hidden"),(i=o.classList).remove.apply(i,e(n)),r(s,t,o))})),l.forEach((function(e){var r=t(s,e);r&&(r.classList.remove("frm_hidden"),r.classList.add(c),d.append(r))})),i.forEach((function(e){var t=document.querySelector(".frm_sub_field_options-"+e+'[data-field-id="'+s+'"]');t&&(t.classList.add("frm_hidden"),r(s,e+"_options",t))})),l.forEach((function(e){var r=t(s,e+"_options");r&&r.classList.remove("frm_hidden")}))}(o)}),!1)}function zo(e,t){var r,n,i,o=!1,a=!1;(r=t.newOption?(new DOMParser).parseFromString(t.newOption,"text/html").body.childNodes[0]:t).querySelectorAll("svg").forEach((function(e,t){(n=e.getElementsByTagNameNS("http://www.w3.org/2000/svg","use")[0])&&("#frm_drag_icon"===(i=n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("href"))&&(o=!0),"#frm_save_icon"===i&&(a=!0))})),o||r.prepend(b.drag.cloneNode(!0)),r.querySelector("[id^=field_key_".concat(e,"-]"))&&!a&&r.querySelector("[id^=field_key_".concat(e,"-]")).after(b.save.cloneNode(!0)),t.newOption&&(t.newOption=r)}function Ro(){var e=document.getElementById("frm_leave_email").value.trim();if(""!==e)if(!1!==/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e)){var t=jQuery("#frmapi-email-form").find("form"),r=t.find('[type="email"]').not(".frm_verify");if(r.length){if(document.getElementById("frm_empty_inbox")){document.getElementById("frm-add-my-email-address").remove();var n=document.getElementById("frm_leave_email_wrapper");if(n){n.classList.add("frm_hidden");var i=c({className:"frm-wait frm_spinner"});i.style.visibility="visible",i.style.float="none",i.style.width="unset",n.parentElement.insertBefore(i,n.nextElementSibling)}}r.val(e),jQuery.ajax({type:"POST",url:t.attr("action"),data:t.serialize()+"&action=frm_forms_preview"}).done((function(e){if(-1!==jQuery(e).find(".frm_message").text().trim().indexOf("Thanks!")){var t=document.getElementById("frmapi-email-form").parentElement.querySelector(".frm_spinner");t&&t.remove(),wp.hooks.applyFilters("frm_thank_you_on_signup",!0)&&document.getElementById("frm_leave_email_wrapper").replaceWith(c(B("Thank you for signing up!","formidable")))}else vo("invalid")}))}}else vo("invalid");else vo("empty")}function Go(e){if(D||e.stopPropagation(),!(e.target.classList.contains("frm-show-box")||e.target.parentElement&&e.target.parentElement.classList.contains("frm-show-box"))){var t=document.getElementById("frm_adv_info");t&&(t.dataset.fills===e.target.id&&void 0!==e.target.id||e.target.closest("#frm_adv_info")||"none"===t.style.display||Wi(t))}}return{init:function(){var t,r,n,i,o,a,l;!function(){jQuery(document).on("click","#frm-add-my-email-address",(function(e){e.preventDefault(),Ro()}));var e=document.getElementById("frm_empty_inbox"),t=document.getElementById("frm_leave_email");if(e&&t){var r=document.getElementById("frm-leave-email-modal");r.classList.remove("frm_hidden"),r.querySelector(".frm_modal_footer").classList.add("frm_hidden"),t.addEventListener("keyup",(function(e){if("Enter"===e.key){var t=document.getElementById("frm-add-my-email-address");t&&t.click()}}))}}(),r=document.querySelector(".frm-admin-footer-links"),n=null!==(t=document.querySelector(".frm_page_container"))&&void 0!==t?t:document.getElementById("wpbody-content"),r&&n&&(n.appendChild(r),r.classList.remove("frm_hidden")),N={},jQuery(".wp-admin").on("click",(function(e){var t=jQuery(e.target),r=jQuery(".dropdown.open");!r.length||t.hasClass("dropdown")||t.closest(".dropdown").length||r.removeClass("open")})),jQuery("#frm_bs_dropdown:not(.open) a").on("click",Lt),void 0===k&&(k=jQuery(document.getElementById("form_id")).val()),document.querySelectorAll(".frm-warning-dismiss").forEach((function(e){_(e,St)})),frmAdminBuild.inboxBannerInit(),j.length>0?frmAdminBuild.buildInit():null!==document.getElementById("frm_notification_settings")?frmAdminBuild.settingsInit():null!==document.getElementById("frm_styling_form")?frmAdminBuild.styleInit():null!==document.getElementById("form_global_settings")?frmAdminBuild.globalSettingsInit():null!==document.getElementById("frm_export_xml")?frmAdminBuild.exportInit():null!==document.querySelector(".frm-inbox-wrapper")?frmAdminBuild.inboxInit():null!==document.getElementById("frm-welcome")?frmAdminBuild.solutionInit():(function(){if(document.body.classList.contains("frm-admin-page-entries")){var e=document.getElementById("screen-options-wrap");if(e){var t=d({className:"frm_warning_style",text:B("Only 10 columns can be selected at a time.","formidable")});t.style.margin=0;var r=e.querySelector("legend");r.parentNode.insertBefore(t,r.nextElementSibling);var n=Array.from(e.querySelectorAll('input[type="checkbox"]')),i=function(){n.reduce((function(e,t){return t.checked?e+1:e}),0)>=10?(t.classList.remove("frm_hidden"),n.forEach((function(e){e.checked||(e.parentNode.classList.add("frm_noallow"),e.disabled=!0)}))):t.classList.add("frm_hidden")};i(),n.forEach((function(e){e.addEventListener("change",(function(e){e.target.checked?i():(t.classList.add("frm_hidden"),n.forEach((function(e){e.parentNode.classList.remove("frm_noallow"),e.disabled=!1})))}))}))}}}(),jo(),jQuery("[data-frmprint]").on("click",(function(){return window.print(),!1}))),jQuery(document).on("change","select[data-toggleclass], input[data-toggleclass]",Qi),function(){function e(e){var t=e.options[e.selectedIndex];e.querySelectorAll("option[data-dependency]:not([data-dependency-skip])").forEach((function(e){var r=document.querySelector(e.dataset.dependency);null==r||r.classList.toggle("frm_hidden",t!==e)}))}document.querySelectorAll("select.frm_select_with_dependency").forEach(e),frmDom.util.documentOn("change","select.frm_select_with_dependency",(function(t){return e(t.target)}))}(),(jQuery(document.getElementById("frm_adv_info")).length>0||jQuery(".frm_field_list").length>0)&&frmAdminBuild.panelInit(),i=jQuery(".wrap, .frm_wrap"),o=document.getElementById("frm_confirm_modal"),a=!1,l=!1,jQuery(o).on("click","[data-deletefield]",wr),jQuery(o).on("click","[data-removeid]",G),jQuery(o).on("click","[data-trashtemplate]",ko),i.on("click",".frm_remove_tag, .frm_remove_form_action",G),i.on("click","a[data-frmverify]",M),i.on("click","a[data-frmtoggle]",P),i.on("click","a[data-frmhide], a[data-frmshow]",z),i.on("change","input[data-frmhide], input[data-frmshow]",z),i.on("click",".widget-top,a.widget-action",$),i.on("mouseenter.frm",".frm_bstooltip, .frm_help",(function(){jQuery(this).off("mouseenter.frm"),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(this).tooltip("show")})),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(document).on("click","#doaction, #doaction2",(function(e){var t="doaction"===this.id?"top":"bottom",r=document.getElementById("bulk-action-selector-"+t),n=document.getElementById("confirm-bulk-delete-"+t);if(null!==r&&null!==n){if(a=this,!l&&"bulk_delete"===r.value)return e.preventDefault(),F(n),!1}else a=!1})),jQuery(document).on("click","#frm-confirmed-click",(function(e){if(!1!==a&&!e.target.classList.contains("frm-btn-inactive"))return"confirm-bulk-delete"===this.getAttribute("href")?(e.preventDefault(),l=!0,a.click(),!1):void 0})),function(){var e=To("#frm_upgrade_modal");function t(t){var r,n,i;if((r=t.target).classList){var o=r.classList.contains("frm_show_expired_modal")||null!==r.querySelector(".frm_show_expired_modal")||r.closest(".frm_show_expired_modal");if("change"===t.type&&r.classList.contains("frm_select_with_upgrade")){var a=r.options[r.selectedIndex];a&&a.dataset.upgrade&&(r=a)}if(!r.dataset.upgrade){var l=r.closest("[data-upgrade]");if(!l){if(!(l=r.closest(".frm_field_box")))return;r.dataset.upgrade=""}r=l}if(o)wp.hooks.doAction("frm_show_expired_modal",r);else{var s=r.dataset.upgrade;if(s&&!r.classList.contains("frm_show_upgrade_tab")){t.preventDefault();var d=e.get(0),c=d.querySelector(".frm_lock_icon");c&&(c.style.display="block",c.classList.remove("frm_lock_open_icon"),c.querySelector("use").setAttribute("href","#frm_lock_icon"));var f="frm_upgrade_modal_image",u=document.getElementById(f);u&&u.remove(),r.dataset.image&&(c&&(c.style.display="none"),c.parentNode.insertBefore(m({id:f,src:frmGlobal.url+"/images/"+r.dataset.image}),c));var _=d.querySelector(".license-level");_&&(_.textContent=Vn(r)),Jn(r,"modal",s),d.querySelector(".frm_are_not_installed").style.display=r.dataset.image?"none":"inline-block",d.querySelector(".frm_feature_label").textContent=s,d.querySelector("h2").style.display="block",e.dialog("open");var p=d.querySelector(".button-primary:not(.frm-oneclick-button)");n=p.getAttribute("href").replace(/(medium=)[a-z_-]+/gi,"$1"+r.getAttribute("data-medium")),null===(i=r.getAttribute("data-content"))&&(i=""),n=n.replace(/(content=)[a-z_-]+/gi,"$1"+i),p.setAttribute("href",n)}}}}!1!==e&&(document.addEventListener("click",t),frmDom.util.documentOn("change","select.frm_select_with_upgrade",t))}(),frmDom.util.documentOn("click","[data-modal-title]",Un);var s=jQuery(document.getElementById("frm_shortcodediv"));s.length>0&&(jQuery("a.edit-frm_shortcode").on("click",(function(){return s.is(":hidden")&&(s.slideDown("fast"),this.style.display="none"),!1})),jQuery(".cancel-frm_shortcode","#frm_shortcodediv").on("click",(function(){return s.slideUp("fast"),s.siblings("a.edit-frm_shortcode").show(),!1}))),jQuery(document).on("click","#frm-nav-tabs a",W),jQuery(".post-type-frm_display .frm-nav-tabs a, .frm-category-tabs a").on("click",(function(){var e=this.classList.contains("frm_show_upgrade_tab");if(!this.classList.contains("frm_noallow")||e)return e&&Kn(this),U(this),!1})),U(jQuery(".starttab a"),"auto"),jQuery(document).on("click","#frm-fid-search-menu a",(function(){var e=this.id.replace("fid-","");return jQuery('select[name="fid"]').val(e),Hn(document.getElementById("posts-filter")),!1})),jQuery(".frm_select_box").on("click focus",(function(){this.select()})),jQuery(document).on("input search change",".frm-auto-search:not(#frm-form-templates-page #template-search-input)",Lo),jQuery(document).on("focusin click",".frm-auto-search",Ao);var c=jQuery(".frm-auto-search");""!==c.val()&&c.trigger("keyup"),FrmFormsConnect.init(),jQuery(document).on("click",".frm-install-addon",fo),jQuery(document).on("click",".frm-activate-addon",co),jQuery(document).on("click",".frm-solution-multiple",so),jQuery("button, input[type=submit]").on("click",Do),document.addEventListener("click",(function(e){if("LABEL"===e.target.nodeName){var t=e.target.getAttribute("for");if(t){var r=document.getElementById(t);if(r&&r.nextElementSibling){var n=r.nextElementSibling.querySelector("button.dropdown-toggle.multiselect");n&&setTimeout((function(){return n.click()}),0)}}}})),frmAdminBuild.hooks.addFilter("frm_before_embed_modal",(function(e,t){var r,n,i=t.element;if("form"!==t.type)return e;var o=i.closest("tr");if(o)r=parseInt(o.querySelector(".column-id").textContent),n=o.querySelector(".column-form_key").textContent;else{r=document.getElementById("form_id").value;var a=document.getElementById("frm_form_key");if(a)n=a.value;else{var l=document.getElementById("frm-previewDrop");l&&(n=l.nextElementSibling.querySelector(".dropdown-item a").getAttribute("href").split("form=")[1])}}return[r,n]})),document.querySelectorAll("#frm-show-fields > li, .frm_grid_container li").forEach((function(t,r){t.addEventListener("click",(function(){var t,r,n;r=(null===(t=this.querySelector("li"))||void 0===t?void 0:t.dataset.fid)||this.dataset.fid,(n=document.querySelectorAll("[id^=frm_delete_field_".concat(r,"-]"))).length<2||e(n).slice(1).forEach((function(e,t){e.classList.contains("frm_other_option")||zo(r,e)}))}))}));var f=document.getElementById("frm_small_screen_proceed_button");f&&_(f,(function(){var e;null===(e=document.getElementById("frm_small_device_message_container"))||void 0===e||e.remove(),g("small_screen_proceed",new FormData)}));var u=document.getElementById("frm_sale_banner"),p=null==u?void 0:u.querySelector(".dismiss");u&&(_(u,(function(e){e.target.closest(".dismiss")||(window.location.href=u.getAttribute("data-url"))})),p&&_(p,(function(){u.remove();var e=new FormData;g("sale_banner_dismiss",e)})))},buildInit:function(){var e,t,r;jQuery("#frm_builder_page").on("mouseup","*:not(.frm-show-box)",Go),y=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return frmDom.util.debounce(e,t)}(oe,10),h=document.getElementById("post-body-content"),v=jQuery(h),jQuery(".frm_field_loading").length&&Le(jQuery(".frm_field_loading").first().attr("id")),V("ul.frm_sorting"),document.querySelectorAll(".field_type_list > li:not(.frm_show_upgrade)").forEach(X),jQuery("ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a").disableSelection(),jQuery(".frm_submit_ajax").on("click",Fn),jQuery(".frm_submit_no_ajax").on("click",zn),Gn(),jQuery("a.edit-form-status").on("click",kn),jQuery(".cancel-form-status").on("click",Ln),jQuery(".save-form-status").on("click",(function(){var e=jQuery(document.getElementById("form_change_status")).val();return jQuery('input[name="new_status"]').val(e),jQuery(document.getElementById("form-status-display")).html(e),jQuery(".cancel-form-status").trigger("click"),!1})),jQuery(".frm_form_builder form").first().on("submit",(function(){jQuery(".inplace_field").trigger("blur")})),lo(),Tr(),e=jQuery(w),t=document.getElementById("frm_form_editor_container"),e.on("click",".frm_add_logic_row",Er),e.on("click",".frm_add_watch_lookup_row",Lr),e.on("change",".frm_get_values_form",qr),e.on("change",".frm_logic_field_opts",bn),e.on("frm-multiselect-changed",'select[name^="field_options[admin_only_"]',Sn),jQuery(document.getElementById("frm-insert-fields")).on("click",".frm_add_field",Ae),j.on("click",".frm_clone_field",Ce),e.on("blur",'input[id^="frm_calc"]',Ye),e.on("change","input.frm_format_opt, input.frm_max_length_opt",lt),e.on("change click","[data-changeme]",ot),e.on("click","input.frm_req_field",st),e.on("click",".frm_mark_unique",ct),e.on("change",".frm_repeat_format",Vr),e.on("change",".frm_repeat_limit",Kr),e.on("change",".frm_js_checkbox_limit",Jr),e.on("input",'input[name^="field_options[add_label_"]',(function(){Yr(this,"add")})),e.on("input",'input[name^="field_options[remove_label_"]',(function(){Yr(this,"remove")})),e.on("change",'select[name^="field_options[data_type_"]',Nr),jQuery(t).on("click",".frm-collapse-page",Or),jQuery(t).on("click",".frm-collapse-section",Fr),e.on("click",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",Hr),e.on("keydown",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",(function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),Hr.call(this,e))})),jQuery(t).on("show.bs.dropdown hide.bs.dropdown",ze),e.on("click",".frm_toggle_sep_values",yt),e.on("click",".frm_toggle_image_options",ht),e.on("click",".frm_remove_image_option",Et),e.on("click",".frm_choose_image_box",xt),e.on("change",".frm_hide_image_text",Qt),e.on("change",".frm_field_options_image_size",jt),e.on("click",".frm_multiselect_opt",kt),j.on("mousedown","input, textarea, select",At),j.on("click","input[type=radio], input[type=checkbox]",At),j.on("click",".frm_delete_field",Nt),j.on("click",".frm_select_field",Tt),jQuery(document).on("click",".frm_delete_field_group",Ot),jQuery(document).on("click",".frm_clone_field_group",Dt),jQuery(document).on("click","#frm_field_group_controls > span:first-child",Mt),jQuery(document).on("click",".frm-row-layout-option",Yt),jQuery(document).on("click",".frm-merge-fields-into-row .frm-row-layout-option",Xt),jQuery(document).on("click",".frm-custom-field-group-layout",er),jQuery(document).on("click",".frm-merge-fields-into-row .frm-custom-field-group-layout",rr),jQuery(document).on("click",".frm-break-field-group",lr),j.on("click","#frm_field_group_popup .frm_grid_container input",sr),jQuery(document).on("click",".frm-cancel-custom-field-group-layout",dr),jQuery(document).on("click",".frm-save-custom-field-group-layout",fr),j.on("click","ul.frm_sorting",ur),jQuery(document).on("click",".frm-merge-fields-into-row",vr),jQuery(document).on("click",".frm-delete-field-groups",jr),j.on("click",'.frm-field-action-icons [data-toggle="dropdown"]',(function(){this.closest("li.form-field").classList.add("frm-field-settings-open"),jQuery(document).on("click","#frm_builder_page",Oe)})),j.on("mousemove","ul.frm_sorting",De),j.on("show.bs.dropdown",".frm-field-action-icons",He),jQuery(document).on("show.bs.dropdown","#frm_field_group_controls",Pe),e.on("click",".frm_single_option a[data-removeid]",It),e.on("mousedown",".frm_single_option input[type=radio]",Bt),e.on("focusin",".frm_single_option input[type=text]",Ct),e.on("click",".frm_add_opt",_t),e.on("change",".frm_single_option input",Zr),e.on("change",".frm_image_id",Zr),e.on("change",".frm_toggle_mult_sel",pt),e.on("focusin",".frm_classes + .frm-token-proxy-input",Bi),j.on("click",".frm_primary_label",zr),j.on("click",".frm_description",Rr),j.on("click","li.ui-state-default:not(.frm_noallow)",$r),j.on("dblclick","li.ui-state-default",Ur),e.on("change",".frm_tax_form_select",Xr),e.on("change","select.conf_field",ft),e.on("change",".frm_get_field_selection",jn),e.on("click",".frm-show-inline-modal",Bn),e.on("click",".frm-inline-modal .dismiss",qn),jQuery(document).on("change","[data-frmchange]",Tn),document.addEventListener("click",Nn),e.on("change",".frm_include_extras_field",et),e.on("change",'select[name^="field_options[form_select_"]',Mo),jQuery(document).on("submit","#frm_js_build_form",Fi),jQuery(document).on("change","#frm_builder_page input:not(.frm-search-input):not(.frm-custom-grid-size-input), #frm_builder_page select, #frm_builder_page textarea",Mi),nt(),jQuery(document).on("change",".frmjs_prod_data_type_opt",Fo),jQuery(document).on("focus",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Ar),jQuery(document).on("blur",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Br),frmDom.util.documentOn("click",".frm-show-field-settings",$r),frmDom.util.documentOn("change","select.frm_format_dropdown, select.frm_phone_type_dropdown",Wr),e.on("keydown",'.frm_single_option input[name^="field_options["], .frm_single_option input[name^="rows_"]',(function(e){"Enter"===e.key&&function(e){var t=e.closest(".frm_single_option").parentElement.querySelectorAll('.frm_single_option input[name^="field_options[" ], .frm_single_option input[name^="rows_"]'),r=Array.from(t),n=r.indexOf(e);if(!(n<0)){var i=r.slice(n+1).find((function(e){return null!==e.offsetParent}));if(i){i.focus();var o=i.value.length;i.setSelectionRange(o,o)}}}(e.currentTarget)})),!1!==(r=To("#frm-bulk-modal","700px"))&&(jQuery(".frm-insert-preset").on("click",mt),jQuery(w).on("click","a.frm-bulk-edit-link",(function(e){e.preventDefault();var t,n,i,o,a,l="",s=jQuery(this).closest("[data-fid]").data("fid"),d=pn(s),c=Ho(s);if(o=document.getElementById("frm_field_"+s+"_opts")){for(a=o.getElementsByTagName("li"),document.getElementById("bulk-field-id").value=s,t=0;t=a.length-1&&(document.getElementById("frm_bulk_options").value=l);return r.dialog("open"),!1}})),jQuery("#frm-update-bulk-opts").on("click",(function(){var e=document.getElementById("bulk-field-id").value;document.getElementById("bulk-option-type").value||(this.classList.add("frm_loading_button"),frmAdminBuild.updateOpts(e,document.getElementById("frm_bulk_options").value,r),Mi())}))),In(),document.addEventListener("frm_added_field",In),Be(),Po(),xn(),frmDom.util.documentOn("change",".frm_show_password_setting_input",(function(e){var t=e.target.getAttribute("data-fid"),r=document.getElementById("frm_field_id_"+t);r&&r.classList.toggle("frm_disabled_show_password",!e.target.checked)})),document.addEventListener("scroll",Ti,!0),document.addEventListener("change",qi),document.querySelector(".frm_form_builder").addEventListener("mousedown",(function(e){e.shiftKey&&e.preventDefault()})),wp.hooks.addAction("frmShowedFieldSettings","formidableAdmin",(function(e,t){t.querySelectorAll(".frm-collapse-me").forEach(Pr)}),9999)},settingsInit:function(){var e,t,r,n,i=jQuery(document.getElementById("frm_notification_settings"));i.on("click",".frm_email_buttons",oi),i.on("click",".frm_remove_field",ai),i.on("change",".frm_to_row, .frm_from_row",li),i.on("change",".frm_tax_selector",ji),i.on("change","select.frm_single_post_field",mi),i.on("change","select.frm_toggle_post_content",_i),i.on("change","select.frm_dyncontent_opt",pi),i.on("change",".frm_post_type",gi),i.on("click",".frm_add_postmeta_row",vi),i.on("click",".frm_add_posttax_row",hi),i.on("click",".frm_toggle_cf_opts",wi),i.on("click",".frm_duplicate_form_action",Zn),jQuery(".frm_actions_list").on("click",".frm_active_action",ti),jQuery("#frm-show-groups, #frm-hide-groups").on("click",ri),lo(),jQuery("ul.frm_actions_list li").each((function(){si(jQuery(this).children("a").data("actiontype"));var e=jQuery(this).find("i");"none"!==e.css("background-image")&&e.addClass("frm-inverse")})),jQuery(".frm_submit_settings_btn").on("click",xi),Gn(),(e=jQuery(".frm_form_settings")).on("click",".frm_add_form_logic",ui),e.on("click",".frm_already_used",fi),document.addEventListener("click",(function(e){var t=e.target;t.closest(".frm_image_preview_wrapper")&&(t.closest(".frm_choose_image_box")?xt.bind(t)(e):t.closest(".frm_remove_image_option")&&Et.bind(t)(e))})),e.on("mouseup","*:not(.frm-show-box)",Go),jQuery(document.getElementById("no_save")).on("change",(function(){this.checked&&!0!==confirm(a.no_save_warning)&&jQuery(this).attr("checked",!1)})),jQuery('select[name="options[edit_action]"]').on("change",Xn),t=document.getElementById("logged_in"),jQuery(t).on("change",(function(){this.checked?No(".hide_logged_in"):qo(".hide_logged_in")})),r=jQuery(document.getElementById("frm_cookie_expiration")),jQuery(document.getElementById("frm_single_entry_type")).on("change",(function(){"cookie"===this.value?r.fadeIn("slow"):r.fadeOut("slow")}));var o=document.getElementById("single_entry");jQuery(o).on("change",(function(){this.checked?No(".hide_single_entry"):qo(".hide_single_entry"),this.checked&&"cookie"===jQuery(document.getElementById("frm_single_entry_type")).val()?r.fadeIn("slow"):r.fadeOut("slow")})),jQuery(".hide_save_draft").hide();var l=jQuery(document.getElementById("save_draft"));l.on("change",(function(){this.checked?jQuery(".hide_save_draft").fadeIn("slow"):jQuery(".hide_save_draft").fadeOut("slow")})),Pn(l),n=document.getElementById("editable"),jQuery(n).on("change",(function(){this.checked?(jQuery(".hide_editable").fadeIn("slow"),Pn(document.getElementById("edit_action"))):(jQuery(".hide_editable").fadeOut("slow"),jQuery(".edit_action_message_box").fadeOut("slow"))})),jQuery(document).on("change","#protect_files",(function(){this.checked?jQuery(".hide_protect_files").fadeIn("slow"):jQuery(".hide_protect_files").fadeOut("slow")})),jQuery(document).on("frm-multiselect-changed","#protect_files_role",Sn),jQuery(document).on("submit",".frm_form_settings",Hi),jQuery(document).on("change","#form_settings_page input:not(.frm-search-input), #form_settings_page select, #form_settings_page textarea",Mi),jo(),jQuery(document).on("frm-action-loaded",Vi),frmDom.util.documentOn("change",'.frm_on_submit_type input[type="radio"]',(function(e){if(e.target.checked){var t=e.target.closest(".frm_form_action_settings");t.querySelectorAll(".frm_on_submit_dependent_setting:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden")})),t.querySelectorAll(".frm_on_submit_dependent_setting[data-show-if-"+e.target.value+"]").forEach((function(e){e.classList.remove("frm_hidden")})),t.setAttribute("data-on-submit-type",e.target.value)}}))},panelInit:function(){var e,t,r,n;jQuery(".frm_wrap, #postbox-container-1").on("click",".frm_insert_code",Ei),jQuery(document).on("change",".frm_insert_val",(function(){ki(jQuery(this).data("target"),jQuery(this).val()),jQuery(this).val("")})),jQuery(document).on("click change",'[name="frm-id-key-condition"]',Ai),jQuery(document).on("keyup change",".frm-build-logic",Ii),Yn(),jQuery(document).on("frmElementAdded",(function(e,t){Yn(t)})),jQuery(document).on("mousedown",".frm-show-box",Ci),t=document.getElementById("form_settings_page"),r=document.body.classList.contains("post-type-frm_display"),n=document.getElementById("frm_insert_fields_tab"),(null!==t||r||D)&&jQuery(document).on("focusin","form input, form textarea",(function(e){var i,o,a,l;if(e.stopPropagation(),(o=this).parentNode.parentNode.classList.contains("frm_has_shortcodes")&&(Wi(),"use"===(a=$i(o)).tagName?-1===(a=a.firstElementChild).getAttributeNS("http://www.w3.org/1999/xlink","href").indexOf("frm_close_icon")&&Oi(a,"nofocus"):a.classList.contains("frm_close_icon")||Oi(a,"nofocus")),jQuery(this).is(":not(:submit, input[type=button], .frm-search-input, input[type=checkbox])")){if(jQuery(e.target).closest("#frm_adv_info").length)return;if(null!==t||D)i=jQuery("#frm_html_tab"),jQuery(this).closest("#html_settings").length>0?(i.show(),i.siblings().hide(),jQuery("#frm_html_tab a").trigger("click"),function(e){var t,r=e.id;void 0!==r&&-1===r.indexOf("-search-input")&&(jQuery("#frm-adv-info-tab").attr("data-fills",r.trim()),e.classList.contains("field_custom_html")&&(r="field_custom_html"),t=["after_html","before_html","submit_html","field_custom_html"],jQuery.inArray(r,t)>=0&&(jQuery(".frm_code_list li:not(.show_"+r+")").addClass("frm_hidden"),jQuery(".frm_code_list li.show_"+r).removeClass("frm_hidden")))}(this)):((l=jQuery(".frm-category-tabs li"))[0]&&(l[0].style.display=""),n.click(),i.hide(),i.siblings().show());else if(r){var s=new CustomEvent("frm_legacy_views_handle_field_focus");s.frmData={idAttrValue:this.id},document.dispatchEvent(s)}}})),jQuery(".frm_wrap, #postbox-container-1").on("mousedown","#frm_adv_info a, .frm_field_list a",(function(e){e.preventDefault()})),(e=jQuery("#frm_adv_info")).on("click",".subsubsub a.frmids",(function(e){Ui("frmids",e)})),e.on("click",".subsubsub a.frmkeys",(function(e){Ui("frmkeys",e)}))},inboxInit:function(){var e;jQuery(".frm_inbox_dismiss").on("click",(function(e){var t=this.parentNode.parentNode,r=t.getAttribute("data-message"),n=this.getAttribute("href"),i=t.cloneNode(!0),o=document.querySelector(".frm-dismissed-inbox-messages");if("free_templates"!==r||this.classList.contains("frm_inbox_dismiss")){e.preventDefault(),data={action:"frm_inbox_dismiss",key:r,nonce:frmGlobal.nonce};var a="frm_inbox_slide_in"===t.id;a&&(t.classList.remove("s11-fadein"),t.classList.add("s11-fadeout"),t.addEventListener("animationend",(function(){return t.remove()}),{once:!0})),Bo(data,(function(){if(!a)return"#"!==n?(window.location=n,!0):void Co(t,(function(){var e;null!==o&&(i.classList.remove("frm-fade"),null===(e=i.querySelector(".frm-inbox-message-heading"))||void 0===e||e.removeChild(i.querySelector(".frm-inbox-message-heading .frm_inbox_dismiss")),o.append(i)),1===t.parentNode.querySelectorAll(".frm-inbox-message-container").length&&(document.getElementById("frm_empty_inbox").classList.remove("frm_hidden"),t.parentNode.closest(".frm-active").classList.add("frm-empty-inbox"),ho()),t.parentNode.removeChild(t)}))}))}})),!1===(null===(e=document.getElementById("frm_empty_inbox"))||void 0===e?void 0:e.classList.contains("frm_hidden"))&&ho()},solutionInit:function(){jQuery(document).on("submit","#frm-new-template",Qo)},styleInit:function(){var e=jQuery(".frm_image_preview_wrapper");e.on("click",".frm_choose_image_box",xt),e.on("click",".frm_remove_image_option",Et),wp.hooks.doAction("frm_style_editor_init")},customCSSInit:function(){console.warn("Calling frmAdminBuild.customCSSInit is deprecated.")},globalSettingsInit:function(){var e;jQuery(document).on("click","[data-frmuninstall]",Ki),lo(),null!==(e=document.getElementById("licenses_settings"))&&jQuery(e).on("click",".edd_frm_save_license",Ji),jQuery(document).on("click","#frm-new-template button",wo),jQuery("#frm-dismissable-cta .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_lite_settings_upgrade",nonce:frmGlobal.nonce}),jQuery(".settings-lite-cta").remove()}));var t=document.getElementById("frm_re_type");t&&t.addEventListener("change",Eo),document.querySelector(".frm_captchas").addEventListener("change",(function(e){var t,r=null===(t=document.querySelector('.frm_captchas input[checked="checked"]'))||void 0===t?void 0:t.value,n=e.target.value!==r;document.querySelector(".captcha_settings .frm_note_style").classList.toggle("frm_hidden",!n)})),frmDom.util.documentOn("submit",".frm_settings_form",(function(){return E=0}));var r=document.getElementById("manage_styles_settings");r&&r.addEventListener("change",(function(e){var t=e.target;"SELECT"===t.nodeName&&t.dataset.name&&!t.getAttribute("name")&&t.setAttribute("name",t.dataset.name)}));var n=document.getElementById("payments_settings"),i=null==n?void 0:n.querySelectorAll('[name="frm_payment_section"]');i&&i.forEach((function(e){e.addEventListener("change",(function(){if(e.checked){var t=n.querySelector('label[for="'.concat(e.id,'"]'));t&&t.setAttribute("aria-selected","true"),i.forEach((function(t){if(t!==e){var r=n.querySelector('label[for="'.concat(t.id,'"]'));r&&r.setAttribute("aria-selected","false")}}))}}))}))},exportInit:function(){jQuery(".frm_form_importer").on("submit",Yi),jQuery(document.getElementById("frm_export_xml")).on("submit",Zi),jQuery("#frm_export_xml input, #frm_export_xml select").on("change",eo),jQuery('input[name="frm_import_file"]').on("change",to),document.querySelector('select[name="format"]').addEventListener("change",no),jQuery('input[name="frm_export_forms[]"]').on("click",ao),lo(),jQuery(".frm-feature-banner .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_dismiss_migrator",plugin:this.id,nonce:frmGlobal.nonce}),this.parentElement.remove()})),oo(ro()),document.querySelector("#frm-export-select-all").addEventListener("change",(function(e){document.querySelectorAll('[name="frm_export_forms[]"]').forEach((function(t){return t.checked=e.target.checked}))}))},inboxBannerInit:function(){var e=document.getElementById("frm_banner");if(e){var t=e.querySelector(".frm-banner-dismiss");document.addEventListener("click",(function(r){r.target===t&&Bo({action:"frm_inbox_dismiss",key:e.dataset.key,nonce:frmGlobal.nonce},(function(){jQuery(e).fadeOut(400,(function(){e.remove()}))}))}))}},updateOpts:function(e,t,r){var n=pn(e),i=Ho(e)?"frm_bulk_products":"frm_import_options";jQuery.ajax({type:"POST",url:ajaxurl,data:{action:i,field_id:e,opts:t,separate:n,nonce:frmGlobal.nonce},success:function(t){document.getElementById("frm_field_"+e+"_opts").innerHTML=t,wp.hooks.doAction("frm_after_bulk_edit_opts",e),rn(e),void 0!==r&&(r.dialog("close"),document.getElementById("frm-update-bulk-opts").classList.remove("frm_loading_button"))}})},triggerRemoveLogic:function(e,t){jQuery("#frm_logic_"+e+"_"+t+" .frm_remove_tag").trigger("click")},downloadXML:function(e,t,r){var n=ajaxurl+"?action=frm_"+e+"_xml&ids="+t;null!==r&&(n=n+"&is_template="+r),location.href=n},hooks:{applyFilters:function(e){for(var t,r=arguments.length,n=new Array(r>1?r-1:0),i=1;i1?r-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r){var n=k,i=0;"summary"===e&&(i=j.children('li[data-type="break"]').length>0?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:Object.assign(pe(e,0,n,i),{field_options:t}),success:function(t){r(t),setTimeout((function(){Qn(),Ue(t,!0);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:n})}),10)},error:je})}))},confirmLinkClick:F,handleInsertFieldByDraggingResponse:ye,handleAddFieldClickResponse:Ie,syncLayoutClasses:le}}(),jQuery(document).ready((function(){var e;frmAdminBuild.init(),frmDom.bootstrap.setupBootstrapDropdowns((function(e){var t,r,n=e.querySelector(".frm-dropdown-toggle");n&&(n.hasAttribute("role")||n.setAttribute("role","button"),n.hasAttribute("tabindex")||n.setAttribute("tabindex",0)),"UL"===e.tagName&&(r=(r=(r=(r=(r=(r=(t=e).outerHTML).replace("
                            ","")).replaceAll("
                          • ",'
                          • ",""),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file +(()=>{function e(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||t(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r1&&(e="",t=""):0===i.indexOf("frm_postmeta_")&&(jQuery("#frm_postmeta_rows .frm_postmeta_row").length<2&&(e=".frm_add_postmeta_row.button"),jQuery(".frm_toggle_cf_opts").length&&jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().length&&(""!==e&&(e+=","),e+="#"+jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().attr("id")+" .frm_toggle_cf_opts"));var o=document.getElementById(i),a=jQuery(o);return a.fadeOut(300,(function(){var r;a.remove(),Mi(),""!==t&&jQuery(t).hide(),""!==e&&jQuery(e+" a,"+e).removeClass("frm_hidden").fadeIn("slow"),this.closest(".frm_form_action_settings")&&function(e){si(e);var t={type:e};wp.hooks.doAction("frm_after_action_removed",t)}(this.closest(".frm_form_action_settings").querySelector(".frm_action_name").value),null===(r=document.querySelector(".tooltip"))||void 0===r||r.remove()})),void 0!==r&&(r=jQuery(r)).fadeOut(400,(function(){r.remove()})),""!==e&&jQuery(this).closest(".frm_logic_rows").fadeOut("slow"),wp.hooks.doAction("frm_after_remove_this_tag",i,o),!1}}function $(e,t){void 0===t&&(t=this),Ze(t,!1);var r=jQuery(t).closest(".frm_form_action_settings"),n=e.target;if(r.length&&void 0!==n){var i=n.parentElement.className;if("string"==typeof i&&(i.indexOf("frm_email_icons")>-1||i.indexOf("frm_toggle")>-1))return void e.stopPropagation()}var o=r.children(".widget-inside");if(r.length&&o.find("p, div, table").length<1){var a=r.find('input[name$="[ID]"]').val(),l=r.find('input[name$="[post_excerpt]"]').val();l&&(o.html(''),r.find(".spinner").fadeIn("slow"),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_form_action_fill",action_id:a,action_type:l,nonce:frmGlobal.nonce},success:function(e){o.html(e),lo(),Yn("#"+r.attr("id")),jo(o),jQuery(t).trigger("frm-action-loaded"),wp.hooks.doAction("frm_filled_form_action",o)}}))}jQuery(t).closest(".frm_field_box").siblings().find(".widget-inside").slideUp("fast"),void 0!==t.className&&-1!==t.className.indexOf("widget-action")||jQuery(t).closest(".start_divider").length<1||((o=jQuery(t).closest("div.widget").children(".widget-inside")).is(":hidden")?o.slideDown("fast"):o.slideUp("fast"))}function W(){var e=this.getAttribute("href");if(void 0===e)return!1;var t=e.replace("#","."),r=jQuery(this);r.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),r.closest("div").children(".tabs-panel").not(e).not(t).hide();var n=document.getElementById(e.replace("#",""));return n&&(n.style.display="block"),"frm_insert_fields_tab"!==this.id||this.closest("#frm_adv_info")||Ke(),!1}function U(e,t){var r=(e=jQuery(e)).attr("href");if(void 0!==r){var n,i,o=r.replace("#",".");if(e.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),e.closest("div").find(".tabs-panel").length)e.closest("div").children(".tabs-panel").not(r).not(o).hide();else if(null!==document.getElementById("form_global_settings")){var a=e.data("frmajax");e.closest(".frm_wrap").find(".tabs-panel, .hide_with_tabs").hide(),void 0!==a&&"1"==a&&(n=r.replace("#",""),(i=jQuery(".frm_"+n+"_ajax")).length&&jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_settings_tab",tab:n.replace("_settings",""),nonce:frmGlobal.nonce},success:function(e){i.replaceWith(e)}}))}else jQuery("#frm-categorydiv .tabs-panel, .hide_with_tabs").hide();jQuery(r).show(),jQuery(o).show(),Wi(),"auto"!==t&&(jQuery(".frm_updated_message").hide(),jQuery(".frm_warning_style").hide()),jQuery(e).closest("#frm_adv_info").length||(jQuery(".frm_form_settings").length?jQuery(".frm_form_settings").attr("action","?page=formidable&frm_action=settings&id="+jQuery('.frm_form_settings input[name="id"]').val()+"&t="+r.replace("#","")):jQuery(".frm_settings_form").attr("action","?page=formidable-settings&t="+r.replace("#","")))}}function V(e){var t,r;document.querySelectorAll(e).forEach((function(e){K(e),Array.from(e.children).forEach((function(e){return X(e,".frm-move")}));var t=jQuery(e).children('[data-type="divider"]').children(".divider_section_only");t.length&&K(t)})),t=jQuery("#frm_builder_page"),r={items:".frm_sortable_field_opts li",axis:"y",opacity:.65,forcePlaceholderSize:!1,handle:".frm-drag",helper:function(e,t){return x=t.clone().insertAfter(t),t.clone()},stop:function(e,t){x&&x.remove(),rn(t.item.attr("id").replace("frm_delete_field_","").replace("-"+t.item.data("optkey")+"_container","")),Mi()}},jQuery(t).sortable(r)}function K(e){jQuery(e).droppable({accept:".frmbutton, li.frm_field_box",deactivate:ne,over:J,out:Y,tolerance:"pointer"})}function J(e,t){var r=function(e){return e.classList.contains("divider_section_only")&&(e=jQuery(e).nextAll(".start_divider.frm_sorting").get(0)),e}(e.target);if(!Qe(t.draggable[0],r,e))return r.classList.remove("frm-over-droppable"),void jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable");document.querySelectorAll(".frm-over-droppable").forEach((function(e){return e.classList.remove("frm-over-droppable")})),r.classList.add("frm-over-droppable"),jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable")}function Y(e){e.target.classList.remove("frm-over-droppable")}function X(e,t){var r={helper:Z,revert:"invalid",delay:10,start:ee,stop:te,drag:re,cursor:"grabbing",refreshPositions:!0,cursorAt:{top:0,left:90}};"string"==typeof t&&(r.handle=t),jQuery(e).draggable(r)}function Z(e){var t,r=e.delegateTarget;if(Ee(r)){var n=document.getElementById("frm-insert-fields").querySelector(".frm_ttext").cloneNode(!0);return n.querySelector("use").setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_field_group_layout_icon"),n.querySelector("span").textContent=B("Field Group","formidable"),n.classList.add("frm_field_box"),n.classList.add("ui-sortable-helper"),n}if(r.classList.contains("frmbutton"))return(t=r.cloneNode(!0)).classList.add("ui-sortable-helper"),r.classList.add("frm-new-field"),t;if(r.hasAttribute("data-ftype")){var i=r.getAttribute("data-ftype");if((t=(t=document.getElementById("frm-insert-fields").querySelector(".frm_t"+i)).cloneNode(!0)).classList.add("form-field"),t.classList.add("ui-sortable-helper"),t)return t.cloneNode(!0)}return d({className:"frmbutton"})}function ee(e,t){q.dragging=!0;var r,n=h;n.classList.add("frm-dragging-field"),document.body.classList.add("frm-dragging"),t.helper.addClass("frm-sortable-helper"),t.helper.initialOffset=n.scrollTop,e.target.classList.add("frm-drag-fade"),gr(),(r=document.querySelectorAll("ul.start_divider")).length&&r.forEach((function(e){[].slice.call(e.children).forEach((function(e){(0===e.children.length||1===e.children.length&&"ul"===e.firstElementChild.nodeName.toLowerCase()&&0===e.firstElementChild.children.length)&&e.remove()}))})),Me(),Te(),R()}function te(){h.classList.remove("frm-dragging-field"),document.body.classList.remove("frm-dragging");var e=document.querySelector(".frm-drag-fade");e&&e.classList.remove("frm-drag-fade")}function re(e,t){!function(e){v.scrollTop((function(t,r){var n=e.clientY,i=h.offsetHeight,o=e.clientY-h.offsetTop,a=o-i/2;return o>i-50&&n>5?r+.1*a:o<70&&n<130?r-Math.abs(.1*a):r}))}(e);var r=e.target,n=function(){for(var e=document.getElementById("frm-show-fields");e.querySelector(".frm-over-droppable");)e=e.querySelector(".frm-over-droppable");return"frm-show-fields"!==e.id||e.classList.contains("frm-over-droppable")||(e=!1),e}(),i=document.getElementById("frm_drag_placeholder");if(Qe(r,n,e)){i||(i=s("li",{id:"frm_drag_placeholder",className:"sortable-placeholder"}));var o,a=t.helper.get(0);if((a.classList.contains("form-field")||a.classList.contains("frm_field_box"))&&(a.style.transform="translateY("+(o=t.helper,h.scrollTop-o.initialOffset+"px)")),"frm-show-fields"===n.id||n.classList.contains("start_divider"))return i.style.left=0,void function(e){var t,r=e.y,n=e.placeholder,i=jQuery(e.droppable);if($children=i.children().not(".edit_field_type_end_divider"),0===$children.length)i.prepend(n),t=0;else{var o=ie(i,r);if(o===$children.length){var a=jQuery($children.get(o-1));t=a.offset().top+a.outerHeight(),i.append(n);var l=i.children(".edit_field_type_end_divider");l.length&&i.append(l)}else t=jQuery($children.get(o)).offset().top,jQuery($children.get(o)).before(n)}t-=i.offset().top,n.style.top=t+"px"}({droppable:n,y:e.clientY,placeholder:i});i.style.top="",function(e){var t,r=e.x,n=e.placeholder,i=jQuery(e.droppable),o=ae(i);if(o.length){var a=function(e,t){var r,n,i,o,a=ae(e);for(o=0,r=a.length-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().left)){o=r,t>i+jQuery(n).outerWidth()/2&&(o=r+1);break}return o}(i,r);if(a===o.length){var l=jQuery(o.get(a-1));t=l.offset().left+l.outerWidth(),i.append(n)}else t=jQuery(o.get(a)).offset().left,jQuery(o.get(a)).before(n),t-=0===a?4:8;t-=i.offset().left,n.style.left=t+"px"}}({droppable:n,x:e.clientX,placeholder:i})}else i&&i.remove()}function ne(e,t){if(q.dragging){q.dragging=!1;var r=t.draggable[0],n=document.getElementById("frm_drag_placeholder");if(!n)return t.helper.remove(),void y();!function(e){if(e.previousElementSibling&&e.previousElementSibling.classList.contains("frm-is-collapsed")){var t=jQuery(e).prevUntil('[data-type="break"]');if(t.length){var r=t.find(".frm-collapse-page").get(0);r&&r.click()}}}(n);var i=t.helper.parent(),o=t.helper.get(0).closest("ul.start_divider"),a=n.closest("ul.start_divider");r.classList.contains("frm-new-field")?function(e){if(ge(e))wp.hooks.doAction("frm_stopped_inserting_by_dragging",e);else{var t=document.getElementById("frm_drag_placeholder"),r=e.replace("|","-")+"_"+we(),n=s("li",{id:r,className:"frm-wait frmbutton_loadingnow"}),i=jQuery(n),o=fe(jQuery(t)),a=ue(o),l=me(o);t.parentNode.insertBefore(n,t),t.remove(),le(i);var d=0;"summary"===e&&(d=jQuery(".frmbutton_loadingnow#"+r).prevAll('li[data-type="break"]').length?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:pe(e,l,a,d),success:function(t){ye(t,i);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:a})},error:je})}}(r.id):(function(e,t){t.parentNode.insertBefore(e,t)}(r,n),function(e){if("UL"===e.nodeName&&!e.classList.contains("start_divider")&&"frm-show-fields"!==e.id){var t=e.closest("li");t&&!t.classList.contains("ui-draggable")&&X(t,".frm-move")}}(n.parentElement));var l=o?parseInt(o.closest(".edit_field_type_divider").getAttribute("data-fid")):0,d=a?parseInt(a.closest(".edit_field_type_divider").getAttribute("data-fid")):0;n.remove(),t.helper.remove();var c=i.length?ae(i):[];!function(e,t){var r;e.length&&(t.length?le(t.first()):(r=e.get(0).closest("li.frm_field_box"))&&!r.classList.contains("edit_field_type_divider")&&r.remove())}(i,c),function(e,t){0===t.length&&1===ae(jQuery(e.parentNode)).length||le(jQuery(e))}(r,c),l!==d&&_e(jQuery(r),o),y()}}function ie(e,t){var r,n,i,o,a=e.children().not(".edit_field_type_end_divider"),l=a.length;if(!document.querySelector(".frm-has-fields .frm_no_fields"))return 0;for(o=0,r=l-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().top)){o=r,t>i+jQuery(n).outerHeight()/2&&(o=r+1);break}return o}function oe(){document.querySelectorAll("ul#frm-show-fields, ul.start_divider").forEach((function(e){e.childNodes.forEach((function(e){void 0!==e.classList&&(e.classList.contains("edit_field_type_end_divider")||void 0!==e.classList&&e.classList.contains("form-field")&&We(e))}))})),xn(),document.querySelectorAll(".edit_field_type_end_divider").forEach((function(e){return e.parentNode.appendChild(e)})),document.querySelectorAll("li.form_field_box:not(.form-field)").forEach((function(e){return!e.children.length&&e.remove()})),Qn();var e=new Event("frm_sync_after_drag_and_drop",{bubbles:!1});document.dispatchEvent(e)}function ae(e){var t=jQuery(),r=e.get(0);return r.children?(Array.from(r.children).forEach((function(e){if("none"!==e.style.display){var r=e.classList;!r.contains("form-field")||r.contains("edit_field_type_end_divider")||r.contains("frm-sortable-helper")||(t=t.add(e))}})),t):t}function le(e,t){var r,n,i,o;void 0===t&&(t="even"),r=e.parent().children("li.form-field, li.frmbutton_loadingnow").not(".edit_field_type_end_divider"),n=r.length,i=["frm_full","frm_half","frm_third","frm_fourth","frm_sixth","frm_two_thirds","frm_three_fourths","frm1","frm2","frm3","frm4","frm5","frm6","frm7","frm8","frm9","frm10","frm11","frm12"],"even"===t&&5!==n?r.each(ce(i,Ut(n))):"clear"===t?r.each(ce(i,"")):(o=-1!==["left","right","middle","even"].indexOf(t)?function(e){return Wt(n,t,e)}:function(e){return ar(t[e])},r.each(ce(i,o))),se(e.parent(),r.length)}function se(e,t){var r,n;if(void 0!==e.offset()){if(r=t>=2,null===(n=document.getElementById("frm_field_group_controls"))){if(!r)return;(n=d()).id="frm_field_group_controls",n.setAttribute("role","group"),n.setAttribute("tabindex",0),function(e){var t,r;(t=document.createElement("span")).innerHTML='';var n=B("Set Row Layout","formidable");de(t,n),zt(t,n),(r=document.createElement("span")).innerHTML='',r.classList.add("frm-move");var i=B("Move Field Group","formidable");de(r,i),zt(r,i),e.innerHTML="",e.appendChild(t),e.appendChild(r),e.appendChild(function(){var e=c({className:"dropdown"}),t=f({className:"frm_bstooltip frm-hover-icon frm-dropdown-toggle dropdown-toggle",children:[c({child:u({href:"#frm_thick_more_vert_icon"})}),c({className:"screen-reader-text",text:B("Toggle More Options Dropdown","formidable")})]});frmDom.setAttributes(t,{title:B("More Options","formidable"),"data-toggle":"dropdown","data-container":"body"}),zt(t,B("More Options","formidable")),e.appendChild(t);var r=d({className:"frm-dropdown-menu dropdown-menu dropdown-menu-right"});return r.setAttribute("role","menu"),e.appendChild(r),e}())}(n),D.appendChild(n)}e.append(n),n.style.display=r?"block":"none"}}function de(e,t){e.setAttribute("data-toggle","tooltip"),e.setAttribute("data-container","body"),e.setAttribute("title",t),e.addEventListener("mouseover",(function(){null===e.getAttribute("data-original-title")&&jQuery(e).tooltip()}))}function ce(e,t){return function(r){var n,i,o,a,l,s,d;for(n="function"==typeof t?t(r):t,i=e.length,l=!1,o=0;ot.childElementCount-1:s<=jQuery(t.querySelector(".edit_field_type_submit").closest("#frm-show-fields > li")).index()}if(a)return!(t.classList.contains("start_divider")||!xe(t.parentElement)&&(!xe(t.parentElement.nextElementSibling)||e.parentElement.querySelector("li.frm_field_box:not(.edit_field_type_submit)")));if(t.classList.contains("start_divider")&&(e.classList.contains("edit_field_type_gdpr")||"gdpr"===e.id)&&t.closest(".repeat_section"))return!1;if(!t.classList.contains("start_divider")){if(n=ae(jQuery(t)),i=jQuery(e),!(n.length<6)&&(n.length>6||(o=i.attr("data-fid"),1!==jQuery(n).filter('[data-fid="'+o+'"]').length)))return!1;if("divider"===e.id&&t.closest(".start_divider"))return!1}return e.classList.contains("frm-new-field")?function(e,t){var r=e.classList,n=r.contains("frm_tbreak"),i=r.contains("frm_thidden"),o=r.contains("frm_tdivider"),a=r.contains("frm_tform"),l=r.contains("frm_tuser_id");return"frm-show-fields"===t.id||t.classList.contains("start_divider")?!(n||i||o||a)||(!(t.classList.contains("start_divider")||null!==t.closest(".start_divider"))||!a&&!o):!(ke(t)||i||n||l)}(e,t):function(e,t){if(Ee(e))return function(e,t){return!(!t.classList.contains("start_divider")||null!==e.querySelector(".start_divider"))}(e,t);if(e.classList.contains("edit_field_type_break"))return!1;if(t.classList.contains("start_divider"))return function(e){return!e.classList.contains("edit_field_type_form")&&!e.querySelector(".edit_field_type_form")&&!(e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"))}(e);var r=e.classList.contains("edit_field_type_hidden"),n=e.classList.contains("edit_field_type_user_id");return!r&&!n&&function(e,t){if(ke(t))return!1;if(jQuery(e).children("ul.frm_sorting").not(".start_divider").length>0)return!1;var r=e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"),n=e.classList.contains("edit_field_type_form");return null===t.closest(".start_divider")||!r&&!n}(e,t)}(e,t)}function xe(e){return e&&e.matches("#frm-show-fields > li:last-child")}function Ee(e){return e.classList.contains("frm_field_box")&&!e.classList.contains("form-field")}function ke(e){return null!==e.querySelector(".edit_field_type_break, .edit_field_type_hidden, .edit_field_type_user_id")}function Le(e){var t=document.getElementById(e),r=jQuery(t),n=[],i=function(e){var t=e.querySelector(".frm_hidden_fdata");e.classList.add("frm_load_now"),null!==t&&n.push(t.innerHTML)},o=t;i(o);for(var a=Se(o);a&&n.length<15;)i(a),o=a,a=Se(a);jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_load_field",field:n,form_id:k,nonce:frmGlobal.nonce},success:function(e){return function(e,t,r){var n,i;if(0===(e=e.replace(/^\s+|\s+$/g,"")).indexOf("{")){for(n in e=JSON.parse(e))jQuery("#frm_field_id_"+n).replaceWith(e[n]),V("#frm_field_id_"+n+".edit_field_type_divider ul.frm_sorting"),X(document.getElementById("frm_field_id_"+n));((i=t.nextAll(".frm_field_loading:not(.frm_load_now)")).length||(i=jQuery(document.getElementById("frm-show-fields")).find(".frm_field_loading:not(.frm_load_now)")).length)&&Le(i.attr("id")),lo(),Tr(),Be();var o=new Event("frm_ajax_loaded_field",{bubbles:!1});o.frmFields=r.map((function(e){return JSON.parse(e)})),document.dispatchEvent(o)}else jQuery(".frm_load_now").removeClass(".frm_load_now").html("Error")}(e,r,n)}})}function Se(e){var t;return e.nextElementSibling?e.nextElementSibling:null===(t=e.parentNode)||void 0===t||null===(t=t.closest(".frm_field_box"))||void 0===t||null===(t=t.nextElementSibling)||void 0===t?void 0:t.querySelector(".form-field")}function Ae(){var e=jQuery(this);if(e.hasClass("disabled"))return!1;var t=e.closest(".frmbutton").attr("id");if(!ge(t)){var r=0;"summary"===t&&(r=j.children('li[data-type="break"]').length>0?1:0);var n=k;return jQuery.ajax({type:"POST",url:ajaxurl,data:pe(t,0,n,r),success:function(e){Ie(e);var r=he(e);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:e,fieldId:r,fieldType:t,form_id:n})},error:je}),!1}}function Ie(e){document.getElementById("frm_form_editor_container").classList.add("frm-has-fields");var t=$e(e),r=j[0].querySelector(".edit_field_type_submit");r?jQuery(r.closest(".frm_field_box:not(.form-field)")).before(t):j.append(t),Ue(e,!0),t.each((function(){K(this.querySelector("ul.frm_sorting")),X(this.querySelector(".form-field"),".frm-move")}))}function Be(){var e=!0,t=document.querySelectorAll(".frmjs_prod_field_opt_cont");j.find("li.edit_field_type_product").length>1&&(e=!1);for(var r=0;r',i.appendChild(document.createTextNode(" ")),i.appendChild(o),n.appendChild(i),e.appendChild(n)}))}(t,!0===e),(r=jQuery(t)).offset().left>jQuery(window).width()-r.outerWidth()&&(t.style.left=-r.outerWidth()+"px");var n=t.firstElementChild.querySelector("a");n&&n.focus()}}),0)}function Pe(){He(!0)}function ze(e){var t=e.target.closest(".frm-section-collapsed");t&&("show"===e.type?t.style.zIndex=3:t.style.zIndex=1)}function Re(e){var t={class:"frm_delete",icon:"frm_delete_icon"};return t.label=B(e?"Delete Group":"Delete","formidable"),t}function Ge(e){var t={class:"frm_clone",icon:"frm_clone_icon"};return t.label=B(e?"Duplicate Group":"Duplicate","formidable"),t}function $e(e){var t=d();"string"==typeof e?t.innerHTML=e:t.appendChild(e);var r=jQuery();return Array.from(t.children).forEach((function(e){r=r.add(jQuery("
                          • ").addClass("frm_field_box").html(jQuery("
                              ").addClass("frm_grid_container frm_sorting").append(e)))})),r}function We(e){var t=s("ul",{className:"frm_grid_container frm_sorting"}),r=s("li",{className:"frm_field_box",child:t});e.replaceWith(r),t.appendChild(e),K(t),X(r,".frm-move")}function Ue(e,t){var r,n,i=/id="(\S+)"/.exec(e),o=document.getElementById(i[1]),a="#"+i[1]+".edit_field_type_divider ul.frm_sorting.start_divider",l=jQuery(a),s=o.getAttribute("data-type");r=e,(n=d()).innerHTML=r,n.querySelectorAll(".form-field").forEach(Ve);var c,f,u=!1;if(Mi(),V(a),"quantity"===s&&function(e){var t=e.getAttribute("data-fid"),r=document.getElementById("field_options[product_field_"+t+"]");null!==r&&(rt(r),ii(document.getElementById("frm-single-settings-"+t)))}(o),"product"!==s&&"quantity"!==s||Be(),l.length)l.parent(".frm_field_box").children(".frm_no_section_fields").addClass("frm_block");else{var m=jQuery(o).closest("ul.frm_sorting.start_divider");m.length&&(En(m),u=!0)}if(-1!==e.indexOf("frm-collapse-page")&&Tr(),f="frm-newly-added",(c=o).classList?c.classList.add(f):c.className+=" "+f,setTimeout((function(){o.classList.remove("frm-newly-added")}),1e3),t){var _=o.getBoundingClientRect(),p=document.getElementById("post-body-content");_.top>=0&&_.left>=0&&_.right<=(window.innerWidth||document.documentElement.clientWidth)&&_.bottom<=(window.innerHeight||document.documentElement.clientHeight)||p.scroll({top:p.scrollHeight,left:0,behavior:"smooth"}),!1===u&&En(l)}Je(),lo(),document.getElementById("frm-show-fields").classList.remove("frm-over-droppable");var g=new Event("frm_added_field",{bubbles:!1});g.frmField=o,g.frmSection=a,g.frmType=s,g.frmToggles=u,document.dispatchEvent(g)}function Ve(e){if(e.dataset.fid){var t=document.getElementById("draft_fields");t&&(""===t.value?t.value=e.dataset.fid:t.value.split(",").includes(e.dataset.fid)||(t.value+=","+e.dataset.fid))}}function Ke(e){jQuery("#new_fields .frm-single-settings").addClass("frm_hidden"),jQuery("#frm-options-panel > .frm-single-settings").removeClass("frm_hidden"),Je(e)}function Je(e){jQuery("li.ui-state-default.selected").removeClass("selected"),jQuery(".frm-show-field-settings.selected").removeClass("selected"),e||gr()}function Ye(){var e=this.value,t=function(e){var t,r=[],n=e.split(""),i=n.length,o=["{","[","("],l={"}":"{",")":"(","]":"["},s=[];for(t=0;t0||s.length>0?a.unmatched_parens+"\n\n":""}(e);t+=function(e,t){var r=function(e,t){var r="";return function(e){return jQuery(e).siblings('label[for^="calc_type"]').children("input").prop("checked")}(t)||/\[(date|time|email|ip)\]/.test(e)&&(r=a.text_shortcodes+"\n\n"),r}(e,t);return r+=function(e){var t="";return/\[id\]|\[key\]|\[if\s\w+\]|\[foreach\s\w+\]|\[created-at(\s*)?/g.test(e)&&(t+=a.view_shortcodes+"\n\n"),t}(e)}(e,this),""!==t&&H(e+"\n\n"+t)}function Xe(e,t){for(var r,n,i,o=!1,a=0;a"+l[t].fieldName+"")):(r=r?" checked":"",i.push('"));e.innerHTML=i.join("")}function nt(){for(var e=document.querySelectorAll(".frmjs_prod_field_opt"),t=0;t'):(n.innerHTML=mn(r),"TEXTAREA"===n.nodeName&&n.classList.contains("wp-editor-area")&&jQuery(n).trigger("change"),n.classList.contains("frm_primary_label")&&"break"===n.nextElementSibling.getAttribute("data-ftype")&&(n.nextElementSibling.querySelector(".frm_button_submit").textContent=r)))}function at(e){var t=parseFloat(e.getAttribute("max")),r=parseFloat(e.getAttribute("min"));return(t-r)/2+r}function lt(){var e,t=this.getAttribute("data-fid"),r="";["field_options_max_","frm_format_"].forEach((function(e){var n=document.getElementById(e+t);n&&(r+=n.value)})),"text"===(e=document.getElementsByName("field_options[type_"+t+"]")[0]).options[e.selectedIndex].value&&dt(""!==r,".frm_invalid_msg"+t)}function st(){var e=this.id.replace("frm_","").replace("req_field_",""),t=this.checked,r=jQuery("#field_label_"+e+" .frm_required");if(dt(t,".frm_required_details"+e),t){var n=jQuery('input[name="field_options[required_indicator_'+e+']"]');""===n.val()&&n.val("*"),r.removeClass("frm_hidden")}else r.addClass("frm_hidden")}function dt(e,t){if($msg=jQuery(t),e)$msg.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast");else{var r=$msg.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not("+t+"):visible").length;r.css("display",""),0===n&&$msg.closest(".frm_validation_msg").fadeOut("fast")}}function ct(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(".frm_unique_details"+e);if(this.checked)t.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast"),$unqDetail=jQuery(".frm_unique_details"+e+" input"),""===$unqDetail.val()&&$unqDetail.val(a.default_unique);else{var r=t.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not(.frm_unique_details"+e+"):visible").length;r.css("display",""),0===n&&t.closest(".frm_validation_msg").fadeOut("fast")}}function ft(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(this).val(),r=jQuery(document.getElementById("frm_field_id_"+e));if(dt(""!==t,".frm_conf_details"+e),""!==t){var n=jQuery(".frm_validation_box .frm_conf_details"+e+" input");""===n.val()&&n.val(a.default_conf),function(e){var t=document.getElementsByName("field_options[type_"+e+"]")[0].value;ut(document.getElementById("field_description_"+e),"field_options[description_"+e+"]",a["enter_"+t]),ut(document.getElementById("conf_field_description_"+e),"field_options[conf_desc_"+e+"]",a["confirm_"+t])}(e),"inline"===t?r.removeClass("frm_conf_below").addClass("frm_conf_inline"):"below"===t&&r.removeClass("frm_conf_inline").addClass("frm_conf_below"),jQuery(".frm-conf-box-"+e).removeClass("frm_hidden")}else jQuery(".frm-conf-box-"+e).addClass("frm_hidden"),setTimeout((function(){r.removeClass("frm_conf_inline frm_conf_below")}),200)}function ut(e,t,r){e.innerHTML===a.desc&&(e.innerHTML=r,document.getElementsByName(t)[0].value=r)}function mt(e){var t=JSON.parse(this.getAttribute("data-opts"));return e.preventDefault(),document.getElementById("frm_bulk_options").value=t.join("\n"),!1}function _t(){var e,t=jQuery(this).closest(".frm-single-settings").data("fid"),r=jQuery("#frm_field_"+t+"_opts .frm_option_template").prop("outerHTML"),n=jQuery(this).data("opttype"),i=0,o=function(e){for(var t=0,r=0,n=jQuery("#frm_field_"+e+"_opts li"),i=0;ti||"000"===i)&&(i=r)}return i}(t);if("000"!==o&&(i=o+1),"other"===n){document.getElementById("other_input_"+t).value=1;var a=jQuery(this).data("ftype");"radio"!==a&&"select"!==a||jQuery(this).fadeOut("slow");var l={action:"frm_add_field_option",field_id:t,opt_key:i,opt_type:n,nonce:frmGlobal.nonce};jQuery.post(ajaxurl,l,(function(e){jQuery(document.getElementById("frm_field_"+t+"_opts")).append(e),rn(t)}))}else r=(r=(r=(r=(r=r.replace(new RegExp('optkey="000"',"g"),'optkey="'+i+'"')).replace(new RegExp("-000_","g"),"-"+i+"_")).replace(new RegExp('-000"',"g"),"-"+i+'"')).replace(new RegExp("\\[000\\]","g"),"["+i+"]")).replace("frm_hidden frm_option_template",""),zo(t,r={newOption:r}),this.closest(".frm_single_option").after(r.newOption),rn(t);null===(e=this.closest(".frm_sortable_field_opts"))||void 0===e||null===(e=e.querySelectorAll(".frm_remove_tag.frm_disabled"))||void 0===e||e.forEach((function(e){return e.classList.remove("frm_disabled")})),Mi()}function pt(){gt(jQuery(this).closest(".frm-single-settings").data("fid"),this.value)}function gt(e,t){var r=jQuery(".frm_multiple_cont_"+e);"select"===t?r.fadeIn("fast"):r.fadeOut("fast")}function yt(){var e=jQuery(this).closest(".frm-single-settings").data("fid");Oo(jQuery(".field_"+e+"_option_key")),jQuery(".field_"+e+"_option").toggleClass("frm_with_key")}function ht(){var e,t,r=jQuery(this).closest(".frm-single-settings"),n=r.data("fid"),i=document.getElementById("frm_field_id_"+n);wt(jQuery(this)),Oo(jQuery(".field_"+n+"_image_id")),Oo(jQuery(".frm_toggle_image_options_"+n)),Oo(jQuery(".frm_image_size_"+n)),Oo(jQuery(".frm_alignment_"+n)),Oo(jQuery(".frm-add-other#frm_add_field_"+n)),(e=gn(n))?(bt(n,"inline"),vt(i),t=tn(n),i.classList.add("frm_image_options"),i.classList.add("frm_image_size_"+t),r.find(".frm-bulk-edit-link").hide()):(i.classList.remove("frm_image_options"),vt(i),bt(n,"block"),r.find(".frm-bulk-edit-link").show()),wp.hooks.doAction("frm_image_options_toggled",r[0],e)}function vt(e){e.classList.remove("frm_image_size_","frm_image_size_small","frm_image_size_medium","frm_image_size_large","frm_image_size_xlarge")}function bt(e,t){jQuery("#field_options_align_"+e).val(t).trigger("change")}function jt(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);Qt(),gn(e)&&(vt(t),t.classList.add("frm_image_options"),t.classList.add("frm_image_size_"+tn(e)))}function wt(e){var t=e.closest(".frm-single-settings").data("fid");jQuery(".field_"+t+"_option").trigger("change")}function Qt(){wt(jQuery(this))}function xt(e){var t=e.target.closest(".frm_image_preview_wrapper");e.preventDefault(),wp.media.model.settings.post.id=0;var r=wp.media.frames.file_frame=wp.media({multiple:!1,library:{type:["image"]}});r.on("select",(function(){var e=r.state().get("selection").first().toJSON(),n=t.querySelector("img");n.setAttribute("src",e.url),n.classList.remove("frm_hidden"),n.removeAttribute("srcset"),t.querySelector(".frm_image_preview_frame").style.display="block",t.querySelector(".frm_image_preview_title").textContent=e.filename,t.querySelector(".frm_choose_image_box").style.display="none";var i=jQuery(t);i.siblings('input[name*="[label]"]').data("frmimgurl",e.url),i.find("input.frm_image_id").val(e.id).trigger("change"),wp.media.model.settings.post.id=0})),r.open()}function Et(e){var t=jQuery(this).closest(".frm_image_preview_wrapper");e.preventDefault(),e.stopPropagation(),t.find("img").attr("src",""),t.find(".frm_image_preview_frame").hide(),t.find(".frm_choose_image_box").show(),t.find("input.frm_image_id").val(0).trigger("change")}function kt(){var e=jQuery(this).closest("li").find(".frm_form_fields select");this.checked?e.attr("multiple","multiple"):e.removeAttr("multiple")}function Lt(){var e=document.getElementById("dropform-search-input");null!==e&&setTimeout((function(){e.focus()}),100)}function St(e){var t=e.target,r=t.closest(".frm_warning_style");jQuery(r).fadeOut(400,(function(){return r.remove()}));var n=t.dataset.action,i=new FormData;g(n,i)}function At(e){e.preventDefault()}function It(){var e,t=this.parentNode,r=t.parentNode,n=r.querySelectorAll("li:not(.frm_hidden)");2===n.length&&(null===(e=Array.from(n).find((function(e){return e!==t})).querySelector(".frm_remove_tag"))||void 0===e||e.classList.add("frm_disabled"));var i,o=this.getAttribute("data-fid");jQuery(t).fadeOut("fast",(function(){wp.hooks.doAction("frm_before_delete_field_option",this),jQuery(t).remove(),jQuery(r).find(".frm_other_option").length<1&&(null!==(i=document.getElementById("other_input_"+o))&&(i.value=0),jQuery("#other_button_"+o).fadeIn("fast"))})),Mi()}function Bt(){var e,t,r,n;(e=jQuery(this)).is(":checked")&&(t=function(){setTimeout((function(){e.prop("checked",!1)}),0)},r=function(){e.off("mouseup",n)},n=function(){t(),r()},e.on("mouseup",n),e.one("mouseout",r))}function Ct(){this.value===a.new_option&&(this.setAttribute("data-value-on-focus",this.value),this.value="")}function qt(e){return C(B("Are you sure you want to delete these %1$s selected field(s)?","formidable"),e)}function Nt(){var e=a.conf_delete,t=this.parentNode.parentNode.parentNode.parentNode.parentNode,r=t.parentNode,n=jQuery(this).closest("li.form-field"),i=n.data("fid");if("divider"===n.data("ftype")){var o=document.querySelectorAll(".frm-field-group-hover-target .start_divider .frm_field_box"),l=0;o.forEach((function(e){var t=e.querySelectorAll("li.form-field");t&&(l+=t.length)})),l&&(e=qt(++l))}return r.classList.contains("frm-section-collapsed")||r.classList.contains("frm-page-collapsed")||("divider_section_only"===t.className&&(e=a.conf_delete_sec),this.setAttribute("data-frmverify",e),this.setAttribute("data-frmverify-btn","frm-button-red"),this.setAttribute("data-deletefield",i),Te(),F(this)),!1}function Tt(){this.closest("li.form-field").click()}function Ot(){var e,t;null!==(e=document.querySelector(".frm-field-group-hover-target"))&&(e.classList.add("frm-selected-field-group"),(t=document.createElement("div")).classList.add("frm-delete-field-groups","frm_hidden"),document.body.appendChild(t),t.click())}function Dt(){var e=document.querySelector(".frm-field-group-hover-target");if(null!==e){var t="frm_field_group_"+we(),r=document.createTextNode("");We(r);var n=jQuery(r).closest("li").get(0);n.classList.add("frm_hidden");var i=n.querySelector("ul");i.id=t,jQuery(e.closest("li.frm_field_box")).after(n);var o=ae(jQuery(e)),a=[],l=[],s=o.length,d={},c=0;jQuery(n).on("frm_added_duplicated_field_to_row",(function(e,t){if(d[jQuery(t.duplicatedFieldHtml).attr("data-fid")]=t.originalFieldId,!(s>++c)){var r=jQuery(i),o=ae(r);l.forEach((function(e){e.remove()}));for(var f=0;f0&&ir(Ut(t)))&&l>=12&&(l=Math.floor(12/t)),s=0;s',""),t);e.prepend(r),document.getElementById("frm-field-group-message-dismiss").addEventListener("click",(function(){mr(document.getElementById("frm-field-group-message"))}))}}(),"ul"===e.originalEvent.target.nodeName.toLowerCase()){var t=document.querySelector(".frm-field-group-hover-target");if(t){var r=e.ctrlKey||e.metaKey,n=e.shiftKey,i=t.classList.contains("frm-selected-field-group"),o=function(){var e=jQuery(".frm-selected-field-group");if(e.length)return e;var t=_r();if(t){var r=t.closest("ul");if(r&&1===ae(jQuery(r)).length)return r.classList.add("frm-selected-field-group"),jQuery(r)}return jQuery()}(),a=o.length;if(r||n){var l=_r();if(null===l||jQuery(l).siblings("li.form-field").length||(l.parentNode.classList.add("frm-selected-field-group"),++a),r){if(i)return--a,t.classList.remove("frm-selected-field-group"),void pr(a);++a}else if(n&&!i){++a;var s=o.first();(s.parent().index()=2||1===e&&ae(jQuery(document.querySelector(".frm-selected-field-group"))).length>1?function(){var e,t,r,n,i;if(null!==(e=document.getElementById("frm_field_multiselect_popup")))return e.classList.toggle("frm-unmergable",!hr()),e;(e=d()).id="frm_field_multiselect_popup",hr()||e.classList.add("frm-unmergable"),(t=d()).classList.add("frm-merge-fields-into-row"),t.textContent=B("Merge into row","formidable"),(r=document.createElement("a")).style.marginLeft="5px",r.classList.add("frm_icon_font","frm_arrowdown6_icon"),r.setAttribute("href","#"),t.appendChild(r),e.appendChild(t),(n=d()).classList.add("frm-multiselect-popup-separator"),e.appendChild(n),(i=d()).classList.add("frm-delete-field-groups"),i.appendChild(Rt("frm_trash_svg")),e.appendChild(i),document.getElementById("post-body-content").appendChild(e),jQuery(e).hide().fadeIn()}():yr(),Me()}function gr(e){if(void 0!==e){if(null!==e.originalEvent.target.closest("#frm-show-fields"))return;if(e.originalEvent.target.classList.contains("frm-merge-fields-into-row"))return;if(null!==e.originalEvent.target.closest(".frm-merge-fields-into-row"))return;if(e.originalEvent.target.classList.contains("frm-custom-field-group-layout"))return;if(e.originalEvent.target.classList.contains("frm-cancel-custom-field-group-layout"))return}jQuery(".frm-selected-field-group").removeClass("frm-selected-field-group"),jQuery(document).off("click",gr),yr()}function yr(){var e=document.getElementById("frm_field_multiselect_popup");null!==e&&e.remove()}function hr(){var e,t,r,n,i;if(1===(r=(e=document.querySelectorAll(".frm-selected-field-group")).length))return!1;for(t=0,n=0;n6)return!1}return!0}function vr(e){var t;null===e.originalEvent.target.closest("#frm_field_group_popup")&&(e.originalEvent.target.classList.contains("frm-custom-field-group-layout")||(t=Pt(br(),document.querySelector(".frm-selected-field-group").firstChild),this.appendChild(t)))}function br(){var e=0;return jQuery(document.querySelectorAll(".frm-selected-field-group")).each((function(){e+=ae(jQuery(this)).length})),e}function jr(){var e,t,r,n;n=[],jQuery(".frm-selected-field-group > li.form-field").each((function(){n.push(this.dataset.fid)})),t=function(e){return function(t){t.preventDefault(),function(e){e.forEach((function(e){Qr(e)}))}(e)}}(e=n),null!==(r=document.getElementById("frm_field_multiselect_popup"))&&r.remove(),this.setAttribute("data-frmverify",qt(e.length)),F(this);var i=document.getElementById("frm-confirmed-click");null==i||i.removeAttribute("data-deletefield"),jQuery(i).on("click",t),jQuery("#frm_confirm_modal").one("dialogclose",(function(){jQuery(i).off("click",t)}))}function wr(){Qr(this.getAttribute("data-deletefield"))}function Qr(e){var t=jQuery("#frm_field_id_"+e);xr(e),t.hasClass("edit_field_type_divider")&&t.find("li.frm_field_box[data-fid]").each((function(){xr(this.getAttribute("data-fid"))})),xn()}function xr(e){jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_delete_field",field_id:e,nonce:frmGlobal.nonce},success:function(){var t,r=jQuery(document.getElementById("frm_field_id_"+e)),n=jQuery("#frm-single-settings-"+e);n.is(":visible")&&(null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click(),document.querySelector("#frm-options-panel .frm-single-settings").classList.remove("frm_hidden")),function(e){var t=e[0].querySelectorAll(".frm-inline-modal[data-fills]");t.length&&t.forEach((function(e){e.classList.add("frm_hidden"),e.removeAttribute("data-fills"),e.closest("form").appendChild(e)}))}(n),n.remove(),r.fadeOut("slow",(function(){var e,t=r.closest(".start_divider"),n=r.data("type"),i=r.siblings("li.form-field");if(i.length||(r.is(".edit_field_type_end_divider")?i.length=r.closest("li.form-field").siblings():e=r.closest("ul.frm_sorting").parent()),r.remove(),"break"===n?Tr():"product"===n&&(Be(),nt()),i.length?le(i.first()):e.remove(),0===jQuery("#frm-show-fields li").length||function(){if(j.get(0).childElementCount>1)return!1;var e=j.get(0).firstElementChild.firstElementChild.querySelectorAll("li.frm_field_box");return!(e.length>1)&&e[0].classList.contains("edit_field_type_submit")}()){var o=document.getElementById("frm_form_editor_container");o.classList.remove("frm-has-fields"),o.classList.add("frm-empty-fields")}else t.length&&En(t);R()})),r.length&&wp.hooks.doAction("frm_after_delete_field",r[0])}})}function Er(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_logic_row_"+e).querySelectorAll(".frm_logic_row");return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_logic_row",form_id:t,field_id:e,nonce:frmGlobal.nonce,meta_name:kr(r,"frm_logic_"+e+"_"),fields:tt()},success:function(t){jQuery(document.getElementById("logic_"+e)).fadeOut("fast",(function(){var r=document.getElementById("frm_logic_row_"+e);r.insertAdjacentHTML("beforeend",t);var n=r.querySelector(".frm_logic_row:last-child .frm-logic-rule-text");n&&(n.textContent=r.dataset.ruleText);var i=r.closest(".frm_logic_rows");i.style.height="auto",jQuery(i).fadeIn("fast")}))}}),!1}function kr(e,t,r){return e.length?parseInt(e[e.length-1].id.replace(t,""),10)+1:void 0!==r?r:0}function Lr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_watch_lookup_block_"+e).children;return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_watch_lookup_row",form_id:t,field_id:e,row_key:kr(r,"frm_watch_lookup_"+e+"_"),nonce:frmGlobal.nonce},success:function(t){var r,n=jQuery(document.getElementById("frm_watch_lookup_block_"+e));n.append(t),n.fadeIn("slow"),null===(r=document.getElementById("frm_watch_lookup_label_".concat(e)))||void 0===r||r.classList.remove("frm-force-hidden")}}),!1}function Sr(e){var t,r,n=jQuery(e).closest(".frm-single-settings").attr("data-fid"),i=jQuery(e).closest("ul").get(0).querySelectorAll(".field_"+n+"_option");for(t in i)if((r=i[t]).id!==e.id&&r.value===e.value&&"true"!==r.getAttribute("data-duplicate"))return!0;return!1}function Ar(){var e,t;null===this.getAttribute("data-value-on-load")&&(this.setAttribute("data-value-on-load",this.value),t=jQuery(this).closest(".frm-single-settings").attr("data-fid"),(e=document.createElement("input")).value=this.value,e.setAttribute("type","hidden"),e.setAttribute("name","optionmap["+t+"]["+this.value+"]"),this.parentNode.appendChild(e),void 0===S[t]&&(S[t]={}),S[t][this.value]=e),"true"===this.getAttribute("data-duplicate")&&(this.removeAttribute("data-duplicate"),Sr(this))?this.setAttribute("data-value-on-focus",this.getAttribute("data-value-on-load")):""===this.value&&a.new_option===this.getAttribute("data-value-on-focus")||this.setAttribute("data-value-on-focus",this.value)}function Ir(e){var t,r=e.closest(".frm_single_option");return e.parentElement.classList.contains("frm_single_option")?{newValue:r.querySelector('.frm_option_key input[type="text"]').value,newLabel:t=e.value}:(t=r.querySelector('input[type="text"]').value,{newValue:e.value,newLabel:t})}function Br(){var e,t,r,n,i,o,a,l,s,d,c,f,u=function(e){var t=function(e){var t,r,n=null!==(t=null===(r=e.closest(".frm-single-settings").querySelector(".frm_toggle_sep_values"))||void 0===r?void 0:r.checked)&&void 0!==t&&t,i=e.closest(".frm_single_option");return n&&e.parentElement.classList.contains("frm_single_option")?{oldValue:i.querySelector('.frm_option_key input[type="text"]').getAttribute("data-value-on-focus"),oldLabel:e.getAttribute("data-value-on-focus")}:{oldValue:e.getAttribute("data-value-on-focus"),oldLabel:i.querySelector('input[type="text"]').getAttribute("data-value-on-focus")}}(e),r=t.oldValue,n=t.oldLabel,i=Ir(e);return{oldValue:r,oldLabel:n,newValue:i.newValue,newLabel:i.newLabel}}(this),m=u.oldValue,_=u.oldLabel,p=u.newValue,g=u.newLabel;if(m!==p||_!==g){var y=this.closest(".frm-single-settings");if(t=y.getAttribute("data-fid"),e=this.getAttribute("data-value-on-load"),Sr(this))return this.setAttribute("data-duplicate","true"),void(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=e));for(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=p),s=[],rows=D.querySelectorAll(".frm_logic_row"),o=rows.length,a=0;a1)for(document.getElementById("frm-fake-page").style.display="block",e=0;e200)&&(H(a.repeat_limit_min),this.value="")}function Jr(){var e=this.value;""!==e&&(e<1||e>200)&&(H(a.checkbox_limit),this.value="")}function Yr(e,t){jQuery(e).closest(".frm_field_box").find(".frm_"+t+"_form_row .frm_repeat_label").text(e.value)}function Xr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=this.value,r=document.getElementById("frm_show_selected_fields_"+e),n=document.getElementById("frm_show_selected_forms_"+e);jQuery(n).find("select").val(""),"form"===t?(n.style.display="inline",function(e){if(null!==e)for(;e.firstChild;)e.removeChild(e.firstChild)}(r)):(r.style.display="none",n.style.display="none",wn(t,e))}function Zr(){var e,t;(e=en(this))&&(t=jQuery(this).closest(".frm_single_option"),function(e,t,r){var n,i,o,a,l,s,c=r.data("optkey"),f=pn(e),u=jQuery('label[for="field_'+t+"-"+c+'"]'),m="field_options[options_"+e+"]["+c+"]",_=jQuery('input[name="'+m+'[label]"]');if(u.length<1)return rn(e),void((o=r.find('input[name^="default_value_"]')).is(":checked")&&_.length>0&&jQuery('select[name^="item_meta['+e+']"]').val(_.val()));if(a=u.children("input"),n=_.length<1?(_=jQuery('input[name="'+m+'"]')).val():f?jQuery('input[name="'+m+'[value]"]').val():_.val(),!(_.length<1)){if(i=u[0].childNodes,gn(e))l=function(e,t,r){var n,i,o;return(n=e.find("img"))&&(i=n.attr("src")),o=yn(t),fn(t),_n(r.val(),o,i)}(r,e,_),(s=u.find(".frm_image_option_container")).length>0?s.replaceWith(l):(i[i.length-1].nodeValue="",u.append(l));else{var p=!1;i.forEach((function(t,r){if(!1===p)"INPUT"===t.tagName&&(p=r);else if(r===p+1){var n="";!function(e){var t=document.getElementsByName("field_options[image_options_"+e+"]"),r=Array.from(t).find((function(e){return e.checked&&"buttons"===e.value}));return void 0!==r}(e)?t.nodeValue=" "+_.val():(n=d({className:"frm_label_button_container",text:" "+_.val()}),u[0].replaceChild(n,t))}else u[0].removeChild(t)}))}a.val(n),o=r.find('input[name^="default_value_"]'),a.prop("checked",!!o.is(":checked"))}}(e.fieldId,e.fieldKey,t))}function en(e){var t;return!!(t=jQuery(e).closest(".frm_sortable_field_opts")).length&&{fieldId:t.attr("id").replace("frm_field_","").replace("_opts",""),fieldKey:t.data("key")}}function tn(e){var t,r=document.getElementById("field_options_image_size_"+e),n="";return null!==r&&""!==(t=r.value)&&(n=t),n}function rn(e){var t,r,n,i,o,a=jQuery('[name^="item_meta['+e+']"]');if(!(a.length<1)){if(a.is("select"))null!==(i=document.getElementById("frm_placeholder_"+e))&&""===i.value?sn(a[0],{sourceID:e}):sn(a[0],{sourceID:e,placeholder:i.value});else{r=cn(e),jQuery("#field_"+e+"_inner_container > .frm_form_fields").html(""),o=en(jQuery("#frm_delete_field_"+e+"-000_container"));var l=jQuery("#field_"+e+"_inner_container > .frm_form_fields"),s=gn(e),d=s?tn(e):"",c=s?"frm_image_option frm_image_"+d+" ":"",f=Ho(e);for(n="hidden"===a.attr("type")?a.data("field-type"):a.attr("type"),t=0;t=0;a--){var u;l=d[a];var m=null===(u=document.getElementById("frm_field_"+e+"_opts").querySelector('.frm_option_key input[type="text"]'))||void 0===u?void 0:u.value;m||(m=l),s=i.querySelector('option[value="'+m+'"]');var _=nn(e,l),p=_.newValue,g=_.newLabel,y=document.querySelectorAll("#frm_field_"+e+"_opts input[data-value-on-focus]"),h=Array.from(y).find((function(e){return e.value===l}));if(h){var v=h.dataset.valueOnFocus;if(v&&i.querySelector('option[value="'+v+'"]'))continue}an(i,s,p,g)}null!==(s=i.querySelector('option[value=""]'))&&i.prepend(s)}}function an(e,t,r,n){null!==t||e.querySelector('option[value="'+r+'"]')||((t=frmDom.tag("option",{text:n})).value=r),e.prepend(t)}function ln(e,t,r,n,i,o){var a,l="",s=-1!==t.key.indexOf("other"),d="field_"+n+"-"+t.key,c="scale"===e?"radio":e;return a='',this.getSingle=function(){return""!==(l=wp.hooks.applyFilters("frm_admin.build_single_option_template",l,{opt:t,type:e,fieldId:r,classes:o,id:d}))?l:'
                              "+(s?a:"")+"
                              "},this.getSingle()}function sn(e,t){if(null!==e){var r=t.sourceID,n=t.placeholder,i=Ho(r),o=t.other;!function(e){var t;if(void 0!==e.options)for(t=e.options.length-1;t>=0;t--)e.remove(t)}(e);for(var a=cn(r),l=void 0!==n,s=0;s0||d[t].name.indexOf("[value]")>0||d[t].name.indexOf("[image]")>0||d[t].name.indexOf("[price]")>0||(i=r=d[t].value,o=d[t].name.replace("field_options[options_"+e+"][","").replace("[label]","").replace("]",""),m&&(n=d[t].name.replace("[label]","[value]"),r=jQuery('input[name="'+n+'"]').val()),u&&(i=_n(i,f,un(d[t]),fn(e))),a={saved:r,label:i=frmAdminBuild.hooks.applyFilters("frm_choice_field_label",i,e,d[t],u),checked:(l=d[t].id,field=jQuery("#"+l),0!==field.length&&(checkbox=field.siblings("input[type=checkbox]"),checkbox.length&&checkbox.prop("checked"))),key:o},c&&(n=d[t].name.replace("[label]","[price]"),a.price=jQuery('input[name="'+n+'"]').val()),s.push(a));return s}function fn(e){var t=document.getElementById("frm-single-settings-"+e);return null===t?"radio":t.classList.contains("frm-type-checkbox")?"checkbox":"radio"}function un(e){var t,r=jQuery(e).siblings(".frm_image_preview_wrapper");return r.length&&(t=r.find("img")).length?t.attr("src"):""}function mn(e){(e instanceof Element||e instanceof Document)&&(e=e.outerHTML);var t=jQuery.parseHTML(e).reduce((function(e,t){var r=frmDom.cleanNode(t);return"#text"===r.nodeName?e+r.textContent:e+r.outerHTML}),"");return t!==e?mn(t):t}function _n(e,t,r,n){var i,o,l,c=e;return c=mn(c),r?o=m({src:r,alt:c}):(o=d({className:"frm_empty_url"})).innerHTML=a.image_placeholder_icon,i=t?" frm_label_with_image":"",(l=s("span",{className:"frm_text_label_for_image_inner"})).innerHTML=c,s("span",{className:"frm_image_option_container"+i,children:[o,s("span",{className:"frm_text_label_for_image",child:l})]})}function pn(e){return hn("separate_value_"+e)}function gn(e){for(var t=!1,r=document.getElementsByName("field_options[image_options_"+e+"]"),n=0;n=0&&(r.splice(t,1),e.val(r),e.next(".btn-group").find('.multiselect-container input[value=""]').prop("checked",!1))}(jQuery(this))}function An(e){e.val(""),e.next(".btn-group").find('.multiselect-container input[value!=""]').prop("checked",!1)}function In(){jQuery(".frm-hide-empty").each((function(){0===jQuery(this).text().trim().length&&jQuery(this).remove()}))}function Bn(e){e.preventDefault(),Cn(this)}function Cn(e,t){var r=document.getElementById(e.getAttribute("data-open")),n=jQuery(e).closest("p,ul"),i=void 0!==t;n.hasClass("frm-open")?(n.removeClass("frm-open"),r.classList.add("frm_hidden")):(i||(t=Gi(e)),null!==t&&(i||t.focus(),n.after(r),r.setAttribute("data-fills",t.id.replace("-proxy-input","")),0===r.id.indexOf("frm-calc-box")&&Ze(r,!0)),n.addClass("frm-open"),r.classList.remove("frm_hidden"),wp.hooks.doAction("frm_show_inline_modal",r,e))}function qn(e){e.preventDefault(),this.parentNode.classList.add("frm_hidden"),jQuery('.frm-open [data-open="'+this.parentNode.id+'"]').closest(".frm-open").removeClass("frm-open")}function Nn(e){var t=e.target;t.closest(".frm-inline-modal.frm-modal-no-dismiss")||t.closest(".frm-show-inline-modal")||t.closest("#frm_adv_info")||t.closest(".frm-token-proxy-input")||document.querySelectorAll(".frm-inline-modal.frm-modal-no-dismiss:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden"),e.previousElementSibling.classList.remove("frm-open")}))}function Tn(){var e,t,r,n,i,o,a,l=this.getAttribute("data-frmchange").split(",");for(e=0;e',r)),o.innerHTML=c,e.dataset.upsellImage&&o.appendChild(m({src:e.dataset.upsellImage,alt:e.dataset.upgrade})),a.href=function(e,t){var r=e.getAttribute("data-link");return null!=r&&""!==r||(r=t.getAttribute("data-default")),r}(e,a),s.style.display="none",i.style.display=_,l.style.display="block"===_?"inline-block":_,o.style.display=u,a.style.display="block"===f?"inline-block":f}function Yn(e){void 0===e&&(e=""),function(e){var t,r=jQuery(e+" :not(.frm_has_shortcodes) .frm_not_email_message, "+e+" :not(.frm_has_shortcodes) .frm_not_email_to, "+e+" :not(.frm_has_shortcodes) .frm_not_email_subject");for(t=0;t').before('')}function Xn(){var e="success";"options[edit_action]"===this.name&&(e="edit");var t=jQuery(this).val();jQuery("."+e+"_action_box").hide(),"redirect"===t?jQuery("."+e+"_action_redirect_box."+e+"_action_box").fadeIn("slow"):"page"===t?jQuery("."+e+"_action_page_box."+e+"_action_box").fadeIn("slow"):jQuery("."+e+"_action_message_box."+e+"_action_box").fadeIn("slow")}function Zn(e){if(m=e.target,p=jQuery(m),g=p.closest(".frm_form_action_settings"),(y=g.find(".widget-inside")).find("p, div, table").length||((_=g.find(".widget-top")).on("frm-action-loaded",(function(){p.trigger("click"),g.removeClass("open"),y.hide()})),_.trigger("click"),0)){var t=e.target.closest(".frm_form_action_settings"),r=t.querySelectorAll(".wp-editor-area");r.length&&r.forEach((function(e){tinymce.EditorManager.execCommand("mceRemoveEditor",!0,e.id)}));var n=jQuery(t).clone(),i=n.attr("id").replace("frm_form_action_",""),o=ei(i);n.find(".frm_action_id, .frm-btn-group").remove(),n.find('input[name$="['+i+'][ID]"]').val(""),n.find(".widget-inside").hide(),n.find("input[type=text], textarea, input[type=number]").prop("defaultValue",(function(){return this.value})),n.find("input[type=checkbox], input[type=radio]").prop("defaultChecked",(function(){return this.checked}));var a=new RegExp("\\["+i+"\\]","g"),l=new RegExp("_"+i+'"',"g"),s=new RegExp("-"+i+'"',"g"),c=new RegExp('"'+i+'"',"g"),f=n.html().replace(a,"["+o+"]").replace(l,"_"+o+'"');f=f.replace(s,"-"+o+'"').replace(c,'"'+o+'"');var u=d({id:"frm_form_action_"+o,className:n.get(0).className});u.setAttribute("data-actionkey",o),u.innerHTML=f,u.querySelectorAll(".wp-editor-wrap, .wp-editor-wrap *").forEach((function(e){"string"==typeof e.className&&(e.className=e.className.replace(i,o)),e.id=e.id.replace(i,o)})),u.classList.remove("open"),document.getElementById("frm_notification_settings").appendChild(u),r.length&&(r.forEach((function(e){frmDom.wysiwyg.init(e)})),u.querySelectorAll(".wp-editor-area").forEach((function(e){frmDom.wysiwyg.init(e)}))),u.classList.contains("frm_single_on_submit_settings")&&u.querySelector("input.frm-page-search")&&jo(u),lo(),wp.hooks.doAction("frm_after_duplicate_action",u)}var m,_,p,g,y}function ei(e){var t=parseInt(e,10)+11;return null!==document.getElementById("frm_form_action_"+t)&&(t=ei(++t)),t}function ti(){var e,t=jQuery(this).data("actiontype");if(!di(t)){var r=(e=kr(document.querySelectorAll(".frm_form_action_settings"),"frm_form_action_"),void 0!==document.getElementById("frm_form_action_"+e)&&(e+=100),A>=e&&(e=A+1),A=e,e),n=k,i=document.createElement("div");i.classList.add("frm_single_"+t+"_settings");var o=document.getElementById("frm_notification_settings");o.appendChild(i),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_action",type:t,list_id:r,form_id:n,nonce:frmGlobal.nonce},success:function(e){Mi(),i.remove(),document.querySelectorAll(".frm_form_action_settings.open").forEach((function(e){return e.classList.remove("open")}));var n=d();n.innerHTML=e;var a=n.querySelector(".widget-top");Array.from(n.children).forEach((function(e){return o.appendChild(e)})),jQuery(".frm_form_action_settings").fadeIn("slow");var l=document.getElementById("frm_form_action_"+r);l.classList.add("open"),document.getElementById("post-body-content").scroll({top:l.offsetTop+10,left:0,behavior:"smooth"}),si(t),Yn("#frm_form_action_"+r),lo(),jo(l),a&&jQuery(a).trigger("frm-action-loaded"),frmAdminBuild.hooks.doAction("frm_added_form_action",l)}})}}function ri(){var e=document.getElementById("frm_email_addon_menu").classList,t=document.getElementById("actions-search-input");e.contains("frm-all-actions")?(e.remove("frm-all-actions"),e.add("frm-limited-actions")):(e.add("frm-all-actions"),e.remove("frm-limited-actions")),t.value="",Io(t,"input")}function ni(e){e.on("Change",(function(){!function(e){var t,r;(t=document.querySelector(".frm-single-settings:not(.frm_hidden)"))&&null!==(r=t.querySelector(".wp-editor-wrap"))&&r.classList.contains("tmce-active")&&!tinyMCE.activeEditor.isHidden()&&(e.targetElm.value=e.getContent(),jQuery(e.targetElm).trigger("change"))}(e)}))}function ii(e){var t=this;if(null!==e)return this.fragment=document.createDocumentFragment(),this.initOnceInAllInstances=function(){void 0===ii.prototype.endMarker&&(ii.prototype.endMarker=document.getElementById("frm-end-form-marker"))},this.append=function(e){var r=null!==e?e.parentElement.classList:"";null!==e&&(r.contains("frm_field_box")||r.contains("divider_section_only"))&&t.fragment.appendChild(e)},this.moveFields=function(){w.insertBefore(t.fragment,ii.prototype.endMarker)},this.initOnceInAllInstances(),void 0!==e?(this.append(e),void this.moveFields()):{append:this.append,moveFields:this.moveFields}}function oi(){var e=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),t=this.getAttribute("data-emailrow");jQuery("#frm_form_action_"+e+" .frm_"+t+"_row").fadeIn("slow"),jQuery(this).fadeOut("slow")}function ai(){var e=jQuery(this).closest(".frm_form_action_settings"),t=this.getAttribute("data-emailrow"),r=".frm_"+t+"_row",n=".frm_"+t+"_button";jQuery(e).find(n).fadeIn("slow"),jQuery(e).find(r).fadeOut("slow",(function(){jQuery(e).find(r+" input").val("")}))}function li(){var e=jQuery(this).closest(".frm_form_action_settings"),t=".frm_from_to_match_row";e.find('input[name$="[post_content][from]"]').val()===e.find('input[name$="[post_content][email_to]"]').val()?jQuery(e).find(t).fadeIn("slow"):jQuery(e).find(t).fadeOut("slow")}function si(e){var t,r,n=document.querySelectorAll(".frm_"+e+"_action");di(e)?(t=n,r=ci(e)>0,t.forEach((function(e){e.classList.remove("frm_active_action"),e.classList.add("frm_inactive_action"),r&&e.classList.add("frm_already_used")}))):n.forEach((function(e){e.querySelector(".frm_show_upgrade")||(e.classList.remove("frm_inactive_action","frm_already_used"),e.classList.add("frm_active_action"))}))}function di(e){var t=function(e){return jQuery(".frm_single_"+e+"_settings").length}(e)>=ci(e),r={type:e};return wp.hooks.applyFilters("frm_action_at_limit",t,r)}function ci(e){return parseInt(jQuery(".frm_"+e+"_action").data("limit"),10)}function fi(){var e=a.only_one_action,t=this.dataset.limit;void 0!==t&&((t=parseInt(t))>1?e=e.replace(1,t).trim():e+=" "+a.edit_action_text),H(e)}function ui(){var e=jQuery(this).data("emailkey"),t=jQuery(this).closest(".frm_form_action_settings").find(".frm_action_name").val(),r=document.getElementById("form_id").value,n=document.getElementById("frm_logic_row_"+e),i=kr(n.querySelectorAll(".frm_logic_row"),"frm_logic_"+e+"_"),o=d({id:"frm_logic_"+e+"_"+i,className:"frm_logic_row frm_hidden"});return n.appendChild(o),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_logic_row",email_id:e,form_id:r,meta_name:i,type:t,nonce:frmGlobal.nonce},success:function(t){jQuery(document.getElementById("logic_link_"+e)).fadeOut("slow",(function(){o.insertAdjacentHTML("beforebegin",t),o.remove(),jQuery(n).parent(".frm_logic_rows").fadeIn("slow")}))}}),!1}function mi(){var e=jQuery("select.frm_single_post_field");e.css("border-color","");var t=this,r=jQuery(t).val();if(""===r||"checkbox"===r)return!1;e.each((function(){if(jQuery(this).val()===r&&this.name!==t.name)return this.style.borderColor="red",jQuery(t).val(""),H(a.field_already_used),!1}))}function _i(){var e=jQuery(this).val();""===e?(jQuery(".frm_post_content_opt, select.frm_dyncontent_opt").hide().val(""),jQuery(".frm_dyncontent_opt").hide()):"post_content"===e?(jQuery(".frm_post_content_opt").show(),jQuery(".frm_dyncontent_opt").hide(),jQuery("select.frm_dyncontent_opt").val("")):(jQuery(".frm_post_content_opt").hide().val(""),jQuery("select.frm_dyncontent_opt, .frm_form_field.frm_dyncontent_opt").show())}function pi(){var e=jQuery(this).val(),t=jQuery(document.getElementById("frm_dyncontent"));""===e||"new"===e?(t.val(""),jQuery(".frm_dyncontent_opt").show()):jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_display_get_content",id:e,nonce:frmGlobal.nonce},success:function(e){t.val(e),jQuery(".frm_dyncontent_opt").show()}})}function gi(){var e,t,r=document.getElementById("frm_posttax_rows").childNodes,n=document.querySelector(".frm_post_parent_field"),o=document.querySelector(".frm_post_menu_order_field"),a=this.value;jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_replace_posttax_options",post_type:a,nonce:frmGlobal.nonce},success:function(n){for(i=0;i');var e=jQuery(this).closest(".frm_form_action_settings").find('select[name$="[post_content][post_type]"]').val(),t=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),r=jQuery(this).closest(".frm_posttax_row").attr("id").replace("frm_posttax_",""),n=jQuery(this).val(),i=jQuery(document.getElementById(r+"_show_exclude")).is(":checked")?1:0,o=jQuery('select[name$="[post_category]['+r+'][field_id]"]').val(),a=jQuery('input[name="id"]').val();jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_posttax_row",form_id:a,post_type:e,tax_key:r,action_key:t,meta_name:n,field_id:o,show_exclude:i,nonce:frmGlobal.nonce},success:function(e){jQuery(document.getElementById("frm_posttax_"+r)).replaceWith(e)}})}}function wi(){var e=jQuery(this).closest(".frm_postmeta_row"),t=e.find(".frm_cancelnew"),r=e.find(".frm_enternew");return e.find("select.frm_cancelnew").is(":visible")?(t.hide(),r.show()):(t.show(),r.hide()),e.find("input.frm_enternew, select.frm_cancelnew").val(""),!1}function Qi(){var e=jQuery(this),t=e.val();"checkbox"===e.attr("type")&&!1===this.checked&&(t="");var r=e.data("toggleclass");""===t?jQuery("."+r).hide():(jQuery("."+r).show(),jQuery(".hide_"+r+"_"+t).hide())}function xi(){Rn()||(Wn(this),Hn(document.querySelector(".frm_form_settings")))}function Ei(e){return e.preventDefault(),ki(jQuery(this),this.getAttribute("data-code")),!1}function ki(e,t){var r=!1,i=e;if("object"===n(e)){if(e.hasClass("frm_noallow"))return;void 0===(i=jQuery(e).closest("[data-fills]").attr("data-fills"))&&void 0!==(i=e.closest("div").attr("class"))&&(i=i.split(" ")[1])}if(void 0===i){var o=document.activeElement;"search"===o.type?null===(i=o.id.replace("-search-input","")).match(/\d/gi)&&(i=(o=jQuery(".frm-single-settings:visible ."+i)).attr("id")):i=o.id}i&&(r=jQuery("#wp-"+i+"-wrap.wp-editor-wrap").length>0);var a=jQuery(document.getElementById(i));if(void 0===e.attr("data-shortcode")&&(!a.length||void 0===a.attr("data-shortcode"))){var l=e.parents("ul.frm_code_list").attr("data-shortcode");"undefined"!==l&&"no"===l||(t="["+t+"]")}if(r&&(wpActiveEditor=i),!a.length)return!1;if("[default-html]"===t||"[default-plain]"===t){var s=0;"[default-plain]"===t&&(s=1),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_get_default_html",form_id:jQuery('input[name="id"]').val(),plain_text:s,nonce:frmGlobal.nonce},elementId:i,success:function(e){if(r){var t=document.createElement("p");t.innerText=e,send_to_editor(t.innerHTML)}else Li(a,e)}})}else t=function(e,t,r){return"object"===n(t)&&t instanceof jQuery&&0===r[0].id.indexOf("success_url_")&&(t=t[0]).closest("#frm-insert-fields-box")?(t.parentNode.classList.contains("frm_insert_url")||(e=e.replace("]"," sanitize_url=1]")),e):e}(t,e,a),r?send_to_editor(t):Li(a,t);return!1}function Li(e,t){if(document.selection)e[0].focus(),document.selection.createRange().text=t;else{obj=e[0];var r=obj.selectionEnd;t=function(e,t,r,n){var i=e.data("sep");if(void 0===i)return t;var o=e.val();if(!o.trim().length)return t;var a=new RegExp(i+"\\s*$"),l=new RegExp("^\\s*"+i);return o.substr(0,r).trim().length&&!1===a.test(o.substr(0,r))&&(t=i+t),o.substr(n,o.length).trim().length&&!1===l.test(o.substr(n,o.length))&&(t+=i),t}(e,t,obj.selectionStart,r),obj.value=obj.value.substr(0,obj.selectionStart)+t+obj.value.substr(obj.selectionEnd,obj.value.length);var n=r+t.length;!function(e,t){if(e.classList.contains("frm_classes")&&Si(t)){var r=e.value.split(" ").filter(Si);r.length&&(e.value=function(e,t,r){var n=e.split(" ").filter((function(e){return(e=e.trim()).length&&!t.includes(e)}));return n.includes(r)||n.push(r),n.join(" ")}(e.value,r,t.trim()))}}(obj,t),obj.focus(),obj.setSelectionRange(n,n)}Pn(e)}function Si(e){return["frm_half","frm_third","frm_two_thirds","frm_fourth","frm_three_fourths","frm_fifth","frm_sixth","frm2","frm3","frm4","frm6","frm8","frm9","frm10","frm12"].includes(e.trim())}function Ai(){var e=document.getElementById("frm-id-condition"),t=document.getElementById("frm-key-condition");"id"===this.value?(e.classList.remove("frm_hidden"),t.classList.add("frm_hidden"),Io(t,"change")):(e.classList.add("frm_hidden"),t.classList.remove("frm_hidden"),Io(e,"change"))}function Ii(){var e,t,r=document.getElementById("frm-id-key-condition-id").checked?"frm-id-condition":"frm-key-condition",n=document.getElementById("frm-is-condition").value,i=document.getElementById("frm-text-condition").value,o=document.getElementById("frm-insert-condition");t="if "+(e=(r=document.getElementById(r)).options[r.selectedIndex].value)+" "+n+'="'+i+'"]',o.setAttribute("data-code",t+a.conditional_text+"[/if "+e),o.innerHTML="["+t+"[/if "+e+"]"}function Bi(){Cn($i(this),this)}function Ci(e){e.preventDefault(),e.stopPropagation(),Oi(this)}function qi(e){!function(e){var t;if(e.id.startsWith("field_options_type_")){var r=e.id.split("_"),n=r.length&&r[r.length-1];null!==(t=document.querySelector("#frm-single-settings-".concat(n)))&&void 0!==t&&t.classList.contains("frm-type-".concat(e.value))||Ni()}}(e.target)}function Ni(e){var t;void 0===e&&(e=B("You are changing the field type. Not all field settings will appear as expected until you reload the page. Would you like to reload the page now?","formidable")),frmDom.modal.maybeCreateModal("frmSaveAndReloadModal",{title:B("Save and Reload?","formidable"),content:(t=d(e),t.style.padding="var(--gap-md)",t),footer:function(){var e=frmDom.modal.footerButton({text:B("Save and Reload","formidable"),buttonType:"primary"});_(e,(function(){Pi()}));var t=frmDom.modal.footerButton({text:B("Cancel","formidable"),buttonType:"cancel"});return t.classList.add("dismiss"),frmDom.div({children:[t,e]})}()})}function Ti(e){var t;if(e instanceof Event){var r=document.querySelectorAll(".frm-single-settings .frm-show-box.frmsvg use"),n=Array.from(r).find((function(e){return"#frm_close_icon"===e.getAttribute("href")}));if(void 0===n)return;t=n.parentElement}else t=e;var i=t.getBoundingClientRect(),o=document.getElementById("frm_adv_info"),a=o.parentElement.getBoundingClientRect();o.style.top=i.top-a.top+32+"px",o.style.left=i.left-a.left-280+"px"}function Oi(e,r){var n=Gi(e),i=document.getElementById("frm_adv_info"),o=e.className;if("svg"===e.tagName&&(e=e.firstElementChild),"use"===e.tagName&&null===(o=e.getAttributeNS("http://www.w3.org/1999/xlink","href"))&&(o=e.getAttribute("href")),-1!==o.indexOf("frm_close_icon"))Wi(i);else{if(Ti(e),jQuery(".frm_code_list a").removeClass("frm_noallow"),n.classList.contains("frm_not_email_to")?jQuery("#frm-insert-fields-box .frm_code_list li:not(.show_frm_not_email_to) a").addClass("frm_noallow"):n.classList.contains("frm_not_email_subject")&&jQuery(".frm_code_list li.hide_frm_not_email_subject a").addClass("frm_noallow"),i.setAttribute("data-fills",n.id),i.style.display="block","use"===e.tagName)if(e.hasAttributeNS("http://www.w3.org/1999/xlink","href"))e.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon");else{var l=document.createElementNS("http://www.w3.org/2000/svg","use");l.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon"),e.parentNode.replaceChild(l,e)}else e.className=o.replace("frm_more_horiz_solid_icon","frm_close_icon");"nofocus"!==r&&("none"!==n.style.display?n.focus():jQuery(tinymce.get(n.id)).trigger("focus")),function(e){["address","body"].forEach((function(r){!function(e,r){var n,i;n=a.contextualShortcodes[r+"Selector"],i=a.contextualShortcodes[r];var o,l=e.matches(n),s=function(e){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=t(e))){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw o}}}}(i);try{for(s.s();!(o=s.n()).done;){var d,c=o.value,f=null===(d=document.querySelector('#frm-adv-info-tab .frm_code_list [data-code="'+c+'"]'))||void 0===d?void 0:d.closest("li");null==f||f.classList.toggle("frm_hidden",!l)}}catch(e){s.e(e)}finally{s.f()}}(e,r)}))}(n)}}function Di(e){return 0===a.contextualShortcodes.length||!function(e){var t=e.querySelector("a");if(!t)return!1;var r=t.dataset.code;return a.contextualShortcodes.address.includes(r)||a.contextualShortcodes.body.includes(r)}(e)||function(e){var t=e.querySelector("a").dataset.code,r=document.getElementById("frm_adv_info").dataset.fills,n=document.getElementById(r),i=a.contextualShortcodes;return i.address.includes(t)?n.matches(i.addressSelector):n.matches(i.bodySelector)}(e)}function Mi(){E||(E=1,window.addEventListener("beforeunload",zi))}function Fi(){E=0}function Hi(){E=0}function Pi(){var e=document.getElementById("frm_submit_side_top");e.classList.contains("frm_submit_ajax")&&e.setAttribute("data-new-addon-installed",!0),e.click()}function zi(e){E&&(e.preventDefault(),e.returnValue="")}function Ri(e,t){var r={my:"top",at:"top+"+t,of:window};e.dialog("option","position",r)}function Gi(e){for(var t,r=e.nextElementSibling;null!==r&&("INPUT"!==r.tagName&&"TEXTAREA"!==r.tagName||r.classList.contains("frm-token-input-field"));)r=Gi(r);return r||(r=null===(t=e.closest(".frm-field-formula"))||void 0===t?void 0:t.querySelector(".frm-calc-field")),r}function $i(e){for(var t=e.previousElementSibling;null!==t&&"I"!==t.tagName&&"svg"!==t.tagName;)t=$i(t);return t}function Wi(e){var t,r,n,i;if((void 0!==e||null!==(e=document.getElementById("frm_adv_info")))&&null===document.getElementById("frm_dyncontent")){for(e.style.display="none",n=document.querySelectorAll(".frm-show-box.frm_close_icon"),t=0;t"+r.data.name+": "+r.data.msg+"

                              ":'

                              Imported '+r.data.name+"

                              ",e.find(".status").prepend(n),e.find(".status").show(),N.importQueue=jQuery.grep(N.importQueue,(function(e){return e!=t})),N.imported++,0===N.importQueue.length?(e.find(".process-count").hide(),e.find(".forms-completed").text(N.imported),e.find(".process-completed").show()):(e.find(".form-current").text(N.imported+1),Xi(e)))}))}function Zi(e){e.preventDefault();var t=!1,r=jQuery('input[name="frm_export_forms[]"]');jQuery('input[name="frm_export_forms[]"]:checked').val()||(r.closest(".frm-table-box").addClass("frm_blank_field"),t="stop");var n=jQuery('input[name="type[]"]');if(jQuery('input[name="type[]"]:checked').val()||"checkbox"!==n.attr("type")||(n.closest("p").addClass("frm_blank_field"),t="stop"),"stop"===t)return!1;e.stopPropagation(),this.submit()}function eo(){var e=jQuery(this).closest(".frm_blank_field");if(void 0!==e){var t=this.name;("type[]"===t&&jQuery('input[name="type[]"]:checked').val()||"frm_export_forms[]"===t&&jQuery(this).val())&&e.removeClass("frm_blank_field")}}function to(){null!==jQuery(this).val().match(/\.csv$/i)?jQuery(".show_csv").fadeIn():jQuery(".show_csv").fadeOut()}function ro(){var e=document.querySelector('select[name="format"]');return e?e.value:""}function no(e){var t,r,n=e.target.value;oo(n),io.call(e.target),t=n,r=document.getElementById("frm-export-select-all"),"csv"===t?(r.checked=!1,r.disabled=!0):r.disabled=!1}function io(){var e=jQuery(this),t=e.find(":selected"),r=t.data("support"),n=r.indexOf("|");jQuery('input[name="type[]"]').each((function(){this.checked=!1,r.indexOf(this.value)>=0?(this.disabled=!1,-1===n&&(this.checked=!0)):this.disabled=!0})),"csv"===e.val()?(jQuery(".csv_opts").show(),jQuery(".xml_opts").hide()):(jQuery(".csv_opts").hide(),jQuery(".xml_opts").show());var i=t.data("count"),o=jQuery('input[name="frm_export_forms[]"]');"single"===i?(o.prop("multiple",!1),o.prop("checked",!1)):(o.prop("multiple",!0),o.prop("disabled",!1)),e.trigger("change")}function oo(e){if(""!==e){var t=document.querySelectorAll(".frm-is-repeater");t.length&&("csv"===e?t.forEach((function(e){e.classList.remove("frm_hidden")})):t.forEach((function(e){e.classList.add("frm_hidden")})),Lo.call(document.querySelector(".frm-auto-search")))}}function ao(){var e=jQuery("select[name=format]").find(":selected").data("count"),t=jQuery('input[name="frm_export_forms[]"]');"single"===e&&this.checked?(t.prop("disabled",!0),this.removeAttribute("disabled")):t.prop("disabled",!1)}function lo(){jQuery(".frm_multiselect").hide().each(frmDom.bootstrap.multiselect.init)}function so(e){e.preventDefault(),uo(this,"frm_multiple_addons")}function co(e){e.preventDefault(),uo(this,"frm_activate_addon")}function fo(e){e.preventDefault(),uo(this,"frm_install_addon")}function uo(e,t){var r,n,i,o;jQuery(".frm-addon-error").remove(),n=(r=jQuery(e)).attr("rel"),i=r.parent(),o=i.parent().find(".addon-status-label"),r.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:t,nonce:frmGlobal.nonce,plugin:n},success:function(e){var n,a,l;"string"!=typeof(e=null!==(n=null===(a=e)||void 0===a?void 0:a.data)&&void 0!==n?n:e)&&"string"==typeof e.message&&(void 0!==e.saveAndReload&&(l=e.saveAndReload),e=e.message);var s=go(e);s?yo(s,i,r):(_o(e,r,o,i,l,t),wp.hooks.doAction("frm_update_addon_state",e))},error:function(){r.removeClass("frm_loading_button")}})}function mo(e){e.preventDefault();var t=jQuery(this),r=t.parent().parent(),n=t.attr("rel");t.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:"frm_install_addon",nonce:a.nonce,plugin:n,hostname:r.find("#hostname").val(),username:r.find("#username").val(),password:r.find("#password").val()},success:function(e){var n,i,o=go(e=null!==(n=null===(i=e)||void 0===i?void 0:i.data)&&void 0!==n?n:e);o?yo(o,r,t):_o(e,t,message,r)},error:function(){t.removeClass("frm_loading_button")}})}function _o(e,t,r,n,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"frm_activate_addon",l=document.querySelectorAll(".frm-addon-status");l.forEach((function(t){t.textContent=e,t.style.display="block"})),t.css({opacity:"0"}),document.querySelectorAll(".frm-oneclick").forEach((function(e){e.style.display="none"})),jQuery("#frm_upgrade_modal h2").hide(),jQuery("#frm_upgrade_modal .frm_lock_icon").addClass("frm_lock_open_icon"),jQuery("#frm_upgrade_modal .frm_lock_icon use").attr("xlink:href","#frm_lock_open_icon");var s={frm_activate_addon:{class:"frm-addon-active",message:a.active},frm_deactivate_addon:{class:"frm-addon-installed",message:a.installed},frm_uninstall_addon:{class:"frm-addon-not-installed",message:a.not_installed}};s.frm_install_addon=s.frm_activate_addon;var c=r[0];c&&(c.textContent=s[o].message);var f=n[0].parentElement;f.classList.remove("frm-addon-not-installed","frm-addon-installed","frm-addon-active"),f.classList.add(s[o].class),t[0].classList.remove("frm_loading_button"),document.querySelectorAll(".frm-admin-page-import, #frm-admin-smtp, #frm-welcome").length>0?window.location.reload():["settings","form_builder"].includes(i)&&l.forEach((function(e){var t=null!==e.closest("#frm_upgrade_modal");e.appendChild(function(e,t){var r=[po(e)];return t&&r.push(function(){var e=document.createElement("a");return e.setAttribute("href","#"),e.classList.add("button","button-secondary","frm-button-secondary","dismiss"),e.textContent=B("Close","formidable"),e}()),d({className:"frm-save-and-reload-options",children:r})}(i,t))}))}function po(e){var t=document.createElement("button");return t.classList.add("frm-save-and-reload","button","button-primary","frm-button-primary"),t.textContent=B("Save and Reload","formidable"),t.addEventListener("click",(function(){var t,r;"form_builder"===e?Pi():"settings"===e&&null!==(t=document.getElementById("form_settings_page"))&&null!==(r=t.querySelector("form.frm_form_settings"))&&(E=0,r.submit())})),t}function go(e){return"string"!=typeof e&&(void 0===e.success||!e.success)&&(e.form&&jQuery(e.form).is("#message")?{message:jQuery(e.form).find("p").html()}:e)}function yo(e,t,r){e.form?(jQuery(".frm-inline-error").remove(),r.closest(".frm-card").html(e.form).css({padding:5}).find("#upgrade").attr("rel",r.attr("rel")).on("click",mo)):(t.append('

                              '+e.message+"

                              "),r.removeClass("frm_loading_button"),jQuery(".frm-addon-error").delay(4e3).fadeOut())}function ho(){bo()}function vo(e){!function(e,t,r){var n=jQuery("#frm_leave_email_error");n.removeClass("frm_hidden").attr("frm-error",r),jQuery("#frm_leave_email").one("keyup",(function(){n.addClass("frm_hidden")}))}(0,0,e)}function bo(){var e=document.getElementById("frmapi-email-form");jQuery.ajax({dataType:"json",url:e.getAttribute("data-url"),success:function(t){var r=t.renderedHtml;r=r.replace(/]*(formidableforms.css|action=frmpro_css)[^>]*>/gi,""),e.innerHTML=r}})}function jo(e){frmDom.autocomplete.initSelectionAutocomplete(e)}function wo(e){var t=this.parentNode.parentNode,r=t.elements.type.value;e.preventDefault(),this.classList.add("frm_loading_button"),xo(t,r,this)}function Qo(e){var t=this.elements.type.value,r=this.querySelector("button");e.preventDefault(),r.classList.add("frm_loading_button"),xo(this,t,r)}function xo(e,t,r){var n=function(e){var t,r,n={},i=e.elements;for(r=0;r=0||So(l,n)?(s&&Di(o[e])&&o[e].classList.remove("frm_hidden"),o[e].classList.add("frm-search-result")):(o[e].classList.add("frm_hidden"),o[e].classList.remove("frm-search-result"))}(t=document.querySelector("#frm-insert-fields"))&&t.querySelectorAll(":scope > .frm-with-line").forEach((function(e){var t=e.nextElementSibling;if(t){var r=t.querySelectorAll(":scope > li.frmbutton"),n=Array.from(r).every((function(e){return e.classList.contains("frm_hidden")}));e.classList.toggle("frm_hidden",n)}})),jQuery(this).trigger("frmAfterSearch")}function So(e,t){return"s"!==t&&"s"!==e[e.length-1]&&(e+"s").indexOf(t)>=0}function Ao(e){e.stopPropagation()}function Io(e,t){var r=document.createEvent("HTMLEvents");r.initEvent(t,!1,!0),e.dispatchEvent(r)}function Bo(e,t){var r,n=new XMLHttpRequest,i="string"==typeof e?e:Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&");return n.open("post",ajaxurl,!0),n.onreadystatechange=function(){if(n.readyState>3&&200==n.status){r=n.responseText;try{r=JSON.parse(r)}catch(e){}t(r)}},n.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.setRequestHeader("Content-type","application/x-www-form-urlencoded"),n.send(i),n}function Co(e,t){e.classList.add("frm-fade"),setTimeout(t,1e3)}function qo(e){jQuery(e).css("visibility","hidden")}function No(e){jQuery(e).css("visibility","visible")}function To(e,t){var r=jQuery(e);if(!r.length)return!1;void 0===t&&(t="550px");var n={dialogClass:"frm-dialog",modal:!0,autoOpen:!1,closeOnEscape:!0,width:t,resizable:!1,draggable:!1,open:function(){var e,t;jQuery(".ui-dialog-titlebar").addClass("frm_hidden").removeClass("ui-helper-clearfix"),jQuery("#wpwrap").addClass("frm_overlay"),jQuery(".frm-dialog").removeClass("ui-widget ui-widget-content ui-corner-all"),r.removeClass("ui-dialog-content ui-widget-content"),e=r,t=function(){e.dialog("close")},jQuery(".ui-widget-overlay").on("click",t),e.on("click","a.dismiss",t)},close:function(){jQuery("#wpwrap").removeClass("frm_overlay"),jQuery(".spinner").css("visibility","hidden"),this.removeAttribute("data-option-type");var e=document.getElementById("bulk-option-type");e&&(e.value="")}};return r.dialog(n),r}function Oo(e,t){if("#"===t){var r=document.getElementById(e),n=r.style.display;r.style.display="none"===n?"block":"none"}else e.is(":visible")?e.hide():e.show()}function Do(){window.onbeforeunload=null;var e=jQuery(window);e.off("beforeunload.widgets"),e.off("beforeunload.edit-post")}function Mo(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);if(null!==t&&"form"===t.dataset.type)if(t=jQuery(t),this.options[this.selectedIndex].value){t.find(".frm-not-set")[0].classList.add("frm_hidden");var r=t.find(".frm-embed-message");r.html(r.data("embedmsg")+this.options[this.selectedIndex].text),t.find(".frm-embed-field-placeholder")[0].classList.remove("frm_hidden")}else t.find(".frm-not-set")[0].classList.remove("frm_hidden"),t.find(".frm-embed-field-placeholder")[0].classList.add("frm_hidden")}function Fo(){var e=jQuery(this).closest(".frm-single-settings"),t=e.find(".frmjs_product_choices"),r=e.find(".frm_prod_options_heading"),n=this.options[this.selectedIndex].value;t.removeClass("frm_prod_type_single frm_prod_type_user_def"),r.removeClass("frm_prod_user_def"),"single"===n?t.addClass("frm_prod_type_single"):"user_def"===n&&(t.addClass("frm_prod_type_user_def"),r.addClass("frm_prod_user_def"))}function Ho(e){var t=document.getElementById("frm_field_id_"+e);return null!==t&&"product"===t.getAttribute("data-type")}function Po(){var t=function(e,t){return window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]},r=function(e,t,r){window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]=r},n=[1,2,3,4,5,6,7,8,9,10,11,12].map((function(e){return"frm"+e})),i=["first","middle","last"];document.addEventListener("change",(function(o){o.target.matches(".frm_name_layout_dropdown")&&function(o){var a,l=o.target.value.split("_"),s=o.target.dataset.fieldId,d=document.querySelector("#field_"+s+"_inner_container .frm_combo_inputs_container"),c=(a=l.length,"frm"+parseInt(12/a));i.forEach((function(t){var i,o=d.querySelector('[data-sub-field-name="'+t+'"]');o&&(o.classList.add("frm_hidden"),(i=o.classList).remove.apply(i,e(n)),r(s,t,o))})),l.forEach((function(e){var r=t(s,e);r&&(r.classList.remove("frm_hidden"),r.classList.add(c),d.append(r))})),i.forEach((function(e){var t=document.querySelector(".frm_sub_field_options-"+e+'[data-field-id="'+s+'"]');t&&(t.classList.add("frm_hidden"),r(s,e+"_options",t))})),l.forEach((function(e){var r=t(s,e+"_options");r&&r.classList.remove("frm_hidden")}))}(o)}),!1)}function zo(e,t){var r,n,i,o=!1,a=!1;(r=t.newOption?(new DOMParser).parseFromString(t.newOption,"text/html").body.childNodes[0]:t).querySelectorAll("svg").forEach((function(e,t){(n=e.getElementsByTagNameNS("http://www.w3.org/2000/svg","use")[0])&&("#frm_drag_icon"===(i=n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("href"))&&(o=!0),"#frm_save_icon"===i&&(a=!0))})),o||r.prepend(b.drag.cloneNode(!0)),r.querySelector("[id^=field_key_".concat(e,"-]"))&&!a&&r.querySelector("[id^=field_key_".concat(e,"-]")).after(b.save.cloneNode(!0)),t.newOption&&(t.newOption=r)}function Ro(){var e=document.getElementById("frm_leave_email").value.trim();if(""!==e)if(!1!==/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e)){var t=jQuery("#frmapi-email-form").find("form"),r=t.find('[type="email"]').not(".frm_verify");if(r.length){if(document.getElementById("frm_empty_inbox")){document.getElementById("frm-add-my-email-address").remove();var n=document.getElementById("frm_leave_email_wrapper");if(n){n.classList.add("frm_hidden");var i=c({className:"frm-wait frm_spinner"});i.style.visibility="visible",i.style.float="none",i.style.width="unset",n.parentElement.insertBefore(i,n.nextElementSibling)}}r.val(e),jQuery.ajax({type:"POST",url:t.attr("action"),data:t.serialize()+"&action=frm_forms_preview"}).done((function(e){if(-1!==jQuery(e).find(".frm_message").text().trim().indexOf("Thanks!")){var t=document.getElementById("frmapi-email-form").parentElement.querySelector(".frm_spinner");t&&t.remove(),wp.hooks.applyFilters("frm_thank_you_on_signup",!0)&&document.getElementById("frm_leave_email_wrapper").replaceWith(c(B("Thank you for signing up!","formidable")))}else vo("invalid")}))}}else vo("invalid");else vo("empty")}function Go(e){if(D||e.stopPropagation(),!(e.target.classList.contains("frm-show-box")||e.target.parentElement&&e.target.parentElement.classList.contains("frm-show-box"))){var t=document.getElementById("frm_adv_info");t&&(t.dataset.fills===e.target.id&&void 0!==e.target.id||e.target.closest("#frm_adv_info")||"none"===t.style.display||Wi(t))}}return{init:function(){var t,r,n,i,o,a,l;!function(){jQuery(document).on("click","#frm-add-my-email-address",(function(e){e.preventDefault(),Ro()}));var e=document.getElementById("frm_empty_inbox"),t=document.getElementById("frm_leave_email");if(e&&t){var r=document.getElementById("frm-leave-email-modal");r.classList.remove("frm_hidden"),r.querySelector(".frm_modal_footer").classList.add("frm_hidden"),t.addEventListener("keyup",(function(e){if("Enter"===e.key){var t=document.getElementById("frm-add-my-email-address");t&&t.click()}}))}}(),r=document.querySelector(".frm-admin-footer-links"),n=null!==(t=document.querySelector(".frm_page_container"))&&void 0!==t?t:document.getElementById("wpbody-content"),r&&n&&(n.appendChild(r),r.classList.remove("frm_hidden")),N={},jQuery(".wp-admin").on("click",(function(e){var t=jQuery(e.target),r=jQuery(".dropdown.open");!r.length||t.hasClass("dropdown")||t.closest(".dropdown").length||r.removeClass("open")})),jQuery("#frm_bs_dropdown:not(.open) a").on("click",Lt),void 0===k&&(k=jQuery(document.getElementById("form_id")).val()),document.querySelectorAll(".frm-warning-dismiss").forEach((function(e){_(e,St)})),frmAdminBuild.inboxBannerInit(),j.length>0?frmAdminBuild.buildInit():null!==document.getElementById("frm_notification_settings")?frmAdminBuild.settingsInit():null!==document.getElementById("frm_styling_form")?frmAdminBuild.styleInit():null!==document.getElementById("form_global_settings")?frmAdminBuild.globalSettingsInit():null!==document.getElementById("frm_export_xml")?frmAdminBuild.exportInit():null!==document.querySelector(".frm-inbox-wrapper")?frmAdminBuild.inboxInit():null!==document.getElementById("frm-welcome")?frmAdminBuild.solutionInit():(function(){if(document.body.classList.contains("frm-admin-page-entries")){var e=document.getElementById("screen-options-wrap");if(e){var t=d({className:"frm_warning_style",text:B("Only 10 columns can be selected at a time.","formidable")});t.style.margin=0;var r=e.querySelector("legend");r.parentNode.insertBefore(t,r.nextElementSibling);var n=Array.from(e.querySelectorAll('input[type="checkbox"]')),i=function(){n.reduce((function(e,t){return t.checked?e+1:e}),0)>=10?(t.classList.remove("frm_hidden"),n.forEach((function(e){e.checked||(e.parentNode.classList.add("frm_noallow"),e.disabled=!0)}))):t.classList.add("frm_hidden")};i(),n.forEach((function(e){e.addEventListener("change",(function(e){e.target.checked?i():(t.classList.add("frm_hidden"),n.forEach((function(e){e.parentNode.classList.remove("frm_noallow"),e.disabled=!1})))}))}))}}}(),jo(),jQuery("[data-frmprint]").on("click",(function(){return window.print(),!1}))),jQuery(document).on("change","select[data-toggleclass], input[data-toggleclass]",Qi),function(){function e(e){var t=e.options[e.selectedIndex];e.querySelectorAll("option[data-dependency]:not([data-dependency-skip])").forEach((function(e){var r=document.querySelector(e.dataset.dependency);null==r||r.classList.toggle("frm_hidden",t!==e)}))}document.querySelectorAll("select.frm_select_with_dependency").forEach(e),frmDom.util.documentOn("change","select.frm_select_with_dependency",(function(t){return e(t.target)}))}(),(jQuery(document.getElementById("frm_adv_info")).length>0||jQuery(".frm_field_list").length>0)&&frmAdminBuild.panelInit(),i=jQuery(".wrap, .frm_wrap"),o=document.getElementById("frm_confirm_modal"),a=!1,l=!1,jQuery(o).on("click","[data-deletefield]",wr),jQuery(o).on("click","[data-removeid]",G),jQuery(o).on("click","[data-trashtemplate]",ko),i.on("click",".frm_remove_tag, .frm_remove_form_action",G),i.on("click","a[data-frmverify]",M),i.on("click","a[data-frmtoggle]",P),i.on("click","a[data-frmhide], a[data-frmshow]",z),i.on("change","input[data-frmhide], input[data-frmshow]",z),i.on("click",".widget-top,a.widget-action",$),i.on("mouseenter.frm",".frm_bstooltip, .frm_help",(function(){jQuery(this).off("mouseenter.frm"),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(this).tooltip("show")})),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(document).on("click","#doaction, #doaction2",(function(e){var t="doaction"===this.id?"top":"bottom",r=document.getElementById("bulk-action-selector-"+t),n=document.getElementById("confirm-bulk-delete-"+t);if(null!==r&&null!==n){if(a=this,!l&&"bulk_delete"===r.value)return e.preventDefault(),F(n),!1}else a=!1})),jQuery(document).on("click","#frm-confirmed-click",(function(e){if(!1!==a&&!e.target.classList.contains("frm-btn-inactive"))return"confirm-bulk-delete"===this.getAttribute("href")?(e.preventDefault(),l=!0,a.click(),!1):void 0})),function(){var e=To("#frm_upgrade_modal");function t(t){var r,n,i;if((r=t.target).classList){var o=r.classList.contains("frm_show_expired_modal")||null!==r.querySelector(".frm_show_expired_modal")||r.closest(".frm_show_expired_modal");if("change"===t.type&&r.classList.contains("frm_select_with_upgrade")){var a=r.options[r.selectedIndex];a&&a.dataset.upgrade&&(r=a)}if(!r.dataset.upgrade){var l=r.closest("[data-upgrade]");if(!l){if(!(l=r.closest(".frm_field_box")))return;r.dataset.upgrade=""}r=l}if(o)wp.hooks.doAction("frm_show_expired_modal",r);else{var s=r.dataset.upgrade;if(s&&!r.classList.contains("frm_show_upgrade_tab")){t.preventDefault();var d=e.get(0),c=d.querySelector(".frm_lock_icon");c&&(c.style.display="block",c.classList.remove("frm_lock_open_icon"),c.querySelector("use").setAttribute("href","#frm_lock_icon"));var f="frm_upgrade_modal_image",u=document.getElementById(f);u&&u.remove(),r.dataset.image&&(c&&(c.style.display="none"),c.parentNode.insertBefore(m({id:f,src:frmGlobal.url+"/images/"+r.dataset.image}),c));var _=d.querySelector(".license-level");_&&(_.textContent=Vn(r)),Jn(r,"modal",s),d.querySelector(".frm_are_not_installed").style.display=r.dataset.image?"none":"inline-block",d.querySelector(".frm_feature_label").textContent=s,d.querySelector("h2").style.display="block",e.dialog("open");var p=d.querySelector(".button-primary:not(.frm-oneclick-button)");n=p.getAttribute("href").replace(/(medium=)[a-z_-]+/gi,"$1"+r.getAttribute("data-medium")),null===(i=r.getAttribute("data-content"))&&(i=""),n=n.replace(/(content=)[a-z_-]+/gi,"$1"+i),p.setAttribute("href",n)}}}}!1!==e&&(document.addEventListener("click",t),frmDom.util.documentOn("change","select.frm_select_with_upgrade",t))}(),frmDom.util.documentOn("click","[data-modal-title]",Un);var s=jQuery(document.getElementById("frm_shortcodediv"));s.length>0&&(jQuery("a.edit-frm_shortcode").on("click",(function(){return s.is(":hidden")&&(s.slideDown("fast"),this.style.display="none"),!1})),jQuery(".cancel-frm_shortcode","#frm_shortcodediv").on("click",(function(){return s.slideUp("fast"),s.siblings("a.edit-frm_shortcode").show(),!1}))),jQuery(document).on("click","#frm-nav-tabs a",W),jQuery(".post-type-frm_display .frm-nav-tabs a, .frm-category-tabs a").on("click",(function(){var e=this.classList.contains("frm_show_upgrade_tab");if(!this.classList.contains("frm_noallow")||e)return e&&Kn(this),U(this),!1})),U(jQuery(".starttab a"),"auto"),jQuery(document).on("click","#frm-fid-search-menu a",(function(){var e=this.id.replace("fid-","");return jQuery('select[name="fid"]').val(e),Hn(document.getElementById("posts-filter")),!1})),jQuery(".frm_select_box").on("click focus",(function(){this.select()})),jQuery(document).on("input search change",".frm-auto-search:not(#frm-form-templates-page #template-search-input)",Lo),jQuery(document).on("focusin click",".frm-auto-search",Ao);var c=jQuery(".frm-auto-search");""!==c.val()&&c.trigger("keyup"),FrmFormsConnect.init(),jQuery(document).on("click",".frm-install-addon",fo),jQuery(document).on("click",".frm-activate-addon",co),jQuery(document).on("click",".frm-solution-multiple",so),jQuery("button, input[type=submit]").on("click",Do),document.addEventListener("click",(function(e){if("LABEL"===e.target.nodeName){var t=e.target.getAttribute("for");if(t){var r=document.getElementById(t);if(r&&r.nextElementSibling){var n=r.nextElementSibling.querySelector("button.dropdown-toggle.multiselect");n&&setTimeout((function(){return n.click()}),0)}}}})),frmAdminBuild.hooks.addFilter("frm_before_embed_modal",(function(e,t){var r,n,i=t.element;if("form"!==t.type)return e;var o=i.closest("tr");if(o)r=parseInt(o.querySelector(".column-id").textContent),n=o.querySelector(".column-form_key").textContent;else{r=document.getElementById("form_id").value;var a=document.getElementById("frm_form_key");if(a)n=a.value;else{var l=document.getElementById("frm-previewDrop");l&&(n=l.nextElementSibling.querySelector(".dropdown-item a").getAttribute("href").split("form=")[1])}}return[r,n]})),document.querySelectorAll("#frm-show-fields > li, .frm_grid_container li").forEach((function(t,r){t.addEventListener("click",(function(){var t,r,n;r=(null===(t=this.querySelector("li"))||void 0===t?void 0:t.dataset.fid)||this.dataset.fid,(n=document.querySelectorAll("[id^=frm_delete_field_".concat(r,"-]"))).length<2||e(n).slice(1).forEach((function(e,t){e.classList.contains("frm_other_option")||zo(r,e)}))}))}));var f=document.getElementById("frm_small_screen_proceed_button");f&&_(f,(function(){var e;null===(e=document.getElementById("frm_small_device_message_container"))||void 0===e||e.remove(),g("small_screen_proceed",new FormData)}));var u=document.getElementById("frm_sale_banner"),p=null==u?void 0:u.querySelector(".dismiss");u&&(_(u,(function(e){e.target.closest(".dismiss")||(window.location.href=u.getAttribute("data-url"))})),p&&_(p,(function(){u.remove();var e=new FormData;g("sale_banner_dismiss",e)})))},buildInit:function(){var e,t,r;jQuery("#frm_builder_page").on("mouseup","*:not(.frm-show-box)",Go),y=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return frmDom.util.debounce(e,t)}(oe,10),h=document.getElementById("post-body-content"),v=jQuery(h),jQuery(".frm_field_loading").length&&Le(jQuery(".frm_field_loading").first().attr("id")),V("ul.frm_sorting"),document.querySelectorAll(".field_type_list > li:not(.frm_show_upgrade)").forEach(X),jQuery("ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a").disableSelection(),jQuery(".frm_submit_ajax").on("click",Fn),jQuery(".frm_submit_no_ajax").on("click",zn),Gn(),jQuery("a.edit-form-status").on("click",kn),jQuery(".cancel-form-status").on("click",Ln),jQuery(".save-form-status").on("click",(function(){var e=jQuery(document.getElementById("form_change_status")).val();return jQuery('input[name="new_status"]').val(e),jQuery(document.getElementById("form-status-display")).html(e),jQuery(".cancel-form-status").trigger("click"),!1})),jQuery(".frm_form_builder form").first().on("submit",(function(){jQuery(".inplace_field").trigger("blur")})),lo(),Tr(),e=jQuery(w),t=document.getElementById("frm_form_editor_container"),e.on("click",".frm_add_logic_row",Er),e.on("click",".frm_add_watch_lookup_row",Lr),e.on("change",".frm_get_values_form",qr),e.on("change",".frm_logic_field_opts",bn),e.on("frm-multiselect-changed",'select[name^="field_options[admin_only_"]',Sn),jQuery(document.getElementById("frm-insert-fields")).on("click",".frm_add_field",Ae),j.on("click",".frm_clone_field",Ce),e.on("blur",'input[id^="frm_calc"]',Ye),e.on("change","input.frm_format_opt, input.frm_max_length_opt",lt),e.on("change click","[data-changeme]",ot),e.on("click","input.frm_req_field",st),e.on("click",".frm_mark_unique",ct),e.on("change",".frm_repeat_format",Vr),e.on("change",".frm_repeat_limit",Kr),e.on("change",".frm_js_checkbox_limit",Jr),e.on("input",'input[name^="field_options[add_label_"]',(function(){Yr(this,"add")})),e.on("input",'input[name^="field_options[remove_label_"]',(function(){Yr(this,"remove")})),e.on("change",'select[name^="field_options[data_type_"]',Nr),jQuery(t).on("click",".frm-collapse-page",Or),jQuery(t).on("click",".frm-collapse-section",Fr),e.on("click",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",Hr),e.on("keydown",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",(function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),Hr.call(this,e))})),jQuery(t).on("show.bs.dropdown hide.bs.dropdown",ze),e.on("click",".frm_toggle_sep_values",yt),e.on("click",".frm_toggle_image_options",ht),e.on("click",".frm_remove_image_option",Et),e.on("click",".frm_choose_image_box",xt),e.on("change",".frm_hide_image_text",Qt),e.on("change",".frm_field_options_image_size",jt),e.on("click",".frm_multiselect_opt",kt),j.on("mousedown","input, textarea, select",At),j.on("click","input[type=radio], input[type=checkbox]",At),j.on("click",".frm_delete_field",Nt),j.on("click",".frm_select_field",Tt),jQuery(document).on("click",".frm_delete_field_group",Ot),jQuery(document).on("click",".frm_clone_field_group",Dt),jQuery(document).on("click","#frm_field_group_controls > span:first-child",Mt),jQuery(document).on("click",".frm-row-layout-option",Yt),jQuery(document).on("click",".frm-merge-fields-into-row .frm-row-layout-option",Xt),jQuery(document).on("click",".frm-custom-field-group-layout",er),jQuery(document).on("click",".frm-merge-fields-into-row .frm-custom-field-group-layout",rr),jQuery(document).on("click",".frm-break-field-group",lr),j.on("click","#frm_field_group_popup .frm_grid_container input",sr),jQuery(document).on("click",".frm-cancel-custom-field-group-layout",dr),jQuery(document).on("click",".frm-save-custom-field-group-layout",fr),j.on("click","ul.frm_sorting",ur),jQuery(document).on("click",".frm-merge-fields-into-row",vr),jQuery(document).on("click",".frm-delete-field-groups",jr),j.on("click",'.frm-field-action-icons [data-toggle="dropdown"]',(function(){this.closest("li.form-field").classList.add("frm-field-settings-open"),jQuery(document).on("click","#frm_builder_page",Oe)})),j.on("mousemove","ul.frm_sorting",De),j.on("show.bs.dropdown",".frm-field-action-icons",He),jQuery(document).on("show.bs.dropdown","#frm_field_group_controls",Pe),e.on("click",".frm_single_option a[data-removeid]",It),e.on("mousedown",".frm_single_option input[type=radio]",Bt),e.on("focusin",".frm_single_option input[type=text]",Ct),e.on("click",".frm_add_opt",_t),e.on("change",".frm_single_option input",Zr),e.on("change",".frm_image_id",Zr),e.on("change",".frm_toggle_mult_sel",pt),e.on("focusin",".frm_classes + .frm-token-proxy-input",Bi),j.on("click",".frm_primary_label",zr),j.on("click",".frm_description",Rr),j.on("click","li.ui-state-default:not(.frm_noallow)",$r),j.on("dblclick","li.ui-state-default",Ur),e.on("change",".frm_tax_form_select",Xr),e.on("change","select.conf_field",ft),e.on("change",".frm_get_field_selection",jn),e.on("click",".frm-show-inline-modal",Bn),e.on("click",".frm-inline-modal .dismiss",qn),jQuery(document).on("change","[data-frmchange]",Tn),document.addEventListener("click",Nn),e.on("change",".frm_include_extras_field",et),e.on("change",'select[name^="field_options[form_select_"]',Mo),jQuery(document).on("submit","#frm_js_build_form",Fi),jQuery(document).on("change","#frm_builder_page input:not(.frm-search-input):not(.frm-custom-grid-size-input), #frm_builder_page select, #frm_builder_page textarea",Mi),nt(),jQuery(document).on("change",".frmjs_prod_data_type_opt",Fo),jQuery(document).on("focus",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Ar),jQuery(document).on("blur",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Br),frmDom.util.documentOn("click",".frm-show-field-settings",$r),frmDom.util.documentOn("change","select.frm_format_dropdown, select.frm_phone_type_dropdown",Wr),e.on("keydown",'.frm_single_option input[name^="field_options["], .frm_single_option input[name^="rows_"]',(function(e){"Enter"===e.key&&function(e){var t=e.closest(".frm_single_option").parentElement.querySelectorAll('.frm_single_option input[name^="field_options[" ], .frm_single_option input[name^="rows_"]'),r=Array.from(t),n=r.indexOf(e);if(!(n<0)){var i=r.slice(n+1).find((function(e){return null!==e.offsetParent}));if(i){i.focus();var o=i.value.length;i.setSelectionRange(o,o)}}}(e.currentTarget)})),!1!==(r=To("#frm-bulk-modal","700px"))&&(jQuery(".frm-insert-preset").on("click",mt),jQuery(w).on("click","a.frm-bulk-edit-link",(function(e){e.preventDefault();var t,n,i,o,a,l="",s=jQuery(this).closest("[data-fid]").data("fid"),d=pn(s),c=Ho(s);if(o=document.getElementById("frm_field_"+s+"_opts")){for(a=o.getElementsByTagName("li"),document.getElementById("bulk-field-id").value=s,t=0;t=a.length-1&&(document.getElementById("frm_bulk_options").value=l);return r.dialog("open"),!1}})),jQuery("#frm-update-bulk-opts").on("click",(function(){var e=document.getElementById("bulk-field-id").value;document.getElementById("bulk-option-type").value||(this.classList.add("frm_loading_button"),frmAdminBuild.updateOpts(e,document.getElementById("frm_bulk_options").value,r),Mi())}))),In(),document.addEventListener("frm_added_field",In),Be(),Po(),xn(),frmDom.util.documentOn("change",".frm_show_password_setting_input",(function(e){var t=e.target.getAttribute("data-fid"),r=document.getElementById("frm_field_id_"+t);r&&r.classList.toggle("frm_disabled_show_password",!e.target.checked)})),document.addEventListener("scroll",Ti,!0),document.addEventListener("change",qi),document.querySelector(".frm_form_builder").addEventListener("mousedown",(function(e){e.shiftKey&&e.preventDefault()})),wp.hooks.addAction("frmShowedFieldSettings","formidableAdmin",(function(e,t){t.querySelectorAll(".frm-collapse-me").forEach(Pr)}),9999)},settingsInit:function(){var e,t,r,n,i=jQuery(document.getElementById("frm_notification_settings"));i.on("click",".frm_email_buttons",oi),i.on("click",".frm_remove_field",ai),i.on("change",".frm_to_row, .frm_from_row",li),i.on("change",".frm_tax_selector",ji),i.on("change","select.frm_single_post_field",mi),i.on("change","select.frm_toggle_post_content",_i),i.on("change","select.frm_dyncontent_opt",pi),i.on("change",".frm_post_type",gi),i.on("click",".frm_add_postmeta_row",vi),i.on("click",".frm_add_posttax_row",hi),i.on("click",".frm_toggle_cf_opts",wi),i.on("click",".frm_duplicate_form_action",Zn),jQuery(".frm_actions_list").on("click",".frm_active_action",ti),jQuery("#frm-show-groups, #frm-hide-groups").on("click",ri),lo(),jQuery("ul.frm_actions_list li").each((function(){si(jQuery(this).children("a").data("actiontype"));var e=jQuery(this).find("i");"none"!==e.css("background-image")&&e.addClass("frm-inverse")})),jQuery(".frm_submit_settings_btn").on("click",xi),Gn(),(e=jQuery(".frm_form_settings")).on("click",".frm_add_form_logic",ui),e.on("click",".frm_already_used",fi),document.addEventListener("click",(function(e){var t=e.target;t.closest(".frm_image_preview_wrapper")&&(t.closest(".frm_choose_image_box")?xt.bind(t)(e):t.closest(".frm_remove_image_option")&&Et.bind(t)(e))})),e.on("mouseup","*:not(.frm-show-box)",Go),jQuery(document.getElementById("no_save")).on("change",(function(){this.checked&&!0!==confirm(a.no_save_warning)&&jQuery(this).attr("checked",!1)})),jQuery('select[name="options[edit_action]"]').on("change",Xn),t=document.getElementById("logged_in"),jQuery(t).on("change",(function(){this.checked?No(".hide_logged_in"):qo(".hide_logged_in")})),r=jQuery(document.getElementById("frm_cookie_expiration")),jQuery(document.getElementById("frm_single_entry_type")).on("change",(function(){"cookie"===this.value?r.fadeIn("slow"):r.fadeOut("slow")}));var o=document.getElementById("single_entry");jQuery(o).on("change",(function(){this.checked?No(".hide_single_entry"):qo(".hide_single_entry"),this.checked&&"cookie"===jQuery(document.getElementById("frm_single_entry_type")).val()?r.fadeIn("slow"):r.fadeOut("slow")})),jQuery(".hide_save_draft").hide();var l=jQuery(document.getElementById("save_draft"));l.on("change",(function(){this.checked?jQuery(".hide_save_draft").fadeIn("slow"):jQuery(".hide_save_draft").fadeOut("slow")})),Pn(l),n=document.getElementById("editable"),jQuery(n).on("change",(function(){this.checked?(jQuery(".hide_editable").fadeIn("slow"),Pn(document.getElementById("edit_action"))):(jQuery(".hide_editable").fadeOut("slow"),jQuery(".edit_action_message_box").fadeOut("slow"))})),jQuery(document).on("change","#protect_files",(function(){this.checked?jQuery(".hide_protect_files").fadeIn("slow"):jQuery(".hide_protect_files").fadeOut("slow")})),jQuery(document).on("frm-multiselect-changed","#protect_files_role",Sn),jQuery(document).on("submit",".frm_form_settings",Hi),jQuery(document).on("change","#form_settings_page input:not(.frm-search-input), #form_settings_page select, #form_settings_page textarea",Mi),jo(),jQuery(document).on("frm-action-loaded",Vi),frmDom.util.documentOn("change",'.frm_on_submit_type input[type="radio"]',(function(e){if(e.target.checked){var t=e.target.closest(".frm_form_action_settings");t.querySelectorAll(".frm_on_submit_dependent_setting:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden")})),t.querySelectorAll(".frm_on_submit_dependent_setting[data-show-if-"+e.target.value+"]").forEach((function(e){e.classList.remove("frm_hidden")})),t.setAttribute("data-on-submit-type",e.target.value)}}))},panelInit:function(){var e,t,r,n;jQuery(".frm_wrap, #postbox-container-1").on("click",".frm_insert_code",Ei),jQuery(document).on("change",".frm_insert_val",(function(){ki(jQuery(this).data("target"),jQuery(this).val()),jQuery(this).val("")})),jQuery(document).on("click change",'[name="frm-id-key-condition"]',Ai),jQuery(document).on("keyup change",".frm-build-logic",Ii),Yn(),jQuery(document).on("frmElementAdded",(function(e,t){Yn(t)})),jQuery(document).on("mousedown",".frm-show-box",Ci),t=document.getElementById("form_settings_page"),r=document.body.classList.contains("post-type-frm_display"),n=document.getElementById("frm_insert_fields_tab"),(null!==t||r||D)&&jQuery(document).on("focusin","form input, form textarea",(function(e){var i,o,a,l;if(e.stopPropagation(),(o=this).parentNode.parentNode.classList.contains("frm_has_shortcodes")&&(Wi(),"use"===(a=$i(o)).tagName?-1===(a=a.firstElementChild).getAttributeNS("http://www.w3.org/1999/xlink","href").indexOf("frm_close_icon")&&Oi(a,"nofocus"):a.classList.contains("frm_close_icon")||Oi(a,"nofocus")),jQuery(this).is(":not(:submit, input[type=button], .frm-search-input, input[type=checkbox])")){if(jQuery(e.target).closest("#frm_adv_info").length)return;if(null!==t||D)i=jQuery("#frm_html_tab"),jQuery(this).closest("#html_settings").length>0?(i.show(),i.siblings().hide(),jQuery("#frm_html_tab a").trigger("click"),function(e){var t,r=e.id;void 0!==r&&-1===r.indexOf("-search-input")&&(jQuery("#frm-adv-info-tab").attr("data-fills",r.trim()),e.classList.contains("field_custom_html")&&(r="field_custom_html"),t=["after_html","before_html","submit_html","field_custom_html"],jQuery.inArray(r,t)>=0&&(jQuery(".frm_code_list li:not(.show_"+r+")").addClass("frm_hidden"),jQuery(".frm_code_list li.show_"+r).removeClass("frm_hidden")))}(this)):((l=jQuery(".frm-category-tabs li"))[0]&&(l[0].style.display=""),n.click(),i.hide(),i.siblings().show());else if(r){var s=new CustomEvent("frm_legacy_views_handle_field_focus");s.frmData={idAttrValue:this.id},document.dispatchEvent(s)}}})),jQuery(".frm_wrap, #postbox-container-1").on("mousedown","#frm_adv_info a, .frm_field_list a",(function(e){e.preventDefault()})),(e=jQuery("#frm_adv_info")).on("click",".subsubsub a.frmids",(function(e){Ui("frmids",e)})),e.on("click",".subsubsub a.frmkeys",(function(e){Ui("frmkeys",e)}))},inboxInit:function(){var e;jQuery(".frm_inbox_dismiss").on("click",(function(e){var t=this.parentNode.parentNode,r=t.getAttribute("data-message"),n=this.getAttribute("href"),i=t.cloneNode(!0),o=document.querySelector(".frm-dismissed-inbox-messages");if("free_templates"!==r||this.classList.contains("frm_inbox_dismiss")){e.preventDefault(),data={action:"frm_inbox_dismiss",key:r,nonce:frmGlobal.nonce};var a="frm_inbox_slide_in"===t.id;a&&(t.classList.remove("s11-fadein"),t.classList.add("s11-fadeout"),t.addEventListener("animationend",(function(){return t.remove()}),{once:!0})),Bo(data,(function(){if(!a)return"#"!==n?(window.location=n,!0):void Co(t,(function(){var e;null!==o&&(i.classList.remove("frm-fade"),null===(e=i.querySelector(".frm-inbox-message-heading"))||void 0===e||e.removeChild(i.querySelector(".frm-inbox-message-heading .frm_inbox_dismiss")),o.append(i)),1===t.parentNode.querySelectorAll(".frm-inbox-message-container").length&&(document.getElementById("frm_empty_inbox").classList.remove("frm_hidden"),t.parentNode.closest(".frm-active").classList.add("frm-empty-inbox"),ho()),t.parentNode.removeChild(t)}))}))}})),!1===(null===(e=document.getElementById("frm_empty_inbox"))||void 0===e?void 0:e.classList.contains("frm_hidden"))&&ho()},solutionInit:function(){jQuery(document).on("submit","#frm-new-template",Qo)},styleInit:function(){var e=jQuery(".frm_image_preview_wrapper");e.on("click",".frm_choose_image_box",xt),e.on("click",".frm_remove_image_option",Et),wp.hooks.doAction("frm_style_editor_init")},customCSSInit:function(){console.warn("Calling frmAdminBuild.customCSSInit is deprecated.")},globalSettingsInit:function(){var e;jQuery(document).on("click","[data-frmuninstall]",Ki),lo(),null!==(e=document.getElementById("licenses_settings"))&&jQuery(e).on("click",".edd_frm_save_license",Ji),jQuery(document).on("click","#frm-new-template button",wo),jQuery("#frm-dismissable-cta .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_lite_settings_upgrade",nonce:frmGlobal.nonce}),jQuery(".settings-lite-cta").remove()}));var t=document.getElementById("frm_re_type");t&&t.addEventListener("change",Eo),document.querySelector(".frm_captchas").addEventListener("change",(function(e){var t,r=null===(t=document.querySelector('.frm_captchas input[checked="checked"]'))||void 0===t?void 0:t.value,n=e.target.value!==r;document.querySelector(".captcha_settings .frm_note_style").classList.toggle("frm_hidden",!n)})),frmDom.util.documentOn("submit",".frm_settings_form",(function(){return E=0}));var r=document.getElementById("manage_styles_settings");r&&r.addEventListener("change",(function(e){var t=e.target;"SELECT"===t.nodeName&&t.dataset.name&&!t.getAttribute("name")&&t.setAttribute("name",t.dataset.name)}));var n=document.getElementById("payments_settings"),i=null==n?void 0:n.querySelectorAll('[name="frm_payment_section"]');i&&i.forEach((function(e){e.addEventListener("change",(function(){if(e.checked){var t=n.querySelector('label[for="'.concat(e.id,'"]'));t&&t.setAttribute("aria-selected","true"),i.forEach((function(t){if(t!==e){var r=n.querySelector('label[for="'.concat(t.id,'"]'));r&&r.setAttribute("aria-selected","false")}}))}}))}))},exportInit:function(){jQuery(".frm_form_importer").on("submit",Yi),jQuery(document.getElementById("frm_export_xml")).on("submit",Zi),jQuery("#frm_export_xml input, #frm_export_xml select").on("change",eo),jQuery('input[name="frm_import_file"]').on("change",to),document.querySelector('select[name="format"]').addEventListener("change",no),jQuery('input[name="frm_export_forms[]"]').on("click",ao),lo(),jQuery(".frm-feature-banner .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_dismiss_migrator",plugin:this.id,nonce:frmGlobal.nonce}),this.parentElement.remove()})),oo(ro()),document.querySelector("#frm-export-select-all").addEventListener("change",(function(e){document.querySelectorAll('[name="frm_export_forms[]"]').forEach((function(t){return t.checked=e.target.checked}))}))},inboxBannerInit:function(){var e=document.getElementById("frm_banner");if(e){var t=e.querySelector(".frm-banner-dismiss");document.addEventListener("click",(function(r){r.target===t&&Bo({action:"frm_inbox_dismiss",key:e.dataset.key,nonce:frmGlobal.nonce},(function(){jQuery(e).fadeOut(400,(function(){e.remove()}))}))}))}},updateOpts:function(e,t,r){var n=pn(e),i=Ho(e)?"frm_bulk_products":"frm_import_options";jQuery.ajax({type:"POST",url:ajaxurl,data:{action:i,field_id:e,opts:t,separate:n,nonce:frmGlobal.nonce},success:function(t){document.getElementById("frm_field_"+e+"_opts").innerHTML=t,wp.hooks.doAction("frm_after_bulk_edit_opts",e),rn(e),void 0!==r&&(r.dialog("close"),document.getElementById("frm-update-bulk-opts").classList.remove("frm_loading_button"))}})},triggerRemoveLogic:function(e,t){jQuery("#frm_logic_"+e+"_"+t+" .frm_remove_tag").trigger("click")},downloadXML:function(e,t,r){var n=ajaxurl+"?action=frm_"+e+"_xml&ids="+t;null!==r&&(n=n+"&is_template="+r),location.href=n},hooks:{applyFilters:function(e){for(var t,r=arguments.length,n=new Array(r>1?r-1:0),i=1;i1?r-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r){var n=k,i=0;"summary"===e&&(i=j.children('li[data-type="break"]').length>0?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:Object.assign(pe(e,0,n,i),{field_options:t}),success:function(t){r(t),setTimeout((function(){Qn(),Ue(t,!0);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:n})}),10)},error:je})}))},confirmLinkClick:F,handleInsertFieldByDraggingResponse:ye,handleAddFieldClickResponse:Ie,syncLayoutClasses:le}}(),jQuery(document).ready((function(){var e;frmAdminBuild.init(),frmDom.bootstrap.setupBootstrapDropdowns((function(e){var t,r,n=e.querySelector(".frm-dropdown-toggle");n&&(n.hasAttribute("role")||n.setAttribute("role","button"),n.hasAttribute("tabindex")||n.setAttribute("tabindex",0)),"UL"===e.tagName&&(r=(r=(r=(r=(r=(r=(t=e).outerHTML).replace("
                                ","")).replaceAll("
                              • ",'
                              • ",""),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file diff --git a/js/formidable_dashboard.js.map b/js/formidable_dashboard.js.map index 1bacfb78e1..53b8cdfe56 100644 --- a/js/formidable_dashboard.js.map +++ b/js/formidable_dashboard.js.map @@ -1 +1 @@ -{"version":3,"file":"formidable_dashboard.js","mappings":"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","sources":["webpack://formidable/./js/src/components/class-counter.js","webpack://formidable/./js/src/components/class-tabs-navigator.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/dashboard.js"],"sourcesContent":["export class frmCounter {\n\t/**\n\t * Init frmCounter\n\t *\n\t * @param {Element} element\n\t * @param {Object} options\n\t * @param {integer} options.timetoFinish - Max time in mileseconds for counter to complete the animation.\n\t */\n\tconstructor( element, options ) {\n\t\tif ( ! ( element instanceof Element ) || ! element.dataset.counter ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.template = element.dataset.type || 'default';\n\t\tthis.element = element;\n\t\tthis.value = parseInt( element.dataset.counter, 10 );\n\t\tthis.activeCounter = 0;\n\t\tthis.locale = element.dataset.locale ? element.dataset.locale.replace( '_', '-' ) : 'en-US';\n\t\tthis.timeoutInterval = 50;\n\t\tthis.timeToFinish = 'undefined' !== typeof options && 'undefined' !== typeof options.timetoFinish ? options.timetoFinish : 1400;\n\t\tthis.valueStep = this.value / Math.ceil( this.timeToFinish / this.timeoutInterval );\n\n\t\tif ( 0 === this.value ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.animate();\n\t}\n\n\tformatNumber( number ) {\n\t\tif ( 'currency' === this.template ) {\n\t\t\treturn number.toLocaleString( this.locale, { minimumFractionDigits: 2 } );\n\t\t}\n\t\treturn number;\n\t}\n\n\tanimate() {\n\t\tif ( Math.round( this.activeCounter ) < this.value ) {\n\t\t\tthis.activeCounter += this.valueStep;\n\t\t\tthis.element.innerText = this.formatNumber( Math.round( this.activeCounter ) );\n\t\t\tsetTimeout( this.animate.bind( this ), this.timeoutInterval );\n\t\t} else {\n\t\t\tthis.element.innerText = this.formatNumber( this.value );\n\t\t}\n\t}\n}\n","export class frmTabsNavigator {\n\tconstructor( wrapper ) {\n\t\tif ( 'undefined' === typeof wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrapper = wrapper instanceof Element ? wrapper : document.querySelector( wrapper );\n\n\t\tif ( null === this.wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.flexboxSlidesGap = '16px';\n\t\tthis.navs = this.wrapper.querySelectorAll( '.frm-tabs-navs ul > li' );\n\t\tthis.slideTrackLine = this.wrapper.querySelector( '.frm-tabs-active-underline' );\n\t\tthis.slideTrack = this.wrapper.querySelector( '.frm-tabs-slide-track' );\n\t\tthis.slides = this.wrapper.querySelectorAll( '.frm-tabs-slide-track > div' );\n\t\tthis.isRTL = document.documentElement.dir === 'rtl' || document.body.dir === 'rtl';\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\tif ( null === this.wrapper || ! this.navs.length || null === this.slideTrackLine || null === this.slideTrack || ! this.slides.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initDefaultSlideTrackerWidth();\n\t\tthis.navs.forEach( ( nav, index ) => {\n\t\t\tnav.addEventListener( 'click', event => this.onNavClick( event, index ) );\n\t\t} );\n\t}\n\n\tonNavClick( event, index ) {\n\t\tconst navItem = event.currentTarget;\n\n\t\tevent.preventDefault();\n\n\t\tthis.removeActiveClassnameFromNavs();\n\t\tnavItem.classList.add( 'frm-active' );\n\t\tthis.initSlideTrackUnderline( navItem, index );\n\t\tthis.changeSlide( index );\n\n\t\t// Handle special case for frm_insert_fields_tab\n\t\tconst navLink = navItem.querySelector( 'a' );\n\t\tif ( navLink && navLink.id === 'frm_insert_fields_tab' && ! navLink.closest( '#frm_adv_info' ) ) {\n\t\t\twindow.frmAdminBuild?.clearSettingsBox?.();\n\t\t}\n\t}\n\n\tinitDefaultSlideTrackerWidth() {\n\t\tif ( ! this.slideTrackLine.dataset.initialWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.slideTrackLine.style.width = `${ this.slideTrackLine.dataset.initialWidth }px`;\n\t}\n\tinitSlideTrackUnderline( nav, index ) {\n\t\tthis.slideTrackLine.classList.remove( 'frm-first', 'frm-last' );\n\t\tconst activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) );\n\t\tconst position = this.isRTL\n\t\t\t? -( activeNav.parentElement.offsetWidth - activeNav.offsetLeft - activeNav.offsetWidth )\n\t\t\t: activeNav.offsetLeft;\n\n\t\tthis.slideTrackLine.style.transform = `translateX(${ position }px)`;\n\t\tthis.slideTrackLine.style.width = activeNav.clientWidth + 'px';\n\t}\n\n\tchangeSlide( index ) {\n\t\tthis.removeActiveClassnameFromSlides();\n\t\tconst translate = index == 0 ? '0px' : `calc( ( ${ ( index * 100 ) }% + ${ parseInt( this.flexboxSlidesGap, 10 ) * index }px ) * ${ this.isRTL ? 1 : -1 } )`;\n\t\tif ( '0px' !== translate ) {\n\t\t\tthis.slideTrack.style.transform = `translateX(${ translate })`;\n\t\t} else {\n\t\t\tthis.slideTrack.style.removeProperty( 'transform' );\n\t\t}\n\t\tif ( index in this.slides ) {\n\t\t\tthis.slides[ index ].classList.add( 'frm-active' );\n\t\t}\n\t}\n\n\tremoveActiveClassnameFromSlides() {\n\t\tthis.slides.forEach( slide => slide.classList.remove( 'frm-active' ) );\n\t}\n\n\tremoveActiveClassnameFromNavs() {\n\t\tthis.navs.forEach( nav => nav.classList.remove( 'frm-active' ) );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * External dependencies\n */\nimport { frmAnimate } from 'core/utils';\n\nimport { frmTabsNavigator } from './components/class-tabs-navigator';\nimport { frmCounter } from './components/class-counter';\nclass frmDashboard {\n\tconstructor() {\n\t\tthis.options = {\n\t\t\tajax: {\n\t\t\t\taction: 'dashboard_ajax_action',\n\t\t\t\tdashboardActions: {\n\t\t\t\t\twelcomeBanner: 'welcome-banner-has-closed',\n\t\t\t\t\tcheckEmailIfSubscribed: 'email-has-subscribed',\n\t\t\t\t\tsaveSubscribedEmail: 'save-subscribed-email'\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tthis.widgetsAnimate = new frmAnimate( document.querySelectorAll( '.frm-dashboard-widget' ), 'cascade' );\n\t}\n\n\tinit() {\n\t\tthis.initInbox();\n\t\tthis.initCounters();\n\t\tthis.initCloseWelcomeBanner();\n\n\t\tthis.widgetsAnimate.cascadeFadeIn();\n\t}\n\n\tinitInbox() {\n\t\tnew frmTabsNavigator( '.frm-inbox-wrapper' );\n\t\tconst userEmailInput = document.querySelector( '#frm_leave_email' );\n\t\tconst subscribeButton = document.querySelector( '#frm-add-my-email-address' );\n\n\t\tsubscribeButton.addEventListener( 'click', () => {\n\t\t\tthis.saveSubscribedEmail( userEmailInput.value ).then();\n\t\t} );\n\t}\n\n\tinitCounters() {\n\t\tconst counters = document.querySelectorAll( '.frm-counter' );\n\t\tcounters.forEach( counter => new frmCounter( counter ) );\n\t}\n\n\tinitCloseWelcomeBanner() {\n\t\tconst closeButton = document.querySelector( '.frm-dashboard-banner-close' );\n\t\tconst dashboardBanner = document.querySelector( '.frm-dashboard-banner' );\n\n\t\tif ( ! closeButton || ! dashboardBanner ) {\n\t\t\treturn;\n\t\t}\n\n\t\tcloseButton.addEventListener( 'click', () => {\n\t\t\tthis.closeWelcomeBannerSaveCookieRequest().then( data => {\n\t\t\t\tif ( true === data.success ) {\n\t\t\t\t\tdashboardBanner.remove();\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\t}\n\n\tsaveSubscribedEmail( email ) {\n\t\treturn fetch( window.ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams( {\n\t\t\t\taction: this.options.ajax.action,\n\t\t\t\tdashboard_action: this.options.ajax.dashboardActions.saveSubscribedEmail,\n\t\t\t\temail: email\n\t\t\t} )\n\t\t} ).then( result => result.json() );\n\t}\n\n\tcloseWelcomeBannerSaveCookieRequest() {\n\t\treturn fetch( window.ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams( {\n\t\t\t\taction: this.options.ajax.action,\n\t\t\t\tdashboard_action: this.options.ajax.dashboardActions.welcomeBanner,\n\t\t\t\tbanner_has_closed: 1\n\t\t\t} )\n\t\t} ).then( result => result.json() );\n\t}\n}\nconst frmDashboardClass = new frmDashboard();\ndocument.addEventListener( 'DOMContentLoaded', () => {\n\tfrmDashboardClass.init();\n} );\n"],"names":["frmCounter","element","options","_classCallCheck","Element","dataset","counter","template","type","value","parseInt","activeCounter","locale","replace","timeoutInterval","timeToFinish","timetoFinish","valueStep","Math","ceil","animate","_createClass","key","formatNumber","number","toLocaleString","minimumFractionDigits","round","innerText","setTimeout","bind","frmTabsNavigator","wrapper","document","querySelector","flexboxSlidesGap","navs","querySelectorAll","slideTrackLine","slideTrack","slides","isRTL","documentElement","dir","body","init","_this","length","initDefaultSlideTrackerWidth","forEach","nav","index","addEventListener","event","onNavClick","navItem","currentTarget","preventDefault","removeActiveClassnameFromNavs","classList","add","initSlideTrackUnderline","changeSlide","navLink","id","closest","_window$frmAdminBuild","_window$frmAdminBuild2","window","frmAdminBuild","clearSettingsBox","call","initialWidth","style","width","concat","remove","activeNav","filter","contains","position","parentElement","offsetWidth","offsetLeft","transform","clientWidth","removeActiveClassnameFromSlides","translate","removeProperty","slide","_window$frmGlobal","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","frmAnimate","elements","arguments","undefined","prepareElements","fadeIn","applyStyleToElements","resetOpacity","once","cascadeFadeIn","_this2","delay","transitionDelay","_this3","opacity","callback","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","textContent","setAttribute","_window$frmDom$util","frmDom","util","onClickPreventDefault","documentOn","URL","location","href","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","frmDashboard","ajax","action","dashboardActions","welcomeBanner","checkEmailIfSubscribed","saveSubscribedEmail","widgetsAnimate","initInbox","initCounters","initCloseWelcomeBanner","userEmailInput","subscribeButton","counters","closeButton","dashboardBanner","closeWelcomeBannerSaveCookieRequest","data","success","fetch","ajaxurl","method","headers","URLSearchParams","dashboard_action","result","json","banner_has_closed","frmDashboardClass"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"formidable_dashboard.js","mappings":";;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,UAAU;EACtB;AACD;AACA;AACA;AACA;AACA;AACA;EACC,SAAAA,WAAaC,OAAO,EAAEC,OAAO,EAAG;IAAAC,eAAA,OAAAH,UAAA;IAC/B,IAAK,EAAIC,OAAO,YAAYG,OAAO,CAAE,IAAI,CAAEH,OAAO,CAACI,OAAO,CAACC,OAAO,EAAG;MACpE;IACD;IAEA,IAAI,CAACC,QAAQ,GAAGN,OAAO,CAACI,OAAO,CAACG,IAAI,IAAI,SAAS;IACjD,IAAI,CAACP,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACQ,KAAK,GAAGC,QAAQ,CAAET,OAAO,CAACI,OAAO,CAACC,OAAO,EAAE,EAAG,CAAC;IACpD,IAAI,CAACK,aAAa,GAAG,CAAC;IACtB,IAAI,CAACC,MAAM,GAAGX,OAAO,CAACI,OAAO,CAACO,MAAM,GAAGX,OAAO,CAACI,OAAO,CAACO,MAAM,CAACC,OAAO,CAAE,GAAG,EAAE,GAAI,CAAC,GAAG,OAAO;IAC3F,IAAI,CAACC,eAAe,GAAG,EAAE;IACzB,IAAI,CAACC,YAAY,GAAG,WAAW,KAAK,OAAOb,OAAO,IAAI,WAAW,KAAK,OAAOA,OAAO,CAACc,YAAY,GAAGd,OAAO,CAACc,YAAY,GAAG,IAAI;IAC/H,IAAI,CAACC,SAAS,GAAG,IAAI,CAACR,KAAK,GAAGS,IAAI,CAACC,IAAI,CAAE,IAAI,CAACJ,YAAY,GAAG,IAAI,CAACD,eAAgB,CAAC;IAEnF,IAAK,CAAC,KAAK,IAAI,CAACL,KAAK,EAAG;MACvB;IACD;IAEA,IAAI,CAACW,OAAO,CAAC,CAAC;EACf;EAAC,OAAAC,YAAA,CAAArB,UAAA;IAAAsB,GAAA;IAAAb,KAAA,EAED,SAAAc,YAAYA,CAAEC,MAAM,EAAG;MACtB,IAAK,UAAU,KAAK,IAAI,CAACjB,QAAQ,EAAG;QACnC,OAAOiB,MAAM,CAACC,cAAc,CAAE,IAAI,CAACb,MAAM,EAAE;UAAEc,qBAAqB,EAAE;QAAE,CAAE,CAAC;MAC1E;MACA,OAAOF,MAAM;IACd;EAAC;IAAAF,GAAA;IAAAb,KAAA,EAED,SAAAW,OAAOA,CAAA,EAAG;MACT,IAAKF,IAAI,CAACS,KAAK,CAAE,IAAI,CAAChB,aAAc,CAAC,GAAG,IAAI,CAACF,KAAK,EAAG;QACpD,IAAI,CAACE,aAAa,IAAI,IAAI,CAACM,SAAS;QACpC,IAAI,CAAChB,OAAO,CAAC2B,SAAS,GAAG,IAAI,CAACL,YAAY,CAAEL,IAAI,CAACS,KAAK,CAAE,IAAI,CAAChB,aAAc,CAAE,CAAC;QAC9EkB,UAAU,CAAE,IAAI,CAACT,OAAO,CAACU,IAAI,CAAE,IAAK,CAAC,EAAE,IAAI,CAAChB,eAAgB,CAAC;MAC9D,CAAC,MAAM;QACN,IAAI,CAACb,OAAO,CAAC2B,SAAS,GAAG,IAAI,CAACL,YAAY,CAAE,IAAI,CAACd,KAAM,CAAC;MACzD;IACD;EAAC;AAAA;;;;;;;;;;;;;;;;;;;;AC5CK,IAAMsB,gBAAgB;EAC5B,SAAAA,iBAAaC,OAAO,EAAG;IAAA7B,eAAA,OAAA4B,gBAAA;IACtB,IAAK,WAAW,KAAK,OAAOC,OAAO,EAAG;MACrC;IACD;IAEA,IAAI,CAACA,OAAO,GAAGA,OAAO,YAAY5B,OAAO,GAAG4B,OAAO,GAAGC,QAAQ,CAACC,aAAa,CAAEF,OAAQ,CAAC;IAEvF,IAAK,IAAI,KAAK,IAAI,CAACA,OAAO,EAAG;MAC5B;IACD;IAEA,IAAI,CAACG,gBAAgB,GAAG,MAAM;IAC9B,IAAI,CAACC,IAAI,GAAG,IAAI,CAACJ,OAAO,CAACK,gBAAgB,CAAE,wBAAyB,CAAC;IACrE,IAAI,CAACC,cAAc,GAAG,IAAI,CAACN,OAAO,CAACE,aAAa,CAAE,4BAA6B,CAAC;IAChF,IAAI,CAACK,UAAU,GAAG,IAAI,CAACP,OAAO,CAACE,aAAa,CAAE,uBAAwB,CAAC;IACvE,IAAI,CAACM,MAAM,GAAG,IAAI,CAACR,OAAO,CAACK,gBAAgB,CAAE,6BAA8B,CAAC;IAC5E,IAAI,CAACI,KAAK,GAAGR,QAAQ,CAACS,eAAe,CAACC,GAAG,KAAK,KAAK,IAAIV,QAAQ,CAACW,IAAI,CAACD,GAAG,KAAK,KAAK;IAElF,IAAI,CAACE,IAAI,CAAC,CAAC;EACZ;EAAC,OAAAxB,YAAA,CAAAU,gBAAA;IAAAT,GAAA;IAAAb,KAAA,EAED,SAAAoC,IAAIA,CAAA,EAAG;MAAA,IAAAC,KAAA;MACN,IAAK,IAAI,KAAK,IAAI,CAACd,OAAO,IAAI,CAAE,IAAI,CAACI,IAAI,CAACW,MAAM,IAAI,IAAI,KAAK,IAAI,CAACT,cAAc,IAAI,IAAI,KAAK,IAAI,CAACC,UAAU,IAAI,CAAE,IAAI,CAACC,MAAM,CAACO,MAAM,EAAG;QACtI;MACD;MAEA,IAAI,CAACC,4BAA4B,CAAC,CAAC;MACnC,IAAI,CAACZ,IAAI,CAACa,OAAO,CAAE,UAAEC,GAAG,EAAEC,KAAK,EAAM;QACpCD,GAAG,CAACE,gBAAgB,CAAE,OAAO,EAAE,UAAAC,KAAK;UAAA,OAAIP,KAAI,CAACQ,UAAU,CAAED,KAAK,EAAEF,KAAM,CAAC;QAAA,CAAC,CAAC;MAC1E,CAAE,CAAC;IACJ;EAAC;IAAA7B,GAAA;IAAAb,KAAA,EAED,SAAA6C,UAAUA,CAAED,KAAK,EAAEF,KAAK,EAAG;MAC1B,IAAMI,OAAO,GAAGF,KAAK,CAACG,aAAa;MAEnCH,KAAK,CAACI,cAAc,CAAC,CAAC;MAEtB,IAAI,CAACC,6BAA6B,CAAC,CAAC;MACpCH,OAAO,CAACI,SAAS,CAACC,GAAG,CAAE,YAAa,CAAC;MACrC,IAAI,CAACC,uBAAuB,CAAEN,OAAO,EAAEJ,KAAM,CAAC;MAC9C,IAAI,CAACW,WAAW,CAAEX,KAAM,CAAC;;MAEzB;MACA,IAAMY,OAAO,GAAGR,OAAO,CAACrB,aAAa,CAAE,GAAI,CAAC;MAC5C,IAAK6B,OAAO,IAAIA,OAAO,CAACC,EAAE,KAAK,uBAAuB,IAAI,CAAED,OAAO,CAACE,OAAO,CAAE,eAAgB,CAAC,EAAG;QAAA,IAAAC,qBAAA,EAAAC,sBAAA;QAChG,CAAAD,qBAAA,GAAAE,MAAM,CAACC,aAAa,cAAAH,qBAAA,gBAAAC,sBAAA,GAApBD,qBAAA,CAAsBI,gBAAgB,cAAAH,sBAAA,eAAtCA,sBAAA,CAAAI,IAAA,CAAAL,qBAAyC,CAAC;MAC3C;IACD;EAAC;IAAA5C,GAAA;IAAAb,KAAA,EAED,SAAAuC,4BAA4BA,CAAA,EAAG;MAC9B,IAAK,CAAE,IAAI,CAACV,cAAc,CAACjC,OAAO,CAACmE,YAAY,EAAG;QACjD;MACD;MACA,IAAI,CAAClC,cAAc,CAACmC,KAAK,CAACC,KAAK,MAAAC,MAAA,CAAO,IAAI,CAACrC,cAAc,CAACjC,OAAO,CAACmE,YAAY,OAAK;IACpF;EAAC;IAAAlD,GAAA;IAAAb,KAAA,EACD,SAAAoD,uBAAuBA,CAAEX,GAAG,EAAEC,KAAK,EAAG;MACrC,IAAI,CAACb,cAAc,CAACqB,SAAS,CAACiB,MAAM,CAAE,WAAW,EAAE,UAAW,CAAC;MAC/D,IAAMC,SAAS,GAAG,WAAW,KAAK,OAAO3B,GAAG,GAAGA,GAAG,GAAG,IAAI,CAACd,IAAI,CAAC0C,MAAM,CAAE,UAAA5B,GAAG;QAAA,OAAIA,GAAG,CAACS,SAAS,CAACoB,QAAQ,CAAE,YAAa,CAAC;MAAA,CAAC,CAAC;MACtH,IAAMC,QAAQ,GAAG,IAAI,CAACvC,KAAK,GACxB,EAAGoC,SAAS,CAACI,aAAa,CAACC,WAAW,GAAGL,SAAS,CAACM,UAAU,GAAGN,SAAS,CAACK,WAAW,CAAE,GACvFL,SAAS,CAACM,UAAU;MAEvB,IAAI,CAAC7C,cAAc,CAACmC,KAAK,CAACW,SAAS,iBAAAT,MAAA,CAAkBK,QAAQ,QAAM;MACnE,IAAI,CAAC1C,cAAc,CAACmC,KAAK,CAACC,KAAK,GAAGG,SAAS,CAACQ,WAAW,GAAG,IAAI;IAC/D;EAAC;IAAA/D,GAAA;IAAAb,KAAA,EAED,SAAAqD,WAAWA,CAAEX,KAAK,EAAG;MACpB,IAAI,CAACmC,+BAA+B,CAAC,CAAC;MACtC,IAAMC,SAAS,GAAGpC,KAAK,IAAI,CAAC,GAAG,KAAK,cAAAwB,MAAA,CAAiBxB,KAAK,GAAG,GAAG,UAAAwB,MAAA,CAAWjE,QAAQ,CAAE,IAAI,CAACyB,gBAAgB,EAAE,EAAG,CAAC,GAAGgB,KAAK,aAAAwB,MAAA,CAAY,IAAI,CAAClC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,OAAK;MAC5J,IAAK,KAAK,KAAK8C,SAAS,EAAG;QAC1B,IAAI,CAAChD,UAAU,CAACkC,KAAK,CAACW,SAAS,iBAAAT,MAAA,CAAkBY,SAAS,MAAI;MAC/D,CAAC,MAAM;QACN,IAAI,CAAChD,UAAU,CAACkC,KAAK,CAACe,cAAc,CAAE,WAAY,CAAC;MACpD;MACA,IAAKrC,KAAK,IAAI,IAAI,CAACX,MAAM,EAAG;QAC3B,IAAI,CAACA,MAAM,CAAEW,KAAK,CAAE,CAACQ,SAAS,CAACC,GAAG,CAAE,YAAa,CAAC;MACnD;IACD;EAAC;IAAAtC,GAAA;IAAAb,KAAA,EAED,SAAA6E,+BAA+BA,CAAA,EAAG;MACjC,IAAI,CAAC9C,MAAM,CAACS,OAAO,CAAE,UAAAwC,KAAK;QAAA,OAAIA,KAAK,CAAC9B,SAAS,CAACiB,MAAM,CAAE,YAAa,CAAC;MAAA,CAAC,CAAC;IACvE;EAAC;IAAAtD,GAAA;IAAAb,KAAA,EAED,SAAAiD,6BAA6BA,CAAA,EAAG;MAC/B,IAAI,CAACtB,IAAI,CAACa,OAAO,CAAE,UAAAC,GAAG;QAAA,OAAIA,GAAG,CAACS,SAAS,CAACiB,MAAM,CAAE,YAAa,CAAC;MAAA,CAAC,CAAC;IACjE;EAAC;AAAA;;;;;;;;;;;;;;;;;;;;;;ACtFK,IAAAc,iBAAA,GAAmCtB,MAAM,CAACuB,SAAS;EAAtCC,UAAU,GAAAF,iBAAA,CAAfG,GAAG;EAAcC,KAAK,GAAAJ,iBAAA,CAALI,KAAK;AAAsB;AACpD,IAAMC,YAAY,GAAG,YAAY;AACjC,IAAMC,cAAc,GAAG,cAAc;AACrC,IAAMC,aAAa,GAAG,aAAa;AACnC,IAAMC,aAAa,GAAG,aAAa;AACnC,IAAMC,aAAa,GAAG,aAAa;AACnC,IAAMC,qBAAqB,GAAG,qBAAqB;AAEnD,IAAMC,KAAK,GAAG;EACpBC,mBAAmB,EAAE;AACtB,CAAC;;;;;;;;;;;;;;;;;;;;ACVM,IAAMC,UAAU;EACtB;AACD;AACA;AACA;AACA;AACA;EACC,SAAAA,WAAaC,QAAQ,EAAqB;IAAA,IAAnBhG,IAAI,GAAAiG,SAAA,CAAA1D,MAAA,QAAA0D,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,SAAS;IAAAtG,eAAA,OAAAoG,UAAA;IACtC,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAAChG,IAAI,GAAGA,IAAI;IAEhB,IAAI,CAACmG,eAAe,CAAC,CAAC;EACvB;;EAEA;AACD;AACA;AACA;AACA;EAJC,OAAAtF,YAAA,CAAAkF,UAAA;IAAAjF,GAAA;IAAAb,KAAA,EAKA,SAAAmG,MAAMA,CAAA,EAAG;MAAA,IAAA9D,KAAA;MACR,IAAI,CAAC+D,oBAAoB,CAAE,UAAA5G,OAAO,EAAI;QACrCA,OAAO,CAAC0D,SAAS,CAACC,GAAG,CAAE,eAAgB,CAAC;QAExC3D,OAAO,CAACmD,gBAAgB,CAAE,cAAc,EAAE,YAAM;UAC/CN,KAAI,CAACgE,YAAY,CAAC,CAAC;UACnB7G,OAAO,CAAC0D,SAAS,CAACiB,MAAM,CAAE,eAAgB,CAAC;QAC5C,CAAC,EAAE;UAAEmC,IAAI,EAAE;QAAK,CAAE,CAAC;MACpB,CAAE,CAAC;IACJ;;IAEA;AACD;AACA;AACA;AACA;AACA;AACA;AACA;EAPC;IAAAzF,GAAA;IAAAb,KAAA,EAQA,SAAAuG,aAAaA,CAAA,EAAiB;MAAA,IAAAC,MAAA;MAAA,IAAfC,KAAK,GAAAT,SAAA,CAAA1D,MAAA,QAAA0D,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,IAAI;MAC1B5E,UAAU,CAAE,YAAM;QACjBoF,MAAI,CAACJ,oBAAoB,CAAE,UAAE5G,OAAO,EAAEkD,KAAK,EAAM;UAChDlD,OAAO,CAAC0D,SAAS,CAACiB,MAAM,CAAE,aAAc,CAAC;UACzC3E,OAAO,CAACwE,KAAK,CAAC0C,eAAe,GAAK,CAAEhE,KAAK,GAAG,CAAC,IAAK+D,KAAK,GAAK,GAAG;QAChE,CAAE,CAAC;MACJ,CAAC,EAAE,GAAI,CAAC;IACT;EAAC;IAAA5F,GAAA;IAAAb,KAAA,EAED,SAAAkG,eAAeA,CAAA,EAAG;MAAA,IAAAS,MAAA;MACjB,IAAI,CAACP,oBAAoB,CAAE,UAAA5G,OAAO,EAAI;QACrC,IAAK,SAAS,KAAKmH,MAAI,CAAC5G,IAAI,EAAG;UAC9BP,OAAO,CAACwE,KAAK,CAAC4C,OAAO,GAAG,KAAK;QAC9B;QACA,IAAK,SAAS,KAAKD,MAAI,CAAC5G,IAAI,EAAG;UAC9BP,OAAO,CAAC0D,SAAS,CAACC,GAAG,CAAE,4BAA6B,CAAC;QACtD;QACA,IAAK,YAAY,KAAKwD,MAAI,CAAC5G,IAAI,EAAG;UACjCP,OAAO,CAAC0D,SAAS,CAACC,GAAG,CAAE,oBAAqB,CAAC;QAC9C;QACA3D,OAAO,CAAC0D,SAAS,CAACC,GAAG,CAAE,aAAc,CAAC;MACvC,CAAE,CAAC;IACJ;EAAC;IAAAtC,GAAA;IAAAb,KAAA,EAED,SAAAqG,YAAYA,CAAA,EAAG;MACd,IAAI,CAACD,oBAAoB,CAAE,UAAA5G,OAAO;QAAA,OAAIA,OAAO,CAACwE,KAAK,CAAC4C,OAAO,GAAG,KAAK;MAAA,CAAC,CAAC;IACtE;EAAC;IAAA/F,GAAA;IAAAb,KAAA,EAED,SAAAoG,oBAAoBA,CAAES,QAAQ,EAAG;MAChC,IAAK,IAAI,CAACd,QAAQ,YAAYpG,OAAO,EAAG;QACvCkH,QAAQ,CAAE,IAAI,CAACd,QAAQ,EAAE,CAAE,CAAC;QAC5B;MACD;MACA,IAAK,CAAC,GAAG,IAAI,CAACA,QAAQ,CAACzD,MAAM,EAAG;QAC/B,IAAI,CAACyD,QAAQ,CAACvD,OAAO,CAAE,UAAEhD,OAAO,EAAEkD,KAAK;UAAA,OAAMmE,QAAQ,CAAErH,OAAO,EAAEkD,KAAM,CAAC;QAAA,CAAC,CAAC;MAC1E;IACD;EAAC;AAAA;;;;;;;;;;;;;;AC1EF;AACA,IAAIoE,WAAW,GAAGC,OAAO,CAACC,OAAO,CAAC,CAAC;;AAEnC;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,IAAI;EAAA,OAAIJ,WAAW,GAAGA,WAAW,CAACK,IAAI,CAAED,IAAK,CAAC,CAACE,KAAK,CAAEF,IAAK,CAAC;AAAA;;;;;;;;;;;;;;;ACT7F;AACA;AACA;AAC+B;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMK,aAAa,GAAG,SAAhBA,aAAaA,CAAKC,OAAO,EAAEC,OAAO,EAAE1H,IAAI,EAAE2H,OAAO,EAAM;EACnE,IAAMC,YAAY,GAAGnG,QAAQ,CAACC,aAAa,CAAE+F,OAAQ,CAAC;EACtD,IAAMI,YAAY,GAAGpG,QAAQ,CAACC,aAAa,CAAEgG,OAAQ,CAAC;EAEtD,IAAK,CAAEE,YAAY,IAAI,CAAEC,YAAY,EAAG;IACvCC,OAAO,CAACC,IAAI,CAAE,uDAAwD,CAAC;IACvE;EACD;;EAEA;EACA,IAAKJ,OAAO,EAAG;IACd,IAAMK,IAAI,GAAGH,YAAY,CAACnG,aAAa,qBAAAyC,MAAA,CAAsBnE,IAAI,QAAM,CAAC;IACxE,IAAKgI,IAAI,EAAG;MACXA,IAAI,CAACC,WAAW,GAAGN,OAAO;IAC3B;EACD;;EAEA;EACAE,YAAY,CAACK,YAAY,CAAE,WAAW,EAAElI,IAAK,CAAC;EAC9CuH,uCAAI,CAAEM,YAAa,CAAC;;EAEpB;EACAD,YAAY,CAAChF,gBAAgB,CAAE,OAAO,EAAE,YAAM;IAC7C0E,uCAAI,CAAEO,YAAa,CAAC;EACrB,CAAC,EAAE;IAAEtB,IAAI,EAAE;EAAK,CAAE,CAAC;AACpB,CAAC;;;;;;;;;;;;;;;ACvCM,IAAA4B,mBAAA,GAA8CvE,MAAM,CAACwE,MAAM,CAACC,IAAI;EAAxDC,qBAAqB,GAAAH,mBAAA,CAArBG,qBAAqB;EAAEC,UAAU,GAAAJ,mBAAA,CAAVI,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACApB;AACJ;AACA;AACA;AACF;AACO;;;;;;;;;;;;;;;;;;;;;;ACL7B;AACA;AACA;AACA,IAAMlD,GAAG,GAAG,IAAImD,GAAG,CAAE5E,MAAM,CAAC6E,QAAQ,CAACC,IAAK,CAAC;AAC3C,IAAMC,SAAS,GAAGtD,GAAG,CAACuD,YAAY;;AAElC;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,SAAS;EAAA,OAAIH,SAAS,CAACI,GAAG,CAAED,SAAU,CAAC;AAAA;;AAEpE;AACA;AACA;AACA;AACA;AACA;AACO,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGF,SAAS,EAAI;EAC5CH,SAAS,CAACM,MAAM,CAAEH,SAAU,CAAC;EAC7BzD,GAAG,CAAC6D,MAAM,GAAGP,SAAS,CAACQ,QAAQ,CAAC,CAAC;EACjC,OAAO9D,GAAG,CAAC8D,QAAQ,CAAC,CAAC;AACtB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAKN,SAAS,EAAEO,UAAU,EAAkC;EAAA,IAAhCC,YAAY,GAAArD,SAAA,CAAA1D,MAAA,QAAA0D,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,WAAW;EAC/E0C,SAAS,CAACY,GAAG,CAAET,SAAS,EAAEO,UAAW,CAAC;EACtChE,GAAG,CAAC6D,MAAM,GAAGP,SAAS,CAACQ,QAAQ,CAAC,CAAC;EAEjC,IAAK,CAAE,WAAW,EAAE,cAAc,CAAE,CAACK,QAAQ,CAAEF,YAAa,CAAC,EAAG;IAC/D,IAAMG,KAAK,GAAAC,eAAA,KAAOZ,SAAS,EAAIO,UAAU,CAAE;IAC3CzF,MAAM,CAAC+F,OAAO,CAAEL,YAAY,CAAE,CAAEG,KAAK,EAAE,EAAE,EAAEpE,GAAI,CAAC;EACjD;EAEA,OAAOA,GAAG,CAAC8D,QAAQ,CAAC,CAAC;AACtB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACO,IAAMS,aAAa,GAAG,SAAhBA,aAAaA,CAAGd,SAAS;EAAA,OAAIH,SAAS,CAACkB,GAAG,CAAEf,SAAU,CAAC;AAAA;;;;;;;;;;;;;;;;ACpDpE;AACA;AACA;AACA;AACA;AACA;AACO,IAAMgB,YAAY,GAAG,SAAfA,YAAYA,CAAGC,KAAK;EAAA,OAChC,OAAOA,KAAK,KAAK,QAAQ,GAAG,yJAAyJ,CAACC,IAAI,CAAED,KAAM,CAAC,GAAG,KAAK;AAAA;;AAE5M;AACA;AACA;AACA;AACA;AACA;AACO,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAGxK,OAAO;EAAA,OAAIA,OAAO,YAAYyK,WAAW,IAAIpC,OAAO,CAACC,IAAI,CAAE,8DAA+D,CAAC,IAAI,KAAK;AAAA;;AAEjK;AACA;AACA;AACA;AACA;AACA;AACO,IAAMoC,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,GAAG;EAAA,OAAIC,MAAM,CAACC,IAAI,CAAEF,GAAI,CAAC,CAAC7H,MAAM,KAAK,CAAC,IAAI6H,GAAG,CAACG,WAAW,KAAKF,MAAM;AAAA;;;;;;;;;;;;;;;;;;;ACvBjG;AACA;AACA;AAC8C;;AAE9C;AACA;AACA;AACA;AACA;AACA;AACO,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAGxE,QAAQ;EAAA,IAAAyE,WAAA;EAAA,QAAAA,WAAA,GACnCC,KAAK,CAACC,IAAI,CAAE3E,QAAS,CAAC,cAAAyE,WAAA,uBAAtBA,WAAA,CAAwBhI,OAAO,CAAE,UAAAhD,OAAO;IAAA,OAAI8H,IAAI,CAAE9H,OAAQ,CAAC;EAAA,CAAC,CAAC;AAAA;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACO,IAAMmL,YAAY,GAAG,SAAfA,YAAYA,CAAG5E,QAAQ;EAAA,IAAA6E,YAAA;EAAA,QAAAA,YAAA,GACnCH,KAAK,CAACC,IAAI,CAAE3E,QAAS,CAAC,cAAA6E,YAAA,uBAAtBA,YAAA,CAAwBpI,OAAO,CAAE,UAAAhD,OAAO;IAAA,OAAI6H,IAAI,CAAE7H,OAAQ,CAAC;EAAA,CAAC,CAAC;AAAA;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACO,IAAM8H,IAAI,GAAG,SAAPA,IAAIA,CAAG9H,OAAO;EAAA,OAAIA,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE0D,SAAS,CAACiB,MAAM,CAAEmB,wDAAa,CAAC;AAAA;;AAExE;AACA;AACA;AACA;AACA;AACA;AACO,IAAM+B,IAAI,GAAG,SAAPA,IAAIA,CAAG7H,OAAO;EAAA,OAAIA,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE0D,SAAS,CAACC,GAAG,CAAEmC,wDAAa,CAAC;AAAA;;AAErE;AACA;AACA;AACA;AACA;AACA;AACO,IAAMuF,SAAS,GAAG,SAAZA,SAASA,CAAGrL,OAAO,EAAI;EACnC,IAAMsL,MAAM,GAAGnH,MAAM,CAACoH,gBAAgB,CAAEvL,OAAQ,CAAC;EACjD,OAAOsL,MAAM,CAACE,gBAAgB,CAAE,SAAU,CAAC,KAAK,MAAM;AACvD,CAAC;;;;;;UChDD;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;WCtBA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA;;;;;WCAA;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;;;;;;;;;;;;;;ACNA;AACA;AACA;AACwC;AAE6B;AACb;AAAA,IAClDC,YAAY;EACjB,SAAAA,aAAA,EAAc;IAAAvL,eAAA,OAAAuL,YAAA;IACb,IAAI,CAACxL,OAAO,GAAG;MACdyL,IAAI,EAAE;QACLC,MAAM,EAAE,uBAAuB;QAC/BC,gBAAgB,EAAE;UACjBC,aAAa,EAAE,2BAA2B;UAC1CC,sBAAsB,EAAE,sBAAsB;UAC9CC,mBAAmB,EAAE;QACtB;MACD;IACD,CAAC;IACD,IAAI,CAACC,cAAc,GAAG,IAAI1F,kDAAU,CAAEtE,QAAQ,CAACI,gBAAgB,CAAE,uBAAwB,CAAC,EAAE,SAAU,CAAC;EACxG;EAAC,OAAAhB,YAAA,CAAAqK,YAAA;IAAApK,GAAA;IAAAb,KAAA,EAED,SAAAoC,IAAIA,CAAA,EAAG;MACN,IAAI,CAACqJ,SAAS,CAAC,CAAC;MAChB,IAAI,CAACC,YAAY,CAAC,CAAC;MACnB,IAAI,CAACC,sBAAsB,CAAC,CAAC;MAE7B,IAAI,CAACH,cAAc,CAACjF,aAAa,CAAC,CAAC;IACpC;EAAC;IAAA1F,GAAA;IAAAb,KAAA,EAED,SAAAyL,SAASA,CAAA,EAAG;MAAA,IAAApJ,KAAA;MACX,IAAIf,8EAAgB,CAAE,oBAAqB,CAAC;MAC5C,IAAMsK,cAAc,GAAGpK,QAAQ,CAACC,aAAa,CAAE,kBAAmB,CAAC;MACnE,IAAMoK,eAAe,GAAGrK,QAAQ,CAACC,aAAa,CAAE,2BAA4B,CAAC;MAE7EoK,eAAe,CAAClJ,gBAAgB,CAAE,OAAO,EAAE,YAAM;QAChDN,KAAI,CAACkJ,mBAAmB,CAAEK,cAAc,CAAC5L,KAAM,CAAC,CAACmH,IAAI,CAAC,CAAC;MACxD,CAAE,CAAC;IACJ;EAAC;IAAAtG,GAAA;IAAAb,KAAA,EAED,SAAA0L,YAAYA,CAAA,EAAG;MACd,IAAMI,QAAQ,GAAGtK,QAAQ,CAACI,gBAAgB,CAAE,cAAe,CAAC;MAC5DkK,QAAQ,CAACtJ,OAAO,CAAE,UAAA3C,OAAO;QAAA,OAAI,IAAIN,iEAAU,CAAEM,OAAQ,CAAC;MAAA,CAAC,CAAC;IACzD;EAAC;IAAAgB,GAAA;IAAAb,KAAA,EAED,SAAA2L,sBAAsBA,CAAA,EAAG;MAAA,IAAAnF,MAAA;MACxB,IAAMuF,WAAW,GAAGvK,QAAQ,CAACC,aAAa,CAAE,6BAA8B,CAAC;MAC3E,IAAMuK,eAAe,GAAGxK,QAAQ,CAACC,aAAa,CAAE,uBAAwB,CAAC;MAEzE,IAAK,CAAEsK,WAAW,IAAI,CAAEC,eAAe,EAAG;QACzC;MACD;MAEAD,WAAW,CAACpJ,gBAAgB,CAAE,OAAO,EAAE,YAAM;QAC5C6D,MAAI,CAACyF,mCAAmC,CAAC,CAAC,CAAC9E,IAAI,CAAE,UAAA+E,IAAI,EAAI;UACxD,IAAK,IAAI,KAAKA,IAAI,CAACC,OAAO,EAAG;YAC5BH,eAAe,CAAC7H,MAAM,CAAC,CAAC;UACzB;QACD,CAAE,CAAC;MACJ,CAAE,CAAC;IACJ;EAAC;IAAAtD,GAAA;IAAAb,KAAA,EAED,SAAAuL,mBAAmBA,CAAEzB,KAAK,EAAG;MAC5B,OAAOsC,KAAK,CAAEzI,MAAM,CAAC0I,OAAO,EAAE;QAC7BC,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACR,cAAc,EAAE;QACjB,CAAC;QACDpK,IAAI,EAAE,IAAIqK,eAAe,CAAE;UAC1BrB,MAAM,EAAE,IAAI,CAAC1L,OAAO,CAACyL,IAAI,CAACC,MAAM;UAChCsB,gBAAgB,EAAE,IAAI,CAAChN,OAAO,CAACyL,IAAI,CAACE,gBAAgB,CAACG,mBAAmB;UACxEzB,KAAK,EAAEA;QACR,CAAE;MACH,CAAE,CAAC,CAAC3C,IAAI,CAAE,UAAAuF,MAAM;QAAA,OAAIA,MAAM,CAACC,IAAI,CAAC,CAAC;MAAA,CAAC,CAAC;IACpC;EAAC;IAAA9L,GAAA;IAAAb,KAAA,EAED,SAAAiM,mCAAmCA,CAAA,EAAG;MACrC,OAAOG,KAAK,CAAEzI,MAAM,CAAC0I,OAAO,EAAE;QAC7BC,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACR,cAAc,EAAE;QACjB,CAAC;QACDpK,IAAI,EAAE,IAAIqK,eAAe,CAAE;UAC1BrB,MAAM,EAAE,IAAI,CAAC1L,OAAO,CAACyL,IAAI,CAACC,MAAM;UAChCsB,gBAAgB,EAAE,IAAI,CAAChN,OAAO,CAACyL,IAAI,CAACE,gBAAgB,CAACC,aAAa;UAClEuB,iBAAiB,EAAE;QACpB,CAAE;MACH,CAAE,CAAC,CAACzF,IAAI,CAAE,UAAAuF,MAAM;QAAA,OAAIA,MAAM,CAACC,IAAI,CAAC,CAAC;MAAA,CAAC,CAAC;IACpC;EAAC;AAAA;AAEF,IAAME,iBAAiB,GAAG,IAAI5B,YAAY,CAAC,CAAC;AAC5CzJ,QAAQ,CAACmB,gBAAgB,CAAE,kBAAkB,EAAE,YAAM;EACpDkK,iBAAiB,CAACzK,IAAI,CAAC,CAAC;AACzB,CAAE,CAAC,C","sources":["webpack://formidable/./js/src/components/class-counter.js","webpack://formidable/./js/src/components/class-tabs-navigator.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/dashboard.js"],"sourcesContent":["export class frmCounter {\n\t/**\n\t * Init frmCounter\n\t *\n\t * @param {Element} element\n\t * @param {Object} options\n\t * @param {number} options.timetoFinish Max time in mileseconds for counter to complete the animation.\n\t */\n\tconstructor( element, options ) {\n\t\tif ( ! ( element instanceof Element ) || ! element.dataset.counter ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.template = element.dataset.type || 'default';\n\t\tthis.element = element;\n\t\tthis.value = parseInt( element.dataset.counter, 10 );\n\t\tthis.activeCounter = 0;\n\t\tthis.locale = element.dataset.locale ? element.dataset.locale.replace( '_', '-' ) : 'en-US';\n\t\tthis.timeoutInterval = 50;\n\t\tthis.timeToFinish = 'undefined' !== typeof options && 'undefined' !== typeof options.timetoFinish ? options.timetoFinish : 1400;\n\t\tthis.valueStep = this.value / Math.ceil( this.timeToFinish / this.timeoutInterval );\n\n\t\tif ( 0 === this.value ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.animate();\n\t}\n\n\tformatNumber( number ) {\n\t\tif ( 'currency' === this.template ) {\n\t\t\treturn number.toLocaleString( this.locale, { minimumFractionDigits: 2 } );\n\t\t}\n\t\treturn number;\n\t}\n\n\tanimate() {\n\t\tif ( Math.round( this.activeCounter ) < this.value ) {\n\t\t\tthis.activeCounter += this.valueStep;\n\t\t\tthis.element.innerText = this.formatNumber( Math.round( this.activeCounter ) );\n\t\t\tsetTimeout( this.animate.bind( this ), this.timeoutInterval );\n\t\t} else {\n\t\t\tthis.element.innerText = this.formatNumber( this.value );\n\t\t}\n\t}\n}\n","export class frmTabsNavigator {\n\tconstructor( wrapper ) {\n\t\tif ( 'undefined' === typeof wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrapper = wrapper instanceof Element ? wrapper : document.querySelector( wrapper );\n\n\t\tif ( null === this.wrapper ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.flexboxSlidesGap = '16px';\n\t\tthis.navs = this.wrapper.querySelectorAll( '.frm-tabs-navs ul > li' );\n\t\tthis.slideTrackLine = this.wrapper.querySelector( '.frm-tabs-active-underline' );\n\t\tthis.slideTrack = this.wrapper.querySelector( '.frm-tabs-slide-track' );\n\t\tthis.slides = this.wrapper.querySelectorAll( '.frm-tabs-slide-track > div' );\n\t\tthis.isRTL = document.documentElement.dir === 'rtl' || document.body.dir === 'rtl';\n\n\t\tthis.init();\n\t}\n\n\tinit() {\n\t\tif ( null === this.wrapper || ! this.navs.length || null === this.slideTrackLine || null === this.slideTrack || ! this.slides.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.initDefaultSlideTrackerWidth();\n\t\tthis.navs.forEach( ( nav, index ) => {\n\t\t\tnav.addEventListener( 'click', event => this.onNavClick( event, index ) );\n\t\t} );\n\t}\n\n\tonNavClick( event, index ) {\n\t\tconst navItem = event.currentTarget;\n\n\t\tevent.preventDefault();\n\n\t\tthis.removeActiveClassnameFromNavs();\n\t\tnavItem.classList.add( 'frm-active' );\n\t\tthis.initSlideTrackUnderline( navItem, index );\n\t\tthis.changeSlide( index );\n\n\t\t// Handle special case for frm_insert_fields_tab\n\t\tconst navLink = navItem.querySelector( 'a' );\n\t\tif ( navLink && navLink.id === 'frm_insert_fields_tab' && ! navLink.closest( '#frm_adv_info' ) ) {\n\t\t\twindow.frmAdminBuild?.clearSettingsBox?.();\n\t\t}\n\t}\n\n\tinitDefaultSlideTrackerWidth() {\n\t\tif ( ! this.slideTrackLine.dataset.initialWidth ) {\n\t\t\treturn;\n\t\t}\n\t\tthis.slideTrackLine.style.width = `${ this.slideTrackLine.dataset.initialWidth }px`;\n\t}\n\tinitSlideTrackUnderline( nav, index ) {\n\t\tthis.slideTrackLine.classList.remove( 'frm-first', 'frm-last' );\n\t\tconst activeNav = 'undefined' !== typeof nav ? nav : this.navs.filter( nav => nav.classList.contains( 'frm-active' ) );\n\t\tconst position = this.isRTL\n\t\t\t? -( activeNav.parentElement.offsetWidth - activeNav.offsetLeft - activeNav.offsetWidth )\n\t\t\t: activeNav.offsetLeft;\n\n\t\tthis.slideTrackLine.style.transform = `translateX(${ position }px)`;\n\t\tthis.slideTrackLine.style.width = activeNav.clientWidth + 'px';\n\t}\n\n\tchangeSlide( index ) {\n\t\tthis.removeActiveClassnameFromSlides();\n\t\tconst translate = index == 0 ? '0px' : `calc( ( ${ ( index * 100 ) }% + ${ parseInt( this.flexboxSlidesGap, 10 ) * index }px ) * ${ this.isRTL ? 1 : -1 } )`;\n\t\tif ( '0px' !== translate ) {\n\t\t\tthis.slideTrack.style.transform = `translateX(${ translate })`;\n\t\t} else {\n\t\t\tthis.slideTrack.style.removeProperty( 'transform' );\n\t\t}\n\t\tif ( index in this.slides ) {\n\t\t\tthis.slides[ index ].classList.add( 'frm-active' );\n\t\t}\n\t}\n\n\tremoveActiveClassnameFromSlides() {\n\t\tthis.slides.forEach( slide => slide.classList.remove( 'frm-active' ) );\n\t}\n\n\tremoveActiveClassnameFromNavs() {\n\t\tthis.navs.forEach( nav => nav.classList.remove( 'frm-active' ) );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {number} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * External dependencies\n */\nimport { frmAnimate } from 'core/utils';\n\nimport { frmTabsNavigator } from './components/class-tabs-navigator';\nimport { frmCounter } from './components/class-counter';\nclass frmDashboard {\n\tconstructor() {\n\t\tthis.options = {\n\t\t\tajax: {\n\t\t\t\taction: 'dashboard_ajax_action',\n\t\t\t\tdashboardActions: {\n\t\t\t\t\twelcomeBanner: 'welcome-banner-has-closed',\n\t\t\t\t\tcheckEmailIfSubscribed: 'email-has-subscribed',\n\t\t\t\t\tsaveSubscribedEmail: 'save-subscribed-email'\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tthis.widgetsAnimate = new frmAnimate( document.querySelectorAll( '.frm-dashboard-widget' ), 'cascade' );\n\t}\n\n\tinit() {\n\t\tthis.initInbox();\n\t\tthis.initCounters();\n\t\tthis.initCloseWelcomeBanner();\n\n\t\tthis.widgetsAnimate.cascadeFadeIn();\n\t}\n\n\tinitInbox() {\n\t\tnew frmTabsNavigator( '.frm-inbox-wrapper' );\n\t\tconst userEmailInput = document.querySelector( '#frm_leave_email' );\n\t\tconst subscribeButton = document.querySelector( '#frm-add-my-email-address' );\n\n\t\tsubscribeButton.addEventListener( 'click', () => {\n\t\t\tthis.saveSubscribedEmail( userEmailInput.value ).then();\n\t\t} );\n\t}\n\n\tinitCounters() {\n\t\tconst counters = document.querySelectorAll( '.frm-counter' );\n\t\tcounters.forEach( counter => new frmCounter( counter ) );\n\t}\n\n\tinitCloseWelcomeBanner() {\n\t\tconst closeButton = document.querySelector( '.frm-dashboard-banner-close' );\n\t\tconst dashboardBanner = document.querySelector( '.frm-dashboard-banner' );\n\n\t\tif ( ! closeButton || ! dashboardBanner ) {\n\t\t\treturn;\n\t\t}\n\n\t\tcloseButton.addEventListener( 'click', () => {\n\t\t\tthis.closeWelcomeBannerSaveCookieRequest().then( data => {\n\t\t\t\tif ( true === data.success ) {\n\t\t\t\t\tdashboardBanner.remove();\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\t}\n\n\tsaveSubscribedEmail( email ) {\n\t\treturn fetch( window.ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams( {\n\t\t\t\taction: this.options.ajax.action,\n\t\t\t\tdashboard_action: this.options.ajax.dashboardActions.saveSubscribedEmail,\n\t\t\t\temail: email\n\t\t\t} )\n\t\t} ).then( result => result.json() );\n\t}\n\n\tcloseWelcomeBannerSaveCookieRequest() {\n\t\treturn fetch( window.ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded'\n\t\t\t},\n\t\t\tbody: new URLSearchParams( {\n\t\t\t\taction: this.options.ajax.action,\n\t\t\t\tdashboard_action: this.options.ajax.dashboardActions.welcomeBanner,\n\t\t\t\tbanner_has_closed: 1\n\t\t\t} )\n\t\t} ).then( result => result.json() );\n\t}\n}\nconst frmDashboardClass = new frmDashboard();\ndocument.addEventListener( 'DOMContentLoaded', () => {\n\tfrmDashboardClass.init();\n} );\n"],"names":["frmCounter","element","options","_classCallCheck","Element","dataset","counter","template","type","value","parseInt","activeCounter","locale","replace","timeoutInterval","timeToFinish","timetoFinish","valueStep","Math","ceil","animate","_createClass","key","formatNumber","number","toLocaleString","minimumFractionDigits","round","innerText","setTimeout","bind","frmTabsNavigator","wrapper","document","querySelector","flexboxSlidesGap","navs","querySelectorAll","slideTrackLine","slideTrack","slides","isRTL","documentElement","dir","body","init","_this","length","initDefaultSlideTrackerWidth","forEach","nav","index","addEventListener","event","onNavClick","navItem","currentTarget","preventDefault","removeActiveClassnameFromNavs","classList","add","initSlideTrackUnderline","changeSlide","navLink","id","closest","_window$frmAdminBuild","_window$frmAdminBuild2","window","frmAdminBuild","clearSettingsBox","call","initialWidth","style","width","concat","remove","activeNav","filter","contains","position","parentElement","offsetWidth","offsetLeft","transform","clientWidth","removeActiveClassnameFromSlides","translate","removeProperty","slide","_window$frmGlobal","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","frmAnimate","elements","arguments","undefined","prepareElements","fadeIn","applyStyleToElements","resetOpacity","once","cascadeFadeIn","_this2","delay","transitionDelay","_this3","opacity","callback","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","textContent","setAttribute","_window$frmDom$util","frmDom","util","onClickPreventDefault","documentOn","URL","location","href","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","frmDashboard","ajax","action","dashboardActions","welcomeBanner","checkEmailIfSubscribed","saveSubscribedEmail","widgetsAnimate","initInbox","initCounters","initCloseWelcomeBanner","userEmailInput","subscribeButton","counters","closeButton","dashboardBanner","closeWelcomeBannerSaveCookieRequest","data","success","fetch","ajaxurl","method","headers","URLSearchParams","dashboard_action","result","json","banner_has_closed","frmDashboardClass"],"sourceRoot":""} \ No newline at end of file diff --git a/js/formidable_overlay.js.map b/js/formidable_overlay.js.map index b9dca8586b..5b96e8f914 100644 --- a/js/formidable_overlay.js.map +++ b/js/formidable_overlay.js.map @@ -1 +1 @@ -{"version":3,"file":"formidable_overlay.js","mappings":"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","sources":["webpack://formidable/./js/src/components/class-overlay.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/overlay.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { frmAnimate } from 'core/utils';\n\nexport class frmOverlay {\n\tconstructor() {\n\t\tthis.body = document.body;\n\t}\n\n\t/**\n\t * Open overlay\n\t *\n\t * @param {Object} overlayData An object containing data for the overlay.\n\t * @param {string} overlayData.hero_image URL of the hero image.\n\t * @param {string} overlayData.heading Heading of the overlay.\n\t * @param {string} overlayData.copy Copy/content of the overlay.\n\t * @param {Array} overlayData.buttons Array of button objects.\n\t * @param {string} overlayData.buttons[].url URL for the button.\n\t * @param {string} overlayData.buttons[].target Target attribute for the button link.\n\t * @param {string} overlayData.buttons[].label Label/text of the button.\n\t */\n\topen( overlayData ) {\n\t\tthis.overlayData = {\n\t\t\thero_image: null,\n\t\t\theading: null,\n\t\t\tcopy: null,\n\t\t\tbuttons: []\n\t\t};\n\n\t\tthis.overlayData = { ...this.overlayData, ...overlayData };\n\t\tthis.bodyAddOverflowHidden();\n\t\tthis.body.insertBefore( this.buildOverlay(), this.body.firstChild );\n\t\tthis.initCloseButton();\n\t\tthis.initOverlayIntroAnimation( 200 );\n\t}\n\n\tbodyAddOverflowHidden() {\n\t\tthis.body.classList.add( 'frm-hidden-overflow' );\n\t\tsetTimeout( () => {\n\t\t\tdocument.body.scrollTop = 0;\n\t\t\tdocument.documentElement.scrollTop = 0;\n\t\t}, 80 );\n\t}\n\n\tclose() {\n\t\tconst overlayWrapper = document.querySelector( '.frm-overlay--wrapper' );\n\t\tif ( overlayWrapper ) {\n\t\t\tdocument.body.classList.remove( 'frm-hidden-overflow' );\n\t\t\toverlayWrapper.remove();\n\t\t}\n\t}\n\n\tinitCloseButton() {\n\t\tconst overlayWrapper = document.querySelector( '.frm-overlay--wrapper' );\n\n\t\tif ( overlayWrapper ) {\n\t\t\tconst closeButton = document.createElement( 'span' );\n\t\t\tcloseButton.classList.add( 'frm-overlay--close' );\n\t\t\tcloseButton.addEventListener( 'click', this.close );\n\t\t\toverlayWrapper.prepend( closeButton );\n\t\t}\n\t}\n\n\tgetHeroImage() {\n\t\tif ( this.overlayData.hero_image ) {\n\t\t\treturn frmDom.img( { src: this.overlayData.hero_image } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetButtons() {\n\t\tconst buttons = this.overlayData.buttons.map( ( button, index ) => {\n\t\t\tif ( ! button.url || '' === button.url ) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\tconst buttonTypeClassname = 1 === index ? 'frm-button-primary' : 'frm-button-secondary';\n\t\t\tconst options = {\n\t\t\t\thref: button.url,\n\t\t\t\ttext: button.label,\n\t\t\t\tclassName: 'button frm_animate_bg ' + buttonTypeClassname\n\t\t\t};\n\t\t\tif ( button.target ) {\n\t\t\t\toptions.target = button.target;\n\t\t\t}\n\t\t\treturn frmDom.a( options );\n\t\t} );\n\n\t\tif ( buttons ) {\n\t\t\tconst buttonsWrapperElementOptions = { className: 'frm-overlay--cta frm-flex-box', children: buttons };\n\t\t\treturn frmDom.div( buttonsWrapperElementOptions );\n\t\t}\n\n\t\treturn '';\n\t}\n\n\tgetHeading() {\n\t\tif ( this.overlayData.heading )\t{\n\t\t\treturn frmDom.tag( 'h2', { className: 'frm-overlay--heading frm-text-xl', text: this.overlayData.heading } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetCopy() {\n\t\tif ( this.overlayData.copy ) {\n\t\t\tconst copy = frmDom.tag( 'div' );\n\t\t\tcopy.innerHTML = this.overlayData.copy;\n\t\t\treturn frmDom.div( { className: 'frm-overlay--copy', child: copy } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tinitOverlayIntroAnimation( delay ) {\n\t\tsetTimeout( () => {\n\t\t\tconst elements = document.querySelectorAll( '.frm-overlay--hero-image, .frm-overlay--heading, .frm-overlay--copy, .frm-overlay--cta a' );\n\t\t\tnew frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn( 0.07 );\n\t\t}, delay );\n\t}\n\n\tbuildOverlay() {\n\t\tconst container = frmDom.div( {\n\t\t\tclassName: 'frm-overlay--container',\n\t\t\tchildren: [\n\t\t\t\tfrmDom.div( { className: 'frm-overlay--hero-image frm-mb-md', children: [ this.getHeroImage() ] } ),\n\t\t\t\tthis.getHeading(),\n\t\t\t\tthis.getCopy(),\n\t\t\t\tthis.getButtons()\n\t\t\t]\n\t\t} );\n\n\t\treturn frmDom.div( { className: 'frm-overlay--wrapper frm_wrap', children: [ container ] } );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { frmOverlay } from './components/class-overlay';\n\nwindow.frmOverlay = new frmOverlay();\n"],"names":["frmAnimate","frmOverlay","_classCallCheck","body","document","_createClass","key","value","open","overlayData","hero_image","heading","copy","buttons","_objectSpread","bodyAddOverflowHidden","insertBefore","buildOverlay","firstChild","initCloseButton","initOverlayIntroAnimation","classList","add","setTimeout","scrollTop","documentElement","close","overlayWrapper","querySelector","remove","closeButton","createElement","addEventListener","prepend","getHeroImage","frmDom","img","src","getButtons","map","button","index","url","buttonTypeClassname","options","href","text","label","className","target","a","buttonsWrapperElementOptions","children","div","getHeading","tag","getCopy","innerHTML","child","delay","elements","querySelectorAll","cascadeFadeIn","container","_window$frmGlobal","window","frmGlobal","PLUGIN_URL","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","type","arguments","length","undefined","prepareElements","fadeIn","_this","applyStyleToElements","element","resetOpacity","once","_this2","style","transitionDelay","_this3","opacity","callback","Element","forEach","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","concat","textContent","setAttribute","_window$frmDom$util","util","onClickPreventDefault","documentOn","URL","location","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"formidable_overlay.js","mappings":"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","sources":["webpack://formidable/./js/src/components/class-overlay.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/overlay.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { frmAnimate } from 'core/utils';\n\nexport class frmOverlay {\n\tconstructor() {\n\t\tthis.body = document.body;\n\t}\n\n\t/**\n\t * Open overlay\n\t *\n\t * @param {Object} overlayData An object containing data for the overlay.\n\t * @param {string} overlayData.hero_image URL of the hero image.\n\t * @param {string} overlayData.heading Heading of the overlay.\n\t * @param {string} overlayData.copy Copy/content of the overlay.\n\t * @param {Array} overlayData.buttons Array of button objects.\n\t * @param {string} overlayData.buttons[].url URL for the button.\n\t * @param {string} overlayData.buttons[].target Target attribute for the button link.\n\t * @param {string} overlayData.buttons[].label Label/text of the button.\n\t */\n\topen( overlayData ) {\n\t\tthis.overlayData = {\n\t\t\thero_image: null,\n\t\t\theading: null,\n\t\t\tcopy: null,\n\t\t\tbuttons: []\n\t\t};\n\n\t\tthis.overlayData = { ...this.overlayData, ...overlayData };\n\t\tthis.bodyAddOverflowHidden();\n\t\tthis.body.insertBefore( this.buildOverlay(), this.body.firstChild );\n\t\tthis.initCloseButton();\n\t\tthis.initOverlayIntroAnimation( 200 );\n\t}\n\n\tbodyAddOverflowHidden() {\n\t\tthis.body.classList.add( 'frm-hidden-overflow' );\n\t\tsetTimeout( () => {\n\t\t\tdocument.body.scrollTop = 0;\n\t\t\tdocument.documentElement.scrollTop = 0;\n\t\t}, 80 );\n\t}\n\n\tclose() {\n\t\tconst overlayWrapper = document.querySelector( '.frm-overlay--wrapper' );\n\t\tif ( overlayWrapper ) {\n\t\t\tdocument.body.classList.remove( 'frm-hidden-overflow' );\n\t\t\toverlayWrapper.remove();\n\t\t}\n\t}\n\n\tinitCloseButton() {\n\t\tconst overlayWrapper = document.querySelector( '.frm-overlay--wrapper' );\n\n\t\tif ( overlayWrapper ) {\n\t\t\tconst closeButton = document.createElement( 'span' );\n\t\t\tcloseButton.classList.add( 'frm-overlay--close' );\n\t\t\tcloseButton.addEventListener( 'click', this.close );\n\t\t\toverlayWrapper.prepend( closeButton );\n\t\t}\n\t}\n\n\tgetHeroImage() {\n\t\tif ( this.overlayData.hero_image ) {\n\t\t\treturn frmDom.img( { src: this.overlayData.hero_image } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetButtons() {\n\t\tconst buttons = this.overlayData.buttons.map( ( button, index ) => {\n\t\t\tif ( ! button.url || '' === button.url ) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\tconst buttonTypeClassname = 1 === index ? 'frm-button-primary' : 'frm-button-secondary';\n\t\t\tconst options = {\n\t\t\t\thref: button.url,\n\t\t\t\ttext: button.label,\n\t\t\t\tclassName: 'button frm_animate_bg ' + buttonTypeClassname\n\t\t\t};\n\t\t\tif ( button.target ) {\n\t\t\t\toptions.target = button.target;\n\t\t\t}\n\t\t\treturn frmDom.a( options );\n\t\t} );\n\n\t\tif ( buttons ) {\n\t\t\tconst buttonsWrapperElementOptions = { className: 'frm-overlay--cta frm-flex-box', children: buttons };\n\t\t\treturn frmDom.div( buttonsWrapperElementOptions );\n\t\t}\n\n\t\treturn '';\n\t}\n\n\tgetHeading() {\n\t\tif ( this.overlayData.heading )\t{\n\t\t\treturn frmDom.tag( 'h2', { className: 'frm-overlay--heading frm-text-xl', text: this.overlayData.heading } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetCopy() {\n\t\tif ( this.overlayData.copy ) {\n\t\t\tconst copy = frmDom.tag( 'div' );\n\t\t\tcopy.innerHTML = this.overlayData.copy;\n\t\t\treturn frmDom.div( { className: 'frm-overlay--copy', child: copy } );\n\t\t}\n\t\treturn '';\n\t}\n\n\tinitOverlayIntroAnimation( delay ) {\n\t\tsetTimeout( () => {\n\t\t\tconst elements = document.querySelectorAll( '.frm-overlay--hero-image, .frm-overlay--heading, .frm-overlay--copy, .frm-overlay--cta a' );\n\t\t\tnew frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn( 0.07 );\n\t\t}, delay );\n\t}\n\n\tbuildOverlay() {\n\t\tconst container = frmDom.div( {\n\t\t\tclassName: 'frm-overlay--container',\n\t\t\tchildren: [\n\t\t\t\tfrmDom.div( { className: 'frm-overlay--hero-image frm-mb-md', children: [ this.getHeroImage() ] } ),\n\t\t\t\tthis.getHeading(),\n\t\t\t\tthis.getCopy(),\n\t\t\t\tthis.getButtons()\n\t\t\t]\n\t\t} );\n\n\t\treturn frmDom.div( { className: 'frm-overlay--wrapper frm_wrap', children: [ container ] } );\n\t}\n}\n","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {number} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { frmOverlay } from './components/class-overlay';\n\nwindow.frmOverlay = new frmOverlay();\n"],"names":["frmAnimate","frmOverlay","_classCallCheck","body","document","_createClass","key","value","open","overlayData","hero_image","heading","copy","buttons","_objectSpread","bodyAddOverflowHidden","insertBefore","buildOverlay","firstChild","initCloseButton","initOverlayIntroAnimation","classList","add","setTimeout","scrollTop","documentElement","close","overlayWrapper","querySelector","remove","closeButton","createElement","addEventListener","prepend","getHeroImage","frmDom","img","src","getButtons","map","button","index","url","buttonTypeClassname","options","href","text","label","className","target","a","buttonsWrapperElementOptions","children","div","getHeading","tag","getCopy","innerHTML","child","delay","elements","querySelectorAll","cascadeFadeIn","container","_window$frmGlobal","window","frmGlobal","PLUGIN_URL","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","type","arguments","length","undefined","prepareElements","fadeIn","_this","applyStyleToElements","element","resetOpacity","once","_this2","style","transitionDelay","_this3","opacity","callback","Element","forEach","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","errorElement","console","warn","span","concat","textContent","setAttribute","_window$frmDom$util","util","onClickPreventDefault","documentOn","URL","location","urlParams","searchParams","getQueryParam","paramName","get","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","set","includes","state","_defineProperty","history","hasQueryParam","has","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue"],"sourceRoot":""} \ No newline at end of file diff --git a/js/onboarding-wizard.js.map b/js/onboarding-wizard.js.map index d17d1ee5d8..375d45649e 100644 --- a/js/onboarding-wizard.js.map +++ b/js/onboarding-wizard.js.map @@ -1 +1 @@ -{"version":3,"file":"onboarding-wizard.js","mappings":"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","sources":["webpack://formidable/./node_modules/@wordpress/dom-ready/build-module/index.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/events/index.js","webpack://formidable/./js/src/core/events/optionBoxListener.js","webpack://formidable/./js/src/core/factory/createPageElements.js","webpack://formidable/./js/src/core/factory/createPageState.js","webpack://formidable/./js/src/core/factory/index.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/./js/src/onboarding-wizard/dataUtils/index.js","webpack://formidable/./js/src/onboarding-wizard/dataUtils/setupUsageData.js","webpack://formidable/./js/src/onboarding-wizard/elements/elements.js","webpack://formidable/./js/src/onboarding-wizard/elements/index.js","webpack://formidable/./js/src/onboarding-wizard/events/backButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/consentTrackingButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/index.js","webpack://formidable/./js/src/onboarding-wizard/events/installAddonsButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/skipStepButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/initializeOnboardingWizard.js","webpack://formidable/./js/src/onboarding-wizard/shared/constants.js","webpack://formidable/./js/src/onboarding-wizard/shared/index.js","webpack://formidable/./js/src/onboarding-wizard/shared/pageState.js","webpack://formidable/./js/src/onboarding-wizard/ui/index.js","webpack://formidable/./js/src/onboarding-wizard/ui/rootline.js","webpack://formidable/./js/src/onboarding-wizard/ui/setupInitialView.js","webpack://formidable/./js/src/onboarding-wizard/utils/index.js","webpack://formidable/./js/src/onboarding-wizard/utils/navigateToStep.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/onboarding-wizard/index.js"],"sourcesContent":["/**\n * @typedef {() => void} Callback\n *\n * TODO: Remove this typedef and inline `() => void` type.\n *\n * This typedef is used so that a descriptive type is provided in our\n * automatically generated documentation.\n *\n * An in-line type `() => void` would be preferable, but the generated\n * documentation is `null` in that case.\n *\n * @see https://github.com/WordPress/gutenberg/issues/18045\n */\n\n/**\n * Specify a function to execute when the DOM is fully loaded.\n *\n * @param {Callback} callback A function to execute after the DOM is ready.\n *\n * @example\n * ```js\n * import domReady from '@wordpress/dom-ready';\n *\n * domReady( function() {\n * \t//do something after DOM loads.\n * } );\n * ```\n *\n * @return {void}\n */\nexport default function domReady(callback) {\n if (typeof document === 'undefined') {\n return;\n }\n\n if (document.readyState === 'complete' || // DOMContentLoaded + Images/Styles/etc loaded, so we call directly.\n document.readyState === 'interactive' // DOMContentLoaded fires at this point, so we call directly.\n ) {\n return void callback();\n } // DOMContentLoaded has not fired yet, delay callback until then.\n\n\n document.addEventListener('DOMContentLoaded', callback);\n}\n//# sourceMappingURL=index.js.map","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export * from './optionBoxListener';\n","/**\n * Internal dependencies\n */\nimport { CHECKED_CLASS } from 'core/constants';\n\nconst OPTION_BOX_CLASS = '.frm-option-box';\n\n/**\n * Manages event handling for an option-box.\n *\n * @return {void}\n */\nexport function addOptionBoxEvents() {\n\tconst optionBoxes = document.querySelectorAll( OPTION_BOX_CLASS );\n\n\toptionBoxes.forEach( optionBox => {\n\t\toptionBox.addEventListener( 'click', onOptionBoxClick );\n\t} );\n}\n\n/**\n * Handles the click event on a option box item.\n *\n * @private\n * @param {Event} event The click event object.\n */\nfunction onOptionBoxClick( event ) {\n\tif ( event.target.tagName.toLowerCase() !== 'input' ) {\n\t\treturn;\n\t}\n\n\tconst optionBox = event.currentTarget.closest( OPTION_BOX_CLASS );\n\toptionBox.classList.toggle( CHECKED_CLASS );\n}\n","/**\n * Creates a page elements manager.\n *\n * @param {Object} [initialElements={}] An object containing initial DOM elements.\n * @throws {Error} Throws an error if the `initialElements` is not an object.\n * @return {Object} An object with methods to get and add elements.\n */\nexport function createPageElements( initialElements = {} ) {\n\tif ( typeof initialElements !== 'object' || initialElements === null ) {\n\t\tthrow new Error(\n\t\t\t'createPageElements: initialElements must be a non-null object'\n\t\t);\n\t}\n\n\tlet elements = initialElements;\n\n\t/**\n\t * Retrieve the initialized essential DOM elements.\n\t *\n\t * @return {Object} The initialized elements object.\n\t */\n\tfunction getElements() {\n\t\treturn elements;\n\t}\n\n\t/**\n\t * Add new elements to the elements object.\n\t *\n\t * @param {Object} newElements An object containing new elements to be added.\n\t * @throws {Error} Throws an error if the `newElements` is not a non-null object.\n\t * @return {void} Updates the elements object by merging the new elements into it.\n\t */\n\tfunction addElements( newElements ) {\n\t\tif ( typeof newElements !== 'object' || newElements === null ) {\n\t\t\tthrow new Error(\n\t\t\t\t'addElements: newElements must be a non-null object'\n\t\t\t);\n\t\t}\n\n\t\telements = { ...elements, ...newElements };\n\t}\n\n\treturn { getElements, addElements };\n}\n","/**\n * Creates a page state manager.\n *\n * @param {Object} [initialState={}] An object containing the initial state.\n * @throws {Error} Throws an error if the `initialState` is not a plain object.\n * @return {Object} An object with methods to initialize, get, and set the page state.\n */\nexport function createPageState( initialState = {} ) {\n\tif ( typeof initialState !== 'object' || initialState === null ) {\n\t\tthrow new Error(\n\t\t\t'createPageState: initialState must be a non-null object'\n\t\t);\n\t}\n\n\tlet state = initialState;\n\n\t/**\n\t * Returns the current page state.\n\t *\n\t * @return {Object|null} The current state of the page or null if not initialized.\n\t */\n\tconst getState = () => state;\n\n\t/**\n\t * Returns a specific property from the current page state.\n\t *\n\t * @param {string} propertyName The name of the property to retrieve.\n\t * @return {*} The value of the specified property, or null if it doesn't exist.\n\t */\n\tconst getSingleState = propertyName => {\n\t\tconst value = Reflect.get( state, propertyName );\n\n\t\t// We convert `undefined` to `null` for a consistent API.\n\t\t// This makes it easier for users to handle the results since all missing properties return `null`.\n\t\treturn value === undefined ? null : value;\n\t};\n\n\t/**\n\t * Updates the page state with new values.\n\t *\n\t * @param {Object} newState The new values to update the state with.\n\t * @throws {Error} Throws an error if `newState` is not a plain object.\n\t * @return {void}\n\t */\n\tconst setState = newState => {\n\t\tif ( typeof newState !== 'object' || newState === null ) {\n\t\t\tthrow new Error( 'setState: newState must be a non-null object' );\n\t\t}\n\n\t\tstate = { ...state, ...newState };\n\t};\n\n\t/**\n\t * Updates a specific property in the page state with a new value.\n\t *\n\t * @param {string} propertyName The name of the property to update.\n\t * @param {*} value The new value to set for the property.\n\t * @return {void}\n\t */\n\tconst setSingleState = ( propertyName, value ) => {\n\t\tif ( Reflect.has( state, propertyName ) ) {\n\t\t\tReflect.set( state, propertyName, value );\n\t\t}\n\t};\n\n\treturn { getState, getSingleState, setState, setSingleState };\n}\n","export * from './createPageElements';\nexport * from './createPageState';\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {float} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","export { default as setupUsageData } from './setupUsageData';\n","/**\n * Internal Dependencies\n */\nimport { getState, STEPS } from '../shared';\n\n/**\n * Processes and submits usage data for the specified onboarding step.\n *\n * @param {string} processedStep The name of the step that has just been processed.\n * @param {string} nextStepName The name of the next step in the onboarding process.\n * @return {void}\n */\nfunction setupUsageData( processedStep, nextStepName ) {\n\tconst formData = processDataForStep( processedStep, nextStepName );\n\tif ( ! formData ) {\n\t\treturn;\n\t}\n\n\t// Send the POST request\n\tconst { doJsonPost } = frmDom.ajax;\n\tdoJsonPost( 'onboarding_setup_usage_data', formData );\n}\n\n/**\n * Processes onboarding step data and returns the corresponding FormData.\n *\n * @private\n * @param {string} processedStep The name of the step that has just been processed.\n * @param {string} nextStepName The name of the next step in the onboarding process.\n * @return {FormData|null} The FormData to be submitted for the step, or null if there's no data.\n */\nfunction processDataForStep( processedStep, nextStepName ) {\n\tlet formData;\n\n\t// Append completed steps if moving to the success step\n\tif ( STEPS.SUCCESS === nextStepName || STEPS.UNSUCCESSFUL === nextStepName ) {\n\t\tconst { processedSteps } = getState();\n\n\t\tif ( processedSteps.length > 1 ) {\n\t\t\tif ( ! processedSteps.includes( nextStepName ) ) {\n\t\t\t\tprocessedSteps.push( nextStepName );\n\t\t\t}\n\n\t\t\tformData = new FormData();\n\t\t\tformData.append( 'processed_steps', processedSteps.join( ',' ) );\n\t\t\tformData.append( 'completed_steps', true );\n\t\t}\n\t}\n\n\t// Append installed addons for the addon installation step\n\tif ( STEPS.INSTALL_ADDONS === processedStep ) {\n\t\tconst { installedAddons } = getState();\n\n\t\tif ( installedAddons.length > 0 ) {\n\t\t\tformData = formData ?? new FormData();\n\t\t\tformData.append( 'installed_addons', installedAddons.join( ',' ) );\n\t\t}\n\t}\n\n\treturn formData;\n}\n\nexport default setupUsageData;\n","/**\n * External dependencies\n */\nimport { createPageElements } from 'core/factory';\n\n/**\n * Internal dependencies\n */\nimport { PREFIX } from '../shared';\n\nexport const { getElements, addElements } = createPageElements( {\n\tonboardingWizardPage: document.getElementById( `${ PREFIX }-wizard-page` ),\n\tcontainer: document.getElementById( `${ PREFIX }-container` ),\n\n\trootline: document.getElementById( `${ PREFIX }-rootline` ),\n\tsteps: document.querySelectorAll( `.${ PREFIX }-step` ),\n\tskipStepButtons: document.querySelectorAll( `.${ PREFIX }-skip-step` ),\n\tbackButtons: document.querySelectorAll( `.${ PREFIX }-back-button` ),\n\n\tconsentTrackingButton: document.getElementById( `${ PREFIX }-consent-tracking` ),\n\tinstallAddonsButton: document.getElementById( `${ PREFIX }-install-addons-button` ),\n\n\thiddenLicenseKeyInput: document.getElementById( 'frm-license-key' ),\n} );\n","export * from './elements';\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToPrevStep } from '../utils';\n\n/**\n * Manages event handling for the \"Back\" button.\n *\n * @return {void}\n */\nfunction addBackButtonEvents() {\n\tconst { backButtons } = getElements();\n\n\t// Attach click event listeners to each back buttons\n\tbackButtons.forEach( backButton => {\n\t\tonClickPreventDefault( backButton, onBackButtonClick );\n\t} );\n}\n\n/**\n * Handles the click event on a \"Back\" button.\n *\n * @private\n * @return {void}\n */\nconst onBackButtonClick = () => {\n\tnavigateToPrevStep();\n};\n\nexport default addBackButtonEvents;\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Allow & Continue\" button in the \"Never miss an important update\" step.\n *\n * @return {void}\n */\nfunction addConsentTrackingButtonEvents() {\n\tconst { consentTrackingButton } = getElements();\n\n\t// Attach click event listener\n\tonClickPreventDefault( consentTrackingButton, onConsentTrackingButtonClick );\n}\n\n/**\n * Handles the click event on the \"Allow & Continue\" button in the \"Never miss an important update\" step.\n *\n * @private\n * @return {void}\n */\nconst onConsentTrackingButtonClick = async () => {\n\tconst { doJsonPost } = frmDom.ajax;\n\tdoJsonPost( 'onboarding_consent_tracking', new FormData() ).then( navigateToNextStep );\n};\n\nexport default addConsentTrackingButtonEvents;\n","/**\n * External dependencies\n */\nimport { addOptionBoxEvents } from 'core/events';\nimport { getQueryParam } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport addSkipStepButtonEvents from './skipStepButtonListener';\nimport addBackButtonEvents from './backButtonListener';\nimport addConsentTrackingButtonEvents from './consentTrackingButtonListener';\nimport addInstallAddonsButtonEvents from './installAddonsButtonListener';\nimport { navigateToStep } from '../utils';\n\n/**\n * Attaches event listeners for handling user interactions.\n *\n * @return {void}\n */\nexport function addEventListeners() {\n\t// Add event handling for the \"Skip\" and \"Back\" buttons\n\taddSkipStepButtonEvents();\n\taddBackButtonEvents();\n\n\taddConsentTrackingButtonEvents();\n\n\t// Add event handling for the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step\n\taddInstallAddonsButtonEvents();\n\t// Add event handling for an option-box\n\taddOptionBoxEvents();\n}\n\n/**\n * Responds to browser navigation events (back/forward) by updating the UI to match the step indicated in the URL or history state.\n *\n * @param {PopStateEvent} event The event object associated with the navigation action.\n * @return {void}\n */\nwindow.addEventListener( 'popstate', event => {\n\tconst stepName = event.state?.step || getQueryParam( 'step' );\n\t// Navigate to the specified step without adding to browser history\n\tnavigateToStep( stepName, 'replaceState' );\n} );\n","/**\n * External dependencies\n */\nimport { nonce } from 'core/constants';\nimport { onClickPreventDefault, addToRequestQueue } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { getState, setSingleState } from '../shared';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step.\n *\n * @return {void}\n */\nfunction addInstallAddonsButtonEvents() {\n\tconst { installAddonsButton } = getElements();\n\n\t// Attach click event listener\n\tonClickPreventDefault( installAddonsButton, onInstallAddonsButtonClick );\n}\n\n/**\n * Handles the click event on the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step.\n *\n * @private\n * @param {Event} event The click event object.\n * @return {void}\n */\nconst onInstallAddonsButtonClick = async event => {\n\tconst addons = document.querySelectorAll( '.frm-option-box.frm-checked:not(.frm-disabled)' );\n\tconst { installedAddons } = getState();\n\tconst installAddonsButton = event.currentTarget;\n\n\tinstallAddonsButton.classList.add( 'frm_loading_button' );\n\n\tfor ( const addon of addons ) {\n\t\ttry {\n\t\t\tawait addToRequestQueue( () => installAddon( addon.getAttribute( 'rel' ), addon.dataset ) );\n\n\t\t\t// Capture addon title\n\t\t\tconst addonTitle = addon.dataset.title;\n\t\t\tif ( ! installedAddons.includes( addonTitle ) ) {\n\t\t\t\tinstalledAddons.push( addonTitle );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'An error occurred:', error );\n\t\t}\n\t}\n\n\tinstallAddonsButton.classList.remove( 'frm_loading_button' );\n\n\tsetSingleState( 'installedAddons', installedAddons );\n\tnavigateToNextStep();\n};\n\n/**\n * Installs an add-on or plugin based on the provided plugin name and vendor status.\n *\n * @private\n * @param {string} plugin The unique identifier or name of the plugin or add-on to be installed.\n * @param {Object} options An object containing additional options for the installation.\n * @param {boolean} options.isInstalled Indicates whether the plugin is already installed.\n * @param {boolean} options.isVendor Indicates whether the plugin is a vendor plugin (true) or a regular add-on (false).\n * @return {Promise} A promise that resolves with the JSON response from the server after the installation request is completed.\n */\nasync function installAddon( plugin, { isVendor, isInstalled } ) {\n\t// Prepare FormData for the POST request\n\tconst formData = new FormData();\n\tformData.append( 'nonce', nonce );\n\tformData.append( 'plugin', plugin );\n\n\tconst addonAction = isInstalled ? 'frm_activate_addon' : 'frm_install_addon';\n\tformData.append( 'action', isVendor ? 'frm_install_plugin' : addonAction );\n\n\ttry {\n\t\t// Perform the POST request\n\t\tconst response = await fetch( ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\tbody: formData\n\t\t} );\n\n\t\tif ( ! response.ok ) {\n\t\t\tthrow new Error( `Server responded with status ${ response.status }` );\n\t\t}\n\n\t\t// Parse the JSON response\n\t\treturn await response.json();\n\t} catch ( error ) {\n\t\tconsole.error( 'An error occurred:', error );\n\t}\n}\n\nexport default addInstallAddonsButtonEvents;\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Skip\" step button.\n *\n * @return {void}\n */\nfunction addSkipStepButtonEvents() {\n\tconst { skipStepButtons } = getElements();\n\n\t// Attach click event listeners to each skip buttons\n\tskipStepButtons.forEach( skipButton => {\n\t\tonClickPreventDefault( skipButton, onSkipStepButtonClick );\n\t} );\n}\n\n/**\n * Handles the click event on a \"Skip\" step button.\n *\n * @private\n * @return {void}\n */\nconst onSkipStepButtonClick = () => {\n\tnavigateToNextStep();\n};\n\nexport default addSkipStepButtonEvents;\n","/**\n * Internal dependencies\n */\nimport { setupInitialView } from './ui';\nimport { addEventListeners } from './events';\n\n/**\n * Initializes Onboarding Wizard.\n *\n * @return {void}\n */\nfunction initializeOnboardingWizard() {\n\tsetupInitialView();\n\taddEventListeners();\n}\n\nexport default initializeOnboardingWizard;\n","export const { INITIAL_STEP } = window.frmOnboardingWizardVars;\n\nexport const PREFIX = 'frm-onboarding';\n\nexport const STEPS = {\n\tINITIAL: INITIAL_STEP,\n\tINSTALL_ADDONS: 'install-addons',\n\tSUCCESS: 'success',\n\tUNSUCCESSFUL: 'unsuccessful'\n};\n","export * from './constants';\nexport * from './pageState';\n","/**\n * External dependencies\n */\nimport { createPageState } from 'core/factory';\n\nexport const { getState, getSingleState, setState, setSingleState } = createPageState( {\n\tprocessedSteps: [],\n\tinstalledAddons: [],\n} );\n","export { default as setupInitialView } from './setupInitialView';\nexport * from './rootline';\n","/**\n * External dependencies\n */\nimport { CURRENT_CLASS } from 'core/constants';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { STEPS } from '../shared';\n\nconst COMPLETED_STEP_CLASS = 'frm-completed-step';\n\n/**\n * Updates the rootline to reflect the current and completed steps.\n *\n * - Applies COMPLETED_STEP_CLASS to steps before the current one.\n * - Applies CURRENT_CLASS to the current step, unless it is the success step.\n *\n * @param {string} currentStep The current step in the process.\n * @return {void}\n */\nexport function updateRootline( currentStep ) {\n\tif ( currentStep === STEPS.UNSUCCESSFUL ) {\n\t\tcurrentStep = STEPS.SUCCESS;\n\t}\n\n\tconst { rootline } = getElements();\n\tconst currentItem = rootline.querySelector( `.frm-rootline-item[data-step=\"${ currentStep }\"]` );\n\n\trootline.querySelectorAll( '.frm-rootline-item' ).forEach( item => {\n\t\titem.classList.remove( COMPLETED_STEP_CLASS );\n\t\titem.classList.remove( CURRENT_CLASS );\n\t} );\n\n\tlet prevItem = currentItem.previousElementSibling;\n\tif ( prevItem ) {\n\t\twhile ( prevItem ) {\n\t\t\tprevItem.classList.add( COMPLETED_STEP_CLASS );\n\t\t\tprevItem = prevItem.previousElementSibling; // move to the previous sibling\n\t\t}\n\t}\n\n\tif ( currentStep === STEPS.SUCCESS ) {\n\t\tcurrentItem.classList.add( COMPLETED_STEP_CLASS );\n\t} else {\n\t\tcurrentItem.classList.add( CURRENT_CLASS );\n\t}\n}\n","/**\n * External dependencies\n */\nimport { frmAnimate, getQueryParam, removeQueryParam, hasQueryParam } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { STEPS } from '../shared';\nimport { navigateToStep } from '../utils';\n\n/**\n * Initializes the onboarding wizard's UI, sets up the initial step based on certain conditions,\n * and applies necessary UI enhancements for a smoother user experience.\n *\n * @return {void}\n */\nexport default function setupInitialView() {\n\tnavigateToInitialStep();\n\tfadeInPageElements();\n}\n\n/**\n * Determines the initial step in the onboarding process and navigates to it, considering the installation\n * status of Formidable Pro and specific query parameters.\n *\n * @private\n * @return {void}\n */\nfunction navigateToInitialStep() {\n\tconst initialStepName = determineInitialStep();\n\n\tclearOnboardingQueryParams();\n\tnavigateToStep( initialStepName, 'replaceState' );\n}\n\n/**\n * Determines the initial step based on the current state, such as whether Formidable Pro is installed\n * and the presence of specific query parameters. Also handles the removal of unnecessary steps.\n *\n * @private\n * @return {string} The name of the initial step to navigate to.\n */\nfunction determineInitialStep() {\n\tconst isConnectedAccount = getQueryParam( 'success' );\n\n\tif ( isConnectedAccount === '0' ) {\n\t\treturn STEPS.UNSUCCESSFUL;\n\t}\n\n\tconst { hiddenLicenseKeyInput } = getElements();\n\n\tif ( hiddenLicenseKeyInput || isConnectedAccount ) {\n\t\treturn STEPS.INSTALL_ADDONS;\n\t}\n\n\treturn getQueryParam( 'step' ) || STEPS.INITIAL;\n}\n\n/**\n * Clears specific query parameters related to the onboarding process.\n *\n * @private\n * @return {void}\n */\nfunction clearOnboardingQueryParams() {\n\tremoveQueryParam( 'key' );\n\tremoveQueryParam( 'success' );\n}\n\n/**\n * Smoothly fades in the background and container elements of the page for a more pleasant user experience.\n *\n * @private\n * @return {void}\n */\nfunction fadeInPageElements() {\n\tconst { container } = getElements();\n\n\tnew frmAnimate( container ).fadeIn();\n}\n","export * from './navigateToStep';\n","/**\n * External dependencies\n */\nimport { CURRENT_CLASS } from 'core/constants';\nimport { frmAnimate, setQueryParam, hide, show } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { setupUsageData } from '../dataUtils';\nimport { getElements } from '../elements';\nimport { getState, PREFIX, setSingleState } from '../shared';\nimport { updateRootline } from '../ui';\n\n/**\n * Navigates to the given step in the onboarding sequence.\n * Optionally updates the browser's history state to include the current step.\n *\n * @param {string} stepName The name of the step to navigate to.\n * @param {string} [updateMethod='pushState'] Specifies the method to update the browser's history and URL. Accepts 'pushState' or 'replaceState'. If omitted, defaults to 'pushState'.\n * @return {void}\n */\nexport const navigateToStep = ( stepName, updateMethod = 'pushState' ) => {\n\t// Find the target step element\n\tconst targetStep = document.querySelector( `.${ PREFIX }-step[data-step-name=\"${ stepName }\"]` );\n\tif ( ! targetStep ) {\n\t\treturn;\n\t}\n\n\t// Find and hide the current step element\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tif ( currentStep ) {\n\t\tcurrentStep.classList.remove( CURRENT_CLASS );\n\t\thide( currentStep );\n\t}\n\n\t// Display the target step element\n\ttargetStep.classList.add( CURRENT_CLASS );\n\tshow( targetStep );\n\tnew frmAnimate( targetStep ).fadeIn();\n\n\t// Update the onboarding wizard's current step attribute\n\tconst { onboardingWizardPage } = getElements();\n\tonboardingWizardPage.setAttribute( 'data-current-step', stepName );\n\n\t// Update the URL query parameter, with control over history update method\n\tsetQueryParam( 'step', stepName, updateMethod );\n\n\tupdateRootline( stepName );\n};\n\n/**\n * Navigates to the next step in the sequence.\n *\n * The function assumes steps are sequentially ordered in the DOM.\n *\n * @return {void}\n */\nexport const navigateToNextStep = () => {\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tconst nextStep = currentStep?.nextElementSibling;\n\n\tif ( ! nextStep ) {\n\t\treturn;\n\t}\n\n\tconst processedStep = currentStep.dataset.stepName;\n\tconst nextStepName = nextStep.dataset.stepName;\n\n\t// Save processed steps\n\tconst { processedSteps } = getState();\n\tif ( ! processedSteps.includes( processedStep ) ) {\n\t\tprocessedSteps.push( processedStep );\n\t\tsetSingleState( 'processedSteps', processedSteps );\n\t}\n\tsetupUsageData( processedStep, nextStepName );\n\n\tnavigateToStep( nextStepName );\n};\n\n/**\n * Navigates to the previous step in the sequence.\n *\n * The function assumes steps are sequentially ordered in the DOM.\n *\n * @return {void}\n */\nexport const navigateToPrevStep = () => {\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tconst prevStep = currentStep?.previousElementSibling;\n\n\tif ( ! prevStep ) {\n\t\treturn;\n\t}\n\n\tnavigateToStep( prevStep.dataset.stepName );\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * WordPress dependencies\n */\nimport domReady from '@wordpress/dom-ready';\n\n/**\n * Internal dependencies\n */\nimport initializeOnboardingWizard from './initializeOnboardingWizard';\n\ndomReady( () => {\n\tinitializeOnboardingWizard();\n} );\n"],"names":["_window$frmGlobal","window","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","OPTION_BOX_CLASS","addOptionBoxEvents","optionBoxes","document","querySelectorAll","forEach","optionBox","addEventListener","onOptionBoxClick","event","target","tagName","toLowerCase","currentTarget","closest","classList","toggle","createPageElements","initialElements","arguments","length","undefined","_typeof","Error","elements","getElements","addElements","newElements","_objectSpread","createPageState","initialState","state","getState","getSingleState","propertyName","value","Reflect","get","setState","newState","setSingleState","has","set","frmAnimate","type","_classCallCheck","prepareElements","_createClass","key","fadeIn","_this","applyStyleToElements","element","add","resetOpacity","remove","once","cascadeFadeIn","_this2","delay","setTimeout","index","style","transitionDelay","_this3","opacity","callback","Element","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","querySelector","errorElement","console","warn","span","concat","textContent","setAttribute","_window$frmDom$util","frmDom","util","onClickPreventDefault","documentOn","URL","location","href","urlParams","searchParams","getQueryParam","paramName","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","includes","_defineProperty","history","hasQueryParam","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","default","setupUsageData","STEPS","processedStep","nextStepName","formData","processDataForStep","doJsonPost","ajax","SUCCESS","UNSUCCESSFUL","_getState","processedSteps","push","FormData","append","join","INSTALL_ADDONS","_getState2","installedAddons","_formData","PREFIX","_createPageElements","onboardingWizardPage","getElementById","container","rootline","steps","skipStepButtons","backButtons","consentTrackingButton","installAddonsButton","hiddenLicenseKeyInput","navigateToPrevStep","addBackButtonEvents","_getElements","backButton","onBackButtonClick","_regeneratorRuntime","e","t","r","prototype","n","hasOwnProperty","o","defineProperty","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","__await","callInvokeWithMethodAndArg","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","name","mark","setPrototypeOf","__proto__","awrap","async","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","apply","_next","_throw","navigateToNextStep","addConsentTrackingButtonEvents","onConsentTrackingButtonClick","_ref","_callee","_callee$","_context","addSkipStepButtonEvents","addInstallAddonsButtonEvents","navigateToStep","addEventListeners","_event$state","stepName","step","_createForOfIteratorHelper","isArray","_unsupportedIterableToArray","_n","F","_arrayLikeToArray","onInstallAddonsButtonClick","addons","_iterator","_step","_loop","_context2","addon","addonTitle","_loop$","installAddon","getAttribute","dataset","title","t0","error","t1","_x","_x2","_x3","_installAddon","_callee2","plugin","_ref2","isVendor","isInstalled","addonAction","response","_callee2$","_context3","fetch","ajaxurl","body","ok","status","json","skipButton","onSkipStepButtonClick","setupInitialView","initializeOnboardingWizard","INITIAL_STEP","frmOnboardingWizardVars","INITIAL","_createPageState","COMPLETED_STEP_CLASS","updateRootline","currentStep","currentItem","item","prevItem","previousElementSibling","navigateToInitialStep","fadeInPageElements","initialStepName","determineInitialStep","clearOnboardingQueryParams","isConnectedAccount","_getElements2","targetStep","nextStep","nextElementSibling","prevStep","domReady"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"onboarding-wizard.js","mappings":"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","sources":["webpack://formidable/./node_modules/@wordpress/dom-ready/build-module/index.js","webpack://formidable/./js/src/core/constants.js","webpack://formidable/./js/src/core/events/index.js","webpack://formidable/./js/src/core/events/optionBoxListener.js","webpack://formidable/./js/src/core/factory/createPageElements.js","webpack://formidable/./js/src/core/factory/createPageState.js","webpack://formidable/./js/src/core/factory/index.js","webpack://formidable/./js/src/core/utils/animation.js","webpack://formidable/./js/src/core/utils/async.js","webpack://formidable/./js/src/core/utils/error.js","webpack://formidable/./js/src/core/utils/event.js","webpack://formidable/./js/src/core/utils/index.js","webpack://formidable/./js/src/core/utils/url.js","webpack://formidable/./js/src/core/utils/validation.js","webpack://formidable/./js/src/core/utils/visibility.js","webpack://formidable/./js/src/onboarding-wizard/dataUtils/index.js","webpack://formidable/./js/src/onboarding-wizard/dataUtils/setupUsageData.js","webpack://formidable/./js/src/onboarding-wizard/elements/elements.js","webpack://formidable/./js/src/onboarding-wizard/elements/index.js","webpack://formidable/./js/src/onboarding-wizard/events/backButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/consentTrackingButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/index.js","webpack://formidable/./js/src/onboarding-wizard/events/installAddonsButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/events/skipStepButtonListener.js","webpack://formidable/./js/src/onboarding-wizard/initializeOnboardingWizard.js","webpack://formidable/./js/src/onboarding-wizard/shared/constants.js","webpack://formidable/./js/src/onboarding-wizard/shared/index.js","webpack://formidable/./js/src/onboarding-wizard/shared/pageState.js","webpack://formidable/./js/src/onboarding-wizard/ui/index.js","webpack://formidable/./js/src/onboarding-wizard/ui/rootline.js","webpack://formidable/./js/src/onboarding-wizard/ui/setupInitialView.js","webpack://formidable/./js/src/onboarding-wizard/utils/index.js","webpack://formidable/./js/src/onboarding-wizard/utils/navigateToStep.js","webpack://formidable/webpack/bootstrap","webpack://formidable/webpack/runtime/define property getters","webpack://formidable/webpack/runtime/hasOwnProperty shorthand","webpack://formidable/webpack/runtime/make namespace object","webpack://formidable/./js/src/onboarding-wizard/index.js"],"sourcesContent":["/**\n * @typedef {() => void} Callback\n *\n * TODO: Remove this typedef and inline `() => void` type.\n *\n * This typedef is used so that a descriptive type is provided in our\n * automatically generated documentation.\n *\n * An in-line type `() => void` would be preferable, but the generated\n * documentation is `null` in that case.\n *\n * @see https://github.com/WordPress/gutenberg/issues/18045\n */\n\n/**\n * Specify a function to execute when the DOM is fully loaded.\n *\n * @param {Callback} callback A function to execute after the DOM is ready.\n *\n * @example\n * ```js\n * import domReady from '@wordpress/dom-ready';\n *\n * domReady( function() {\n * \t//do something after DOM loads.\n * } );\n * ```\n *\n * @return {void}\n */\nexport default function domReady(callback) {\n if (typeof document === 'undefined') {\n return;\n }\n\n if (document.readyState === 'complete' || // DOMContentLoaded + Images/Styles/etc loaded, so we call directly.\n document.readyState === 'interactive' // DOMContentLoaded fires at this point, so we call directly.\n ) {\n return void callback();\n } // DOMContentLoaded has not fired yet, delay callback until then.\n\n\n document.addEventListener('DOMContentLoaded', callback);\n}\n//# sourceMappingURL=index.js.map","export const { url: PLUGIN_URL, nonce } = window.frmGlobal;\nexport const HIDDEN_CLASS = 'frm_hidden';\nexport const DISABLED_CLASS = 'frm_disabled';\nexport const HIDE_JS_CLASS = 'frm-hide-js';\nexport const CURRENT_CLASS = 'frm-current';\nexport const CHECKED_CLASS = 'frm-checked';\nexport const SINGLE_SETTINGS_CLASS = 'frm-single-settings';\n\nexport const HOOKS = {\n\tSHOW_FIELD_SETTINGS: 'frmShowedFieldSettings'\n};\n","export * from './optionBoxListener';\n","/**\n * Internal dependencies\n */\nimport { CHECKED_CLASS } from 'core/constants';\n\nconst OPTION_BOX_CLASS = '.frm-option-box';\n\n/**\n * Manages event handling for an option-box.\n *\n * @return {void}\n */\nexport function addOptionBoxEvents() {\n\tconst optionBoxes = document.querySelectorAll( OPTION_BOX_CLASS );\n\n\toptionBoxes.forEach( optionBox => {\n\t\toptionBox.addEventListener( 'click', onOptionBoxClick );\n\t} );\n}\n\n/**\n * Handles the click event on a option box item.\n *\n * @private\n * @param {Event} event The click event object.\n */\nfunction onOptionBoxClick( event ) {\n\tif ( event.target.tagName.toLowerCase() !== 'input' ) {\n\t\treturn;\n\t}\n\n\tconst optionBox = event.currentTarget.closest( OPTION_BOX_CLASS );\n\toptionBox.classList.toggle( CHECKED_CLASS );\n}\n","/**\n * Creates a page elements manager.\n *\n * @param {Object} [initialElements={}] An object containing initial DOM elements.\n * @throws {Error} Throws an error if the `initialElements` is not an object.\n * @return {Object} An object with methods to get and add elements.\n */\nexport function createPageElements( initialElements = {} ) {\n\tif ( typeof initialElements !== 'object' || initialElements === null ) {\n\t\tthrow new Error(\n\t\t\t'createPageElements: initialElements must be a non-null object'\n\t\t);\n\t}\n\n\tlet elements = initialElements;\n\n\t/**\n\t * Retrieve the initialized essential DOM elements.\n\t *\n\t * @return {Object} The initialized elements object.\n\t */\n\tfunction getElements() {\n\t\treturn elements;\n\t}\n\n\t/**\n\t * Add new elements to the elements object.\n\t *\n\t * @param {Object} newElements An object containing new elements to be added.\n\t * @throws {Error} Throws an error if the `newElements` is not a non-null object.\n\t * @return {void} Updates the elements object by merging the new elements into it.\n\t */\n\tfunction addElements( newElements ) {\n\t\tif ( typeof newElements !== 'object' || newElements === null ) {\n\t\t\tthrow new Error(\n\t\t\t\t'addElements: newElements must be a non-null object'\n\t\t\t);\n\t\t}\n\n\t\telements = { ...elements, ...newElements };\n\t}\n\n\treturn { getElements, addElements };\n}\n","/**\n * Creates a page state manager.\n *\n * @param {Object} [initialState={}] An object containing the initial state.\n * @throws {Error} Throws an error if the `initialState` is not a plain object.\n * @return {Object} An object with methods to initialize, get, and set the page state.\n */\nexport function createPageState( initialState = {} ) {\n\tif ( typeof initialState !== 'object' || initialState === null ) {\n\t\tthrow new Error(\n\t\t\t'createPageState: initialState must be a non-null object'\n\t\t);\n\t}\n\n\tlet state = initialState;\n\n\t/**\n\t * Returns the current page state.\n\t *\n\t * @return {Object|null} The current state of the page or null if not initialized.\n\t */\n\tconst getState = () => state;\n\n\t/**\n\t * Returns a specific property from the current page state.\n\t *\n\t * @param {string} propertyName The name of the property to retrieve.\n\t * @return {*} The value of the specified property, or null if it doesn't exist.\n\t */\n\tconst getSingleState = propertyName => {\n\t\tconst value = Reflect.get( state, propertyName );\n\n\t\t// We convert `undefined` to `null` for a consistent API.\n\t\t// This makes it easier for users to handle the results since all missing properties return `null`.\n\t\treturn value === undefined ? null : value;\n\t};\n\n\t/**\n\t * Updates the page state with new values.\n\t *\n\t * @param {Object} newState The new values to update the state with.\n\t * @throws {Error} Throws an error if `newState` is not a plain object.\n\t * @return {void}\n\t */\n\tconst setState = newState => {\n\t\tif ( typeof newState !== 'object' || newState === null ) {\n\t\t\tthrow new Error( 'setState: newState must be a non-null object' );\n\t\t}\n\n\t\tstate = { ...state, ...newState };\n\t};\n\n\t/**\n\t * Updates a specific property in the page state with a new value.\n\t *\n\t * @param {string} propertyName The name of the property to update.\n\t * @param {*} value The new value to set for the property.\n\t * @return {void}\n\t */\n\tconst setSingleState = ( propertyName, value ) => {\n\t\tif ( Reflect.has( state, propertyName ) ) {\n\t\t\tReflect.set( state, propertyName, value );\n\t\t}\n\t};\n\n\treturn { getState, getSingleState, setState, setSingleState };\n}\n","export * from './createPageElements';\nexport * from './createPageState';\n","export class frmAnimate {\n\t/**\n\t * Construct frmAnimate\n\t *\n\t * @param {Element|Element[]} elements The elements to animate.\n\t * @param {'default'|'cascade'|'cascade-3d'} type The animation type: default | cascade | cascade-3d\n\t */\n\tconstructor( elements, type = 'default' ) {\n\t\tthis.elements = elements;\n\t\tthis.type = type;\n\n\t\tthis.prepareElements();\n\t}\n\n\t/**\n\t * Init animation - fadeIn.\n\t * Requires this.type = 'default';\n\t * ex: new frmAnimate( elements ).fadeIn();\n\t */\n\tfadeIn() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\telement.classList.add( 'frm-fadein-up' );\n\n\t\t\telement.addEventListener( 'animationend', () => {\n\t\t\t\tthis.resetOpacity();\n\t\t\t\telement.classList.remove( 'frm-fadein-up' );\n\t\t\t}, { once: true } );\n\t\t} );\n\t}\n\n\t/**\n\t * Init animation - cascadeFadeIn.\n\t * Requires this.type = 'cascade'|'cascade-3d';\n\t * ex: new frmAnimate( elements, 'cascade' ).cascadeFadeIn();\n\t * new frmAnimate( elements, 'cascade-3d' ).cascadeFadeIn();\n\t *\n\t * @param {number} delay The transition delay value.\n\t */\n\tcascadeFadeIn( delay = 0.03 ) {\n\t\tsetTimeout( () => {\n\t\t\tthis.applyStyleToElements( ( element, index ) => {\n\t\t\t\telement.classList.remove( 'frm-animate' );\n\t\t\t\telement.style.transitionDelay = ( ( index + 1 ) * delay ) + 's';\n\t\t\t} );\n\t\t}, 200 );\n\t}\n\n\tprepareElements() {\n\t\tthis.applyStyleToElements( element => {\n\t\t\tif ( 'default' === this.type ) {\n\t\t\t\telement.style.opacity = '0.0';\n\t\t\t}\n\t\t\tif ( 'cascade' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-cascade-animation' );\n\t\t\t}\n\t\t\tif ( 'cascade-3d' === this.type ) {\n\t\t\t\telement.classList.add( 'frm-init-fadein-3d' );\n\t\t\t}\n\t\t\telement.classList.add( 'frm-animate' );\n\t\t} );\n\t}\n\n\tresetOpacity() {\n\t\tthis.applyStyleToElements( element => element.style.opacity = '1.0' );\n\t}\n\n\tapplyStyleToElements( callback ) {\n\t\tif ( this.elements instanceof Element ) {\n\t\t\tcallback( this.elements, 0 );\n\t\t\treturn;\n\t\t}\n\t\tif ( 0 < this.elements.length ) {\n\t\t\tthis.elements.forEach( ( element, index ) => callback( element, index ) );\n\t\t}\n\t}\n}\n","// Initialize lastPromise with a resolved promise as the starting point for the queue\nlet lastPromise = Promise.resolve();\n\n/**\n * Adds a task to the request queue.\n *\n * @param {function(): Promise} task A function that returns a promise.\n * @return {Promise} The new last promise in the queue.\n */\nexport const addToRequestQueue = task => lastPromise = lastPromise.then( task ).catch( task );\n","/**\n * Internal dependencies\n */\nimport { hide, show } from '.';\n\n/**\n * Displays form validation error messages.\n *\n * @param {string} inputId The ID selector for the input field with the error.\n * @param {string} errorId The ID selector for the error message display element.\n * @param {string} type The categorization of the error (e.g., \"invalid\", \"empty\").\n * @param {string} [message] Optional. The specific error message to display.\n * @return {void}\n */\nexport const showFormError = ( inputId, errorId, type, message ) => {\n\tconst inputElement = document.querySelector( inputId );\n\tconst errorElement = document.querySelector( errorId );\n\n\tif ( ! inputElement || ! errorElement ) {\n\t\tconsole.warn( 'showFormError: Unable to find input or error element.' );\n\t\treturn;\n\t}\n\n\t// If a message is provided, update the span element's text that matches the error type\n\tif ( message ) {\n\t\tconst span = errorElement.querySelector( `span[frm-error=\"${ type }\"]` );\n\t\tif ( span ) {\n\t\t\tspan.textContent = message;\n\t\t}\n\t}\n\n\t// Assign the error type and make the error message visible\n\terrorElement.setAttribute( 'frm-error', type );\n\tshow( errorElement );\n\n\t// Hide the error message when the user starts typing in the faulty input field\n\tinputElement.addEventListener( 'keyup', () => {\n\t\thide( errorElement );\n\t}, { once: true } );\n};\n","export const { onClickPreventDefault, documentOn } = window.frmDom.util;\n","export * from './animation';\nexport * from './async';\nexport * from './error';\nexport * from './event';\nexport * from './url';\nexport * from './validation';\nexport * from './visibility';\n","/**\n * Initializes URL and URLSearchParams objects from the current window's location\n */\nconst url = new URL( window.location.href );\nconst urlParams = url.searchParams;\n\n/**\n * Gets the value of a specified query parameter from the current URL.\n *\n * @param {string} paramName The name of the query parameter to retrieve.\n * @return {string|null} The value associated with the specified query parameter name, or null if not found.\n */\nexport const getQueryParam = paramName => urlParams.get( paramName );\n\n/**\n * Removes a query parameter from the current URL and returns the updated URL string.\n *\n * @param {string} paramName The name of the query parameter to remove.\n * @return {string} The updated URL string.\n */\nexport const removeQueryParam = paramName => {\n\turlParams.delete( paramName );\n\turl.search = urlParams.toString();\n\treturn url.toString();\n};\n\n/**\n * Sets the value of a query parameter in the current URL and optionally updates the browser's history state.\n *\n * @param {string} paramName The name of the query parameter to set.\n * @param {string} paramValue The value to set for the query parameter.\n * @param {string} [updateMethod='pushState'] The method to use for updating the history state. Accepts 'pushState' or 'replaceState'.\n * @return {string} The updated URL string.\n */\nexport const setQueryParam = ( paramName, paramValue, updateMethod = 'pushState' ) => {\n\turlParams.set( paramName, paramValue );\n\turl.search = urlParams.toString();\n\n\tif ( [ 'pushState', 'replaceState' ].includes( updateMethod ) ) {\n\t\tconst state = { [ paramName ]: paramValue };\n\t\twindow.history[ updateMethod ]( state, '', url );\n\t}\n\n\treturn url.toString();\n};\n\n/**\n * Checks if a query parameter exists in the current URL.\n *\n * @param {string} paramName The name of the query parameter to check.\n * @return {boolean} True if the query parameter exists, otherwise false.\n */\nexport const hasQueryParam = paramName => urlParams.has( paramName );\n","/**\n * Validates an email address using a regular expression.\n *\n * @param {string} email The email address to validate.\n * @return {boolean} True if the email address is valid, otherwise false.\n */\nexport const isValidEmail = email =>\n\ttypeof email === 'string' ? /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/i.test( email ) : false;\n\n/**\n * Validates if the given element is an instance of HTMLElement.\n *\n * @param {any} element Element to be checked.\n * @return {boolean} True if it's an HTMLElement, otherwise false.\n */\nexport const isHTMLElement = element => element instanceof HTMLElement || console.warn( 'Invalid argument: Element must be an instance of HTMLElement' ) || false;\n\n/**\n * Checks if the given object is empty.\n *\n * @param {Object} obj The object to check.\n * @return {boolean} True if the object is empty, otherwise false.\n */\nexport const isEmptyObject = obj => Object.keys( obj ).length === 0 && obj.constructor === Object;\n","/**\n * Internal dependencies\n */\nimport { HIDDEN_CLASS } from 'core/constants';\n\n/**\n * Shows specified elements by removing the hidden class.\n *\n * @param {Array} elements An array of elements to show.\n * @return {void}\n */\nexport const showElements = elements =>\n\tArray.from( elements )?.forEach( element => show( element ) );\n\n/**\n * Hides specified elements by adding the hidden class.\n *\n * @param {Array} elements An array of elements to hide.\n * @return {void}\n */\nexport const hideElements = elements =>\n\tArray.from( elements )?.forEach( element => hide( element ) );\n\n/**\n * Removes the hidden class to show the element.\n *\n * @param {Element} element The element to show.\n * @return {void}\n */\nexport const show = element => element?.classList.remove( HIDDEN_CLASS );\n\n/**\n * Adds the hidden class to hide the element.\n *\n * @param {Element} element The element to hide.\n * @return {void}\n */\nexport const hide = element => element?.classList.add( HIDDEN_CLASS );\n\n/**\n * Checks if an element is visible.\n *\n * @param {HTMLElement} element The HTML element to check for visibility.\n * @return {boolean} Returns true if the element is visible, otherwise false.\n */\nexport const isVisible = element => {\n\tconst styles = window.getComputedStyle( element );\n\treturn styles.getPropertyValue( 'display' ) !== 'none';\n};\n","export { default as setupUsageData } from './setupUsageData';\n","/**\n * Internal Dependencies\n */\nimport { getState, STEPS } from '../shared';\n\n/**\n * Processes and submits usage data for the specified onboarding step.\n *\n * @param {string} processedStep The name of the step that has just been processed.\n * @param {string} nextStepName The name of the next step in the onboarding process.\n * @return {void}\n */\nfunction setupUsageData( processedStep, nextStepName ) {\n\tconst formData = processDataForStep( processedStep, nextStepName );\n\tif ( ! formData ) {\n\t\treturn;\n\t}\n\n\t// Send the POST request\n\tconst { doJsonPost } = frmDom.ajax;\n\tdoJsonPost( 'onboarding_setup_usage_data', formData );\n}\n\n/**\n * Processes onboarding step data and returns the corresponding FormData.\n *\n * @private\n * @param {string} processedStep The name of the step that has just been processed.\n * @param {string} nextStepName The name of the next step in the onboarding process.\n * @return {FormData|null} The FormData to be submitted for the step, or null if there's no data.\n */\nfunction processDataForStep( processedStep, nextStepName ) {\n\tlet formData;\n\n\t// Append completed steps if moving to the success step\n\tif ( STEPS.SUCCESS === nextStepName || STEPS.UNSUCCESSFUL === nextStepName ) {\n\t\tconst { processedSteps } = getState();\n\n\t\tif ( processedSteps.length > 1 ) {\n\t\t\tif ( ! processedSteps.includes( nextStepName ) ) {\n\t\t\t\tprocessedSteps.push( nextStepName );\n\t\t\t}\n\n\t\t\tformData = new FormData();\n\t\t\tformData.append( 'processed_steps', processedSteps.join( ',' ) );\n\t\t\tformData.append( 'completed_steps', true );\n\t\t}\n\t}\n\n\t// Append installed addons for the addon installation step\n\tif ( STEPS.INSTALL_ADDONS === processedStep ) {\n\t\tconst { installedAddons } = getState();\n\n\t\tif ( installedAddons.length > 0 ) {\n\t\t\tformData = formData ?? new FormData();\n\t\t\tformData.append( 'installed_addons', installedAddons.join( ',' ) );\n\t\t}\n\t}\n\n\treturn formData;\n}\n\nexport default setupUsageData;\n","/**\n * External dependencies\n */\nimport { createPageElements } from 'core/factory';\n\n/**\n * Internal dependencies\n */\nimport { PREFIX } from '../shared';\n\nexport const { getElements, addElements } = createPageElements( {\n\tonboardingWizardPage: document.getElementById( `${ PREFIX }-wizard-page` ),\n\tcontainer: document.getElementById( `${ PREFIX }-container` ),\n\n\trootline: document.getElementById( `${ PREFIX }-rootline` ),\n\tsteps: document.querySelectorAll( `.${ PREFIX }-step` ),\n\tskipStepButtons: document.querySelectorAll( `.${ PREFIX }-skip-step` ),\n\tbackButtons: document.querySelectorAll( `.${ PREFIX }-back-button` ),\n\n\tconsentTrackingButton: document.getElementById( `${ PREFIX }-consent-tracking` ),\n\tinstallAddonsButton: document.getElementById( `${ PREFIX }-install-addons-button` ),\n\n\thiddenLicenseKeyInput: document.getElementById( 'frm-license-key' ),\n} );\n","export * from './elements';\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToPrevStep } from '../utils';\n\n/**\n * Manages event handling for the \"Back\" button.\n *\n * @return {void}\n */\nfunction addBackButtonEvents() {\n\tconst { backButtons } = getElements();\n\n\t// Attach click event listeners to each back buttons\n\tbackButtons.forEach( backButton => {\n\t\tonClickPreventDefault( backButton, onBackButtonClick );\n\t} );\n}\n\n/**\n * Handles the click event on a \"Back\" button.\n *\n * @private\n * @return {void}\n */\nconst onBackButtonClick = () => {\n\tnavigateToPrevStep();\n};\n\nexport default addBackButtonEvents;\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Allow & Continue\" button in the \"Never miss an important update\" step.\n *\n * @return {void}\n */\nfunction addConsentTrackingButtonEvents() {\n\tconst { consentTrackingButton } = getElements();\n\n\t// Attach click event listener\n\tonClickPreventDefault( consentTrackingButton, onConsentTrackingButtonClick );\n}\n\n/**\n * Handles the click event on the \"Allow & Continue\" button in the \"Never miss an important update\" step.\n *\n * @private\n * @return {void}\n */\nconst onConsentTrackingButtonClick = async () => {\n\tconst { doJsonPost } = frmDom.ajax;\n\tdoJsonPost( 'onboarding_consent_tracking', new FormData() ).then( navigateToNextStep );\n};\n\nexport default addConsentTrackingButtonEvents;\n","/**\n * External dependencies\n */\nimport { addOptionBoxEvents } from 'core/events';\nimport { getQueryParam } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport addSkipStepButtonEvents from './skipStepButtonListener';\nimport addBackButtonEvents from './backButtonListener';\nimport addConsentTrackingButtonEvents from './consentTrackingButtonListener';\nimport addInstallAddonsButtonEvents from './installAddonsButtonListener';\nimport { navigateToStep } from '../utils';\n\n/**\n * Attaches event listeners for handling user interactions.\n *\n * @return {void}\n */\nexport function addEventListeners() {\n\t// Add event handling for the \"Skip\" and \"Back\" buttons\n\taddSkipStepButtonEvents();\n\taddBackButtonEvents();\n\n\taddConsentTrackingButtonEvents();\n\n\t// Add event handling for the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step\n\taddInstallAddonsButtonEvents();\n\t// Add event handling for an option-box\n\taddOptionBoxEvents();\n}\n\n/**\n * Responds to browser navigation events (back/forward) by updating the UI to match the step indicated in the URL or history state.\n *\n * @param {PopStateEvent} event The event object associated with the navigation action.\n * @return {void}\n */\nwindow.addEventListener( 'popstate', event => {\n\tconst stepName = event.state?.step || getQueryParam( 'step' );\n\t// Navigate to the specified step without adding to browser history\n\tnavigateToStep( stepName, 'replaceState' );\n} );\n","/**\n * External dependencies\n */\nimport { nonce } from 'core/constants';\nimport { onClickPreventDefault, addToRequestQueue } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { getState, setSingleState } from '../shared';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step.\n *\n * @return {void}\n */\nfunction addInstallAddonsButtonEvents() {\n\tconst { installAddonsButton } = getElements();\n\n\t// Attach click event listener\n\tonClickPreventDefault( installAddonsButton, onInstallAddonsButtonClick );\n}\n\n/**\n * Handles the click event on the \"Install & Finish Setup\" button in the \"Install Formidable Add-ons\" step.\n *\n * @private\n * @param {Event} event The click event object.\n * @return {void}\n */\nconst onInstallAddonsButtonClick = async event => {\n\tconst addons = document.querySelectorAll( '.frm-option-box.frm-checked:not(.frm-disabled)' );\n\tconst { installedAddons } = getState();\n\tconst installAddonsButton = event.currentTarget;\n\n\tinstallAddonsButton.classList.add( 'frm_loading_button' );\n\n\tfor ( const addon of addons ) {\n\t\ttry {\n\t\t\tawait addToRequestQueue( () => installAddon( addon.getAttribute( 'rel' ), addon.dataset ) );\n\n\t\t\t// Capture addon title\n\t\t\tconst addonTitle = addon.dataset.title;\n\t\t\tif ( ! installedAddons.includes( addonTitle ) ) {\n\t\t\t\tinstalledAddons.push( addonTitle );\n\t\t\t}\n\t\t} catch ( error ) {\n\t\t\tconsole.error( 'An error occurred:', error );\n\t\t}\n\t}\n\n\tinstallAddonsButton.classList.remove( 'frm_loading_button' );\n\n\tsetSingleState( 'installedAddons', installedAddons );\n\tnavigateToNextStep();\n};\n\n/**\n * Installs an add-on or plugin based on the provided plugin name and vendor status.\n *\n * @private\n * @param {string} plugin The unique identifier or name of the plugin or add-on to be installed.\n * @param {Object} options An object containing additional options for the installation.\n * @param {boolean} options.isInstalled Indicates whether the plugin is already installed.\n * @param {boolean} options.isVendor Indicates whether the plugin is a vendor plugin (true) or a regular add-on (false).\n * @return {Promise} A promise that resolves with the JSON response from the server after the installation request is completed.\n */\nasync function installAddon( plugin, { isVendor, isInstalled } ) {\n\t// Prepare FormData for the POST request\n\tconst formData = new FormData();\n\tformData.append( 'nonce', nonce );\n\tformData.append( 'plugin', plugin );\n\n\tconst addonAction = isInstalled ? 'frm_activate_addon' : 'frm_install_addon';\n\tformData.append( 'action', isVendor ? 'frm_install_plugin' : addonAction );\n\n\ttry {\n\t\t// Perform the POST request\n\t\tconst response = await fetch( ajaxurl, {\n\t\t\tmethod: 'POST',\n\t\t\tbody: formData\n\t\t} );\n\n\t\tif ( ! response.ok ) {\n\t\t\tthrow new Error( `Server responded with status ${ response.status }` );\n\t\t}\n\n\t\t// Parse the JSON response\n\t\treturn await response.json();\n\t} catch ( error ) {\n\t\tconsole.error( 'An error occurred:', error );\n\t}\n}\n\nexport default addInstallAddonsButtonEvents;\n","/**\n * External dependencies\n */\nimport { onClickPreventDefault } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { navigateToNextStep } from '../utils';\n\n/**\n * Manages event handling for the \"Skip\" step button.\n *\n * @return {void}\n */\nfunction addSkipStepButtonEvents() {\n\tconst { skipStepButtons } = getElements();\n\n\t// Attach click event listeners to each skip buttons\n\tskipStepButtons.forEach( skipButton => {\n\t\tonClickPreventDefault( skipButton, onSkipStepButtonClick );\n\t} );\n}\n\n/**\n * Handles the click event on a \"Skip\" step button.\n *\n * @private\n * @return {void}\n */\nconst onSkipStepButtonClick = () => {\n\tnavigateToNextStep();\n};\n\nexport default addSkipStepButtonEvents;\n","/**\n * Internal dependencies\n */\nimport { setupInitialView } from './ui';\nimport { addEventListeners } from './events';\n\n/**\n * Initializes Onboarding Wizard.\n *\n * @return {void}\n */\nfunction initializeOnboardingWizard() {\n\tsetupInitialView();\n\taddEventListeners();\n}\n\nexport default initializeOnboardingWizard;\n","export const { INITIAL_STEP } = window.frmOnboardingWizardVars;\n\nexport const PREFIX = 'frm-onboarding';\n\nexport const STEPS = {\n\tINITIAL: INITIAL_STEP,\n\tINSTALL_ADDONS: 'install-addons',\n\tSUCCESS: 'success',\n\tUNSUCCESSFUL: 'unsuccessful'\n};\n","export * from './constants';\nexport * from './pageState';\n","/**\n * External dependencies\n */\nimport { createPageState } from 'core/factory';\n\nexport const { getState, getSingleState, setState, setSingleState } = createPageState( {\n\tprocessedSteps: [],\n\tinstalledAddons: [],\n} );\n","export { default as setupInitialView } from './setupInitialView';\nexport * from './rootline';\n","/**\n * External dependencies\n */\nimport { CURRENT_CLASS } from 'core/constants';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { STEPS } from '../shared';\n\nconst COMPLETED_STEP_CLASS = 'frm-completed-step';\n\n/**\n * Updates the rootline to reflect the current and completed steps.\n *\n * - Applies COMPLETED_STEP_CLASS to steps before the current one.\n * - Applies CURRENT_CLASS to the current step, unless it is the success step.\n *\n * @param {string} currentStep The current step in the process.\n * @return {void}\n */\nexport function updateRootline( currentStep ) {\n\tif ( currentStep === STEPS.UNSUCCESSFUL ) {\n\t\tcurrentStep = STEPS.SUCCESS;\n\t}\n\n\tconst { rootline } = getElements();\n\tconst currentItem = rootline.querySelector( `.frm-rootline-item[data-step=\"${ currentStep }\"]` );\n\n\trootline.querySelectorAll( '.frm-rootline-item' ).forEach( item => {\n\t\titem.classList.remove( COMPLETED_STEP_CLASS );\n\t\titem.classList.remove( CURRENT_CLASS );\n\t} );\n\n\tlet prevItem = currentItem.previousElementSibling;\n\tif ( prevItem ) {\n\t\twhile ( prevItem ) {\n\t\t\tprevItem.classList.add( COMPLETED_STEP_CLASS );\n\t\t\tprevItem = prevItem.previousElementSibling; // move to the previous sibling\n\t\t}\n\t}\n\n\tif ( currentStep === STEPS.SUCCESS ) {\n\t\tcurrentItem.classList.add( COMPLETED_STEP_CLASS );\n\t} else {\n\t\tcurrentItem.classList.add( CURRENT_CLASS );\n\t}\n}\n","/**\n * External dependencies\n */\nimport { frmAnimate, getQueryParam, removeQueryParam, hasQueryParam } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { getElements } from '../elements';\nimport { STEPS } from '../shared';\nimport { navigateToStep } from '../utils';\n\n/**\n * Initializes the onboarding wizard's UI, sets up the initial step based on certain conditions,\n * and applies necessary UI enhancements for a smoother user experience.\n *\n * @return {void}\n */\nexport default function setupInitialView() {\n\tnavigateToInitialStep();\n\tfadeInPageElements();\n}\n\n/**\n * Determines the initial step in the onboarding process and navigates to it, considering the installation\n * status of Formidable Pro and specific query parameters.\n *\n * @private\n * @return {void}\n */\nfunction navigateToInitialStep() {\n\tconst initialStepName = determineInitialStep();\n\n\tclearOnboardingQueryParams();\n\tnavigateToStep( initialStepName, 'replaceState' );\n}\n\n/**\n * Determines the initial step based on the current state, such as whether Formidable Pro is installed\n * and the presence of specific query parameters. Also handles the removal of unnecessary steps.\n *\n * @private\n * @return {string} The name of the initial step to navigate to.\n */\nfunction determineInitialStep() {\n\tconst isConnectedAccount = getQueryParam( 'success' );\n\n\tif ( isConnectedAccount === '0' ) {\n\t\treturn STEPS.UNSUCCESSFUL;\n\t}\n\n\tconst { hiddenLicenseKeyInput } = getElements();\n\n\tif ( hiddenLicenseKeyInput || isConnectedAccount ) {\n\t\treturn STEPS.INSTALL_ADDONS;\n\t}\n\n\treturn getQueryParam( 'step' ) || STEPS.INITIAL;\n}\n\n/**\n * Clears specific query parameters related to the onboarding process.\n *\n * @private\n * @return {void}\n */\nfunction clearOnboardingQueryParams() {\n\tremoveQueryParam( 'key' );\n\tremoveQueryParam( 'success' );\n}\n\n/**\n * Smoothly fades in the background and container elements of the page for a more pleasant user experience.\n *\n * @private\n * @return {void}\n */\nfunction fadeInPageElements() {\n\tconst { container } = getElements();\n\n\tnew frmAnimate( container ).fadeIn();\n}\n","export * from './navigateToStep';\n","/**\n * External dependencies\n */\nimport { CURRENT_CLASS } from 'core/constants';\nimport { frmAnimate, setQueryParam, hide, show } from 'core/utils';\n\n/**\n * Internal dependencies\n */\nimport { setupUsageData } from '../dataUtils';\nimport { getElements } from '../elements';\nimport { getState, PREFIX, setSingleState } from '../shared';\nimport { updateRootline } from '../ui';\n\n/**\n * Navigates to the given step in the onboarding sequence.\n * Optionally updates the browser's history state to include the current step.\n *\n * @param {string} stepName The name of the step to navigate to.\n * @param {string} [updateMethod='pushState'] Specifies the method to update the browser's history and URL. Accepts 'pushState' or 'replaceState'. If omitted, defaults to 'pushState'.\n * @return {void}\n */\nexport const navigateToStep = ( stepName, updateMethod = 'pushState' ) => {\n\t// Find the target step element\n\tconst targetStep = document.querySelector( `.${ PREFIX }-step[data-step-name=\"${ stepName }\"]` );\n\tif ( ! targetStep ) {\n\t\treturn;\n\t}\n\n\t// Find and hide the current step element\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tif ( currentStep ) {\n\t\tcurrentStep.classList.remove( CURRENT_CLASS );\n\t\thide( currentStep );\n\t}\n\n\t// Display the target step element\n\ttargetStep.classList.add( CURRENT_CLASS );\n\tshow( targetStep );\n\tnew frmAnimate( targetStep ).fadeIn();\n\n\t// Update the onboarding wizard's current step attribute\n\tconst { onboardingWizardPage } = getElements();\n\tonboardingWizardPage.setAttribute( 'data-current-step', stepName );\n\n\t// Update the URL query parameter, with control over history update method\n\tsetQueryParam( 'step', stepName, updateMethod );\n\n\tupdateRootline( stepName );\n};\n\n/**\n * Navigates to the next step in the sequence.\n *\n * The function assumes steps are sequentially ordered in the DOM.\n *\n * @return {void}\n */\nexport const navigateToNextStep = () => {\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tconst nextStep = currentStep?.nextElementSibling;\n\n\tif ( ! nextStep ) {\n\t\treturn;\n\t}\n\n\tconst processedStep = currentStep.dataset.stepName;\n\tconst nextStepName = nextStep.dataset.stepName;\n\n\t// Save processed steps\n\tconst { processedSteps } = getState();\n\tif ( ! processedSteps.includes( processedStep ) ) {\n\t\tprocessedSteps.push( processedStep );\n\t\tsetSingleState( 'processedSteps', processedSteps );\n\t}\n\tsetupUsageData( processedStep, nextStepName );\n\n\tnavigateToStep( nextStepName );\n};\n\n/**\n * Navigates to the previous step in the sequence.\n *\n * The function assumes steps are sequentially ordered in the DOM.\n *\n * @return {void}\n */\nexport const navigateToPrevStep = () => {\n\tconst currentStep = document.querySelector( `.${ PREFIX }-step.${ CURRENT_CLASS }` );\n\tconst prevStep = currentStep?.previousElementSibling;\n\n\tif ( ! prevStep ) {\n\t\treturn;\n\t}\n\n\tnavigateToStep( prevStep.dataset.stepName );\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * WordPress dependencies\n */\nimport domReady from '@wordpress/dom-ready';\n\n/**\n * Internal dependencies\n */\nimport initializeOnboardingWizard from './initializeOnboardingWizard';\n\ndomReady( () => {\n\tinitializeOnboardingWizard();\n} );\n"],"names":["_window$frmGlobal","window","frmGlobal","PLUGIN_URL","url","nonce","HIDDEN_CLASS","DISABLED_CLASS","HIDE_JS_CLASS","CURRENT_CLASS","CHECKED_CLASS","SINGLE_SETTINGS_CLASS","HOOKS","SHOW_FIELD_SETTINGS","OPTION_BOX_CLASS","addOptionBoxEvents","optionBoxes","document","querySelectorAll","forEach","optionBox","addEventListener","onOptionBoxClick","event","target","tagName","toLowerCase","currentTarget","closest","classList","toggle","createPageElements","initialElements","arguments","length","undefined","_typeof","Error","elements","getElements","addElements","newElements","_objectSpread","createPageState","initialState","state","getState","getSingleState","propertyName","value","Reflect","get","setState","newState","setSingleState","has","set","frmAnimate","type","_classCallCheck","prepareElements","_createClass","key","fadeIn","_this","applyStyleToElements","element","add","resetOpacity","remove","once","cascadeFadeIn","_this2","delay","setTimeout","index","style","transitionDelay","_this3","opacity","callback","Element","lastPromise","Promise","resolve","addToRequestQueue","task","then","catch","hide","show","showFormError","inputId","errorId","message","inputElement","querySelector","errorElement","console","warn","span","concat","textContent","setAttribute","_window$frmDom$util","frmDom","util","onClickPreventDefault","documentOn","URL","location","href","urlParams","searchParams","getQueryParam","paramName","removeQueryParam","delete","search","toString","setQueryParam","paramValue","updateMethod","includes","_defineProperty","history","hasQueryParam","isValidEmail","email","test","isHTMLElement","HTMLElement","isEmptyObject","obj","Object","keys","constructor","showElements","_Array$from","Array","from","hideElements","_Array$from2","isVisible","styles","getComputedStyle","getPropertyValue","default","setupUsageData","STEPS","processedStep","nextStepName","formData","processDataForStep","doJsonPost","ajax","SUCCESS","UNSUCCESSFUL","_getState","processedSteps","push","FormData","append","join","INSTALL_ADDONS","_getState2","installedAddons","_formData","PREFIX","_createPageElements","onboardingWizardPage","getElementById","container","rootline","steps","skipStepButtons","backButtons","consentTrackingButton","installAddonsButton","hiddenLicenseKeyInput","navigateToPrevStep","addBackButtonEvents","_getElements","backButton","onBackButtonClick","_regeneratorRuntime","e","t","r","prototype","n","hasOwnProperty","o","defineProperty","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","__await","callInvokeWithMethodAndArg","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","name","mark","setPrototypeOf","__proto__","awrap","async","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","apply","_next","_throw","navigateToNextStep","addConsentTrackingButtonEvents","onConsentTrackingButtonClick","_ref","_callee","_callee$","_context","addSkipStepButtonEvents","addInstallAddonsButtonEvents","navigateToStep","addEventListeners","_event$state","stepName","step","_createForOfIteratorHelper","isArray","_unsupportedIterableToArray","_n","F","_arrayLikeToArray","onInstallAddonsButtonClick","addons","_iterator","_step","_loop","_context2","addon","addonTitle","_loop$","installAddon","getAttribute","dataset","title","t0","error","t1","_x","_x2","_x3","_installAddon","_callee2","plugin","_ref2","isVendor","isInstalled","addonAction","response","_callee2$","_context3","fetch","ajaxurl","body","ok","status","json","skipButton","onSkipStepButtonClick","setupInitialView","initializeOnboardingWizard","INITIAL_STEP","frmOnboardingWizardVars","INITIAL","_createPageState","COMPLETED_STEP_CLASS","updateRootline","currentStep","currentItem","item","prevItem","previousElementSibling","navigateToInitialStep","fadeInPageElements","initialStepName","determineInitialStep","clearOnboardingQueryParams","isConnectedAccount","_getElements2","targetStep","nextStep","nextElementSibling","prevStep","domReady"],"sourceRoot":""} \ No newline at end of file From cc6fff9e69983e381f90ea7052c4212762077be7 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 9 Sep 2025 14:31:07 +0300 Subject: [PATCH 229/230] Fix ESLint --- tests/cypress/e2e/Forms/formsSettings.cy.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/cypress/e2e/Forms/formsSettings.cy.js b/tests/cypress/e2e/Forms/formsSettings.cy.js index 268ef546c9..c4239b93a3 100644 --- a/tests/cypress/e2e/Forms/formsSettings.cy.js +++ b/tests/cypress/e2e/Forms/formsSettings.cy.js @@ -120,7 +120,7 @@ describe( 'Updating form settings', () => { cy.log( 'Verify URL redirect after submitting form' ); cy.origin( 'https://formidableforms.com', () => { - cy.location( 'href', { timeout: 10000 } ).should( 'include', 'https://formidableforms.com/' ); + cy.location( 'href', { timeout: 10000 } ).should( 'include', 'https://formidableforms.com/' ); } ); cy.log( 'Navigate back to the formidable form page' ); @@ -141,7 +141,7 @@ describe( 'Updating form settings', () => { cy.log( 'Verify URL redirect after submitting form' ); cy.origin( 'https://formidableforms.com', () => { - cy.location( 'href', { timeout: 10000 } ).should( 'include', 'https://formidableforms.com/' ); + cy.location( 'href', { timeout: 10000 } ).should( 'include', 'https://formidableforms.com/' ); } ); cy.log( 'Navigate back to the formidable form page' ); From e3d980d7e130c811448115338e1afba364055f19 Mon Sep 17 00:00:00 2001 From: Sherv Date: Tue, 9 Sep 2025 14:40:54 +0300 Subject: [PATCH 230/230] Improve hook name specificity for admin tag removal Replace generic 'frm_after_remove_this_tag' with more descriptive 'frm_admin_tag_removed' for better developer experience. --- js/formidable_admin.js | 2 +- js/src/admin/admin.js | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/js/formidable_admin.js b/js/formidable_admin.js index 047558513d..2620e942e3 100644 --- a/js/formidable_admin.js +++ b/js/formidable_admin.js @@ -1 +1 @@ -(()=>{function e(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||t(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r1&&(e="",t=""):0===i.indexOf("frm_postmeta_")&&(jQuery("#frm_postmeta_rows .frm_postmeta_row").length<2&&(e=".frm_add_postmeta_row.button"),jQuery(".frm_toggle_cf_opts").length&&jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().length&&(""!==e&&(e+=","),e+="#"+jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().attr("id")+" .frm_toggle_cf_opts"));var o=document.getElementById(i),a=jQuery(o);return a.fadeOut(300,(function(){var r;a.remove(),Mi(),""!==t&&jQuery(t).hide(),""!==e&&jQuery(e+" a,"+e).removeClass("frm_hidden").fadeIn("slow"),this.closest(".frm_form_action_settings")&&function(e){si(e);var t={type:e};wp.hooks.doAction("frm_after_action_removed",t)}(this.closest(".frm_form_action_settings").querySelector(".frm_action_name").value),null===(r=document.querySelector(".tooltip"))||void 0===r||r.remove()})),void 0!==r&&(r=jQuery(r)).fadeOut(400,(function(){r.remove()})),""!==e&&jQuery(this).closest(".frm_logic_rows").fadeOut("slow"),wp.hooks.doAction("frm_after_remove_this_tag",i,o),!1}}function $(e,t){void 0===t&&(t=this),Ze(t,!1);var r=jQuery(t).closest(".frm_form_action_settings"),n=e.target;if(r.length&&void 0!==n){var i=n.parentElement.className;if("string"==typeof i&&(i.indexOf("frm_email_icons")>-1||i.indexOf("frm_toggle")>-1))return void e.stopPropagation()}var o=r.children(".widget-inside");if(r.length&&o.find("p, div, table").length<1){var a=r.find('input[name$="[ID]"]').val(),l=r.find('input[name$="[post_excerpt]"]').val();l&&(o.html(''),r.find(".spinner").fadeIn("slow"),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_form_action_fill",action_id:a,action_type:l,nonce:frmGlobal.nonce},success:function(e){o.html(e),lo(),Yn("#"+r.attr("id")),jo(o),jQuery(t).trigger("frm-action-loaded"),wp.hooks.doAction("frm_filled_form_action",o)}}))}jQuery(t).closest(".frm_field_box").siblings().find(".widget-inside").slideUp("fast"),void 0!==t.className&&-1!==t.className.indexOf("widget-action")||jQuery(t).closest(".start_divider").length<1||((o=jQuery(t).closest("div.widget").children(".widget-inside")).is(":hidden")?o.slideDown("fast"):o.slideUp("fast"))}function W(){var e=this.getAttribute("href");if(void 0===e)return!1;var t=e.replace("#","."),r=jQuery(this);r.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),r.closest("div").children(".tabs-panel").not(e).not(t).hide();var n=document.getElementById(e.replace("#",""));return n&&(n.style.display="block"),"frm_insert_fields_tab"!==this.id||this.closest("#frm_adv_info")||Ke(),!1}function U(e,t){var r=(e=jQuery(e)).attr("href");if(void 0!==r){var n,i,o=r.replace("#",".");if(e.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),e.closest("div").find(".tabs-panel").length)e.closest("div").children(".tabs-panel").not(r).not(o).hide();else if(null!==document.getElementById("form_global_settings")){var a=e.data("frmajax");e.closest(".frm_wrap").find(".tabs-panel, .hide_with_tabs").hide(),void 0!==a&&"1"==a&&(n=r.replace("#",""),(i=jQuery(".frm_"+n+"_ajax")).length&&jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_settings_tab",tab:n.replace("_settings",""),nonce:frmGlobal.nonce},success:function(e){i.replaceWith(e)}}))}else jQuery("#frm-categorydiv .tabs-panel, .hide_with_tabs").hide();jQuery(r).show(),jQuery(o).show(),Wi(),"auto"!==t&&(jQuery(".frm_updated_message").hide(),jQuery(".frm_warning_style").hide()),jQuery(e).closest("#frm_adv_info").length||(jQuery(".frm_form_settings").length?jQuery(".frm_form_settings").attr("action","?page=formidable&frm_action=settings&id="+jQuery('.frm_form_settings input[name="id"]').val()+"&t="+r.replace("#","")):jQuery(".frm_settings_form").attr("action","?page=formidable-settings&t="+r.replace("#","")))}}function V(e){var t,r;document.querySelectorAll(e).forEach((function(e){K(e),Array.from(e.children).forEach((function(e){return X(e,".frm-move")}));var t=jQuery(e).children('[data-type="divider"]').children(".divider_section_only");t.length&&K(t)})),t=jQuery("#frm_builder_page"),r={items:".frm_sortable_field_opts li",axis:"y",opacity:.65,forcePlaceholderSize:!1,handle:".frm-drag",helper:function(e,t){return x=t.clone().insertAfter(t),t.clone()},stop:function(e,t){x&&x.remove(),rn(t.item.attr("id").replace("frm_delete_field_","").replace("-"+t.item.data("optkey")+"_container","")),Mi()}},jQuery(t).sortable(r)}function K(e){jQuery(e).droppable({accept:".frmbutton, li.frm_field_box",deactivate:ne,over:J,out:Y,tolerance:"pointer"})}function J(e,t){var r=function(e){return e.classList.contains("divider_section_only")&&(e=jQuery(e).nextAll(".start_divider.frm_sorting").get(0)),e}(e.target);if(!Qe(t.draggable[0],r,e))return r.classList.remove("frm-over-droppable"),void jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable");document.querySelectorAll(".frm-over-droppable").forEach((function(e){return e.classList.remove("frm-over-droppable")})),r.classList.add("frm-over-droppable"),jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable")}function Y(e){e.target.classList.remove("frm-over-droppable")}function X(e,t){var r={helper:Z,revert:"invalid",delay:10,start:ee,stop:te,drag:re,cursor:"grabbing",refreshPositions:!0,cursorAt:{top:0,left:90}};"string"==typeof t&&(r.handle=t),jQuery(e).draggable(r)}function Z(e){var t,r=e.delegateTarget;if(Ee(r)){var n=document.getElementById("frm-insert-fields").querySelector(".frm_ttext").cloneNode(!0);return n.querySelector("use").setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_field_group_layout_icon"),n.querySelector("span").textContent=B("Field Group","formidable"),n.classList.add("frm_field_box"),n.classList.add("ui-sortable-helper"),n}if(r.classList.contains("frmbutton"))return(t=r.cloneNode(!0)).classList.add("ui-sortable-helper"),r.classList.add("frm-new-field"),t;if(r.hasAttribute("data-ftype")){var i=r.getAttribute("data-ftype");if((t=(t=document.getElementById("frm-insert-fields").querySelector(".frm_t"+i)).cloneNode(!0)).classList.add("form-field"),t.classList.add("ui-sortable-helper"),t)return t.cloneNode(!0)}return d({className:"frmbutton"})}function ee(e,t){q.dragging=!0;var r,n=h;n.classList.add("frm-dragging-field"),document.body.classList.add("frm-dragging"),t.helper.addClass("frm-sortable-helper"),t.helper.initialOffset=n.scrollTop,e.target.classList.add("frm-drag-fade"),gr(),(r=document.querySelectorAll("ul.start_divider")).length&&r.forEach((function(e){[].slice.call(e.children).forEach((function(e){(0===e.children.length||1===e.children.length&&"ul"===e.firstElementChild.nodeName.toLowerCase()&&0===e.firstElementChild.children.length)&&e.remove()}))})),Me(),Te(),R()}function te(){h.classList.remove("frm-dragging-field"),document.body.classList.remove("frm-dragging");var e=document.querySelector(".frm-drag-fade");e&&e.classList.remove("frm-drag-fade")}function re(e,t){!function(e){v.scrollTop((function(t,r){var n=e.clientY,i=h.offsetHeight,o=e.clientY-h.offsetTop,a=o-i/2;return o>i-50&&n>5?r+.1*a:o<70&&n<130?r-Math.abs(.1*a):r}))}(e);var r=e.target,n=function(){for(var e=document.getElementById("frm-show-fields");e.querySelector(".frm-over-droppable");)e=e.querySelector(".frm-over-droppable");return"frm-show-fields"!==e.id||e.classList.contains("frm-over-droppable")||(e=!1),e}(),i=document.getElementById("frm_drag_placeholder");if(Qe(r,n,e)){i||(i=s("li",{id:"frm_drag_placeholder",className:"sortable-placeholder"}));var o,a=t.helper.get(0);if((a.classList.contains("form-field")||a.classList.contains("frm_field_box"))&&(a.style.transform="translateY("+(o=t.helper,h.scrollTop-o.initialOffset+"px)")),"frm-show-fields"===n.id||n.classList.contains("start_divider"))return i.style.left=0,void function(e){var t,r=e.y,n=e.placeholder,i=jQuery(e.droppable);if($children=i.children().not(".edit_field_type_end_divider"),0===$children.length)i.prepend(n),t=0;else{var o=ie(i,r);if(o===$children.length){var a=jQuery($children.get(o-1));t=a.offset().top+a.outerHeight(),i.append(n);var l=i.children(".edit_field_type_end_divider");l.length&&i.append(l)}else t=jQuery($children.get(o)).offset().top,jQuery($children.get(o)).before(n)}t-=i.offset().top,n.style.top=t+"px"}({droppable:n,y:e.clientY,placeholder:i});i.style.top="",function(e){var t,r=e.x,n=e.placeholder,i=jQuery(e.droppable),o=ae(i);if(o.length){var a=function(e,t){var r,n,i,o,a=ae(e);for(o=0,r=a.length-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().left)){o=r,t>i+jQuery(n).outerWidth()/2&&(o=r+1);break}return o}(i,r);if(a===o.length){var l=jQuery(o.get(a-1));t=l.offset().left+l.outerWidth(),i.append(n)}else t=jQuery(o.get(a)).offset().left,jQuery(o.get(a)).before(n),t-=0===a?4:8;t-=i.offset().left,n.style.left=t+"px"}}({droppable:n,x:e.clientX,placeholder:i})}else i&&i.remove()}function ne(e,t){if(q.dragging){q.dragging=!1;var r=t.draggable[0],n=document.getElementById("frm_drag_placeholder");if(!n)return t.helper.remove(),void y();!function(e){if(e.previousElementSibling&&e.previousElementSibling.classList.contains("frm-is-collapsed")){var t=jQuery(e).prevUntil('[data-type="break"]');if(t.length){var r=t.find(".frm-collapse-page").get(0);r&&r.click()}}}(n);var i=t.helper.parent(),o=t.helper.get(0).closest("ul.start_divider"),a=n.closest("ul.start_divider");r.classList.contains("frm-new-field")?function(e){if(ge(e))wp.hooks.doAction("frm_stopped_inserting_by_dragging",e);else{var t=document.getElementById("frm_drag_placeholder"),r=e.replace("|","-")+"_"+we(),n=s("li",{id:r,className:"frm-wait frmbutton_loadingnow"}),i=jQuery(n),o=fe(jQuery(t)),a=ue(o),l=me(o);t.parentNode.insertBefore(n,t),t.remove(),le(i);var d=0;"summary"===e&&(d=jQuery(".frmbutton_loadingnow#"+r).prevAll('li[data-type="break"]').length?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:pe(e,l,a,d),success:function(t){ye(t,i);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:a})},error:je})}}(r.id):(function(e,t){t.parentNode.insertBefore(e,t)}(r,n),function(e){if("UL"===e.nodeName&&!e.classList.contains("start_divider")&&"frm-show-fields"!==e.id){var t=e.closest("li");t&&!t.classList.contains("ui-draggable")&&X(t,".frm-move")}}(n.parentElement));var l=o?parseInt(o.closest(".edit_field_type_divider").getAttribute("data-fid")):0,d=a?parseInt(a.closest(".edit_field_type_divider").getAttribute("data-fid")):0;n.remove(),t.helper.remove();var c=i.length?ae(i):[];!function(e,t){var r;e.length&&(t.length?le(t.first()):(r=e.get(0).closest("li.frm_field_box"))&&!r.classList.contains("edit_field_type_divider")&&r.remove())}(i,c),function(e,t){0===t.length&&1===ae(jQuery(e.parentNode)).length||le(jQuery(e))}(r,c),l!==d&&_e(jQuery(r),o),y()}}function ie(e,t){var r,n,i,o,a=e.children().not(".edit_field_type_end_divider"),l=a.length;if(!document.querySelector(".frm-has-fields .frm_no_fields"))return 0;for(o=0,r=l-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().top)){o=r,t>i+jQuery(n).outerHeight()/2&&(o=r+1);break}return o}function oe(){document.querySelectorAll("ul#frm-show-fields, ul.start_divider").forEach((function(e){e.childNodes.forEach((function(e){void 0!==e.classList&&(e.classList.contains("edit_field_type_end_divider")||void 0!==e.classList&&e.classList.contains("form-field")&&We(e))}))})),xn(),document.querySelectorAll(".edit_field_type_end_divider").forEach((function(e){return e.parentNode.appendChild(e)})),document.querySelectorAll("li.form_field_box:not(.form-field)").forEach((function(e){return!e.children.length&&e.remove()})),Qn();var e=new Event("frm_sync_after_drag_and_drop",{bubbles:!1});document.dispatchEvent(e)}function ae(e){var t=jQuery(),r=e.get(0);return r.children?(Array.from(r.children).forEach((function(e){if("none"!==e.style.display){var r=e.classList;!r.contains("form-field")||r.contains("edit_field_type_end_divider")||r.contains("frm-sortable-helper")||(t=t.add(e))}})),t):t}function le(e,t){var r,n,i,o;void 0===t&&(t="even"),r=e.parent().children("li.form-field, li.frmbutton_loadingnow").not(".edit_field_type_end_divider"),n=r.length,i=["frm_full","frm_half","frm_third","frm_fourth","frm_sixth","frm_two_thirds","frm_three_fourths","frm1","frm2","frm3","frm4","frm5","frm6","frm7","frm8","frm9","frm10","frm11","frm12"],"even"===t&&5!==n?r.each(ce(i,Ut(n))):"clear"===t?r.each(ce(i,"")):(o=-1!==["left","right","middle","even"].indexOf(t)?function(e){return Wt(n,t,e)}:function(e){return ar(t[e])},r.each(ce(i,o))),se(e.parent(),r.length)}function se(e,t){var r,n;if(void 0!==e.offset()){if(r=t>=2,null===(n=document.getElementById("frm_field_group_controls"))){if(!r)return;(n=d()).id="frm_field_group_controls",n.setAttribute("role","group"),n.setAttribute("tabindex",0),function(e){var t,r;(t=document.createElement("span")).innerHTML='';var n=B("Set Row Layout","formidable");de(t,n),zt(t,n),(r=document.createElement("span")).innerHTML='',r.classList.add("frm-move");var i=B("Move Field Group","formidable");de(r,i),zt(r,i),e.innerHTML="",e.appendChild(t),e.appendChild(r),e.appendChild(function(){var e=c({className:"dropdown"}),t=f({className:"frm_bstooltip frm-hover-icon frm-dropdown-toggle dropdown-toggle",children:[c({child:u({href:"#frm_thick_more_vert_icon"})}),c({className:"screen-reader-text",text:B("Toggle More Options Dropdown","formidable")})]});frmDom.setAttributes(t,{title:B("More Options","formidable"),"data-toggle":"dropdown","data-container":"body"}),zt(t,B("More Options","formidable")),e.appendChild(t);var r=d({className:"frm-dropdown-menu dropdown-menu dropdown-menu-right"});return r.setAttribute("role","menu"),e.appendChild(r),e}())}(n),D.appendChild(n)}e.append(n),n.style.display=r?"block":"none"}}function de(e,t){e.setAttribute("data-toggle","tooltip"),e.setAttribute("data-container","body"),e.setAttribute("title",t),e.addEventListener("mouseover",(function(){null===e.getAttribute("data-original-title")&&jQuery(e).tooltip()}))}function ce(e,t){return function(r){var n,i,o,a,l,s,d;for(n="function"==typeof t?t(r):t,i=e.length,l=!1,o=0;ot.childElementCount-1:s<=jQuery(t.querySelector(".edit_field_type_submit").closest("#frm-show-fields > li")).index()}if(a)return!(t.classList.contains("start_divider")||!xe(t.parentElement)&&(!xe(t.parentElement.nextElementSibling)||e.parentElement.querySelector("li.frm_field_box:not(.edit_field_type_submit)")));if(t.classList.contains("start_divider")&&(e.classList.contains("edit_field_type_gdpr")||"gdpr"===e.id)&&t.closest(".repeat_section"))return!1;if(!t.classList.contains("start_divider")){if(n=ae(jQuery(t)),i=jQuery(e),!(n.length<6)&&(n.length>6||(o=i.attr("data-fid"),1!==jQuery(n).filter('[data-fid="'+o+'"]').length)))return!1;if("divider"===e.id&&t.closest(".start_divider"))return!1}return e.classList.contains("frm-new-field")?function(e,t){var r=e.classList,n=r.contains("frm_tbreak"),i=r.contains("frm_thidden"),o=r.contains("frm_tdivider"),a=r.contains("frm_tform"),l=r.contains("frm_tuser_id");return"frm-show-fields"===t.id||t.classList.contains("start_divider")?!(n||i||o||a)||(!(t.classList.contains("start_divider")||null!==t.closest(".start_divider"))||!a&&!o):!(ke(t)||i||n||l)}(e,t):function(e,t){if(Ee(e))return function(e,t){return!(!t.classList.contains("start_divider")||null!==e.querySelector(".start_divider"))}(e,t);if(e.classList.contains("edit_field_type_break"))return!1;if(t.classList.contains("start_divider"))return function(e){return!e.classList.contains("edit_field_type_form")&&!e.querySelector(".edit_field_type_form")&&!(e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"))}(e);var r=e.classList.contains("edit_field_type_hidden"),n=e.classList.contains("edit_field_type_user_id");return!r&&!n&&function(e,t){if(ke(t))return!1;if(jQuery(e).children("ul.frm_sorting").not(".start_divider").length>0)return!1;var r=e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"),n=e.classList.contains("edit_field_type_form");return null===t.closest(".start_divider")||!r&&!n}(e,t)}(e,t)}function xe(e){return e&&e.matches("#frm-show-fields > li:last-child")}function Ee(e){return e.classList.contains("frm_field_box")&&!e.classList.contains("form-field")}function ke(e){return null!==e.querySelector(".edit_field_type_break, .edit_field_type_hidden, .edit_field_type_user_id")}function Le(e){var t=document.getElementById(e),r=jQuery(t),n=[],i=function(e){var t=e.querySelector(".frm_hidden_fdata");e.classList.add("frm_load_now"),null!==t&&n.push(t.innerHTML)},o=t;i(o);for(var a=Se(o);a&&n.length<15;)i(a),o=a,a=Se(a);jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_load_field",field:n,form_id:k,nonce:frmGlobal.nonce},success:function(e){return function(e,t,r){var n,i;if(0===(e=e.replace(/^\s+|\s+$/g,"")).indexOf("{")){for(n in e=JSON.parse(e))jQuery("#frm_field_id_"+n).replaceWith(e[n]),V("#frm_field_id_"+n+".edit_field_type_divider ul.frm_sorting"),X(document.getElementById("frm_field_id_"+n));((i=t.nextAll(".frm_field_loading:not(.frm_load_now)")).length||(i=jQuery(document.getElementById("frm-show-fields")).find(".frm_field_loading:not(.frm_load_now)")).length)&&Le(i.attr("id")),lo(),Tr(),Be();var o=new Event("frm_ajax_loaded_field",{bubbles:!1});o.frmFields=r.map((function(e){return JSON.parse(e)})),document.dispatchEvent(o)}else jQuery(".frm_load_now").removeClass(".frm_load_now").html("Error")}(e,r,n)}})}function Se(e){var t;return e.nextElementSibling?e.nextElementSibling:null===(t=e.parentNode)||void 0===t||null===(t=t.closest(".frm_field_box"))||void 0===t||null===(t=t.nextElementSibling)||void 0===t?void 0:t.querySelector(".form-field")}function Ae(){var e=jQuery(this);if(e.hasClass("disabled"))return!1;var t=e.closest(".frmbutton").attr("id");if(!ge(t)){var r=0;"summary"===t&&(r=j.children('li[data-type="break"]').length>0?1:0);var n=k;return jQuery.ajax({type:"POST",url:ajaxurl,data:pe(t,0,n,r),success:function(e){Ie(e);var r=he(e);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:e,fieldId:r,fieldType:t,form_id:n})},error:je}),!1}}function Ie(e){document.getElementById("frm_form_editor_container").classList.add("frm-has-fields");var t=$e(e),r=j[0].querySelector(".edit_field_type_submit");r?jQuery(r.closest(".frm_field_box:not(.form-field)")).before(t):j.append(t),Ue(e,!0),t.each((function(){K(this.querySelector("ul.frm_sorting")),X(this.querySelector(".form-field"),".frm-move")}))}function Be(){var e=!0,t=document.querySelectorAll(".frmjs_prod_field_opt_cont");j.find("li.edit_field_type_product").length>1&&(e=!1);for(var r=0;r',i.appendChild(document.createTextNode(" ")),i.appendChild(o),n.appendChild(i),e.appendChild(n)}))}(t,!0===e),(r=jQuery(t)).offset().left>jQuery(window).width()-r.outerWidth()&&(t.style.left=-r.outerWidth()+"px");var n=t.firstElementChild.querySelector("a");n&&n.focus()}}),0)}function Pe(){He(!0)}function ze(e){var t=e.target.closest(".frm-section-collapsed");t&&("show"===e.type?t.style.zIndex=3:t.style.zIndex=1)}function Re(e){var t={class:"frm_delete",icon:"frm_delete_icon"};return t.label=B(e?"Delete Group":"Delete","formidable"),t}function Ge(e){var t={class:"frm_clone",icon:"frm_clone_icon"};return t.label=B(e?"Duplicate Group":"Duplicate","formidable"),t}function $e(e){var t=d();"string"==typeof e?t.innerHTML=e:t.appendChild(e);var r=jQuery();return Array.from(t.children).forEach((function(e){r=r.add(jQuery("
                              • ").addClass("frm_field_box").html(jQuery("
                                  ").addClass("frm_grid_container frm_sorting").append(e)))})),r}function We(e){var t=s("ul",{className:"frm_grid_container frm_sorting"}),r=s("li",{className:"frm_field_box",child:t});e.replaceWith(r),t.appendChild(e),K(t),X(r,".frm-move")}function Ue(e,t){var r,n,i=/id="(\S+)"/.exec(e),o=document.getElementById(i[1]),a="#"+i[1]+".edit_field_type_divider ul.frm_sorting.start_divider",l=jQuery(a),s=o.getAttribute("data-type");r=e,(n=d()).innerHTML=r,n.querySelectorAll(".form-field").forEach(Ve);var c,f,u=!1;if(Mi(),V(a),"quantity"===s&&function(e){var t=e.getAttribute("data-fid"),r=document.getElementById("field_options[product_field_"+t+"]");null!==r&&(rt(r),ii(document.getElementById("frm-single-settings-"+t)))}(o),"product"!==s&&"quantity"!==s||Be(),l.length)l.parent(".frm_field_box").children(".frm_no_section_fields").addClass("frm_block");else{var m=jQuery(o).closest("ul.frm_sorting.start_divider");m.length&&(En(m),u=!0)}if(-1!==e.indexOf("frm-collapse-page")&&Tr(),f="frm-newly-added",(c=o).classList?c.classList.add(f):c.className+=" "+f,setTimeout((function(){o.classList.remove("frm-newly-added")}),1e3),t){var _=o.getBoundingClientRect(),p=document.getElementById("post-body-content");_.top>=0&&_.left>=0&&_.right<=(window.innerWidth||document.documentElement.clientWidth)&&_.bottom<=(window.innerHeight||document.documentElement.clientHeight)||p.scroll({top:p.scrollHeight,left:0,behavior:"smooth"}),!1===u&&En(l)}Je(),lo(),document.getElementById("frm-show-fields").classList.remove("frm-over-droppable");var g=new Event("frm_added_field",{bubbles:!1});g.frmField=o,g.frmSection=a,g.frmType=s,g.frmToggles=u,document.dispatchEvent(g)}function Ve(e){if(e.dataset.fid){var t=document.getElementById("draft_fields");t&&(""===t.value?t.value=e.dataset.fid:t.value.split(",").includes(e.dataset.fid)||(t.value+=","+e.dataset.fid))}}function Ke(e){jQuery("#new_fields .frm-single-settings").addClass("frm_hidden"),jQuery("#frm-options-panel > .frm-single-settings").removeClass("frm_hidden"),Je(e)}function Je(e){jQuery("li.ui-state-default.selected").removeClass("selected"),jQuery(".frm-show-field-settings.selected").removeClass("selected"),e||gr()}function Ye(){var e=this.value,t=function(e){var t,r=[],n=e.split(""),i=n.length,o=["{","[","("],l={"}":"{",")":"(","]":"["},s=[];for(t=0;t0||s.length>0?a.unmatched_parens+"\n\n":""}(e);t+=function(e,t){var r=function(e,t){var r="";return function(e){return jQuery(e).siblings('label[for^="calc_type"]').children("input").prop("checked")}(t)||/\[(date|time|email|ip)\]/.test(e)&&(r=a.text_shortcodes+"\n\n"),r}(e,t);return r+=function(e){var t="";return/\[id\]|\[key\]|\[if\s\w+\]|\[foreach\s\w+\]|\[created-at(\s*)?/g.test(e)&&(t+=a.view_shortcodes+"\n\n"),t}(e)}(e,this),""!==t&&H(e+"\n\n"+t)}function Xe(e,t){for(var r,n,i,o=!1,a=0;a"+l[t].fieldName+"")):(r=r?" checked":"",i.push('"));e.innerHTML=i.join("")}function nt(){for(var e=document.querySelectorAll(".frmjs_prod_field_opt"),t=0;t'):(n.innerHTML=mn(r),"TEXTAREA"===n.nodeName&&n.classList.contains("wp-editor-area")&&jQuery(n).trigger("change"),n.classList.contains("frm_primary_label")&&"break"===n.nextElementSibling.getAttribute("data-ftype")&&(n.nextElementSibling.querySelector(".frm_button_submit").textContent=r)))}function at(e){var t=parseFloat(e.getAttribute("max")),r=parseFloat(e.getAttribute("min"));return(t-r)/2+r}function lt(){var e,t=this.getAttribute("data-fid"),r="";["field_options_max_","frm_format_"].forEach((function(e){var n=document.getElementById(e+t);n&&(r+=n.value)})),"text"===(e=document.getElementsByName("field_options[type_"+t+"]")[0]).options[e.selectedIndex].value&&dt(""!==r,".frm_invalid_msg"+t)}function st(){var e=this.id.replace("frm_","").replace("req_field_",""),t=this.checked,r=jQuery("#field_label_"+e+" .frm_required");if(dt(t,".frm_required_details"+e),t){var n=jQuery('input[name="field_options[required_indicator_'+e+']"]');""===n.val()&&n.val("*"),r.removeClass("frm_hidden")}else r.addClass("frm_hidden")}function dt(e,t){if($msg=jQuery(t),e)$msg.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast");else{var r=$msg.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not("+t+"):visible").length;r.css("display",""),0===n&&$msg.closest(".frm_validation_msg").fadeOut("fast")}}function ct(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(".frm_unique_details"+e);if(this.checked)t.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast"),$unqDetail=jQuery(".frm_unique_details"+e+" input"),""===$unqDetail.val()&&$unqDetail.val(a.default_unique);else{var r=t.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not(.frm_unique_details"+e+"):visible").length;r.css("display",""),0===n&&t.closest(".frm_validation_msg").fadeOut("fast")}}function ft(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(this).val(),r=jQuery(document.getElementById("frm_field_id_"+e));if(dt(""!==t,".frm_conf_details"+e),""!==t){var n=jQuery(".frm_validation_box .frm_conf_details"+e+" input");""===n.val()&&n.val(a.default_conf),function(e){var t=document.getElementsByName("field_options[type_"+e+"]")[0].value;ut(document.getElementById("field_description_"+e),"field_options[description_"+e+"]",a["enter_"+t]),ut(document.getElementById("conf_field_description_"+e),"field_options[conf_desc_"+e+"]",a["confirm_"+t])}(e),"inline"===t?r.removeClass("frm_conf_below").addClass("frm_conf_inline"):"below"===t&&r.removeClass("frm_conf_inline").addClass("frm_conf_below"),jQuery(".frm-conf-box-"+e).removeClass("frm_hidden")}else jQuery(".frm-conf-box-"+e).addClass("frm_hidden"),setTimeout((function(){r.removeClass("frm_conf_inline frm_conf_below")}),200)}function ut(e,t,r){e.innerHTML===a.desc&&(e.innerHTML=r,document.getElementsByName(t)[0].value=r)}function mt(e){var t=JSON.parse(this.getAttribute("data-opts"));return e.preventDefault(),document.getElementById("frm_bulk_options").value=t.join("\n"),!1}function _t(){var e,t=jQuery(this).closest(".frm-single-settings").data("fid"),r=jQuery("#frm_field_"+t+"_opts .frm_option_template").prop("outerHTML"),n=jQuery(this).data("opttype"),i=0,o=function(e){for(var t=0,r=0,n=jQuery("#frm_field_"+e+"_opts li"),i=0;ti||"000"===i)&&(i=r)}return i}(t);if("000"!==o&&(i=o+1),"other"===n){document.getElementById("other_input_"+t).value=1;var a=jQuery(this).data("ftype");"radio"!==a&&"select"!==a||jQuery(this).fadeOut("slow");var l={action:"frm_add_field_option",field_id:t,opt_key:i,opt_type:n,nonce:frmGlobal.nonce};jQuery.post(ajaxurl,l,(function(e){jQuery(document.getElementById("frm_field_"+t+"_opts")).append(e),rn(t)}))}else r=(r=(r=(r=(r=r.replace(new RegExp('optkey="000"',"g"),'optkey="'+i+'"')).replace(new RegExp("-000_","g"),"-"+i+"_")).replace(new RegExp('-000"',"g"),"-"+i+'"')).replace(new RegExp("\\[000\\]","g"),"["+i+"]")).replace("frm_hidden frm_option_template",""),zo(t,r={newOption:r}),this.closest(".frm_single_option").after(r.newOption),rn(t);null===(e=this.closest(".frm_sortable_field_opts"))||void 0===e||null===(e=e.querySelectorAll(".frm_remove_tag.frm_disabled"))||void 0===e||e.forEach((function(e){return e.classList.remove("frm_disabled")})),Mi()}function pt(){gt(jQuery(this).closest(".frm-single-settings").data("fid"),this.value)}function gt(e,t){var r=jQuery(".frm_multiple_cont_"+e);"select"===t?r.fadeIn("fast"):r.fadeOut("fast")}function yt(){var e=jQuery(this).closest(".frm-single-settings").data("fid");Oo(jQuery(".field_"+e+"_option_key")),jQuery(".field_"+e+"_option").toggleClass("frm_with_key")}function ht(){var e,t,r=jQuery(this).closest(".frm-single-settings"),n=r.data("fid"),i=document.getElementById("frm_field_id_"+n);wt(jQuery(this)),Oo(jQuery(".field_"+n+"_image_id")),Oo(jQuery(".frm_toggle_image_options_"+n)),Oo(jQuery(".frm_image_size_"+n)),Oo(jQuery(".frm_alignment_"+n)),Oo(jQuery(".frm-add-other#frm_add_field_"+n)),(e=gn(n))?(bt(n,"inline"),vt(i),t=tn(n),i.classList.add("frm_image_options"),i.classList.add("frm_image_size_"+t),r.find(".frm-bulk-edit-link").hide()):(i.classList.remove("frm_image_options"),vt(i),bt(n,"block"),r.find(".frm-bulk-edit-link").show()),wp.hooks.doAction("frm_image_options_toggled",r[0],e)}function vt(e){e.classList.remove("frm_image_size_","frm_image_size_small","frm_image_size_medium","frm_image_size_large","frm_image_size_xlarge")}function bt(e,t){jQuery("#field_options_align_"+e).val(t).trigger("change")}function jt(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);Qt(),gn(e)&&(vt(t),t.classList.add("frm_image_options"),t.classList.add("frm_image_size_"+tn(e)))}function wt(e){var t=e.closest(".frm-single-settings").data("fid");jQuery(".field_"+t+"_option").trigger("change")}function Qt(){wt(jQuery(this))}function xt(e){var t=e.target.closest(".frm_image_preview_wrapper");e.preventDefault(),wp.media.model.settings.post.id=0;var r=wp.media.frames.file_frame=wp.media({multiple:!1,library:{type:["image"]}});r.on("select",(function(){var e=r.state().get("selection").first().toJSON(),n=t.querySelector("img");n.setAttribute("src",e.url),n.classList.remove("frm_hidden"),n.removeAttribute("srcset"),t.querySelector(".frm_image_preview_frame").style.display="block",t.querySelector(".frm_image_preview_title").textContent=e.filename,t.querySelector(".frm_choose_image_box").style.display="none";var i=jQuery(t);i.siblings('input[name*="[label]"]').data("frmimgurl",e.url),i.find("input.frm_image_id").val(e.id).trigger("change"),wp.media.model.settings.post.id=0})),r.open()}function Et(e){var t=jQuery(this).closest(".frm_image_preview_wrapper");e.preventDefault(),e.stopPropagation(),t.find("img").attr("src",""),t.find(".frm_image_preview_frame").hide(),t.find(".frm_choose_image_box").show(),t.find("input.frm_image_id").val(0).trigger("change")}function kt(){var e=jQuery(this).closest("li").find(".frm_form_fields select");this.checked?e.attr("multiple","multiple"):e.removeAttr("multiple")}function Lt(){var e=document.getElementById("dropform-search-input");null!==e&&setTimeout((function(){e.focus()}),100)}function St(e){var t=e.target,r=t.closest(".frm_warning_style");jQuery(r).fadeOut(400,(function(){return r.remove()}));var n=t.dataset.action,i=new FormData;g(n,i)}function At(e){e.preventDefault()}function It(){var e,t=this.parentNode,r=t.parentNode,n=r.querySelectorAll("li:not(.frm_hidden)");2===n.length&&(null===(e=Array.from(n).find((function(e){return e!==t})).querySelector(".frm_remove_tag"))||void 0===e||e.classList.add("frm_disabled"));var i,o=this.getAttribute("data-fid");jQuery(t).fadeOut("fast",(function(){wp.hooks.doAction("frm_before_delete_field_option",this),jQuery(t).remove(),jQuery(r).find(".frm_other_option").length<1&&(null!==(i=document.getElementById("other_input_"+o))&&(i.value=0),jQuery("#other_button_"+o).fadeIn("fast"))})),Mi()}function Bt(){var e,t,r,n;(e=jQuery(this)).is(":checked")&&(t=function(){setTimeout((function(){e.prop("checked",!1)}),0)},r=function(){e.off("mouseup",n)},n=function(){t(),r()},e.on("mouseup",n),e.one("mouseout",r))}function Ct(){this.value===a.new_option&&(this.setAttribute("data-value-on-focus",this.value),this.value="")}function qt(e){return C(B("Are you sure you want to delete these %1$s selected field(s)?","formidable"),e)}function Nt(){var e=a.conf_delete,t=this.parentNode.parentNode.parentNode.parentNode.parentNode,r=t.parentNode,n=jQuery(this).closest("li.form-field"),i=n.data("fid");if("divider"===n.data("ftype")){var o=document.querySelectorAll(".frm-field-group-hover-target .start_divider .frm_field_box"),l=0;o.forEach((function(e){var t=e.querySelectorAll("li.form-field");t&&(l+=t.length)})),l&&(e=qt(++l))}return r.classList.contains("frm-section-collapsed")||r.classList.contains("frm-page-collapsed")||("divider_section_only"===t.className&&(e=a.conf_delete_sec),this.setAttribute("data-frmverify",e),this.setAttribute("data-frmverify-btn","frm-button-red"),this.setAttribute("data-deletefield",i),Te(),F(this)),!1}function Tt(){this.closest("li.form-field").click()}function Ot(){var e,t;null!==(e=document.querySelector(".frm-field-group-hover-target"))&&(e.classList.add("frm-selected-field-group"),(t=document.createElement("div")).classList.add("frm-delete-field-groups","frm_hidden"),document.body.appendChild(t),t.click())}function Dt(){var e=document.querySelector(".frm-field-group-hover-target");if(null!==e){var t="frm_field_group_"+we(),r=document.createTextNode("");We(r);var n=jQuery(r).closest("li").get(0);n.classList.add("frm_hidden");var i=n.querySelector("ul");i.id=t,jQuery(e.closest("li.frm_field_box")).after(n);var o=ae(jQuery(e)),a=[],l=[],s=o.length,d={},c=0;jQuery(n).on("frm_added_duplicated_field_to_row",(function(e,t){if(d[jQuery(t.duplicatedFieldHtml).attr("data-fid")]=t.originalFieldId,!(s>++c)){var r=jQuery(i),o=ae(r);l.forEach((function(e){e.remove()}));for(var f=0;f0&&ir(Ut(t)))&&l>=12&&(l=Math.floor(12/t)),s=0;s',""),t);e.prepend(r),document.getElementById("frm-field-group-message-dismiss").addEventListener("click",(function(){mr(document.getElementById("frm-field-group-message"))}))}}(),"ul"===e.originalEvent.target.nodeName.toLowerCase()){var t=document.querySelector(".frm-field-group-hover-target");if(t){var r=e.ctrlKey||e.metaKey,n=e.shiftKey,i=t.classList.contains("frm-selected-field-group"),o=function(){var e=jQuery(".frm-selected-field-group");if(e.length)return e;var t=_r();if(t){var r=t.closest("ul");if(r&&1===ae(jQuery(r)).length)return r.classList.add("frm-selected-field-group"),jQuery(r)}return jQuery()}(),a=o.length;if(r||n){var l=_r();if(null===l||jQuery(l).siblings("li.form-field").length||(l.parentNode.classList.add("frm-selected-field-group"),++a),r){if(i)return--a,t.classList.remove("frm-selected-field-group"),void pr(a);++a}else if(n&&!i){++a;var s=o.first();(s.parent().index()=2||1===e&&ae(jQuery(document.querySelector(".frm-selected-field-group"))).length>1?function(){var e,t,r,n,i;if(null!==(e=document.getElementById("frm_field_multiselect_popup")))return e.classList.toggle("frm-unmergable",!hr()),e;(e=d()).id="frm_field_multiselect_popup",hr()||e.classList.add("frm-unmergable"),(t=d()).classList.add("frm-merge-fields-into-row"),t.textContent=B("Merge into row","formidable"),(r=document.createElement("a")).style.marginLeft="5px",r.classList.add("frm_icon_font","frm_arrowdown6_icon"),r.setAttribute("href","#"),t.appendChild(r),e.appendChild(t),(n=d()).classList.add("frm-multiselect-popup-separator"),e.appendChild(n),(i=d()).classList.add("frm-delete-field-groups"),i.appendChild(Rt("frm_trash_svg")),e.appendChild(i),document.getElementById("post-body-content").appendChild(e),jQuery(e).hide().fadeIn()}():yr(),Me()}function gr(e){if(void 0!==e){if(null!==e.originalEvent.target.closest("#frm-show-fields"))return;if(e.originalEvent.target.classList.contains("frm-merge-fields-into-row"))return;if(null!==e.originalEvent.target.closest(".frm-merge-fields-into-row"))return;if(e.originalEvent.target.classList.contains("frm-custom-field-group-layout"))return;if(e.originalEvent.target.classList.contains("frm-cancel-custom-field-group-layout"))return}jQuery(".frm-selected-field-group").removeClass("frm-selected-field-group"),jQuery(document).off("click",gr),yr()}function yr(){var e=document.getElementById("frm_field_multiselect_popup");null!==e&&e.remove()}function hr(){var e,t,r,n,i;if(1===(r=(e=document.querySelectorAll(".frm-selected-field-group")).length))return!1;for(t=0,n=0;n6)return!1}return!0}function vr(e){var t;null===e.originalEvent.target.closest("#frm_field_group_popup")&&(e.originalEvent.target.classList.contains("frm-custom-field-group-layout")||(t=Pt(br(),document.querySelector(".frm-selected-field-group").firstChild),this.appendChild(t)))}function br(){var e=0;return jQuery(document.querySelectorAll(".frm-selected-field-group")).each((function(){e+=ae(jQuery(this)).length})),e}function jr(){var e,t,r,n;n=[],jQuery(".frm-selected-field-group > li.form-field").each((function(){n.push(this.dataset.fid)})),t=function(e){return function(t){t.preventDefault(),function(e){e.forEach((function(e){Qr(e)}))}(e)}}(e=n),null!==(r=document.getElementById("frm_field_multiselect_popup"))&&r.remove(),this.setAttribute("data-frmverify",qt(e.length)),F(this);var i=document.getElementById("frm-confirmed-click");null==i||i.removeAttribute("data-deletefield"),jQuery(i).on("click",t),jQuery("#frm_confirm_modal").one("dialogclose",(function(){jQuery(i).off("click",t)}))}function wr(){Qr(this.getAttribute("data-deletefield"))}function Qr(e){var t=jQuery("#frm_field_id_"+e);xr(e),t.hasClass("edit_field_type_divider")&&t.find("li.frm_field_box[data-fid]").each((function(){xr(this.getAttribute("data-fid"))})),xn()}function xr(e){jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_delete_field",field_id:e,nonce:frmGlobal.nonce},success:function(){var t,r=jQuery(document.getElementById("frm_field_id_"+e)),n=jQuery("#frm-single-settings-"+e);n.is(":visible")&&(null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click(),document.querySelector("#frm-options-panel .frm-single-settings").classList.remove("frm_hidden")),function(e){var t=e[0].querySelectorAll(".frm-inline-modal[data-fills]");t.length&&t.forEach((function(e){e.classList.add("frm_hidden"),e.removeAttribute("data-fills"),e.closest("form").appendChild(e)}))}(n),n.remove(),r.fadeOut("slow",(function(){var e,t=r.closest(".start_divider"),n=r.data("type"),i=r.siblings("li.form-field");if(i.length||(r.is(".edit_field_type_end_divider")?i.length=r.closest("li.form-field").siblings():e=r.closest("ul.frm_sorting").parent()),r.remove(),"break"===n?Tr():"product"===n&&(Be(),nt()),i.length?le(i.first()):e.remove(),0===jQuery("#frm-show-fields li").length||function(){if(j.get(0).childElementCount>1)return!1;var e=j.get(0).firstElementChild.firstElementChild.querySelectorAll("li.frm_field_box");return!(e.length>1)&&e[0].classList.contains("edit_field_type_submit")}()){var o=document.getElementById("frm_form_editor_container");o.classList.remove("frm-has-fields"),o.classList.add("frm-empty-fields")}else t.length&&En(t);R()})),r.length&&wp.hooks.doAction("frm_after_delete_field",r[0])}})}function Er(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_logic_row_"+e).querySelectorAll(".frm_logic_row");return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_logic_row",form_id:t,field_id:e,nonce:frmGlobal.nonce,meta_name:kr(r,"frm_logic_"+e+"_"),fields:tt()},success:function(t){jQuery(document.getElementById("logic_"+e)).fadeOut("fast",(function(){var r=document.getElementById("frm_logic_row_"+e);r.insertAdjacentHTML("beforeend",t);var n=r.querySelector(".frm_logic_row:last-child .frm-logic-rule-text");n&&(n.textContent=r.dataset.ruleText);var i=r.closest(".frm_logic_rows");i.style.height="auto",jQuery(i).fadeIn("fast")}))}}),!1}function kr(e,t,r){return e.length?parseInt(e[e.length-1].id.replace(t,""),10)+1:void 0!==r?r:0}function Lr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_watch_lookup_block_"+e).children;return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_watch_lookup_row",form_id:t,field_id:e,row_key:kr(r,"frm_watch_lookup_"+e+"_"),nonce:frmGlobal.nonce},success:function(t){var r,n=jQuery(document.getElementById("frm_watch_lookup_block_"+e));n.append(t),n.fadeIn("slow"),null===(r=document.getElementById("frm_watch_lookup_label_".concat(e)))||void 0===r||r.classList.remove("frm_hidden!")}}),!1}function Sr(e){var t,r,n=jQuery(e).closest(".frm-single-settings").attr("data-fid"),i=jQuery(e).closest("ul").get(0).querySelectorAll(".field_"+n+"_option");for(t in i)if((r=i[t]).id!==e.id&&r.value===e.value&&"true"!==r.getAttribute("data-duplicate"))return!0;return!1}function Ar(){var e,t;null===this.getAttribute("data-value-on-load")&&(this.setAttribute("data-value-on-load",this.value),t=jQuery(this).closest(".frm-single-settings").attr("data-fid"),(e=document.createElement("input")).value=this.value,e.setAttribute("type","hidden"),e.setAttribute("name","optionmap["+t+"]["+this.value+"]"),this.parentNode.appendChild(e),void 0===S[t]&&(S[t]={}),S[t][this.value]=e),"true"===this.getAttribute("data-duplicate")&&(this.removeAttribute("data-duplicate"),Sr(this))?this.setAttribute("data-value-on-focus",this.getAttribute("data-value-on-load")):""===this.value&&a.new_option===this.getAttribute("data-value-on-focus")||this.setAttribute("data-value-on-focus",this.value)}function Ir(e){var t,r=e.closest(".frm_single_option");return e.parentElement.classList.contains("frm_single_option")?{newValue:r.querySelector('.frm_option_key input[type="text"]').value,newLabel:t=e.value}:(t=r.querySelector('input[type="text"]').value,{newValue:e.value,newLabel:t})}function Br(){var e,t,r,n,i,o,a,l,s,d,c,f,u=function(e){var t=function(e){var t,r,n=null!==(t=null===(r=e.closest(".frm-single-settings").querySelector(".frm_toggle_sep_values"))||void 0===r?void 0:r.checked)&&void 0!==t&&t,i=e.closest(".frm_single_option");return n&&e.parentElement.classList.contains("frm_single_option")?{oldValue:i.querySelector('.frm_option_key input[type="text"]').getAttribute("data-value-on-focus"),oldLabel:e.getAttribute("data-value-on-focus")}:{oldValue:e.getAttribute("data-value-on-focus"),oldLabel:i.querySelector('input[type="text"]').getAttribute("data-value-on-focus")}}(e),r=t.oldValue,n=t.oldLabel,i=Ir(e);return{oldValue:r,oldLabel:n,newValue:i.newValue,newLabel:i.newLabel}}(this),m=u.oldValue,_=u.oldLabel,p=u.newValue,g=u.newLabel;if(m!==p||_!==g){var y=this.closest(".frm-single-settings");if(t=y.getAttribute("data-fid"),e=this.getAttribute("data-value-on-load"),Sr(this))return this.setAttribute("data-duplicate","true"),void(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=e));for(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=p),s=[],rows=D.querySelectorAll(".frm_logic_row"),o=rows.length,a=0;a1)for(document.getElementById("frm-fake-page").style.display="block",e=0;e200)&&(H(a.repeat_limit_min),this.value="")}function Jr(){var e=this.value;""!==e&&(e<1||e>200)&&(H(a.checkbox_limit),this.value="")}function Yr(e,t){jQuery(e).closest(".frm_field_box").find(".frm_"+t+"_form_row .frm_repeat_label").text(e.value)}function Xr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=this.value,r=document.getElementById("frm_show_selected_fields_"+e),n=document.getElementById("frm_show_selected_forms_"+e);jQuery(n).find("select").val(""),"form"===t?(n.style.display="inline",function(e){if(null!==e)for(;e.firstChild;)e.removeChild(e.firstChild)}(r)):(r.style.display="none",n.style.display="none",wn(t,e))}function Zr(){var e,t;(e=en(this))&&(t=jQuery(this).closest(".frm_single_option"),function(e,t,r){var n,i,o,a,l,s,c=r.data("optkey"),f=pn(e),u=jQuery('label[for="field_'+t+"-"+c+'"]'),m="field_options[options_"+e+"]["+c+"]",_=jQuery('input[name="'+m+'[label]"]');if(u.length<1)return rn(e),void((o=r.find('input[name^="default_value_"]')).is(":checked")&&_.length>0&&jQuery('select[name^="item_meta['+e+']"]').val(_.val()));if(a=u.children("input"),n=_.length<1?(_=jQuery('input[name="'+m+'"]')).val():f?jQuery('input[name="'+m+'[value]"]').val():_.val(),!(_.length<1)){if(i=u[0].childNodes,gn(e))l=function(e,t,r){var n,i,o;return(n=e.find("img"))&&(i=n.attr("src")),o=yn(t),fn(t),_n(r.val(),o,i)}(r,e,_),(s=u.find(".frm_image_option_container")).length>0?s.replaceWith(l):(i[i.length-1].nodeValue="",u.append(l));else{var p=!1;i.forEach((function(t,r){if(!1===p)"INPUT"===t.tagName&&(p=r);else if(r===p+1){var n="";!function(e){var t=document.getElementsByName("field_options[image_options_"+e+"]"),r=Array.from(t).find((function(e){return e.checked&&"buttons"===e.value}));return void 0!==r}(e)?t.nodeValue=" "+_.val():(n=d({className:"frm_label_button_container",text:" "+_.val()}),u[0].replaceChild(n,t))}else u[0].removeChild(t)}))}a.val(n),o=r.find('input[name^="default_value_"]'),a.prop("checked",!!o.is(":checked"))}}(e.fieldId,e.fieldKey,t))}function en(e){var t;return!!(t=jQuery(e).closest(".frm_sortable_field_opts")).length&&{fieldId:t.attr("id").replace("frm_field_","").replace("_opts",""),fieldKey:t.data("key")}}function tn(e){var t,r=document.getElementById("field_options_image_size_"+e),n="";return null!==r&&""!==(t=r.value)&&(n=t),n}function rn(e){var t,r,n,i,o,a=jQuery('[name^="item_meta['+e+']"]');if(!(a.length<1)){if(a.is("select"))null!==(i=document.getElementById("frm_placeholder_"+e))&&""===i.value?sn(a[0],{sourceID:e}):sn(a[0],{sourceID:e,placeholder:i.value});else{r=cn(e),jQuery("#field_"+e+"_inner_container > .frm_form_fields").html(""),o=en(jQuery("#frm_delete_field_"+e+"-000_container"));var l=jQuery("#field_"+e+"_inner_container > .frm_form_fields"),s=gn(e),d=s?tn(e):"",c=s?"frm_image_option frm_image_"+d+" ":"",f=Ho(e);for(n="hidden"===a.attr("type")?a.data("field-type"):a.attr("type"),t=0;t=0;a--){var u;l=d[a];var m=null===(u=document.getElementById("frm_field_"+e+"_opts").querySelector('.frm_option_key input[type="text"]'))||void 0===u?void 0:u.value;m||(m=l),s=i.querySelector('option[value="'+m+'"]');var _=nn(e,l),p=_.newValue,g=_.newLabel,y=document.querySelectorAll("#frm_field_"+e+"_opts input[data-value-on-focus]"),h=Array.from(y).find((function(e){return e.value===l}));if(h){var v=h.dataset.valueOnFocus;if(v&&i.querySelector('option[value="'+v+'"]'))continue}an(i,s,p,g)}null!==(s=i.querySelector('option[value=""]'))&&i.prepend(s)}}function an(e,t,r,n){null!==t||e.querySelector('option[value="'+r+'"]')||((t=frmDom.tag("option",{text:n})).value=r),e.prepend(t)}function ln(e,t,r,n,i,o){var a,l="",s=-1!==t.key.indexOf("other"),d="field_"+n+"-"+t.key,c="scale"===e?"radio":e;return a='',this.getSingle=function(){return""!==(l=wp.hooks.applyFilters("frm_admin.build_single_option_template",l,{opt:t,type:e,fieldId:r,classes:o,id:d}))?l:'
                                  "+(s?a:"")+"
                                  "},this.getSingle()}function sn(e,t){if(null!==e){var r=t.sourceID,n=t.placeholder,i=Ho(r),o=t.other;!function(e){var t;if(void 0!==e.options)for(t=e.options.length-1;t>=0;t--)e.remove(t)}(e);for(var a=cn(r),l=void 0!==n,s=0;s0||d[t].name.indexOf("[value]")>0||d[t].name.indexOf("[image]")>0||d[t].name.indexOf("[price]")>0||(i=r=d[t].value,o=d[t].name.replace("field_options[options_"+e+"][","").replace("[label]","").replace("]",""),m&&(n=d[t].name.replace("[label]","[value]"),r=jQuery('input[name="'+n+'"]').val()),u&&(i=_n(i,f,un(d[t]),fn(e))),a={saved:r,label:i=frmAdminBuild.hooks.applyFilters("frm_choice_field_label",i,e,d[t],u),checked:(l=d[t].id,field=jQuery("#"+l),0!==field.length&&(checkbox=field.siblings("input[type=checkbox]"),checkbox.length&&checkbox.prop("checked"))),key:o},c&&(n=d[t].name.replace("[label]","[price]"),a.price=jQuery('input[name="'+n+'"]').val()),s.push(a));return s}function fn(e){var t=document.getElementById("frm-single-settings-"+e);return null===t?"radio":t.classList.contains("frm-type-checkbox")?"checkbox":"radio"}function un(e){var t,r=jQuery(e).siblings(".frm_image_preview_wrapper");return r.length&&(t=r.find("img")).length?t.attr("src"):""}function mn(e){(e instanceof Element||e instanceof Document)&&(e=e.outerHTML);var t=jQuery.parseHTML(e).reduce((function(e,t){var r=frmDom.cleanNode(t);return"#text"===r.nodeName?e+r.textContent:e+r.outerHTML}),"");return t!==e?mn(t):t}function _n(e,t,r,n){var i,o,l,c=e;return c=mn(c),r?o=m({src:r,alt:c}):(o=d({className:"frm_empty_url"})).innerHTML=a.image_placeholder_icon,i=t?" frm_label_with_image":"",(l=s("span",{className:"frm_text_label_for_image_inner"})).innerHTML=c,s("span",{className:"frm_image_option_container"+i,children:[o,s("span",{className:"frm_text_label_for_image",child:l})]})}function pn(e){return hn("separate_value_"+e)}function gn(e){for(var t=!1,r=document.getElementsByName("field_options[image_options_"+e+"]"),n=0;n=0&&(r.splice(t,1),e.val(r),e.next(".btn-group").find('.multiselect-container input[value=""]').prop("checked",!1))}(jQuery(this))}function An(e){e.val(""),e.next(".btn-group").find('.multiselect-container input[value!=""]').prop("checked",!1)}function In(){jQuery(".frm-hide-empty").each((function(){0===jQuery(this).text().trim().length&&jQuery(this).remove()}))}function Bn(e){e.preventDefault(),Cn(this)}function Cn(e,t){var r=document.getElementById(e.getAttribute("data-open")),n=jQuery(e).closest("p,ul"),i=void 0!==t;n.hasClass("frm-open")?(n.removeClass("frm-open"),r.classList.add("frm_hidden")):(i||(t=Gi(e)),null!==t&&(i||t.focus(),n.after(r),r.setAttribute("data-fills",t.id.replace("-proxy-input","")),0===r.id.indexOf("frm-calc-box")&&Ze(r,!0)),n.addClass("frm-open"),r.classList.remove("frm_hidden"),wp.hooks.doAction("frm_show_inline_modal",r,e))}function qn(e){e.preventDefault(),this.parentNode.classList.add("frm_hidden"),jQuery('.frm-open [data-open="'+this.parentNode.id+'"]').closest(".frm-open").removeClass("frm-open")}function Nn(e){var t=e.target;t.closest(".frm-inline-modal.frm-modal-no-dismiss")||t.closest(".frm-show-inline-modal")||t.closest("#frm_adv_info")||t.closest(".frm-token-proxy-input")||document.querySelectorAll(".frm-inline-modal.frm-modal-no-dismiss:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden"),e.previousElementSibling.classList.remove("frm-open")}))}function Tn(){var e,t,r,n,i,o,a,l=this.getAttribute("data-frmchange").split(",");for(e=0;e',r)),o.innerHTML=c,e.dataset.upsellImage&&o.appendChild(m({src:e.dataset.upsellImage,alt:e.dataset.upgrade})),a.href=function(e,t){var r=e.getAttribute("data-link");return null!=r&&""!==r||(r=t.getAttribute("data-default")),r}(e,a),s.style.display="none",i.style.display=_,l.style.display="block"===_?"inline-block":_,o.style.display=u,a.style.display="block"===f?"inline-block":f}function Yn(e){void 0===e&&(e=""),function(e){var t,r=jQuery(e+" :not(.frm_has_shortcodes) .frm_not_email_message, "+e+" :not(.frm_has_shortcodes) .frm_not_email_to, "+e+" :not(.frm_has_shortcodes) .frm_not_email_subject");for(t=0;t').before('')}function Xn(){var e="success";"options[edit_action]"===this.name&&(e="edit");var t=jQuery(this).val();jQuery("."+e+"_action_box").hide(),"redirect"===t?jQuery("."+e+"_action_redirect_box."+e+"_action_box").fadeIn("slow"):"page"===t?jQuery("."+e+"_action_page_box."+e+"_action_box").fadeIn("slow"):jQuery("."+e+"_action_message_box."+e+"_action_box").fadeIn("slow")}function Zn(e){if(m=e.target,p=jQuery(m),g=p.closest(".frm_form_action_settings"),(y=g.find(".widget-inside")).find("p, div, table").length||((_=g.find(".widget-top")).on("frm-action-loaded",(function(){p.trigger("click"),g.removeClass("open"),y.hide()})),_.trigger("click"),0)){var t=e.target.closest(".frm_form_action_settings"),r=t.querySelectorAll(".wp-editor-area");r.length&&r.forEach((function(e){tinymce.EditorManager.execCommand("mceRemoveEditor",!0,e.id)}));var n=jQuery(t).clone(),i=n.attr("id").replace("frm_form_action_",""),o=ei(i);n.find(".frm_action_id, .frm-btn-group").remove(),n.find('input[name$="['+i+'][ID]"]').val(""),n.find(".widget-inside").hide(),n.find("input[type=text], textarea, input[type=number]").prop("defaultValue",(function(){return this.value})),n.find("input[type=checkbox], input[type=radio]").prop("defaultChecked",(function(){return this.checked}));var a=new RegExp("\\["+i+"\\]","g"),l=new RegExp("_"+i+'"',"g"),s=new RegExp("-"+i+'"',"g"),c=new RegExp('"'+i+'"',"g"),f=n.html().replace(a,"["+o+"]").replace(l,"_"+o+'"');f=f.replace(s,"-"+o+'"').replace(c,'"'+o+'"');var u=d({id:"frm_form_action_"+o,className:n.get(0).className});u.setAttribute("data-actionkey",o),u.innerHTML=f,u.querySelectorAll(".wp-editor-wrap, .wp-editor-wrap *").forEach((function(e){"string"==typeof e.className&&(e.className=e.className.replace(i,o)),e.id=e.id.replace(i,o)})),u.classList.remove("open"),document.getElementById("frm_notification_settings").appendChild(u),r.length&&(r.forEach((function(e){frmDom.wysiwyg.init(e)})),u.querySelectorAll(".wp-editor-area").forEach((function(e){frmDom.wysiwyg.init(e)}))),u.classList.contains("frm_single_on_submit_settings")&&u.querySelector("input.frm-page-search")&&jo(u),lo(),wp.hooks.doAction("frm_after_duplicate_action",u)}var m,_,p,g,y}function ei(e){var t=parseInt(e,10)+11;return null!==document.getElementById("frm_form_action_"+t)&&(t=ei(++t)),t}function ti(){var e,t=jQuery(this).data("actiontype");if(!di(t)){var r=(e=kr(document.querySelectorAll(".frm_form_action_settings"),"frm_form_action_"),void 0!==document.getElementById("frm_form_action_"+e)&&(e+=100),A>=e&&(e=A+1),A=e,e),n=k,i=document.createElement("div");i.classList.add("frm_single_"+t+"_settings");var o=document.getElementById("frm_notification_settings");o.appendChild(i),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_action",type:t,list_id:r,form_id:n,nonce:frmGlobal.nonce},success:function(e){Mi(),i.remove(),document.querySelectorAll(".frm_form_action_settings.open").forEach((function(e){return e.classList.remove("open")}));var n=d();n.innerHTML=e;var a=n.querySelector(".widget-top");Array.from(n.children).forEach((function(e){return o.appendChild(e)})),jQuery(".frm_form_action_settings").fadeIn("slow");var l=document.getElementById("frm_form_action_"+r);l.classList.add("open"),document.getElementById("post-body-content").scroll({top:l.offsetTop+10,left:0,behavior:"smooth"}),si(t),Yn("#frm_form_action_"+r),lo(),jo(l),a&&jQuery(a).trigger("frm-action-loaded"),frmAdminBuild.hooks.doAction("frm_added_form_action",l)}})}}function ri(){var e=document.getElementById("frm_email_addon_menu").classList,t=document.getElementById("actions-search-input");e.contains("frm-all-actions")?(e.remove("frm-all-actions"),e.add("frm-limited-actions")):(e.add("frm-all-actions"),e.remove("frm-limited-actions")),t.value="",Io(t,"input")}function ni(e){e.on("Change",(function(){!function(e){var t,r;(t=document.querySelector(".frm-single-settings:not(.frm_hidden)"))&&null!==(r=t.querySelector(".wp-editor-wrap"))&&r.classList.contains("tmce-active")&&!tinyMCE.activeEditor.isHidden()&&(e.targetElm.value=e.getContent(),jQuery(e.targetElm).trigger("change"))}(e)}))}function ii(e){var t=this;if(null!==e)return this.fragment=document.createDocumentFragment(),this.initOnceInAllInstances=function(){void 0===ii.prototype.endMarker&&(ii.prototype.endMarker=document.getElementById("frm-end-form-marker"))},this.append=function(e){var r=null!==e?e.parentElement.classList:"";null!==e&&(r.contains("frm_field_box")||r.contains("divider_section_only"))&&t.fragment.appendChild(e)},this.moveFields=function(){w.insertBefore(t.fragment,ii.prototype.endMarker)},this.initOnceInAllInstances(),void 0!==e?(this.append(e),void this.moveFields()):{append:this.append,moveFields:this.moveFields}}function oi(){var e=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),t=this.getAttribute("data-emailrow");jQuery("#frm_form_action_"+e+" .frm_"+t+"_row").fadeIn("slow"),jQuery(this).fadeOut("slow")}function ai(){var e=jQuery(this).closest(".frm_form_action_settings"),t=this.getAttribute("data-emailrow"),r=".frm_"+t+"_row",n=".frm_"+t+"_button";jQuery(e).find(n).fadeIn("slow"),jQuery(e).find(r).fadeOut("slow",(function(){jQuery(e).find(r+" input").val("")}))}function li(){var e=jQuery(this).closest(".frm_form_action_settings"),t=".frm_from_to_match_row";e.find('input[name$="[post_content][from]"]').val()===e.find('input[name$="[post_content][email_to]"]').val()?jQuery(e).find(t).fadeIn("slow"):jQuery(e).find(t).fadeOut("slow")}function si(e){var t,r,n=document.querySelectorAll(".frm_"+e+"_action");di(e)?(t=n,r=ci(e)>0,t.forEach((function(e){e.classList.remove("frm_active_action"),e.classList.add("frm_inactive_action"),r&&e.classList.add("frm_already_used")}))):n.forEach((function(e){e.querySelector(".frm_show_upgrade")||(e.classList.remove("frm_inactive_action","frm_already_used"),e.classList.add("frm_active_action"))}))}function di(e){var t=function(e){return jQuery(".frm_single_"+e+"_settings").length}(e)>=ci(e),r={type:e};return wp.hooks.applyFilters("frm_action_at_limit",t,r)}function ci(e){return parseInt(jQuery(".frm_"+e+"_action").data("limit"),10)}function fi(){var e=a.only_one_action,t=this.dataset.limit;void 0!==t&&((t=parseInt(t))>1?e=e.replace(1,t).trim():e+=" "+a.edit_action_text),H(e)}function ui(){var e=jQuery(this).data("emailkey"),t=jQuery(this).closest(".frm_form_action_settings").find(".frm_action_name").val(),r=document.getElementById("form_id").value,n=document.getElementById("frm_logic_row_"+e),i=kr(n.querySelectorAll(".frm_logic_row"),"frm_logic_"+e+"_"),o=d({id:"frm_logic_"+e+"_"+i,className:"frm_logic_row frm_hidden"});return n.appendChild(o),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_logic_row",email_id:e,form_id:r,meta_name:i,type:t,nonce:frmGlobal.nonce},success:function(t){jQuery(document.getElementById("logic_link_"+e)).fadeOut("slow",(function(){o.insertAdjacentHTML("beforebegin",t),o.remove(),jQuery(n).parent(".frm_logic_rows").fadeIn("slow")}))}}),!1}function mi(){var e=jQuery("select.frm_single_post_field");e.css("border-color","");var t=this,r=jQuery(t).val();if(""===r||"checkbox"===r)return!1;e.each((function(){if(jQuery(this).val()===r&&this.name!==t.name)return this.style.borderColor="red",jQuery(t).val(""),H(a.field_already_used),!1}))}function _i(){var e=jQuery(this).val();""===e?(jQuery(".frm_post_content_opt, select.frm_dyncontent_opt").hide().val(""),jQuery(".frm_dyncontent_opt").hide()):"post_content"===e?(jQuery(".frm_post_content_opt").show(),jQuery(".frm_dyncontent_opt").hide(),jQuery("select.frm_dyncontent_opt").val("")):(jQuery(".frm_post_content_opt").hide().val(""),jQuery("select.frm_dyncontent_opt, .frm_form_field.frm_dyncontent_opt").show())}function pi(){var e=jQuery(this).val(),t=jQuery(document.getElementById("frm_dyncontent"));""===e||"new"===e?(t.val(""),jQuery(".frm_dyncontent_opt").show()):jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_display_get_content",id:e,nonce:frmGlobal.nonce},success:function(e){t.val(e),jQuery(".frm_dyncontent_opt").show()}})}function gi(){var e,t,r=document.getElementById("frm_posttax_rows").childNodes,n=document.querySelector(".frm_post_parent_field"),o=document.querySelector(".frm_post_menu_order_field"),a=this.value;jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_replace_posttax_options",post_type:a,nonce:frmGlobal.nonce},success:function(n){for(i=0;i');var e=jQuery(this).closest(".frm_form_action_settings").find('select[name$="[post_content][post_type]"]').val(),t=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),r=jQuery(this).closest(".frm_posttax_row").attr("id").replace("frm_posttax_",""),n=jQuery(this).val(),i=jQuery(document.getElementById(r+"_show_exclude")).is(":checked")?1:0,o=jQuery('select[name$="[post_category]['+r+'][field_id]"]').val(),a=jQuery('input[name="id"]').val();jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_posttax_row",form_id:a,post_type:e,tax_key:r,action_key:t,meta_name:n,field_id:o,show_exclude:i,nonce:frmGlobal.nonce},success:function(e){jQuery(document.getElementById("frm_posttax_"+r)).replaceWith(e)}})}}function wi(){var e=jQuery(this).closest(".frm_postmeta_row"),t=e.find(".frm_cancelnew"),r=e.find(".frm_enternew");return e.find("select.frm_cancelnew").is(":visible")?(t.hide(),r.show()):(t.show(),r.hide()),e.find("input.frm_enternew, select.frm_cancelnew").val(""),!1}function Qi(){var e=jQuery(this),t=e.val();"checkbox"===e.attr("type")&&!1===this.checked&&(t="");var r=e.data("toggleclass");""===t?jQuery("."+r).hide():(jQuery("."+r).show(),jQuery(".hide_"+r+"_"+t).hide())}function xi(){Rn()||(Wn(this),Hn(document.querySelector(".frm_form_settings")))}function Ei(e){return e.preventDefault(),ki(jQuery(this),this.getAttribute("data-code")),!1}function ki(e,t){var r=!1,i=e;if("object"===n(e)){if(e.hasClass("frm_noallow"))return;void 0===(i=jQuery(e).closest("[data-fills]").attr("data-fills"))&&void 0!==(i=e.closest("div").attr("class"))&&(i=i.split(" ")[1])}if(void 0===i){var o=document.activeElement;"search"===o.type?null===(i=o.id.replace("-search-input","")).match(/\d/gi)&&(i=(o=jQuery(".frm-single-settings:visible ."+i)).attr("id")):i=o.id}i&&(r=jQuery("#wp-"+i+"-wrap.wp-editor-wrap").length>0);var a=jQuery(document.getElementById(i));if(void 0===e.attr("data-shortcode")&&(!a.length||void 0===a.attr("data-shortcode"))){var l=e.parents("ul.frm_code_list").attr("data-shortcode");"undefined"!==l&&"no"===l||(t="["+t+"]")}if(r&&(wpActiveEditor=i),!a.length)return!1;if("[default-html]"===t||"[default-plain]"===t){var s=0;"[default-plain]"===t&&(s=1),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_get_default_html",form_id:jQuery('input[name="id"]').val(),plain_text:s,nonce:frmGlobal.nonce},elementId:i,success:function(e){if(r){var t=document.createElement("p");t.innerText=e,send_to_editor(t.innerHTML)}else Li(a,e)}})}else t=function(e,t,r){return"object"===n(t)&&t instanceof jQuery&&0===r[0].id.indexOf("success_url_")&&(t=t[0]).closest("#frm-insert-fields-box")?(t.parentNode.classList.contains("frm_insert_url")||(e=e.replace("]"," sanitize_url=1]")),e):e}(t,e,a),r?send_to_editor(t):Li(a,t);return!1}function Li(e,t){if(document.selection)e[0].focus(),document.selection.createRange().text=t;else{obj=e[0];var r=obj.selectionEnd;t=function(e,t,r,n){var i=e.data("sep");if(void 0===i)return t;var o=e.val();if(!o.trim().length)return t;var a=new RegExp(i+"\\s*$"),l=new RegExp("^\\s*"+i);return o.substr(0,r).trim().length&&!1===a.test(o.substr(0,r))&&(t=i+t),o.substr(n,o.length).trim().length&&!1===l.test(o.substr(n,o.length))&&(t+=i),t}(e,t,obj.selectionStart,r),obj.value=obj.value.substr(0,obj.selectionStart)+t+obj.value.substr(obj.selectionEnd,obj.value.length);var n=r+t.length;!function(e,t){if(e.classList.contains("frm_classes")&&Si(t)){var r=e.value.split(" ").filter(Si);r.length&&(e.value=function(e,t,r){var n=e.split(" ").filter((function(e){return(e=e.trim()).length&&!t.includes(e)}));return n.includes(r)||n.push(r),n.join(" ")}(e.value,r,t.trim()))}}(obj,t),obj.focus(),obj.setSelectionRange(n,n)}Pn(e)}function Si(e){return["frm_half","frm_third","frm_two_thirds","frm_fourth","frm_three_fourths","frm_fifth","frm_sixth","frm2","frm3","frm4","frm6","frm8","frm9","frm10","frm12"].includes(e.trim())}function Ai(){var e=document.getElementById("frm-id-condition"),t=document.getElementById("frm-key-condition");"id"===this.value?(e.classList.remove("frm_hidden"),t.classList.add("frm_hidden"),Io(t,"change")):(e.classList.add("frm_hidden"),t.classList.remove("frm_hidden"),Io(e,"change"))}function Ii(){var e,t,r=document.getElementById("frm-id-key-condition-id").checked?"frm-id-condition":"frm-key-condition",n=document.getElementById("frm-is-condition").value,i=document.getElementById("frm-text-condition").value,o=document.getElementById("frm-insert-condition");t="if "+(e=(r=document.getElementById(r)).options[r.selectedIndex].value)+" "+n+'="'+i+'"]',o.setAttribute("data-code",t+a.conditional_text+"[/if "+e),o.innerHTML="["+t+"[/if "+e+"]"}function Bi(){Cn($i(this),this)}function Ci(e){e.preventDefault(),e.stopPropagation(),Oi(this)}function qi(e){!function(e){var t;if(e.id.startsWith("field_options_type_")){var r=e.id.split("_"),n=r.length&&r[r.length-1];null!==(t=document.querySelector("#frm-single-settings-".concat(n)))&&void 0!==t&&t.classList.contains("frm-type-".concat(e.value))||Ni()}}(e.target)}function Ni(e){var t;void 0===e&&(e=B("You are changing the field type. Not all field settings will appear as expected until you reload the page. Would you like to reload the page now?","formidable")),frmDom.modal.maybeCreateModal("frmSaveAndReloadModal",{title:B("Save and Reload?","formidable"),content:(t=d(e),t.style.padding="var(--gap-md)",t),footer:function(){var e=frmDom.modal.footerButton({text:B("Save and Reload","formidable"),buttonType:"primary"});_(e,(function(){Pi()}));var t=frmDom.modal.footerButton({text:B("Cancel","formidable"),buttonType:"cancel"});return t.classList.add("dismiss"),frmDom.div({children:[t,e]})}()})}function Ti(e){var t;if(e instanceof Event){var r=document.querySelectorAll(".frm-single-settings .frm-show-box.frmsvg use"),n=Array.from(r).find((function(e){return"#frm_close_icon"===e.getAttribute("href")}));if(void 0===n)return;t=n.parentElement}else t=e;var i=t.getBoundingClientRect(),o=document.getElementById("frm_adv_info"),a=o.parentElement.getBoundingClientRect();o.style.top=i.top-a.top+32+"px",o.style.left=i.left-a.left-280+"px"}function Oi(e,r){var n=Gi(e),i=document.getElementById("frm_adv_info"),o=e.className;if("svg"===e.tagName&&(e=e.firstElementChild),"use"===e.tagName&&null===(o=e.getAttributeNS("http://www.w3.org/1999/xlink","href"))&&(o=e.getAttribute("href")),-1!==o.indexOf("frm_close_icon"))Wi(i);else{if(Ti(e),jQuery(".frm_code_list a").removeClass("frm_noallow"),n.classList.contains("frm_not_email_to")?jQuery("#frm-insert-fields-box .frm_code_list li:not(.show_frm_not_email_to) a").addClass("frm_noallow"):n.classList.contains("frm_not_email_subject")&&jQuery(".frm_code_list li.hide_frm_not_email_subject a").addClass("frm_noallow"),i.setAttribute("data-fills",n.id),i.style.display="block","use"===e.tagName)if(e.hasAttributeNS("http://www.w3.org/1999/xlink","href"))e.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon");else{var l=document.createElementNS("http://www.w3.org/2000/svg","use");l.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon"),e.parentNode.replaceChild(l,e)}else e.className=o.replace("frm_more_horiz_solid_icon","frm_close_icon");"nofocus"!==r&&("none"!==n.style.display?n.focus():jQuery(tinymce.get(n.id)).trigger("focus")),function(e){["address","body"].forEach((function(r){!function(e,r){var n,i;n=a.contextualShortcodes[r+"Selector"],i=a.contextualShortcodes[r];var o,l=e.matches(n),s=function(e){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=t(e))){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw o}}}}(i);try{for(s.s();!(o=s.n()).done;){var d,c=o.value,f=null===(d=document.querySelector('#frm-adv-info-tab .frm_code_list [data-code="'+c+'"]'))||void 0===d?void 0:d.closest("li");null==f||f.classList.toggle("frm_hidden",!l)}}catch(e){s.e(e)}finally{s.f()}}(e,r)}))}(n)}}function Di(e){return 0===a.contextualShortcodes.length||!function(e){var t=e.querySelector("a");if(!t)return!1;var r=t.dataset.code;return a.contextualShortcodes.address.includes(r)||a.contextualShortcodes.body.includes(r)}(e)||function(e){var t=e.querySelector("a").dataset.code,r=document.getElementById("frm_adv_info").dataset.fills,n=document.getElementById(r),i=a.contextualShortcodes;return i.address.includes(t)?n.matches(i.addressSelector):n.matches(i.bodySelector)}(e)}function Mi(){E||(E=1,window.addEventListener("beforeunload",zi))}function Fi(){E=0}function Hi(){E=0}function Pi(){var e=document.getElementById("frm_submit_side_top");e.classList.contains("frm_submit_ajax")&&e.setAttribute("data-new-addon-installed",!0),e.click()}function zi(e){E&&(e.preventDefault(),e.returnValue="")}function Ri(e,t){var r={my:"top",at:"top+"+t,of:window};e.dialog("option","position",r)}function Gi(e){for(var t,r=e.nextElementSibling;null!==r&&("INPUT"!==r.tagName&&"TEXTAREA"!==r.tagName||r.classList.contains("frm-token-input-field"));)r=Gi(r);return r||(r=null===(t=e.closest(".frm-field-formula"))||void 0===t?void 0:t.querySelector(".frm-calc-field")),r}function $i(e){for(var t=e.previousElementSibling;null!==t&&"I"!==t.tagName&&"svg"!==t.tagName;)t=$i(t);return t}function Wi(e){var t,r,n,i;if((void 0!==e||null!==(e=document.getElementById("frm_adv_info")))&&null===document.getElementById("frm_dyncontent")){for(e.style.display="none",n=document.querySelectorAll(".frm-show-box.frm_close_icon"),t=0;t"+r.data.name+": "+r.data.msg+"

                                  ":'

                                  Imported '+r.data.name+"

                                  ",e.find(".status").prepend(n),e.find(".status").show(),N.importQueue=jQuery.grep(N.importQueue,(function(e){return e!=t})),N.imported++,0===N.importQueue.length?(e.find(".process-count").hide(),e.find(".forms-completed").text(N.imported),e.find(".process-completed").show()):(e.find(".form-current").text(N.imported+1),Xi(e)))}))}function Zi(e){e.preventDefault();var t=!1,r=jQuery('input[name="frm_export_forms[]"]');jQuery('input[name="frm_export_forms[]"]:checked').val()||(r.closest(".frm-table-box").addClass("frm_blank_field"),t="stop");var n=jQuery('input[name="type[]"]');if(jQuery('input[name="type[]"]:checked').val()||"checkbox"!==n.attr("type")||(n.closest("p").addClass("frm_blank_field"),t="stop"),"stop"===t)return!1;e.stopPropagation(),this.submit()}function eo(){var e=jQuery(this).closest(".frm_blank_field");if(void 0!==e){var t=this.name;("type[]"===t&&jQuery('input[name="type[]"]:checked').val()||"frm_export_forms[]"===t&&jQuery(this).val())&&e.removeClass("frm_blank_field")}}function to(){null!==jQuery(this).val().match(/\.csv$/i)?jQuery(".show_csv").fadeIn():jQuery(".show_csv").fadeOut()}function ro(){var e=document.querySelector('select[name="format"]');return e?e.value:""}function no(e){var t,r,n=e.target.value;oo(n),io.call(e.target),t=n,r=document.getElementById("frm-export-select-all"),"csv"===t?(r.checked=!1,r.disabled=!0):r.disabled=!1}function io(){var e=jQuery(this),t=e.find(":selected"),r=t.data("support"),n=r.indexOf("|");jQuery('input[name="type[]"]').each((function(){this.checked=!1,r.indexOf(this.value)>=0?(this.disabled=!1,-1===n&&(this.checked=!0)):this.disabled=!0})),"csv"===e.val()?(jQuery(".csv_opts").show(),jQuery(".xml_opts").hide()):(jQuery(".csv_opts").hide(),jQuery(".xml_opts").show());var i=t.data("count"),o=jQuery('input[name="frm_export_forms[]"]');"single"===i?(o.prop("multiple",!1),o.prop("checked",!1)):(o.prop("multiple",!0),o.prop("disabled",!1)),e.trigger("change")}function oo(e){if(""!==e){var t=document.querySelectorAll(".frm-is-repeater");t.length&&("csv"===e?t.forEach((function(e){e.classList.remove("frm_hidden")})):t.forEach((function(e){e.classList.add("frm_hidden")})),Lo.call(document.querySelector(".frm-auto-search")))}}function ao(){var e=jQuery("select[name=format]").find(":selected").data("count"),t=jQuery('input[name="frm_export_forms[]"]');"single"===e&&this.checked?(t.prop("disabled",!0),this.removeAttribute("disabled")):t.prop("disabled",!1)}function lo(){jQuery(".frm_multiselect").hide().each(frmDom.bootstrap.multiselect.init)}function so(e){e.preventDefault(),uo(this,"frm_multiple_addons")}function co(e){e.preventDefault(),uo(this,"frm_activate_addon")}function fo(e){e.preventDefault(),uo(this,"frm_install_addon")}function uo(e,t){var r,n,i,o;jQuery(".frm-addon-error").remove(),n=(r=jQuery(e)).attr("rel"),i=r.parent(),o=i.parent().find(".addon-status-label"),r.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:t,nonce:frmGlobal.nonce,plugin:n},success:function(e){var n,a,l;"string"!=typeof(e=null!==(n=null===(a=e)||void 0===a?void 0:a.data)&&void 0!==n?n:e)&&"string"==typeof e.message&&(void 0!==e.saveAndReload&&(l=e.saveAndReload),e=e.message);var s=go(e);s?yo(s,i,r):(_o(e,r,o,i,l,t),wp.hooks.doAction("frm_update_addon_state",e))},error:function(){r.removeClass("frm_loading_button")}})}function mo(e){e.preventDefault();var t=jQuery(this),r=t.parent().parent(),n=t.attr("rel");t.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:"frm_install_addon",nonce:a.nonce,plugin:n,hostname:r.find("#hostname").val(),username:r.find("#username").val(),password:r.find("#password").val()},success:function(e){var n,i,o=go(e=null!==(n=null===(i=e)||void 0===i?void 0:i.data)&&void 0!==n?n:e);o?yo(o,r,t):_o(e,t,message,r)},error:function(){t.removeClass("frm_loading_button")}})}function _o(e,t,r,n,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"frm_activate_addon",l=document.querySelectorAll(".frm-addon-status");l.forEach((function(t){t.textContent=e,t.style.display="block"})),t.css({opacity:"0"}),document.querySelectorAll(".frm-oneclick").forEach((function(e){e.style.display="none"})),jQuery("#frm_upgrade_modal h2").hide(),jQuery("#frm_upgrade_modal .frm_lock_icon").addClass("frm_lock_open_icon"),jQuery("#frm_upgrade_modal .frm_lock_icon use").attr("xlink:href","#frm_lock_open_icon");var s={frm_activate_addon:{class:"frm-addon-active",message:a.active},frm_deactivate_addon:{class:"frm-addon-installed",message:a.installed},frm_uninstall_addon:{class:"frm-addon-not-installed",message:a.not_installed}};s.frm_install_addon=s.frm_activate_addon;var c=r[0];c&&(c.textContent=s[o].message);var f=n[0].parentElement;f.classList.remove("frm-addon-not-installed","frm-addon-installed","frm-addon-active"),f.classList.add(s[o].class),t[0].classList.remove("frm_loading_button"),document.querySelectorAll(".frm-admin-page-import, #frm-admin-smtp, #frm-welcome").length>0?window.location.reload():["settings","form_builder"].includes(i)&&l.forEach((function(e){var t=null!==e.closest("#frm_upgrade_modal");e.appendChild(function(e,t){var r=[po(e)];return t&&r.push(function(){var e=document.createElement("a");return e.setAttribute("href","#"),e.classList.add("button","button-secondary","frm-button-secondary","dismiss"),e.textContent=B("Close","formidable"),e}()),d({className:"frm-save-and-reload-options",children:r})}(i,t))}))}function po(e){var t=document.createElement("button");return t.classList.add("frm-save-and-reload","button","button-primary","frm-button-primary"),t.textContent=B("Save and Reload","formidable"),t.addEventListener("click",(function(){var t,r;"form_builder"===e?Pi():"settings"===e&&null!==(t=document.getElementById("form_settings_page"))&&null!==(r=t.querySelector("form.frm_form_settings"))&&(E=0,r.submit())})),t}function go(e){return"string"!=typeof e&&(void 0===e.success||!e.success)&&(e.form&&jQuery(e.form).is("#message")?{message:jQuery(e.form).find("p").html()}:e)}function yo(e,t,r){e.form?(jQuery(".frm-inline-error").remove(),r.closest(".frm-card").html(e.form).css({padding:5}).find("#upgrade").attr("rel",r.attr("rel")).on("click",mo)):(t.append('

                                  '+e.message+"

                                  "),r.removeClass("frm_loading_button"),jQuery(".frm-addon-error").delay(4e3).fadeOut())}function ho(){bo()}function vo(e){!function(e,t,r){var n=jQuery("#frm_leave_email_error");n.removeClass("frm_hidden").attr("frm-error",r),jQuery("#frm_leave_email").one("keyup",(function(){n.addClass("frm_hidden")}))}(0,0,e)}function bo(){var e=document.getElementById("frmapi-email-form");jQuery.ajax({dataType:"json",url:e.getAttribute("data-url"),success:function(t){var r=t.renderedHtml;r=r.replace(/]*(formidableforms.css|action=frmpro_css)[^>]*>/gi,""),e.innerHTML=r}})}function jo(e){frmDom.autocomplete.initSelectionAutocomplete(e)}function wo(e){var t=this.parentNode.parentNode,r=t.elements.type.value;e.preventDefault(),this.classList.add("frm_loading_button"),xo(t,r,this)}function Qo(e){var t=this.elements.type.value,r=this.querySelector("button");e.preventDefault(),r.classList.add("frm_loading_button"),xo(this,t,r)}function xo(e,t,r){var n=function(e){var t,r,n={},i=e.elements;for(r=0;r=0||So(l,n)?(s&&Di(o[e])&&o[e].classList.remove("frm_hidden"),o[e].classList.add("frm-search-result")):(o[e].classList.add("frm_hidden"),o[e].classList.remove("frm-search-result"))}(t=document.querySelector("#frm-insert-fields"))&&t.querySelectorAll(":scope > .frm-with-line").forEach((function(e){var t=e.nextElementSibling;if(t){var r=t.querySelectorAll(":scope > li.frmbutton"),n=Array.from(r).every((function(e){return e.classList.contains("frm_hidden")}));e.classList.toggle("frm_hidden",n)}})),jQuery(this).trigger("frmAfterSearch")}function So(e,t){return"s"!==t&&"s"!==e[e.length-1]&&(e+"s").indexOf(t)>=0}function Ao(e){e.stopPropagation()}function Io(e,t){var r=document.createEvent("HTMLEvents");r.initEvent(t,!1,!0),e.dispatchEvent(r)}function Bo(e,t){var r,n=new XMLHttpRequest,i="string"==typeof e?e:Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&");return n.open("post",ajaxurl,!0),n.onreadystatechange=function(){if(n.readyState>3&&200==n.status){r=n.responseText;try{r=JSON.parse(r)}catch(e){}t(r)}},n.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.setRequestHeader("Content-type","application/x-www-form-urlencoded"),n.send(i),n}function Co(e,t){e.classList.add("frm-fade"),setTimeout(t,1e3)}function qo(e){jQuery(e).css("visibility","hidden")}function No(e){jQuery(e).css("visibility","visible")}function To(e,t){var r=jQuery(e);if(!r.length)return!1;void 0===t&&(t="550px");var n={dialogClass:"frm-dialog",modal:!0,autoOpen:!1,closeOnEscape:!0,width:t,resizable:!1,draggable:!1,open:function(){var e,t;jQuery(".ui-dialog-titlebar").addClass("frm_hidden").removeClass("ui-helper-clearfix"),jQuery("#wpwrap").addClass("frm_overlay"),jQuery(".frm-dialog").removeClass("ui-widget ui-widget-content ui-corner-all"),r.removeClass("ui-dialog-content ui-widget-content"),e=r,t=function(){e.dialog("close")},jQuery(".ui-widget-overlay").on("click",t),e.on("click","a.dismiss",t)},close:function(){jQuery("#wpwrap").removeClass("frm_overlay"),jQuery(".spinner").css("visibility","hidden"),this.removeAttribute("data-option-type");var e=document.getElementById("bulk-option-type");e&&(e.value="")}};return r.dialog(n),r}function Oo(e,t){if("#"===t){var r=document.getElementById(e),n=r.style.display;r.style.display="none"===n?"block":"none"}else e.is(":visible")?e.hide():e.show()}function Do(){window.onbeforeunload=null;var e=jQuery(window);e.off("beforeunload.widgets"),e.off("beforeunload.edit-post")}function Mo(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);if(null!==t&&"form"===t.dataset.type)if(t=jQuery(t),this.options[this.selectedIndex].value){t.find(".frm-not-set")[0].classList.add("frm_hidden");var r=t.find(".frm-embed-message");r.html(r.data("embedmsg")+this.options[this.selectedIndex].text),t.find(".frm-embed-field-placeholder")[0].classList.remove("frm_hidden")}else t.find(".frm-not-set")[0].classList.remove("frm_hidden"),t.find(".frm-embed-field-placeholder")[0].classList.add("frm_hidden")}function Fo(){var e=jQuery(this).closest(".frm-single-settings"),t=e.find(".frmjs_product_choices"),r=e.find(".frm_prod_options_heading"),n=this.options[this.selectedIndex].value;t.removeClass("frm_prod_type_single frm_prod_type_user_def"),r.removeClass("frm_prod_user_def"),"single"===n?t.addClass("frm_prod_type_single"):"user_def"===n&&(t.addClass("frm_prod_type_user_def"),r.addClass("frm_prod_user_def"))}function Ho(e){var t=document.getElementById("frm_field_id_"+e);return null!==t&&"product"===t.getAttribute("data-type")}function Po(){var t=function(e,t){return window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]},r=function(e,t,r){window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]=r},n=[1,2,3,4,5,6,7,8,9,10,11,12].map((function(e){return"frm"+e})),i=["first","middle","last"];document.addEventListener("change",(function(o){o.target.matches(".frm_name_layout_dropdown")&&function(o){var a,l=o.target.value.split("_"),s=o.target.dataset.fieldId,d=document.querySelector("#field_"+s+"_inner_container .frm_combo_inputs_container"),c=(a=l.length,"frm"+parseInt(12/a));i.forEach((function(t){var i,o=d.querySelector('[data-sub-field-name="'+t+'"]');o&&(o.classList.add("frm_hidden"),(i=o.classList).remove.apply(i,e(n)),r(s,t,o))})),l.forEach((function(e){var r=t(s,e);r&&(r.classList.remove("frm_hidden"),r.classList.add(c),d.append(r))})),i.forEach((function(e){var t=document.querySelector(".frm_sub_field_options-"+e+'[data-field-id="'+s+'"]');t&&(t.classList.add("frm_hidden"),r(s,e+"_options",t))})),l.forEach((function(e){var r=t(s,e+"_options");r&&r.classList.remove("frm_hidden")}))}(o)}),!1)}function zo(e,t){var r,n,i,o=!1,a=!1;(r=t.newOption?(new DOMParser).parseFromString(t.newOption,"text/html").body.childNodes[0]:t).querySelectorAll("svg").forEach((function(e,t){(n=e.getElementsByTagNameNS("http://www.w3.org/2000/svg","use")[0])&&("#frm_drag_icon"===(i=n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("href"))&&(o=!0),"#frm_save_icon"===i&&(a=!0))})),o||r.prepend(b.drag.cloneNode(!0)),r.querySelector("[id^=field_key_".concat(e,"-]"))&&!a&&r.querySelector("[id^=field_key_".concat(e,"-]")).after(b.save.cloneNode(!0)),t.newOption&&(t.newOption=r)}function Ro(){var e=document.getElementById("frm_leave_email").value.trim();if(""!==e)if(!1!==/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e)){var t=jQuery("#frmapi-email-form").find("form"),r=t.find('[type="email"]').not(".frm_verify");if(r.length){if(document.getElementById("frm_empty_inbox")){document.getElementById("frm-add-my-email-address").remove();var n=document.getElementById("frm_leave_email_wrapper");if(n){n.classList.add("frm_hidden");var i=c({className:"frm-wait frm_spinner"});i.style.visibility="visible",i.style.float="none",i.style.width="unset",n.parentElement.insertBefore(i,n.nextElementSibling)}}r.val(e),jQuery.ajax({type:"POST",url:t.attr("action"),data:t.serialize()+"&action=frm_forms_preview"}).done((function(e){if(-1!==jQuery(e).find(".frm_message").text().trim().indexOf("Thanks!")){var t=document.getElementById("frmapi-email-form").parentElement.querySelector(".frm_spinner");t&&t.remove(),wp.hooks.applyFilters("frm_thank_you_on_signup",!0)&&document.getElementById("frm_leave_email_wrapper").replaceWith(c(B("Thank you for signing up!","formidable")))}else vo("invalid")}))}}else vo("invalid");else vo("empty")}function Go(e){if(D||e.stopPropagation(),!(e.target.classList.contains("frm-show-box")||e.target.parentElement&&e.target.parentElement.classList.contains("frm-show-box"))){var t=document.getElementById("frm_adv_info");t&&(t.dataset.fills===e.target.id&&void 0!==e.target.id||e.target.closest("#frm_adv_info")||"none"===t.style.display||Wi(t))}}return{init:function(){var t,r,n,i,o,a,l;!function(){jQuery(document).on("click","#frm-add-my-email-address",(function(e){e.preventDefault(),Ro()}));var e=document.getElementById("frm_empty_inbox"),t=document.getElementById("frm_leave_email");if(e&&t){var r=document.getElementById("frm-leave-email-modal");r.classList.remove("frm_hidden"),r.querySelector(".frm_modal_footer").classList.add("frm_hidden"),t.addEventListener("keyup",(function(e){if("Enter"===e.key){var t=document.getElementById("frm-add-my-email-address");t&&t.click()}}))}}(),r=document.querySelector(".frm-admin-footer-links"),n=null!==(t=document.querySelector(".frm_page_container"))&&void 0!==t?t:document.getElementById("wpbody-content"),r&&n&&(n.appendChild(r),r.classList.remove("frm_hidden")),N={},jQuery(".wp-admin").on("click",(function(e){var t=jQuery(e.target),r=jQuery(".dropdown.open");!r.length||t.hasClass("dropdown")||t.closest(".dropdown").length||r.removeClass("open")})),jQuery("#frm_bs_dropdown:not(.open) a").on("click",Lt),void 0===k&&(k=jQuery(document.getElementById("form_id")).val()),document.querySelectorAll(".frm-warning-dismiss").forEach((function(e){_(e,St)})),frmAdminBuild.inboxBannerInit(),j.length>0?frmAdminBuild.buildInit():null!==document.getElementById("frm_notification_settings")?frmAdminBuild.settingsInit():null!==document.getElementById("frm_styling_form")?frmAdminBuild.styleInit():null!==document.getElementById("form_global_settings")?frmAdminBuild.globalSettingsInit():null!==document.getElementById("frm_export_xml")?frmAdminBuild.exportInit():null!==document.querySelector(".frm-inbox-wrapper")?frmAdminBuild.inboxInit():null!==document.getElementById("frm-welcome")?frmAdminBuild.solutionInit():(function(){if(document.body.classList.contains("frm-admin-page-entries")){var e=document.getElementById("screen-options-wrap");if(e){var t=d({className:"frm_warning_style",text:B("Only 10 columns can be selected at a time.","formidable")});t.style.margin=0;var r=e.querySelector("legend");r.parentNode.insertBefore(t,r.nextElementSibling);var n=Array.from(e.querySelectorAll('input[type="checkbox"]')),i=function(){n.reduce((function(e,t){return t.checked?e+1:e}),0)>=10?(t.classList.remove("frm_hidden"),n.forEach((function(e){e.checked||(e.parentNode.classList.add("frm_noallow"),e.disabled=!0)}))):t.classList.add("frm_hidden")};i(),n.forEach((function(e){e.addEventListener("change",(function(e){e.target.checked?i():(t.classList.add("frm_hidden"),n.forEach((function(e){e.parentNode.classList.remove("frm_noallow"),e.disabled=!1})))}))}))}}}(),jo(),jQuery("[data-frmprint]").on("click",(function(){return window.print(),!1}))),jQuery(document).on("change","select[data-toggleclass], input[data-toggleclass]",Qi),function(){function e(e){var t=e.options[e.selectedIndex];e.querySelectorAll("option[data-dependency]:not([data-dependency-skip])").forEach((function(e){var r=document.querySelector(e.dataset.dependency);null==r||r.classList.toggle("frm_hidden",t!==e)}))}document.querySelectorAll("select.frm_select_with_dependency").forEach(e),frmDom.util.documentOn("change","select.frm_select_with_dependency",(function(t){return e(t.target)}))}(),(jQuery(document.getElementById("frm_adv_info")).length>0||jQuery(".frm_field_list").length>0)&&frmAdminBuild.panelInit(),i=jQuery(".wrap, .frm_wrap"),o=document.getElementById("frm_confirm_modal"),a=!1,l=!1,jQuery(o).on("click","[data-deletefield]",wr),jQuery(o).on("click","[data-removeid]",G),jQuery(o).on("click","[data-trashtemplate]",ko),i.on("click",".frm_remove_tag, .frm_remove_form_action",G),i.on("click","a[data-frmverify]",M),i.on("click","a[data-frmtoggle]",P),i.on("click","a[data-frmhide], a[data-frmshow]",z),i.on("change","input[data-frmhide], input[data-frmshow]",z),i.on("click",".widget-top,a.widget-action",$),i.on("mouseenter.frm",".frm_bstooltip, .frm_help",(function(){jQuery(this).off("mouseenter.frm"),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(this).tooltip("show")})),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(document).on("click","#doaction, #doaction2",(function(e){var t="doaction"===this.id?"top":"bottom",r=document.getElementById("bulk-action-selector-"+t),n=document.getElementById("confirm-bulk-delete-"+t);if(null!==r&&null!==n){if(a=this,!l&&"bulk_delete"===r.value)return e.preventDefault(),F(n),!1}else a=!1})),jQuery(document).on("click","#frm-confirmed-click",(function(e){if(!1!==a&&!e.target.classList.contains("frm-btn-inactive"))return"confirm-bulk-delete"===this.getAttribute("href")?(e.preventDefault(),l=!0,a.click(),!1):void 0})),function(){var e=To("#frm_upgrade_modal");function t(t){var r,n,i;if((r=t.target).classList){var o=r.classList.contains("frm_show_expired_modal")||null!==r.querySelector(".frm_show_expired_modal")||r.closest(".frm_show_expired_modal");if("change"===t.type&&r.classList.contains("frm_select_with_upgrade")){var a=r.options[r.selectedIndex];a&&a.dataset.upgrade&&(r=a)}if(!r.dataset.upgrade){var l=r.closest("[data-upgrade]");if(!l){if(!(l=r.closest(".frm_field_box")))return;r.dataset.upgrade=""}r=l}if(o)wp.hooks.doAction("frm_show_expired_modal",r);else{var s=r.dataset.upgrade;if(s&&!r.classList.contains("frm_show_upgrade_tab")){t.preventDefault();var d=e.get(0),c=d.querySelector(".frm_lock_icon");c&&(c.style.display="block",c.classList.remove("frm_lock_open_icon"),c.querySelector("use").setAttribute("href","#frm_lock_icon"));var f="frm_upgrade_modal_image",u=document.getElementById(f);u&&u.remove(),r.dataset.image&&(c&&(c.style.display="none"),c.parentNode.insertBefore(m({id:f,src:frmGlobal.url+"/images/"+r.dataset.image}),c));var _=d.querySelector(".license-level");_&&(_.textContent=Vn(r)),Jn(r,"modal",s),d.querySelector(".frm_are_not_installed").style.display=r.dataset.image?"none":"inline-block",d.querySelector(".frm_feature_label").textContent=s,d.querySelector("h2").style.display="block",e.dialog("open");var p=d.querySelector(".button-primary:not(.frm-oneclick-button)");n=p.getAttribute("href").replace(/(medium=)[a-z_-]+/gi,"$1"+r.getAttribute("data-medium")),null===(i=r.getAttribute("data-content"))&&(i=""),n=n.replace(/(content=)[a-z_-]+/gi,"$1"+i),p.setAttribute("href",n)}}}}!1!==e&&(document.addEventListener("click",t),frmDom.util.documentOn("change","select.frm_select_with_upgrade",t))}(),frmDom.util.documentOn("click","[data-modal-title]",Un);var s=jQuery(document.getElementById("frm_shortcodediv"));s.length>0&&(jQuery("a.edit-frm_shortcode").on("click",(function(){return s.is(":hidden")&&(s.slideDown("fast"),this.style.display="none"),!1})),jQuery(".cancel-frm_shortcode","#frm_shortcodediv").on("click",(function(){return s.slideUp("fast"),s.siblings("a.edit-frm_shortcode").show(),!1}))),jQuery(document).on("click","#frm-nav-tabs a",W),jQuery(".post-type-frm_display .frm-nav-tabs a, .frm-category-tabs a").on("click",(function(){var e=this.classList.contains("frm_show_upgrade_tab");if(!this.classList.contains("frm_noallow")||e)return e&&Kn(this),U(this),!1})),U(jQuery(".starttab a"),"auto"),jQuery(document).on("click","#frm-fid-search-menu a",(function(){var e=this.id.replace("fid-","");return jQuery('select[name="fid"]').val(e),Hn(document.getElementById("posts-filter")),!1})),jQuery(".frm_select_box").on("click focus",(function(){this.select()})),jQuery(document).on("input search change",".frm-auto-search:not(#frm-form-templates-page #template-search-input)",Lo),jQuery(document).on("focusin click",".frm-auto-search",Ao);var c=jQuery(".frm-auto-search");""!==c.val()&&c.trigger("keyup"),FrmFormsConnect.init(),jQuery(document).on("click",".frm-install-addon",fo),jQuery(document).on("click",".frm-activate-addon",co),jQuery(document).on("click",".frm-solution-multiple",so),jQuery("button, input[type=submit]").on("click",Do),document.addEventListener("click",(function(e){if("LABEL"===e.target.nodeName){var t=e.target.getAttribute("for");if(t){var r=document.getElementById(t);if(r&&r.nextElementSibling){var n=r.nextElementSibling.querySelector("button.dropdown-toggle.multiselect");n&&setTimeout((function(){return n.click()}),0)}}}})),frmAdminBuild.hooks.addFilter("frm_before_embed_modal",(function(e,t){var r,n,i=t.element;if("form"!==t.type)return e;var o=i.closest("tr");if(o)r=parseInt(o.querySelector(".column-id").textContent),n=o.querySelector(".column-form_key").textContent;else{r=document.getElementById("form_id").value;var a=document.getElementById("frm_form_key");if(a)n=a.value;else{var l=document.getElementById("frm-previewDrop");l&&(n=l.nextElementSibling.querySelector(".dropdown-item a").getAttribute("href").split("form=")[1])}}return[r,n]})),document.querySelectorAll("#frm-show-fields > li, .frm_grid_container li").forEach((function(t,r){t.addEventListener("click",(function(){var t,r,n;r=(null===(t=this.querySelector("li"))||void 0===t?void 0:t.dataset.fid)||this.dataset.fid,(n=document.querySelectorAll("[id^=frm_delete_field_".concat(r,"-]"))).length<2||e(n).slice(1).forEach((function(e,t){e.classList.contains("frm_other_option")||zo(r,e)}))}))}));var f=document.getElementById("frm_small_screen_proceed_button");f&&_(f,(function(){var e;null===(e=document.getElementById("frm_small_device_message_container"))||void 0===e||e.remove(),g("small_screen_proceed",new FormData)}));var u=document.getElementById("frm_sale_banner"),p=null==u?void 0:u.querySelector(".dismiss");u&&(_(u,(function(e){e.target.closest(".dismiss")||(window.location.href=u.getAttribute("data-url"))})),p&&_(p,(function(){u.remove();var e=new FormData;g("sale_banner_dismiss",e)})))},buildInit:function(){var e,t,r;jQuery("#frm_builder_page").on("mouseup","*:not(.frm-show-box)",Go),y=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return frmDom.util.debounce(e,t)}(oe,10),h=document.getElementById("post-body-content"),v=jQuery(h),jQuery(".frm_field_loading").length&&Le(jQuery(".frm_field_loading").first().attr("id")),V("ul.frm_sorting"),document.querySelectorAll(".field_type_list > li:not(.frm_show_upgrade)").forEach(X),jQuery("ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a").disableSelection(),jQuery(".frm_submit_ajax").on("click",Fn),jQuery(".frm_submit_no_ajax").on("click",zn),Gn(),jQuery("a.edit-form-status").on("click",kn),jQuery(".cancel-form-status").on("click",Ln),jQuery(".save-form-status").on("click",(function(){var e=jQuery(document.getElementById("form_change_status")).val();return jQuery('input[name="new_status"]').val(e),jQuery(document.getElementById("form-status-display")).html(e),jQuery(".cancel-form-status").trigger("click"),!1})),jQuery(".frm_form_builder form").first().on("submit",(function(){jQuery(".inplace_field").trigger("blur")})),lo(),Tr(),e=jQuery(w),t=document.getElementById("frm_form_editor_container"),e.on("click",".frm_add_logic_row",Er),e.on("click",".frm_add_watch_lookup_row",Lr),e.on("change",".frm_get_values_form",qr),e.on("change",".frm_logic_field_opts",bn),e.on("frm-multiselect-changed",'select[name^="field_options[admin_only_"]',Sn),jQuery(document.getElementById("frm-insert-fields")).on("click",".frm_add_field",Ae),j.on("click",".frm_clone_field",Ce),e.on("blur",'input[id^="frm_calc"]',Ye),e.on("change","input.frm_format_opt, input.frm_max_length_opt",lt),e.on("change click","[data-changeme]",ot),e.on("click","input.frm_req_field",st),e.on("click",".frm_mark_unique",ct),e.on("change",".frm_repeat_format",Vr),e.on("change",".frm_repeat_limit",Kr),e.on("change",".frm_js_checkbox_limit",Jr),e.on("input",'input[name^="field_options[add_label_"]',(function(){Yr(this,"add")})),e.on("input",'input[name^="field_options[remove_label_"]',(function(){Yr(this,"remove")})),e.on("change",'select[name^="field_options[data_type_"]',Nr),jQuery(t).on("click",".frm-collapse-page",Or),jQuery(t).on("click",".frm-collapse-section",Fr),e.on("click",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",Hr),e.on("keydown",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",(function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),Hr.call(this,e))})),jQuery(t).on("show.bs.dropdown hide.bs.dropdown",ze),e.on("click",".frm_toggle_sep_values",yt),e.on("click",".frm_toggle_image_options",ht),e.on("click",".frm_remove_image_option",Et),e.on("click",".frm_choose_image_box",xt),e.on("change",".frm_hide_image_text",Qt),e.on("change",".frm_field_options_image_size",jt),e.on("click",".frm_multiselect_opt",kt),j.on("mousedown","input, textarea, select",At),j.on("click","input[type=radio], input[type=checkbox]",At),j.on("click",".frm_delete_field",Nt),j.on("click",".frm_select_field",Tt),jQuery(document).on("click",".frm_delete_field_group",Ot),jQuery(document).on("click",".frm_clone_field_group",Dt),jQuery(document).on("click","#frm_field_group_controls > span:first-child",Mt),jQuery(document).on("click",".frm-row-layout-option",Yt),jQuery(document).on("click",".frm-merge-fields-into-row .frm-row-layout-option",Xt),jQuery(document).on("click",".frm-custom-field-group-layout",er),jQuery(document).on("click",".frm-merge-fields-into-row .frm-custom-field-group-layout",rr),jQuery(document).on("click",".frm-break-field-group",lr),j.on("click","#frm_field_group_popup .frm_grid_container input",sr),jQuery(document).on("click",".frm-cancel-custom-field-group-layout",dr),jQuery(document).on("click",".frm-save-custom-field-group-layout",fr),j.on("click","ul.frm_sorting",ur),jQuery(document).on("click",".frm-merge-fields-into-row",vr),jQuery(document).on("click",".frm-delete-field-groups",jr),j.on("click",'.frm-field-action-icons [data-toggle="dropdown"]',(function(){this.closest("li.form-field").classList.add("frm-field-settings-open"),jQuery(document).on("click","#frm_builder_page",Oe)})),j.on("mousemove","ul.frm_sorting",De),j.on("show.bs.dropdown",".frm-field-action-icons",He),jQuery(document).on("show.bs.dropdown","#frm_field_group_controls",Pe),e.on("click",".frm_single_option a[data-removeid]",It),e.on("mousedown",".frm_single_option input[type=radio]",Bt),e.on("focusin",".frm_single_option input[type=text]",Ct),e.on("click",".frm_add_opt",_t),e.on("change",".frm_single_option input",Zr),e.on("change",".frm_image_id",Zr),e.on("change",".frm_toggle_mult_sel",pt),e.on("focusin",".frm_classes + .frm-token-proxy-input",Bi),j.on("click",".frm_primary_label",zr),j.on("click",".frm_description",Rr),j.on("click","li.ui-state-default:not(.frm_noallow)",$r),j.on("dblclick","li.ui-state-default",Ur),e.on("change",".frm_tax_form_select",Xr),e.on("change","select.conf_field",ft),e.on("change",".frm_get_field_selection",jn),e.on("click",".frm-show-inline-modal",Bn),e.on("click",".frm-inline-modal .dismiss",qn),jQuery(document).on("change","[data-frmchange]",Tn),document.addEventListener("click",Nn),e.on("change",".frm_include_extras_field",et),e.on("change",'select[name^="field_options[form_select_"]',Mo),jQuery(document).on("submit","#frm_js_build_form",Fi),jQuery(document).on("change","#frm_builder_page input:not(.frm-search-input):not(.frm-custom-grid-size-input), #frm_builder_page select, #frm_builder_page textarea",Mi),nt(),jQuery(document).on("change",".frmjs_prod_data_type_opt",Fo),jQuery(document).on("focus",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Ar),jQuery(document).on("blur",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Br),frmDom.util.documentOn("click",".frm-show-field-settings",$r),frmDom.util.documentOn("change","select.frm_format_dropdown, select.frm_phone_type_dropdown",Wr),e.on("keydown",'.frm_single_option input[name^="field_options["], .frm_single_option input[name^="rows_"]',(function(e){"Enter"===e.key&&function(e){var t=e.closest(".frm_single_option").parentElement.querySelectorAll('.frm_single_option input[name^="field_options[" ], .frm_single_option input[name^="rows_"]'),r=Array.from(t),n=r.indexOf(e);if(!(n<0)){var i=r.slice(n+1).find((function(e){return null!==e.offsetParent}));if(i){i.focus();var o=i.value.length;i.setSelectionRange(o,o)}}}(e.currentTarget)})),!1!==(r=To("#frm-bulk-modal","700px"))&&(jQuery(".frm-insert-preset").on("click",mt),jQuery(w).on("click","a.frm-bulk-edit-link",(function(e){e.preventDefault();var t,n,i,o,a,l="",s=jQuery(this).closest("[data-fid]").data("fid"),d=pn(s),c=Ho(s);if(o=document.getElementById("frm_field_"+s+"_opts")){for(a=o.getElementsByTagName("li"),document.getElementById("bulk-field-id").value=s,t=0;t=a.length-1&&(document.getElementById("frm_bulk_options").value=l);return r.dialog("open"),!1}})),jQuery("#frm-update-bulk-opts").on("click",(function(){var e=document.getElementById("bulk-field-id").value;document.getElementById("bulk-option-type").value||(this.classList.add("frm_loading_button"),frmAdminBuild.updateOpts(e,document.getElementById("frm_bulk_options").value,r),Mi())}))),In(),document.addEventListener("frm_added_field",In),Be(),Po(),xn(),frmDom.util.documentOn("change",".frm_show_password_setting_input",(function(e){var t=e.target.getAttribute("data-fid"),r=document.getElementById("frm_field_id_"+t);r&&r.classList.toggle("frm_disabled_show_password",!e.target.checked)})),document.addEventListener("scroll",Ti,!0),document.addEventListener("change",qi),document.querySelector(".frm_form_builder").addEventListener("mousedown",(function(e){e.shiftKey&&e.preventDefault()})),wp.hooks.addAction("frmShowedFieldSettings","formidableAdmin",(function(e,t){t.querySelectorAll(".frm-collapse-me").forEach(Pr)}),9999)},settingsInit:function(){var e,t,r,n,i=jQuery(document.getElementById("frm_notification_settings"));i.on("click",".frm_email_buttons",oi),i.on("click",".frm_remove_field",ai),i.on("change",".frm_to_row, .frm_from_row",li),i.on("change",".frm_tax_selector",ji),i.on("change","select.frm_single_post_field",mi),i.on("change","select.frm_toggle_post_content",_i),i.on("change","select.frm_dyncontent_opt",pi),i.on("change",".frm_post_type",gi),i.on("click",".frm_add_postmeta_row",vi),i.on("click",".frm_add_posttax_row",hi),i.on("click",".frm_toggle_cf_opts",wi),i.on("click",".frm_duplicate_form_action",Zn),jQuery(".frm_actions_list").on("click",".frm_active_action",ti),jQuery("#frm-show-groups, #frm-hide-groups").on("click",ri),lo(),jQuery("ul.frm_actions_list li").each((function(){si(jQuery(this).children("a").data("actiontype"));var e=jQuery(this).find("i");"none"!==e.css("background-image")&&e.addClass("frm-inverse")})),jQuery(".frm_submit_settings_btn").on("click",xi),Gn(),(e=jQuery(".frm_form_settings")).on("click",".frm_add_form_logic",ui),e.on("click",".frm_already_used",fi),document.addEventListener("click",(function(e){var t=e.target;t.closest(".frm_image_preview_wrapper")&&(t.closest(".frm_choose_image_box")?xt.bind(t)(e):t.closest(".frm_remove_image_option")&&Et.bind(t)(e))})),e.on("mouseup","*:not(.frm-show-box)",Go),jQuery(document.getElementById("no_save")).on("change",(function(){this.checked&&!0!==confirm(a.no_save_warning)&&jQuery(this).attr("checked",!1)})),jQuery('select[name="options[edit_action]"]').on("change",Xn),t=document.getElementById("logged_in"),jQuery(t).on("change",(function(){this.checked?No(".hide_logged_in"):qo(".hide_logged_in")})),r=jQuery(document.getElementById("frm_cookie_expiration")),jQuery(document.getElementById("frm_single_entry_type")).on("change",(function(){"cookie"===this.value?r.fadeIn("slow"):r.fadeOut("slow")}));var o=document.getElementById("single_entry");jQuery(o).on("change",(function(){this.checked?No(".hide_single_entry"):qo(".hide_single_entry"),this.checked&&"cookie"===jQuery(document.getElementById("frm_single_entry_type")).val()?r.fadeIn("slow"):r.fadeOut("slow")})),jQuery(".hide_save_draft").hide();var l=jQuery(document.getElementById("save_draft"));l.on("change",(function(){this.checked?jQuery(".hide_save_draft").fadeIn("slow"):jQuery(".hide_save_draft").fadeOut("slow")})),Pn(l),n=document.getElementById("editable"),jQuery(n).on("change",(function(){this.checked?(jQuery(".hide_editable").fadeIn("slow"),Pn(document.getElementById("edit_action"))):(jQuery(".hide_editable").fadeOut("slow"),jQuery(".edit_action_message_box").fadeOut("slow"))})),jQuery(document).on("change","#protect_files",(function(){this.checked?jQuery(".hide_protect_files").fadeIn("slow"):jQuery(".hide_protect_files").fadeOut("slow")})),jQuery(document).on("frm-multiselect-changed","#protect_files_role",Sn),jQuery(document).on("submit",".frm_form_settings",Hi),jQuery(document).on("change","#form_settings_page input:not(.frm-search-input), #form_settings_page select, #form_settings_page textarea",Mi),jo(),jQuery(document).on("frm-action-loaded",Vi),frmDom.util.documentOn("change",'.frm_on_submit_type input[type="radio"]',(function(e){if(e.target.checked){var t=e.target.closest(".frm_form_action_settings");t.querySelectorAll(".frm_on_submit_dependent_setting:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden")})),t.querySelectorAll(".frm_on_submit_dependent_setting[data-show-if-"+e.target.value+"]").forEach((function(e){e.classList.remove("frm_hidden")})),t.setAttribute("data-on-submit-type",e.target.value)}}))},panelInit:function(){var e,t,r,n;jQuery(".frm_wrap, #postbox-container-1").on("click",".frm_insert_code",Ei),jQuery(document).on("change",".frm_insert_val",(function(){ki(jQuery(this).data("target"),jQuery(this).val()),jQuery(this).val("")})),jQuery(document).on("click change",'[name="frm-id-key-condition"]',Ai),jQuery(document).on("keyup change",".frm-build-logic",Ii),Yn(),jQuery(document).on("frmElementAdded",(function(e,t){Yn(t)})),jQuery(document).on("mousedown",".frm-show-box",Ci),t=document.getElementById("form_settings_page"),r=document.body.classList.contains("post-type-frm_display"),n=document.getElementById("frm_insert_fields_tab"),(null!==t||r||D)&&jQuery(document).on("focusin","form input, form textarea",(function(e){var i,o,a,l;if(e.stopPropagation(),(o=this).parentNode.parentNode.classList.contains("frm_has_shortcodes")&&(Wi(),"use"===(a=$i(o)).tagName?-1===(a=a.firstElementChild).getAttributeNS("http://www.w3.org/1999/xlink","href").indexOf("frm_close_icon")&&Oi(a,"nofocus"):a.classList.contains("frm_close_icon")||Oi(a,"nofocus")),jQuery(this).is(":not(:submit, input[type=button], .frm-search-input, input[type=checkbox])")){if(jQuery(e.target).closest("#frm_adv_info").length)return;if(null!==t||D)i=jQuery("#frm_html_tab"),jQuery(this).closest("#html_settings").length>0?(i.show(),i.siblings().hide(),jQuery("#frm_html_tab a").trigger("click"),function(e){var t,r=e.id;void 0!==r&&-1===r.indexOf("-search-input")&&(jQuery("#frm-adv-info-tab").attr("data-fills",r.trim()),e.classList.contains("field_custom_html")&&(r="field_custom_html"),t=["after_html","before_html","submit_html","field_custom_html"],jQuery.inArray(r,t)>=0&&(jQuery(".frm_code_list li:not(.show_"+r+")").addClass("frm_hidden"),jQuery(".frm_code_list li.show_"+r).removeClass("frm_hidden")))}(this)):((l=jQuery(".frm-category-tabs li"))[0]&&(l[0].style.display=""),n.click(),i.hide(),i.siblings().show());else if(r){var s=new CustomEvent("frm_legacy_views_handle_field_focus");s.frmData={idAttrValue:this.id},document.dispatchEvent(s)}}})),jQuery(".frm_wrap, #postbox-container-1").on("mousedown","#frm_adv_info a, .frm_field_list a",(function(e){e.preventDefault()})),(e=jQuery("#frm_adv_info")).on("click",".subsubsub a.frmids",(function(e){Ui("frmids",e)})),e.on("click",".subsubsub a.frmkeys",(function(e){Ui("frmkeys",e)}))},inboxInit:function(){var e;jQuery(".frm_inbox_dismiss").on("click",(function(e){var t=this.parentNode.parentNode,r=t.getAttribute("data-message"),n=this.getAttribute("href"),i=t.cloneNode(!0),o=document.querySelector(".frm-dismissed-inbox-messages");if("free_templates"!==r||this.classList.contains("frm_inbox_dismiss")){e.preventDefault(),data={action:"frm_inbox_dismiss",key:r,nonce:frmGlobal.nonce};var a="frm_inbox_slide_in"===t.id;a&&(t.classList.remove("s11-fadein"),t.classList.add("s11-fadeout"),t.addEventListener("animationend",(function(){return t.remove()}),{once:!0})),Bo(data,(function(){if(!a)return"#"!==n?(window.location=n,!0):void Co(t,(function(){var e;null!==o&&(i.classList.remove("frm-fade"),null===(e=i.querySelector(".frm-inbox-message-heading"))||void 0===e||e.removeChild(i.querySelector(".frm-inbox-message-heading .frm_inbox_dismiss")),o.append(i)),1===t.parentNode.querySelectorAll(".frm-inbox-message-container").length&&(document.getElementById("frm_empty_inbox").classList.remove("frm_hidden"),t.parentNode.closest(".frm-active").classList.add("frm-empty-inbox"),ho()),t.parentNode.removeChild(t)}))}))}})),!1===(null===(e=document.getElementById("frm_empty_inbox"))||void 0===e?void 0:e.classList.contains("frm_hidden"))&&ho()},solutionInit:function(){jQuery(document).on("submit","#frm-new-template",Qo)},styleInit:function(){var e=jQuery(".frm_image_preview_wrapper");e.on("click",".frm_choose_image_box",xt),e.on("click",".frm_remove_image_option",Et),wp.hooks.doAction("frm_style_editor_init")},customCSSInit:function(){console.warn("Calling frmAdminBuild.customCSSInit is deprecated.")},globalSettingsInit:function(){var e;jQuery(document).on("click","[data-frmuninstall]",Ki),lo(),null!==(e=document.getElementById("licenses_settings"))&&jQuery(e).on("click",".edd_frm_save_license",Ji),jQuery(document).on("click","#frm-new-template button",wo),jQuery("#frm-dismissable-cta .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_lite_settings_upgrade",nonce:frmGlobal.nonce}),jQuery(".settings-lite-cta").remove()}));var t=document.getElementById("frm_re_type");t&&t.addEventListener("change",Eo),document.querySelector(".frm_captchas").addEventListener("change",(function(e){var t,r=null===(t=document.querySelector('.frm_captchas input[checked="checked"]'))||void 0===t?void 0:t.value,n=e.target.value!==r;document.querySelector(".captcha_settings .frm_note_style").classList.toggle("frm_hidden",!n)})),frmDom.util.documentOn("submit",".frm_settings_form",(function(){return E=0}));var r=document.getElementById("manage_styles_settings");r&&r.addEventListener("change",(function(e){var t=e.target;"SELECT"===t.nodeName&&t.dataset.name&&!t.getAttribute("name")&&t.setAttribute("name",t.dataset.name)}));var n=document.getElementById("payments_settings"),i=null==n?void 0:n.querySelectorAll('[name="frm_payment_section"]');i&&i.forEach((function(e){e.addEventListener("change",(function(){if(e.checked){var t=n.querySelector('label[for="'.concat(e.id,'"]'));t&&t.setAttribute("aria-selected","true"),i.forEach((function(t){if(t!==e){var r=n.querySelector('label[for="'.concat(t.id,'"]'));r&&r.setAttribute("aria-selected","false")}}))}}))}))},exportInit:function(){jQuery(".frm_form_importer").on("submit",Yi),jQuery(document.getElementById("frm_export_xml")).on("submit",Zi),jQuery("#frm_export_xml input, #frm_export_xml select").on("change",eo),jQuery('input[name="frm_import_file"]').on("change",to),document.querySelector('select[name="format"]').addEventListener("change",no),jQuery('input[name="frm_export_forms[]"]').on("click",ao),lo(),jQuery(".frm-feature-banner .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_dismiss_migrator",plugin:this.id,nonce:frmGlobal.nonce}),this.parentElement.remove()})),oo(ro()),document.querySelector("#frm-export-select-all").addEventListener("change",(function(e){document.querySelectorAll('[name="frm_export_forms[]"]').forEach((function(t){return t.checked=e.target.checked}))}))},inboxBannerInit:function(){var e=document.getElementById("frm_banner");if(e){var t=e.querySelector(".frm-banner-dismiss");document.addEventListener("click",(function(r){r.target===t&&Bo({action:"frm_inbox_dismiss",key:e.dataset.key,nonce:frmGlobal.nonce},(function(){jQuery(e).fadeOut(400,(function(){e.remove()}))}))}))}},updateOpts:function(e,t,r){var n=pn(e),i=Ho(e)?"frm_bulk_products":"frm_import_options";jQuery.ajax({type:"POST",url:ajaxurl,data:{action:i,field_id:e,opts:t,separate:n,nonce:frmGlobal.nonce},success:function(t){document.getElementById("frm_field_"+e+"_opts").innerHTML=t,wp.hooks.doAction("frm_after_bulk_edit_opts",e),rn(e),void 0!==r&&(r.dialog("close"),document.getElementById("frm-update-bulk-opts").classList.remove("frm_loading_button"))}})},triggerRemoveLogic:function(e,t){jQuery("#frm_logic_"+e+"_"+t+" .frm_remove_tag").trigger("click")},downloadXML:function(e,t,r){var n=ajaxurl+"?action=frm_"+e+"_xml&ids="+t;null!==r&&(n=n+"&is_template="+r),location.href=n},hooks:{applyFilters:function(e){for(var t,r=arguments.length,n=new Array(r>1?r-1:0),i=1;i1?r-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r){var n=k,i=0;"summary"===e&&(i=j.children('li[data-type="break"]').length>0?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:Object.assign(pe(e,0,n,i),{field_options:t}),success:function(t){r(t),setTimeout((function(){Qn(),Ue(t,!0);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:n})}),10)},error:je})}))},confirmLinkClick:F,handleInsertFieldByDraggingResponse:ye,handleAddFieldClickResponse:Ie,syncLayoutClasses:le}}(),jQuery(document).ready((function(){var e;frmAdminBuild.init(),frmDom.bootstrap.setupBootstrapDropdowns((function(e){var t,r,n=e.querySelector(".frm-dropdown-toggle");n&&(n.hasAttribute("role")||n.setAttribute("role","button"),n.hasAttribute("tabindex")||n.setAttribute("tabindex",0)),"UL"===e.tagName&&(r=(r=(r=(r=(r=(r=(t=e).outerHTML).replace("
                                    ","")).replaceAll("
                                  • ",'
                                  • ",""),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file +(()=>{function e(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||t(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r1&&(e="",t=""):0===i.indexOf("frm_postmeta_")&&(jQuery("#frm_postmeta_rows .frm_postmeta_row").length<2&&(e=".frm_add_postmeta_row.button"),jQuery(".frm_toggle_cf_opts").length&&jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().length&&(""!==e&&(e+=","),e+="#"+jQuery("#frm_postmeta_rows .frm_postmeta_row:not(#"+i+")").last().attr("id")+" .frm_toggle_cf_opts"));var o=document.getElementById(i),a=jQuery(o);return a.fadeOut(300,(function(){var r;a.remove(),Mi(),""!==t&&jQuery(t).hide(),""!==e&&jQuery(e+" a,"+e).removeClass("frm_hidden").fadeIn("slow"),this.closest(".frm_form_action_settings")&&function(e){si(e);var t={type:e};wp.hooks.doAction("frm_after_action_removed",t)}(this.closest(".frm_form_action_settings").querySelector(".frm_action_name").value),null===(r=document.querySelector(".tooltip"))||void 0===r||r.remove()})),void 0!==r&&(r=jQuery(r)).fadeOut(400,(function(){r.remove()})),""!==e&&jQuery(this).closest(".frm_logic_rows").fadeOut("slow"),wp.hooks.doAction("frm_admin_tag_removed",i,o),!1}}function $(e,t){void 0===t&&(t=this),Ze(t,!1);var r=jQuery(t).closest(".frm_form_action_settings"),n=e.target;if(r.length&&void 0!==n){var i=n.parentElement.className;if("string"==typeof i&&(i.indexOf("frm_email_icons")>-1||i.indexOf("frm_toggle")>-1))return void e.stopPropagation()}var o=r.children(".widget-inside");if(r.length&&o.find("p, div, table").length<1){var a=r.find('input[name$="[ID]"]').val(),l=r.find('input[name$="[post_excerpt]"]').val();l&&(o.html(''),r.find(".spinner").fadeIn("slow"),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_form_action_fill",action_id:a,action_type:l,nonce:frmGlobal.nonce},success:function(e){o.html(e),lo(),Yn("#"+r.attr("id")),jo(o),jQuery(t).trigger("frm-action-loaded"),wp.hooks.doAction("frm_filled_form_action",o)}}))}jQuery(t).closest(".frm_field_box").siblings().find(".widget-inside").slideUp("fast"),void 0!==t.className&&-1!==t.className.indexOf("widget-action")||jQuery(t).closest(".start_divider").length<1||((o=jQuery(t).closest("div.widget").children(".widget-inside")).is(":hidden")?o.slideDown("fast"):o.slideUp("fast"))}function W(){var e=this.getAttribute("href");if(void 0===e)return!1;var t=e.replace("#","."),r=jQuery(this);r.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),r.closest("div").children(".tabs-panel").not(e).not(t).hide();var n=document.getElementById(e.replace("#",""));return n&&(n.style.display="block"),"frm_insert_fields_tab"!==this.id||this.closest("#frm_adv_info")||Ke(),!1}function U(e,t){var r=(e=jQuery(e)).attr("href");if(void 0!==r){var n,i,o=r.replace("#",".");if(e.closest("li").addClass("frm-tabs active").siblings("li").removeClass("frm-tabs active starttab"),e.closest("div").find(".tabs-panel").length)e.closest("div").children(".tabs-panel").not(r).not(o).hide();else if(null!==document.getElementById("form_global_settings")){var a=e.data("frmajax");e.closest(".frm_wrap").find(".tabs-panel, .hide_with_tabs").hide(),void 0!==a&&"1"==a&&(n=r.replace("#",""),(i=jQuery(".frm_"+n+"_ajax")).length&&jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_settings_tab",tab:n.replace("_settings",""),nonce:frmGlobal.nonce},success:function(e){i.replaceWith(e)}}))}else jQuery("#frm-categorydiv .tabs-panel, .hide_with_tabs").hide();jQuery(r).show(),jQuery(o).show(),Wi(),"auto"!==t&&(jQuery(".frm_updated_message").hide(),jQuery(".frm_warning_style").hide()),jQuery(e).closest("#frm_adv_info").length||(jQuery(".frm_form_settings").length?jQuery(".frm_form_settings").attr("action","?page=formidable&frm_action=settings&id="+jQuery('.frm_form_settings input[name="id"]').val()+"&t="+r.replace("#","")):jQuery(".frm_settings_form").attr("action","?page=formidable-settings&t="+r.replace("#","")))}}function V(e){var t,r;document.querySelectorAll(e).forEach((function(e){K(e),Array.from(e.children).forEach((function(e){return X(e,".frm-move")}));var t=jQuery(e).children('[data-type="divider"]').children(".divider_section_only");t.length&&K(t)})),t=jQuery("#frm_builder_page"),r={items:".frm_sortable_field_opts li",axis:"y",opacity:.65,forcePlaceholderSize:!1,handle:".frm-drag",helper:function(e,t){return x=t.clone().insertAfter(t),t.clone()},stop:function(e,t){x&&x.remove(),rn(t.item.attr("id").replace("frm_delete_field_","").replace("-"+t.item.data("optkey")+"_container","")),Mi()}},jQuery(t).sortable(r)}function K(e){jQuery(e).droppable({accept:".frmbutton, li.frm_field_box",deactivate:ne,over:J,out:Y,tolerance:"pointer"})}function J(e,t){var r=function(e){return e.classList.contains("divider_section_only")&&(e=jQuery(e).nextAll(".start_divider.frm_sorting").get(0)),e}(e.target);if(!Qe(t.draggable[0],r,e))return r.classList.remove("frm-over-droppable"),void jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable");document.querySelectorAll(".frm-over-droppable").forEach((function(e){return e.classList.remove("frm-over-droppable")})),r.classList.add("frm-over-droppable"),jQuery(r).parents("ul.frm_sorting").addClass("frm-over-droppable")}function Y(e){e.target.classList.remove("frm-over-droppable")}function X(e,t){var r={helper:Z,revert:"invalid",delay:10,start:ee,stop:te,drag:re,cursor:"grabbing",refreshPositions:!0,cursorAt:{top:0,left:90}};"string"==typeof t&&(r.handle=t),jQuery(e).draggable(r)}function Z(e){var t,r=e.delegateTarget;if(Ee(r)){var n=document.getElementById("frm-insert-fields").querySelector(".frm_ttext").cloneNode(!0);return n.querySelector("use").setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_field_group_layout_icon"),n.querySelector("span").textContent=B("Field Group","formidable"),n.classList.add("frm_field_box"),n.classList.add("ui-sortable-helper"),n}if(r.classList.contains("frmbutton"))return(t=r.cloneNode(!0)).classList.add("ui-sortable-helper"),r.classList.add("frm-new-field"),t;if(r.hasAttribute("data-ftype")){var i=r.getAttribute("data-ftype");if((t=(t=document.getElementById("frm-insert-fields").querySelector(".frm_t"+i)).cloneNode(!0)).classList.add("form-field"),t.classList.add("ui-sortable-helper"),t)return t.cloneNode(!0)}return d({className:"frmbutton"})}function ee(e,t){q.dragging=!0;var r,n=h;n.classList.add("frm-dragging-field"),document.body.classList.add("frm-dragging"),t.helper.addClass("frm-sortable-helper"),t.helper.initialOffset=n.scrollTop,e.target.classList.add("frm-drag-fade"),gr(),(r=document.querySelectorAll("ul.start_divider")).length&&r.forEach((function(e){[].slice.call(e.children).forEach((function(e){(0===e.children.length||1===e.children.length&&"ul"===e.firstElementChild.nodeName.toLowerCase()&&0===e.firstElementChild.children.length)&&e.remove()}))})),Me(),Te(),R()}function te(){h.classList.remove("frm-dragging-field"),document.body.classList.remove("frm-dragging");var e=document.querySelector(".frm-drag-fade");e&&e.classList.remove("frm-drag-fade")}function re(e,t){!function(e){v.scrollTop((function(t,r){var n=e.clientY,i=h.offsetHeight,o=e.clientY-h.offsetTop,a=o-i/2;return o>i-50&&n>5?r+.1*a:o<70&&n<130?r-Math.abs(.1*a):r}))}(e);var r=e.target,n=function(){for(var e=document.getElementById("frm-show-fields");e.querySelector(".frm-over-droppable");)e=e.querySelector(".frm-over-droppable");return"frm-show-fields"!==e.id||e.classList.contains("frm-over-droppable")||(e=!1),e}(),i=document.getElementById("frm_drag_placeholder");if(Qe(r,n,e)){i||(i=s("li",{id:"frm_drag_placeholder",className:"sortable-placeholder"}));var o,a=t.helper.get(0);if((a.classList.contains("form-field")||a.classList.contains("frm_field_box"))&&(a.style.transform="translateY("+(o=t.helper,h.scrollTop-o.initialOffset+"px)")),"frm-show-fields"===n.id||n.classList.contains("start_divider"))return i.style.left=0,void function(e){var t,r=e.y,n=e.placeholder,i=jQuery(e.droppable);if($children=i.children().not(".edit_field_type_end_divider"),0===$children.length)i.prepend(n),t=0;else{var o=ie(i,r);if(o===$children.length){var a=jQuery($children.get(o-1));t=a.offset().top+a.outerHeight(),i.append(n);var l=i.children(".edit_field_type_end_divider");l.length&&i.append(l)}else t=jQuery($children.get(o)).offset().top,jQuery($children.get(o)).before(n)}t-=i.offset().top,n.style.top=t+"px"}({droppable:n,y:e.clientY,placeholder:i});i.style.top="",function(e){var t,r=e.x,n=e.placeholder,i=jQuery(e.droppable),o=ae(i);if(o.length){var a=function(e,t){var r,n,i,o,a=ae(e);for(o=0,r=a.length-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().left)){o=r,t>i+jQuery(n).outerWidth()/2&&(o=r+1);break}return o}(i,r);if(a===o.length){var l=jQuery(o.get(a-1));t=l.offset().left+l.outerWidth(),i.append(n)}else t=jQuery(o.get(a)).offset().left,jQuery(o.get(a)).before(n),t-=0===a?4:8;t-=i.offset().left,n.style.left=t+"px"}}({droppable:n,x:e.clientX,placeholder:i})}else i&&i.remove()}function ne(e,t){if(q.dragging){q.dragging=!1;var r=t.draggable[0],n=document.getElementById("frm_drag_placeholder");if(!n)return t.helper.remove(),void y();!function(e){if(e.previousElementSibling&&e.previousElementSibling.classList.contains("frm-is-collapsed")){var t=jQuery(e).prevUntil('[data-type="break"]');if(t.length){var r=t.find(".frm-collapse-page").get(0);r&&r.click()}}}(n);var i=t.helper.parent(),o=t.helper.get(0).closest("ul.start_divider"),a=n.closest("ul.start_divider");r.classList.contains("frm-new-field")?function(e){if(ge(e))wp.hooks.doAction("frm_stopped_inserting_by_dragging",e);else{var t=document.getElementById("frm_drag_placeholder"),r=e.replace("|","-")+"_"+we(),n=s("li",{id:r,className:"frm-wait frmbutton_loadingnow"}),i=jQuery(n),o=fe(jQuery(t)),a=ue(o),l=me(o);t.parentNode.insertBefore(n,t),t.remove(),le(i);var d=0;"summary"===e&&(d=jQuery(".frmbutton_loadingnow#"+r).prevAll('li[data-type="break"]').length?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:pe(e,l,a,d),success:function(t){ye(t,i);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:a})},error:je})}}(r.id):(function(e,t){t.parentNode.insertBefore(e,t)}(r,n),function(e){if("UL"===e.nodeName&&!e.classList.contains("start_divider")&&"frm-show-fields"!==e.id){var t=e.closest("li");t&&!t.classList.contains("ui-draggable")&&X(t,".frm-move")}}(n.parentElement));var l=o?parseInt(o.closest(".edit_field_type_divider").getAttribute("data-fid")):0,d=a?parseInt(a.closest(".edit_field_type_divider").getAttribute("data-fid")):0;n.remove(),t.helper.remove();var c=i.length?ae(i):[];!function(e,t){var r;e.length&&(t.length?le(t.first()):(r=e.get(0).closest("li.frm_field_box"))&&!r.classList.contains("edit_field_type_divider")&&r.remove())}(i,c),function(e,t){0===t.length&&1===ae(jQuery(e.parentNode)).length||le(jQuery(e))}(r,c),l!==d&&_e(jQuery(r),o),y()}}function ie(e,t){var r,n,i,o,a=e.children().not(".edit_field_type_end_divider"),l=a.length;if(!document.querySelector(".frm-has-fields .frm_no_fields"))return 0;for(o=0,r=l-1;r>=0;--r)if(n=a.get(r),t>(i=jQuery(n).offset().top)){o=r,t>i+jQuery(n).outerHeight()/2&&(o=r+1);break}return o}function oe(){document.querySelectorAll("ul#frm-show-fields, ul.start_divider").forEach((function(e){e.childNodes.forEach((function(e){void 0!==e.classList&&(e.classList.contains("edit_field_type_end_divider")||void 0!==e.classList&&e.classList.contains("form-field")&&We(e))}))})),xn(),document.querySelectorAll(".edit_field_type_end_divider").forEach((function(e){return e.parentNode.appendChild(e)})),document.querySelectorAll("li.form_field_box:not(.form-field)").forEach((function(e){return!e.children.length&&e.remove()})),Qn();var e=new Event("frm_sync_after_drag_and_drop",{bubbles:!1});document.dispatchEvent(e)}function ae(e){var t=jQuery(),r=e.get(0);return r.children?(Array.from(r.children).forEach((function(e){if("none"!==e.style.display){var r=e.classList;!r.contains("form-field")||r.contains("edit_field_type_end_divider")||r.contains("frm-sortable-helper")||(t=t.add(e))}})),t):t}function le(e,t){var r,n,i,o;void 0===t&&(t="even"),r=e.parent().children("li.form-field, li.frmbutton_loadingnow").not(".edit_field_type_end_divider"),n=r.length,i=["frm_full","frm_half","frm_third","frm_fourth","frm_sixth","frm_two_thirds","frm_three_fourths","frm1","frm2","frm3","frm4","frm5","frm6","frm7","frm8","frm9","frm10","frm11","frm12"],"even"===t&&5!==n?r.each(ce(i,Ut(n))):"clear"===t?r.each(ce(i,"")):(o=-1!==["left","right","middle","even"].indexOf(t)?function(e){return Wt(n,t,e)}:function(e){return ar(t[e])},r.each(ce(i,o))),se(e.parent(),r.length)}function se(e,t){var r,n;if(void 0!==e.offset()){if(r=t>=2,null===(n=document.getElementById("frm_field_group_controls"))){if(!r)return;(n=d()).id="frm_field_group_controls",n.setAttribute("role","group"),n.setAttribute("tabindex",0),function(e){var t,r;(t=document.createElement("span")).innerHTML='';var n=B("Set Row Layout","formidable");de(t,n),zt(t,n),(r=document.createElement("span")).innerHTML='',r.classList.add("frm-move");var i=B("Move Field Group","formidable");de(r,i),zt(r,i),e.innerHTML="",e.appendChild(t),e.appendChild(r),e.appendChild(function(){var e=c({className:"dropdown"}),t=f({className:"frm_bstooltip frm-hover-icon frm-dropdown-toggle dropdown-toggle",children:[c({child:u({href:"#frm_thick_more_vert_icon"})}),c({className:"screen-reader-text",text:B("Toggle More Options Dropdown","formidable")})]});frmDom.setAttributes(t,{title:B("More Options","formidable"),"data-toggle":"dropdown","data-container":"body"}),zt(t,B("More Options","formidable")),e.appendChild(t);var r=d({className:"frm-dropdown-menu dropdown-menu dropdown-menu-right"});return r.setAttribute("role","menu"),e.appendChild(r),e}())}(n),D.appendChild(n)}e.append(n),n.style.display=r?"block":"none"}}function de(e,t){e.setAttribute("data-toggle","tooltip"),e.setAttribute("data-container","body"),e.setAttribute("title",t),e.addEventListener("mouseover",(function(){null===e.getAttribute("data-original-title")&&jQuery(e).tooltip()}))}function ce(e,t){return function(r){var n,i,o,a,l,s,d;for(n="function"==typeof t?t(r):t,i=e.length,l=!1,o=0;ot.childElementCount-1:s<=jQuery(t.querySelector(".edit_field_type_submit").closest("#frm-show-fields > li")).index()}if(a)return!(t.classList.contains("start_divider")||!xe(t.parentElement)&&(!xe(t.parentElement.nextElementSibling)||e.parentElement.querySelector("li.frm_field_box:not(.edit_field_type_submit)")));if(t.classList.contains("start_divider")&&(e.classList.contains("edit_field_type_gdpr")||"gdpr"===e.id)&&t.closest(".repeat_section"))return!1;if(!t.classList.contains("start_divider")){if(n=ae(jQuery(t)),i=jQuery(e),!(n.length<6)&&(n.length>6||(o=i.attr("data-fid"),1!==jQuery(n).filter('[data-fid="'+o+'"]').length)))return!1;if("divider"===e.id&&t.closest(".start_divider"))return!1}return e.classList.contains("frm-new-field")?function(e,t){var r=e.classList,n=r.contains("frm_tbreak"),i=r.contains("frm_thidden"),o=r.contains("frm_tdivider"),a=r.contains("frm_tform"),l=r.contains("frm_tuser_id");return"frm-show-fields"===t.id||t.classList.contains("start_divider")?!(n||i||o||a)||(!(t.classList.contains("start_divider")||null!==t.closest(".start_divider"))||!a&&!o):!(ke(t)||i||n||l)}(e,t):function(e,t){if(Ee(e))return function(e,t){return!(!t.classList.contains("start_divider")||null!==e.querySelector(".start_divider"))}(e,t);if(e.classList.contains("edit_field_type_break"))return!1;if(t.classList.contains("start_divider"))return function(e){return!e.classList.contains("edit_field_type_form")&&!e.querySelector(".edit_field_type_form")&&!(e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"))}(e);var r=e.classList.contains("edit_field_type_hidden"),n=e.classList.contains("edit_field_type_user_id");return!r&&!n&&function(e,t){if(ke(t))return!1;if(jQuery(e).children("ul.frm_sorting").not(".start_divider").length>0)return!1;var r=e.classList.contains("edit_field_type_divider")||e.querySelector(".edit_field_type_divider"),n=e.classList.contains("edit_field_type_form");return null===t.closest(".start_divider")||!r&&!n}(e,t)}(e,t)}function xe(e){return e&&e.matches("#frm-show-fields > li:last-child")}function Ee(e){return e.classList.contains("frm_field_box")&&!e.classList.contains("form-field")}function ke(e){return null!==e.querySelector(".edit_field_type_break, .edit_field_type_hidden, .edit_field_type_user_id")}function Le(e){var t=document.getElementById(e),r=jQuery(t),n=[],i=function(e){var t=e.querySelector(".frm_hidden_fdata");e.classList.add("frm_load_now"),null!==t&&n.push(t.innerHTML)},o=t;i(o);for(var a=Se(o);a&&n.length<15;)i(a),o=a,a=Se(a);jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_load_field",field:n,form_id:k,nonce:frmGlobal.nonce},success:function(e){return function(e,t,r){var n,i;if(0===(e=e.replace(/^\s+|\s+$/g,"")).indexOf("{")){for(n in e=JSON.parse(e))jQuery("#frm_field_id_"+n).replaceWith(e[n]),V("#frm_field_id_"+n+".edit_field_type_divider ul.frm_sorting"),X(document.getElementById("frm_field_id_"+n));((i=t.nextAll(".frm_field_loading:not(.frm_load_now)")).length||(i=jQuery(document.getElementById("frm-show-fields")).find(".frm_field_loading:not(.frm_load_now)")).length)&&Le(i.attr("id")),lo(),Tr(),Be();var o=new Event("frm_ajax_loaded_field",{bubbles:!1});o.frmFields=r.map((function(e){return JSON.parse(e)})),document.dispatchEvent(o)}else jQuery(".frm_load_now").removeClass(".frm_load_now").html("Error")}(e,r,n)}})}function Se(e){var t;return e.nextElementSibling?e.nextElementSibling:null===(t=e.parentNode)||void 0===t||null===(t=t.closest(".frm_field_box"))||void 0===t||null===(t=t.nextElementSibling)||void 0===t?void 0:t.querySelector(".form-field")}function Ae(){var e=jQuery(this);if(e.hasClass("disabled"))return!1;var t=e.closest(".frmbutton").attr("id");if(!ge(t)){var r=0;"summary"===t&&(r=j.children('li[data-type="break"]').length>0?1:0);var n=k;return jQuery.ajax({type:"POST",url:ajaxurl,data:pe(t,0,n,r),success:function(e){Ie(e);var r=he(e);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:e,fieldId:r,fieldType:t,form_id:n})},error:je}),!1}}function Ie(e){document.getElementById("frm_form_editor_container").classList.add("frm-has-fields");var t=$e(e),r=j[0].querySelector(".edit_field_type_submit");r?jQuery(r.closest(".frm_field_box:not(.form-field)")).before(t):j.append(t),Ue(e,!0),t.each((function(){K(this.querySelector("ul.frm_sorting")),X(this.querySelector(".form-field"),".frm-move")}))}function Be(){var e=!0,t=document.querySelectorAll(".frmjs_prod_field_opt_cont");j.find("li.edit_field_type_product").length>1&&(e=!1);for(var r=0;r',i.appendChild(document.createTextNode(" ")),i.appendChild(o),n.appendChild(i),e.appendChild(n)}))}(t,!0===e),(r=jQuery(t)).offset().left>jQuery(window).width()-r.outerWidth()&&(t.style.left=-r.outerWidth()+"px");var n=t.firstElementChild.querySelector("a");n&&n.focus()}}),0)}function Pe(){He(!0)}function ze(e){var t=e.target.closest(".frm-section-collapsed");t&&("show"===e.type?t.style.zIndex=3:t.style.zIndex=1)}function Re(e){var t={class:"frm_delete",icon:"frm_delete_icon"};return t.label=B(e?"Delete Group":"Delete","formidable"),t}function Ge(e){var t={class:"frm_clone",icon:"frm_clone_icon"};return t.label=B(e?"Duplicate Group":"Duplicate","formidable"),t}function $e(e){var t=d();"string"==typeof e?t.innerHTML=e:t.appendChild(e);var r=jQuery();return Array.from(t.children).forEach((function(e){r=r.add(jQuery("
                                  • ").addClass("frm_field_box").html(jQuery("
                                      ").addClass("frm_grid_container frm_sorting").append(e)))})),r}function We(e){var t=s("ul",{className:"frm_grid_container frm_sorting"}),r=s("li",{className:"frm_field_box",child:t});e.replaceWith(r),t.appendChild(e),K(t),X(r,".frm-move")}function Ue(e,t){var r,n,i=/id="(\S+)"/.exec(e),o=document.getElementById(i[1]),a="#"+i[1]+".edit_field_type_divider ul.frm_sorting.start_divider",l=jQuery(a),s=o.getAttribute("data-type");r=e,(n=d()).innerHTML=r,n.querySelectorAll(".form-field").forEach(Ve);var c,f,u=!1;if(Mi(),V(a),"quantity"===s&&function(e){var t=e.getAttribute("data-fid"),r=document.getElementById("field_options[product_field_"+t+"]");null!==r&&(rt(r),ii(document.getElementById("frm-single-settings-"+t)))}(o),"product"!==s&&"quantity"!==s||Be(),l.length)l.parent(".frm_field_box").children(".frm_no_section_fields").addClass("frm_block");else{var m=jQuery(o).closest("ul.frm_sorting.start_divider");m.length&&(En(m),u=!0)}if(-1!==e.indexOf("frm-collapse-page")&&Tr(),f="frm-newly-added",(c=o).classList?c.classList.add(f):c.className+=" "+f,setTimeout((function(){o.classList.remove("frm-newly-added")}),1e3),t){var _=o.getBoundingClientRect(),p=document.getElementById("post-body-content");_.top>=0&&_.left>=0&&_.right<=(window.innerWidth||document.documentElement.clientWidth)&&_.bottom<=(window.innerHeight||document.documentElement.clientHeight)||p.scroll({top:p.scrollHeight,left:0,behavior:"smooth"}),!1===u&&En(l)}Je(),lo(),document.getElementById("frm-show-fields").classList.remove("frm-over-droppable");var g=new Event("frm_added_field",{bubbles:!1});g.frmField=o,g.frmSection=a,g.frmType=s,g.frmToggles=u,document.dispatchEvent(g)}function Ve(e){if(e.dataset.fid){var t=document.getElementById("draft_fields");t&&(""===t.value?t.value=e.dataset.fid:t.value.split(",").includes(e.dataset.fid)||(t.value+=","+e.dataset.fid))}}function Ke(e){jQuery("#new_fields .frm-single-settings").addClass("frm_hidden"),jQuery("#frm-options-panel > .frm-single-settings").removeClass("frm_hidden"),Je(e)}function Je(e){jQuery("li.ui-state-default.selected").removeClass("selected"),jQuery(".frm-show-field-settings.selected").removeClass("selected"),e||gr()}function Ye(){var e=this.value,t=function(e){var t,r=[],n=e.split(""),i=n.length,o=["{","[","("],l={"}":"{",")":"(","]":"["},s=[];for(t=0;t0||s.length>0?a.unmatched_parens+"\n\n":""}(e);t+=function(e,t){var r=function(e,t){var r="";return function(e){return jQuery(e).siblings('label[for^="calc_type"]').children("input").prop("checked")}(t)||/\[(date|time|email|ip)\]/.test(e)&&(r=a.text_shortcodes+"\n\n"),r}(e,t);return r+=function(e){var t="";return/\[id\]|\[key\]|\[if\s\w+\]|\[foreach\s\w+\]|\[created-at(\s*)?/g.test(e)&&(t+=a.view_shortcodes+"\n\n"),t}(e)}(e,this),""!==t&&H(e+"\n\n"+t)}function Xe(e,t){for(var r,n,i,o=!1,a=0;a"+l[t].fieldName+"")):(r=r?" checked":"",i.push('"));e.innerHTML=i.join("")}function nt(){for(var e=document.querySelectorAll(".frmjs_prod_field_opt"),t=0;t'):(n.innerHTML=mn(r),"TEXTAREA"===n.nodeName&&n.classList.contains("wp-editor-area")&&jQuery(n).trigger("change"),n.classList.contains("frm_primary_label")&&"break"===n.nextElementSibling.getAttribute("data-ftype")&&(n.nextElementSibling.querySelector(".frm_button_submit").textContent=r)))}function at(e){var t=parseFloat(e.getAttribute("max")),r=parseFloat(e.getAttribute("min"));return(t-r)/2+r}function lt(){var e,t=this.getAttribute("data-fid"),r="";["field_options_max_","frm_format_"].forEach((function(e){var n=document.getElementById(e+t);n&&(r+=n.value)})),"text"===(e=document.getElementsByName("field_options[type_"+t+"]")[0]).options[e.selectedIndex].value&&dt(""!==r,".frm_invalid_msg"+t)}function st(){var e=this.id.replace("frm_","").replace("req_field_",""),t=this.checked,r=jQuery("#field_label_"+e+" .frm_required");if(dt(t,".frm_required_details"+e),t){var n=jQuery('input[name="field_options[required_indicator_'+e+']"]');""===n.val()&&n.val("*"),r.removeClass("frm_hidden")}else r.addClass("frm_hidden")}function dt(e,t){if($msg=jQuery(t),e)$msg.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast");else{var r=$msg.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not("+t+"):visible").length;r.css("display",""),0===n&&$msg.closest(".frm_validation_msg").fadeOut("fast")}}function ct(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(".frm_unique_details"+e);if(this.checked)t.fadeIn("fast").closest(".frm_validation_msg").fadeIn("fast"),$unqDetail=jQuery(".frm_unique_details"+e+" input"),""===$unqDetail.val()&&$unqDetail.val(a.default_unique);else{var r=t.fadeOut("fast").closest(".frm_validation_box"),n=r.css("display","block").children(":not(.frm_unique_details"+e+"):visible").length;r.css("display",""),0===n&&t.closest(".frm_validation_msg").fadeOut("fast")}}function ft(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=jQuery(this).val(),r=jQuery(document.getElementById("frm_field_id_"+e));if(dt(""!==t,".frm_conf_details"+e),""!==t){var n=jQuery(".frm_validation_box .frm_conf_details"+e+" input");""===n.val()&&n.val(a.default_conf),function(e){var t=document.getElementsByName("field_options[type_"+e+"]")[0].value;ut(document.getElementById("field_description_"+e),"field_options[description_"+e+"]",a["enter_"+t]),ut(document.getElementById("conf_field_description_"+e),"field_options[conf_desc_"+e+"]",a["confirm_"+t])}(e),"inline"===t?r.removeClass("frm_conf_below").addClass("frm_conf_inline"):"below"===t&&r.removeClass("frm_conf_inline").addClass("frm_conf_below"),jQuery(".frm-conf-box-"+e).removeClass("frm_hidden")}else jQuery(".frm-conf-box-"+e).addClass("frm_hidden"),setTimeout((function(){r.removeClass("frm_conf_inline frm_conf_below")}),200)}function ut(e,t,r){e.innerHTML===a.desc&&(e.innerHTML=r,document.getElementsByName(t)[0].value=r)}function mt(e){var t=JSON.parse(this.getAttribute("data-opts"));return e.preventDefault(),document.getElementById("frm_bulk_options").value=t.join("\n"),!1}function _t(){var e,t=jQuery(this).closest(".frm-single-settings").data("fid"),r=jQuery("#frm_field_"+t+"_opts .frm_option_template").prop("outerHTML"),n=jQuery(this).data("opttype"),i=0,o=function(e){for(var t=0,r=0,n=jQuery("#frm_field_"+e+"_opts li"),i=0;ti||"000"===i)&&(i=r)}return i}(t);if("000"!==o&&(i=o+1),"other"===n){document.getElementById("other_input_"+t).value=1;var a=jQuery(this).data("ftype");"radio"!==a&&"select"!==a||jQuery(this).fadeOut("slow");var l={action:"frm_add_field_option",field_id:t,opt_key:i,opt_type:n,nonce:frmGlobal.nonce};jQuery.post(ajaxurl,l,(function(e){jQuery(document.getElementById("frm_field_"+t+"_opts")).append(e),rn(t)}))}else r=(r=(r=(r=(r=r.replace(new RegExp('optkey="000"',"g"),'optkey="'+i+'"')).replace(new RegExp("-000_","g"),"-"+i+"_")).replace(new RegExp('-000"',"g"),"-"+i+'"')).replace(new RegExp("\\[000\\]","g"),"["+i+"]")).replace("frm_hidden frm_option_template",""),zo(t,r={newOption:r}),this.closest(".frm_single_option").after(r.newOption),rn(t);null===(e=this.closest(".frm_sortable_field_opts"))||void 0===e||null===(e=e.querySelectorAll(".frm_remove_tag.frm_disabled"))||void 0===e||e.forEach((function(e){return e.classList.remove("frm_disabled")})),Mi()}function pt(){gt(jQuery(this).closest(".frm-single-settings").data("fid"),this.value)}function gt(e,t){var r=jQuery(".frm_multiple_cont_"+e);"select"===t?r.fadeIn("fast"):r.fadeOut("fast")}function yt(){var e=jQuery(this).closest(".frm-single-settings").data("fid");Oo(jQuery(".field_"+e+"_option_key")),jQuery(".field_"+e+"_option").toggleClass("frm_with_key")}function ht(){var e,t,r=jQuery(this).closest(".frm-single-settings"),n=r.data("fid"),i=document.getElementById("frm_field_id_"+n);wt(jQuery(this)),Oo(jQuery(".field_"+n+"_image_id")),Oo(jQuery(".frm_toggle_image_options_"+n)),Oo(jQuery(".frm_image_size_"+n)),Oo(jQuery(".frm_alignment_"+n)),Oo(jQuery(".frm-add-other#frm_add_field_"+n)),(e=gn(n))?(bt(n,"inline"),vt(i),t=tn(n),i.classList.add("frm_image_options"),i.classList.add("frm_image_size_"+t),r.find(".frm-bulk-edit-link").hide()):(i.classList.remove("frm_image_options"),vt(i),bt(n,"block"),r.find(".frm-bulk-edit-link").show()),wp.hooks.doAction("frm_image_options_toggled",r[0],e)}function vt(e){e.classList.remove("frm_image_size_","frm_image_size_small","frm_image_size_medium","frm_image_size_large","frm_image_size_xlarge")}function bt(e,t){jQuery("#field_options_align_"+e).val(t).trigger("change")}function jt(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);Qt(),gn(e)&&(vt(t),t.classList.add("frm_image_options"),t.classList.add("frm_image_size_"+tn(e)))}function wt(e){var t=e.closest(".frm-single-settings").data("fid");jQuery(".field_"+t+"_option").trigger("change")}function Qt(){wt(jQuery(this))}function xt(e){var t=e.target.closest(".frm_image_preview_wrapper");e.preventDefault(),wp.media.model.settings.post.id=0;var r=wp.media.frames.file_frame=wp.media({multiple:!1,library:{type:["image"]}});r.on("select",(function(){var e=r.state().get("selection").first().toJSON(),n=t.querySelector("img");n.setAttribute("src",e.url),n.classList.remove("frm_hidden"),n.removeAttribute("srcset"),t.querySelector(".frm_image_preview_frame").style.display="block",t.querySelector(".frm_image_preview_title").textContent=e.filename,t.querySelector(".frm_choose_image_box").style.display="none";var i=jQuery(t);i.siblings('input[name*="[label]"]').data("frmimgurl",e.url),i.find("input.frm_image_id").val(e.id).trigger("change"),wp.media.model.settings.post.id=0})),r.open()}function Et(e){var t=jQuery(this).closest(".frm_image_preview_wrapper");e.preventDefault(),e.stopPropagation(),t.find("img").attr("src",""),t.find(".frm_image_preview_frame").hide(),t.find(".frm_choose_image_box").show(),t.find("input.frm_image_id").val(0).trigger("change")}function kt(){var e=jQuery(this).closest("li").find(".frm_form_fields select");this.checked?e.attr("multiple","multiple"):e.removeAttr("multiple")}function Lt(){var e=document.getElementById("dropform-search-input");null!==e&&setTimeout((function(){e.focus()}),100)}function St(e){var t=e.target,r=t.closest(".frm_warning_style");jQuery(r).fadeOut(400,(function(){return r.remove()}));var n=t.dataset.action,i=new FormData;g(n,i)}function At(e){e.preventDefault()}function It(){var e,t=this.parentNode,r=t.parentNode,n=r.querySelectorAll("li:not(.frm_hidden)");2===n.length&&(null===(e=Array.from(n).find((function(e){return e!==t})).querySelector(".frm_remove_tag"))||void 0===e||e.classList.add("frm_disabled"));var i,o=this.getAttribute("data-fid");jQuery(t).fadeOut("fast",(function(){wp.hooks.doAction("frm_before_delete_field_option",this),jQuery(t).remove(),jQuery(r).find(".frm_other_option").length<1&&(null!==(i=document.getElementById("other_input_"+o))&&(i.value=0),jQuery("#other_button_"+o).fadeIn("fast"))})),Mi()}function Bt(){var e,t,r,n;(e=jQuery(this)).is(":checked")&&(t=function(){setTimeout((function(){e.prop("checked",!1)}),0)},r=function(){e.off("mouseup",n)},n=function(){t(),r()},e.on("mouseup",n),e.one("mouseout",r))}function Ct(){this.value===a.new_option&&(this.setAttribute("data-value-on-focus",this.value),this.value="")}function qt(e){return C(B("Are you sure you want to delete these %1$s selected field(s)?","formidable"),e)}function Nt(){var e=a.conf_delete,t=this.parentNode.parentNode.parentNode.parentNode.parentNode,r=t.parentNode,n=jQuery(this).closest("li.form-field"),i=n.data("fid");if("divider"===n.data("ftype")){var o=document.querySelectorAll(".frm-field-group-hover-target .start_divider .frm_field_box"),l=0;o.forEach((function(e){var t=e.querySelectorAll("li.form-field");t&&(l+=t.length)})),l&&(e=qt(++l))}return r.classList.contains("frm-section-collapsed")||r.classList.contains("frm-page-collapsed")||("divider_section_only"===t.className&&(e=a.conf_delete_sec),this.setAttribute("data-frmverify",e),this.setAttribute("data-frmverify-btn","frm-button-red"),this.setAttribute("data-deletefield",i),Te(),F(this)),!1}function Tt(){this.closest("li.form-field").click()}function Ot(){var e,t;null!==(e=document.querySelector(".frm-field-group-hover-target"))&&(e.classList.add("frm-selected-field-group"),(t=document.createElement("div")).classList.add("frm-delete-field-groups","frm_hidden"),document.body.appendChild(t),t.click())}function Dt(){var e=document.querySelector(".frm-field-group-hover-target");if(null!==e){var t="frm_field_group_"+we(),r=document.createTextNode("");We(r);var n=jQuery(r).closest("li").get(0);n.classList.add("frm_hidden");var i=n.querySelector("ul");i.id=t,jQuery(e.closest("li.frm_field_box")).after(n);var o=ae(jQuery(e)),a=[],l=[],s=o.length,d={},c=0;jQuery(n).on("frm_added_duplicated_field_to_row",(function(e,t){if(d[jQuery(t.duplicatedFieldHtml).attr("data-fid")]=t.originalFieldId,!(s>++c)){var r=jQuery(i),o=ae(r);l.forEach((function(e){e.remove()}));for(var f=0;f0&&ir(Ut(t)))&&l>=12&&(l=Math.floor(12/t)),s=0;s',""),t);e.prepend(r),document.getElementById("frm-field-group-message-dismiss").addEventListener("click",(function(){mr(document.getElementById("frm-field-group-message"))}))}}(),"ul"===e.originalEvent.target.nodeName.toLowerCase()){var t=document.querySelector(".frm-field-group-hover-target");if(t){var r=e.ctrlKey||e.metaKey,n=e.shiftKey,i=t.classList.contains("frm-selected-field-group"),o=function(){var e=jQuery(".frm-selected-field-group");if(e.length)return e;var t=_r();if(t){var r=t.closest("ul");if(r&&1===ae(jQuery(r)).length)return r.classList.add("frm-selected-field-group"),jQuery(r)}return jQuery()}(),a=o.length;if(r||n){var l=_r();if(null===l||jQuery(l).siblings("li.form-field").length||(l.parentNode.classList.add("frm-selected-field-group"),++a),r){if(i)return--a,t.classList.remove("frm-selected-field-group"),void pr(a);++a}else if(n&&!i){++a;var s=o.first();(s.parent().index()=2||1===e&&ae(jQuery(document.querySelector(".frm-selected-field-group"))).length>1?function(){var e,t,r,n,i;if(null!==(e=document.getElementById("frm_field_multiselect_popup")))return e.classList.toggle("frm-unmergable",!hr()),e;(e=d()).id="frm_field_multiselect_popup",hr()||e.classList.add("frm-unmergable"),(t=d()).classList.add("frm-merge-fields-into-row"),t.textContent=B("Merge into row","formidable"),(r=document.createElement("a")).style.marginLeft="5px",r.classList.add("frm_icon_font","frm_arrowdown6_icon"),r.setAttribute("href","#"),t.appendChild(r),e.appendChild(t),(n=d()).classList.add("frm-multiselect-popup-separator"),e.appendChild(n),(i=d()).classList.add("frm-delete-field-groups"),i.appendChild(Rt("frm_trash_svg")),e.appendChild(i),document.getElementById("post-body-content").appendChild(e),jQuery(e).hide().fadeIn()}():yr(),Me()}function gr(e){if(void 0!==e){if(null!==e.originalEvent.target.closest("#frm-show-fields"))return;if(e.originalEvent.target.classList.contains("frm-merge-fields-into-row"))return;if(null!==e.originalEvent.target.closest(".frm-merge-fields-into-row"))return;if(e.originalEvent.target.classList.contains("frm-custom-field-group-layout"))return;if(e.originalEvent.target.classList.contains("frm-cancel-custom-field-group-layout"))return}jQuery(".frm-selected-field-group").removeClass("frm-selected-field-group"),jQuery(document).off("click",gr),yr()}function yr(){var e=document.getElementById("frm_field_multiselect_popup");null!==e&&e.remove()}function hr(){var e,t,r,n,i;if(1===(r=(e=document.querySelectorAll(".frm-selected-field-group")).length))return!1;for(t=0,n=0;n6)return!1}return!0}function vr(e){var t;null===e.originalEvent.target.closest("#frm_field_group_popup")&&(e.originalEvent.target.classList.contains("frm-custom-field-group-layout")||(t=Pt(br(),document.querySelector(".frm-selected-field-group").firstChild),this.appendChild(t)))}function br(){var e=0;return jQuery(document.querySelectorAll(".frm-selected-field-group")).each((function(){e+=ae(jQuery(this)).length})),e}function jr(){var e,t,r,n;n=[],jQuery(".frm-selected-field-group > li.form-field").each((function(){n.push(this.dataset.fid)})),t=function(e){return function(t){t.preventDefault(),function(e){e.forEach((function(e){Qr(e)}))}(e)}}(e=n),null!==(r=document.getElementById("frm_field_multiselect_popup"))&&r.remove(),this.setAttribute("data-frmverify",qt(e.length)),F(this);var i=document.getElementById("frm-confirmed-click");null==i||i.removeAttribute("data-deletefield"),jQuery(i).on("click",t),jQuery("#frm_confirm_modal").one("dialogclose",(function(){jQuery(i).off("click",t)}))}function wr(){Qr(this.getAttribute("data-deletefield"))}function Qr(e){var t=jQuery("#frm_field_id_"+e);xr(e),t.hasClass("edit_field_type_divider")&&t.find("li.frm_field_box[data-fid]").each((function(){xr(this.getAttribute("data-fid"))})),xn()}function xr(e){jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_delete_field",field_id:e,nonce:frmGlobal.nonce},success:function(){var t,r=jQuery(document.getElementById("frm_field_id_"+e)),n=jQuery("#frm-single-settings-"+e);n.is(":visible")&&(null===(t=document.querySelector(".frm-settings-panel .frm-tabs-navs ul > li:first-child"))||void 0===t||t.click(),document.querySelector("#frm-options-panel .frm-single-settings").classList.remove("frm_hidden")),function(e){var t=e[0].querySelectorAll(".frm-inline-modal[data-fills]");t.length&&t.forEach((function(e){e.classList.add("frm_hidden"),e.removeAttribute("data-fills"),e.closest("form").appendChild(e)}))}(n),n.remove(),r.fadeOut("slow",(function(){var e,t=r.closest(".start_divider"),n=r.data("type"),i=r.siblings("li.form-field");if(i.length||(r.is(".edit_field_type_end_divider")?i.length=r.closest("li.form-field").siblings():e=r.closest("ul.frm_sorting").parent()),r.remove(),"break"===n?Tr():"product"===n&&(Be(),nt()),i.length?le(i.first()):e.remove(),0===jQuery("#frm-show-fields li").length||function(){if(j.get(0).childElementCount>1)return!1;var e=j.get(0).firstElementChild.firstElementChild.querySelectorAll("li.frm_field_box");return!(e.length>1)&&e[0].classList.contains("edit_field_type_submit")}()){var o=document.getElementById("frm_form_editor_container");o.classList.remove("frm-has-fields"),o.classList.add("frm-empty-fields")}else t.length&&En(t);R()})),r.length&&wp.hooks.doAction("frm_after_delete_field",r[0])}})}function Er(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_logic_row_"+e).querySelectorAll(".frm_logic_row");return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_logic_row",form_id:t,field_id:e,nonce:frmGlobal.nonce,meta_name:kr(r,"frm_logic_"+e+"_"),fields:tt()},success:function(t){jQuery(document.getElementById("logic_"+e)).fadeOut("fast",(function(){var r=document.getElementById("frm_logic_row_"+e);r.insertAdjacentHTML("beforeend",t);var n=r.querySelector(".frm_logic_row:last-child .frm-logic-rule-text");n&&(n.textContent=r.dataset.ruleText);var i=r.closest(".frm_logic_rows");i.style.height="auto",jQuery(i).fadeIn("fast")}))}}),!1}function kr(e,t,r){return e.length?parseInt(e[e.length-1].id.replace(t,""),10)+1:void 0!==r?r:0}function Lr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=k,r=document.getElementById("frm_watch_lookup_block_"+e).children;return jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_watch_lookup_row",form_id:t,field_id:e,row_key:kr(r,"frm_watch_lookup_"+e+"_"),nonce:frmGlobal.nonce},success:function(t){var r,n=jQuery(document.getElementById("frm_watch_lookup_block_"+e));n.append(t),n.fadeIn("slow"),null===(r=document.getElementById("frm_watch_lookup_label_".concat(e)))||void 0===r||r.classList.remove("frm_hidden!")}}),!1}function Sr(e){var t,r,n=jQuery(e).closest(".frm-single-settings").attr("data-fid"),i=jQuery(e).closest("ul").get(0).querySelectorAll(".field_"+n+"_option");for(t in i)if((r=i[t]).id!==e.id&&r.value===e.value&&"true"!==r.getAttribute("data-duplicate"))return!0;return!1}function Ar(){var e,t;null===this.getAttribute("data-value-on-load")&&(this.setAttribute("data-value-on-load",this.value),t=jQuery(this).closest(".frm-single-settings").attr("data-fid"),(e=document.createElement("input")).value=this.value,e.setAttribute("type","hidden"),e.setAttribute("name","optionmap["+t+"]["+this.value+"]"),this.parentNode.appendChild(e),void 0===S[t]&&(S[t]={}),S[t][this.value]=e),"true"===this.getAttribute("data-duplicate")&&(this.removeAttribute("data-duplicate"),Sr(this))?this.setAttribute("data-value-on-focus",this.getAttribute("data-value-on-load")):""===this.value&&a.new_option===this.getAttribute("data-value-on-focus")||this.setAttribute("data-value-on-focus",this.value)}function Ir(e){var t,r=e.closest(".frm_single_option");return e.parentElement.classList.contains("frm_single_option")?{newValue:r.querySelector('.frm_option_key input[type="text"]').value,newLabel:t=e.value}:(t=r.querySelector('input[type="text"]').value,{newValue:e.value,newLabel:t})}function Br(){var e,t,r,n,i,o,a,l,s,d,c,f,u=function(e){var t=function(e){var t,r,n=null!==(t=null===(r=e.closest(".frm-single-settings").querySelector(".frm_toggle_sep_values"))||void 0===r?void 0:r.checked)&&void 0!==t&&t,i=e.closest(".frm_single_option");return n&&e.parentElement.classList.contains("frm_single_option")?{oldValue:i.querySelector('.frm_option_key input[type="text"]').getAttribute("data-value-on-focus"),oldLabel:e.getAttribute("data-value-on-focus")}:{oldValue:e.getAttribute("data-value-on-focus"),oldLabel:i.querySelector('input[type="text"]').getAttribute("data-value-on-focus")}}(e),r=t.oldValue,n=t.oldLabel,i=Ir(e);return{oldValue:r,oldLabel:n,newValue:i.newValue,newLabel:i.newLabel}}(this),m=u.oldValue,_=u.oldLabel,p=u.newValue,g=u.newLabel;if(m!==p||_!==g){var y=this.closest(".frm-single-settings");if(t=y.getAttribute("data-fid"),e=this.getAttribute("data-value-on-load"),Sr(this))return this.setAttribute("data-duplicate","true"),void(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=e));for(void 0!==S[t]&&void 0!==S[t][e]&&(S[t][e].value=p),s=[],rows=D.querySelectorAll(".frm_logic_row"),o=rows.length,a=0;a1)for(document.getElementById("frm-fake-page").style.display="block",e=0;e200)&&(H(a.repeat_limit_min),this.value="")}function Jr(){var e=this.value;""!==e&&(e<1||e>200)&&(H(a.checkbox_limit),this.value="")}function Yr(e,t){jQuery(e).closest(".frm_field_box").find(".frm_"+t+"_form_row .frm_repeat_label").text(e.value)}function Xr(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=this.value,r=document.getElementById("frm_show_selected_fields_"+e),n=document.getElementById("frm_show_selected_forms_"+e);jQuery(n).find("select").val(""),"form"===t?(n.style.display="inline",function(e){if(null!==e)for(;e.firstChild;)e.removeChild(e.firstChild)}(r)):(r.style.display="none",n.style.display="none",wn(t,e))}function Zr(){var e,t;(e=en(this))&&(t=jQuery(this).closest(".frm_single_option"),function(e,t,r){var n,i,o,a,l,s,c=r.data("optkey"),f=pn(e),u=jQuery('label[for="field_'+t+"-"+c+'"]'),m="field_options[options_"+e+"]["+c+"]",_=jQuery('input[name="'+m+'[label]"]');if(u.length<1)return rn(e),void((o=r.find('input[name^="default_value_"]')).is(":checked")&&_.length>0&&jQuery('select[name^="item_meta['+e+']"]').val(_.val()));if(a=u.children("input"),n=_.length<1?(_=jQuery('input[name="'+m+'"]')).val():f?jQuery('input[name="'+m+'[value]"]').val():_.val(),!(_.length<1)){if(i=u[0].childNodes,gn(e))l=function(e,t,r){var n,i,o;return(n=e.find("img"))&&(i=n.attr("src")),o=yn(t),fn(t),_n(r.val(),o,i)}(r,e,_),(s=u.find(".frm_image_option_container")).length>0?s.replaceWith(l):(i[i.length-1].nodeValue="",u.append(l));else{var p=!1;i.forEach((function(t,r){if(!1===p)"INPUT"===t.tagName&&(p=r);else if(r===p+1){var n="";!function(e){var t=document.getElementsByName("field_options[image_options_"+e+"]"),r=Array.from(t).find((function(e){return e.checked&&"buttons"===e.value}));return void 0!==r}(e)?t.nodeValue=" "+_.val():(n=d({className:"frm_label_button_container",text:" "+_.val()}),u[0].replaceChild(n,t))}else u[0].removeChild(t)}))}a.val(n),o=r.find('input[name^="default_value_"]'),a.prop("checked",!!o.is(":checked"))}}(e.fieldId,e.fieldKey,t))}function en(e){var t;return!!(t=jQuery(e).closest(".frm_sortable_field_opts")).length&&{fieldId:t.attr("id").replace("frm_field_","").replace("_opts",""),fieldKey:t.data("key")}}function tn(e){var t,r=document.getElementById("field_options_image_size_"+e),n="";return null!==r&&""!==(t=r.value)&&(n=t),n}function rn(e){var t,r,n,i,o,a=jQuery('[name^="item_meta['+e+']"]');if(!(a.length<1)){if(a.is("select"))null!==(i=document.getElementById("frm_placeholder_"+e))&&""===i.value?sn(a[0],{sourceID:e}):sn(a[0],{sourceID:e,placeholder:i.value});else{r=cn(e),jQuery("#field_"+e+"_inner_container > .frm_form_fields").html(""),o=en(jQuery("#frm_delete_field_"+e+"-000_container"));var l=jQuery("#field_"+e+"_inner_container > .frm_form_fields"),s=gn(e),d=s?tn(e):"",c=s?"frm_image_option frm_image_"+d+" ":"",f=Ho(e);for(n="hidden"===a.attr("type")?a.data("field-type"):a.attr("type"),t=0;t=0;a--){var u;l=d[a];var m=null===(u=document.getElementById("frm_field_"+e+"_opts").querySelector('.frm_option_key input[type="text"]'))||void 0===u?void 0:u.value;m||(m=l),s=i.querySelector('option[value="'+m+'"]');var _=nn(e,l),p=_.newValue,g=_.newLabel,y=document.querySelectorAll("#frm_field_"+e+"_opts input[data-value-on-focus]"),h=Array.from(y).find((function(e){return e.value===l}));if(h){var v=h.dataset.valueOnFocus;if(v&&i.querySelector('option[value="'+v+'"]'))continue}an(i,s,p,g)}null!==(s=i.querySelector('option[value=""]'))&&i.prepend(s)}}function an(e,t,r,n){null!==t||e.querySelector('option[value="'+r+'"]')||((t=frmDom.tag("option",{text:n})).value=r),e.prepend(t)}function ln(e,t,r,n,i,o){var a,l="",s=-1!==t.key.indexOf("other"),d="field_"+n+"-"+t.key,c="scale"===e?"radio":e;return a='',this.getSingle=function(){return""!==(l=wp.hooks.applyFilters("frm_admin.build_single_option_template",l,{opt:t,type:e,fieldId:r,classes:o,id:d}))?l:'
                                      "+(s?a:"")+"
                                      "},this.getSingle()}function sn(e,t){if(null!==e){var r=t.sourceID,n=t.placeholder,i=Ho(r),o=t.other;!function(e){var t;if(void 0!==e.options)for(t=e.options.length-1;t>=0;t--)e.remove(t)}(e);for(var a=cn(r),l=void 0!==n,s=0;s0||d[t].name.indexOf("[value]")>0||d[t].name.indexOf("[image]")>0||d[t].name.indexOf("[price]")>0||(i=r=d[t].value,o=d[t].name.replace("field_options[options_"+e+"][","").replace("[label]","").replace("]",""),m&&(n=d[t].name.replace("[label]","[value]"),r=jQuery('input[name="'+n+'"]').val()),u&&(i=_n(i,f,un(d[t]),fn(e))),a={saved:r,label:i=frmAdminBuild.hooks.applyFilters("frm_choice_field_label",i,e,d[t],u),checked:(l=d[t].id,field=jQuery("#"+l),0!==field.length&&(checkbox=field.siblings("input[type=checkbox]"),checkbox.length&&checkbox.prop("checked"))),key:o},c&&(n=d[t].name.replace("[label]","[price]"),a.price=jQuery('input[name="'+n+'"]').val()),s.push(a));return s}function fn(e){var t=document.getElementById("frm-single-settings-"+e);return null===t?"radio":t.classList.contains("frm-type-checkbox")?"checkbox":"radio"}function un(e){var t,r=jQuery(e).siblings(".frm_image_preview_wrapper");return r.length&&(t=r.find("img")).length?t.attr("src"):""}function mn(e){(e instanceof Element||e instanceof Document)&&(e=e.outerHTML);var t=jQuery.parseHTML(e).reduce((function(e,t){var r=frmDom.cleanNode(t);return"#text"===r.nodeName?e+r.textContent:e+r.outerHTML}),"");return t!==e?mn(t):t}function _n(e,t,r,n){var i,o,l,c=e;return c=mn(c),r?o=m({src:r,alt:c}):(o=d({className:"frm_empty_url"})).innerHTML=a.image_placeholder_icon,i=t?" frm_label_with_image":"",(l=s("span",{className:"frm_text_label_for_image_inner"})).innerHTML=c,s("span",{className:"frm_image_option_container"+i,children:[o,s("span",{className:"frm_text_label_for_image",child:l})]})}function pn(e){return hn("separate_value_"+e)}function gn(e){for(var t=!1,r=document.getElementsByName("field_options[image_options_"+e+"]"),n=0;n=0&&(r.splice(t,1),e.val(r),e.next(".btn-group").find('.multiselect-container input[value=""]').prop("checked",!1))}(jQuery(this))}function An(e){e.val(""),e.next(".btn-group").find('.multiselect-container input[value!=""]').prop("checked",!1)}function In(){jQuery(".frm-hide-empty").each((function(){0===jQuery(this).text().trim().length&&jQuery(this).remove()}))}function Bn(e){e.preventDefault(),Cn(this)}function Cn(e,t){var r=document.getElementById(e.getAttribute("data-open")),n=jQuery(e).closest("p,ul"),i=void 0!==t;n.hasClass("frm-open")?(n.removeClass("frm-open"),r.classList.add("frm_hidden")):(i||(t=Gi(e)),null!==t&&(i||t.focus(),n.after(r),r.setAttribute("data-fills",t.id.replace("-proxy-input","")),0===r.id.indexOf("frm-calc-box")&&Ze(r,!0)),n.addClass("frm-open"),r.classList.remove("frm_hidden"),wp.hooks.doAction("frm_show_inline_modal",r,e))}function qn(e){e.preventDefault(),this.parentNode.classList.add("frm_hidden"),jQuery('.frm-open [data-open="'+this.parentNode.id+'"]').closest(".frm-open").removeClass("frm-open")}function Nn(e){var t=e.target;t.closest(".frm-inline-modal.frm-modal-no-dismiss")||t.closest(".frm-show-inline-modal")||t.closest("#frm_adv_info")||t.closest(".frm-token-proxy-input")||document.querySelectorAll(".frm-inline-modal.frm-modal-no-dismiss:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden"),e.previousElementSibling.classList.remove("frm-open")}))}function Tn(){var e,t,r,n,i,o,a,l=this.getAttribute("data-frmchange").split(",");for(e=0;e',r)),o.innerHTML=c,e.dataset.upsellImage&&o.appendChild(m({src:e.dataset.upsellImage,alt:e.dataset.upgrade})),a.href=function(e,t){var r=e.getAttribute("data-link");return null!=r&&""!==r||(r=t.getAttribute("data-default")),r}(e,a),s.style.display="none",i.style.display=_,l.style.display="block"===_?"inline-block":_,o.style.display=u,a.style.display="block"===f?"inline-block":f}function Yn(e){void 0===e&&(e=""),function(e){var t,r=jQuery(e+" :not(.frm_has_shortcodes) .frm_not_email_message, "+e+" :not(.frm_has_shortcodes) .frm_not_email_to, "+e+" :not(.frm_has_shortcodes) .frm_not_email_subject");for(t=0;t').before('')}function Xn(){var e="success";"options[edit_action]"===this.name&&(e="edit");var t=jQuery(this).val();jQuery("."+e+"_action_box").hide(),"redirect"===t?jQuery("."+e+"_action_redirect_box."+e+"_action_box").fadeIn("slow"):"page"===t?jQuery("."+e+"_action_page_box."+e+"_action_box").fadeIn("slow"):jQuery("."+e+"_action_message_box."+e+"_action_box").fadeIn("slow")}function Zn(e){if(m=e.target,p=jQuery(m),g=p.closest(".frm_form_action_settings"),(y=g.find(".widget-inside")).find("p, div, table").length||((_=g.find(".widget-top")).on("frm-action-loaded",(function(){p.trigger("click"),g.removeClass("open"),y.hide()})),_.trigger("click"),0)){var t=e.target.closest(".frm_form_action_settings"),r=t.querySelectorAll(".wp-editor-area");r.length&&r.forEach((function(e){tinymce.EditorManager.execCommand("mceRemoveEditor",!0,e.id)}));var n=jQuery(t).clone(),i=n.attr("id").replace("frm_form_action_",""),o=ei(i);n.find(".frm_action_id, .frm-btn-group").remove(),n.find('input[name$="['+i+'][ID]"]').val(""),n.find(".widget-inside").hide(),n.find("input[type=text], textarea, input[type=number]").prop("defaultValue",(function(){return this.value})),n.find("input[type=checkbox], input[type=radio]").prop("defaultChecked",(function(){return this.checked}));var a=new RegExp("\\["+i+"\\]","g"),l=new RegExp("_"+i+'"',"g"),s=new RegExp("-"+i+'"',"g"),c=new RegExp('"'+i+'"',"g"),f=n.html().replace(a,"["+o+"]").replace(l,"_"+o+'"');f=f.replace(s,"-"+o+'"').replace(c,'"'+o+'"');var u=d({id:"frm_form_action_"+o,className:n.get(0).className});u.setAttribute("data-actionkey",o),u.innerHTML=f,u.querySelectorAll(".wp-editor-wrap, .wp-editor-wrap *").forEach((function(e){"string"==typeof e.className&&(e.className=e.className.replace(i,o)),e.id=e.id.replace(i,o)})),u.classList.remove("open"),document.getElementById("frm_notification_settings").appendChild(u),r.length&&(r.forEach((function(e){frmDom.wysiwyg.init(e)})),u.querySelectorAll(".wp-editor-area").forEach((function(e){frmDom.wysiwyg.init(e)}))),u.classList.contains("frm_single_on_submit_settings")&&u.querySelector("input.frm-page-search")&&jo(u),lo(),wp.hooks.doAction("frm_after_duplicate_action",u)}var m,_,p,g,y}function ei(e){var t=parseInt(e,10)+11;return null!==document.getElementById("frm_form_action_"+t)&&(t=ei(++t)),t}function ti(){var e,t=jQuery(this).data("actiontype");if(!di(t)){var r=(e=kr(document.querySelectorAll(".frm_form_action_settings"),"frm_form_action_"),void 0!==document.getElementById("frm_form_action_"+e)&&(e+=100),A>=e&&(e=A+1),A=e,e),n=k,i=document.createElement("div");i.classList.add("frm_single_"+t+"_settings");var o=document.getElementById("frm_notification_settings");o.appendChild(i),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_action",type:t,list_id:r,form_id:n,nonce:frmGlobal.nonce},success:function(e){Mi(),i.remove(),document.querySelectorAll(".frm_form_action_settings.open").forEach((function(e){return e.classList.remove("open")}));var n=d();n.innerHTML=e;var a=n.querySelector(".widget-top");Array.from(n.children).forEach((function(e){return o.appendChild(e)})),jQuery(".frm_form_action_settings").fadeIn("slow");var l=document.getElementById("frm_form_action_"+r);l.classList.add("open"),document.getElementById("post-body-content").scroll({top:l.offsetTop+10,left:0,behavior:"smooth"}),si(t),Yn("#frm_form_action_"+r),lo(),jo(l),a&&jQuery(a).trigger("frm-action-loaded"),frmAdminBuild.hooks.doAction("frm_added_form_action",l)}})}}function ri(){var e=document.getElementById("frm_email_addon_menu").classList,t=document.getElementById("actions-search-input");e.contains("frm-all-actions")?(e.remove("frm-all-actions"),e.add("frm-limited-actions")):(e.add("frm-all-actions"),e.remove("frm-limited-actions")),t.value="",Io(t,"input")}function ni(e){e.on("Change",(function(){!function(e){var t,r;(t=document.querySelector(".frm-single-settings:not(.frm_hidden)"))&&null!==(r=t.querySelector(".wp-editor-wrap"))&&r.classList.contains("tmce-active")&&!tinyMCE.activeEditor.isHidden()&&(e.targetElm.value=e.getContent(),jQuery(e.targetElm).trigger("change"))}(e)}))}function ii(e){var t=this;if(null!==e)return this.fragment=document.createDocumentFragment(),this.initOnceInAllInstances=function(){void 0===ii.prototype.endMarker&&(ii.prototype.endMarker=document.getElementById("frm-end-form-marker"))},this.append=function(e){var r=null!==e?e.parentElement.classList:"";null!==e&&(r.contains("frm_field_box")||r.contains("divider_section_only"))&&t.fragment.appendChild(e)},this.moveFields=function(){w.insertBefore(t.fragment,ii.prototype.endMarker)},this.initOnceInAllInstances(),void 0!==e?(this.append(e),void this.moveFields()):{append:this.append,moveFields:this.moveFields}}function oi(){var e=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),t=this.getAttribute("data-emailrow");jQuery("#frm_form_action_"+e+" .frm_"+t+"_row").fadeIn("slow"),jQuery(this).fadeOut("slow")}function ai(){var e=jQuery(this).closest(".frm_form_action_settings"),t=this.getAttribute("data-emailrow"),r=".frm_"+t+"_row",n=".frm_"+t+"_button";jQuery(e).find(n).fadeIn("slow"),jQuery(e).find(r).fadeOut("slow",(function(){jQuery(e).find(r+" input").val("")}))}function li(){var e=jQuery(this).closest(".frm_form_action_settings"),t=".frm_from_to_match_row";e.find('input[name$="[post_content][from]"]').val()===e.find('input[name$="[post_content][email_to]"]').val()?jQuery(e).find(t).fadeIn("slow"):jQuery(e).find(t).fadeOut("slow")}function si(e){var t,r,n=document.querySelectorAll(".frm_"+e+"_action");di(e)?(t=n,r=ci(e)>0,t.forEach((function(e){e.classList.remove("frm_active_action"),e.classList.add("frm_inactive_action"),r&&e.classList.add("frm_already_used")}))):n.forEach((function(e){e.querySelector(".frm_show_upgrade")||(e.classList.remove("frm_inactive_action","frm_already_used"),e.classList.add("frm_active_action"))}))}function di(e){var t=function(e){return jQuery(".frm_single_"+e+"_settings").length}(e)>=ci(e),r={type:e};return wp.hooks.applyFilters("frm_action_at_limit",t,r)}function ci(e){return parseInt(jQuery(".frm_"+e+"_action").data("limit"),10)}function fi(){var e=a.only_one_action,t=this.dataset.limit;void 0!==t&&((t=parseInt(t))>1?e=e.replace(1,t).trim():e+=" "+a.edit_action_text),H(e)}function ui(){var e=jQuery(this).data("emailkey"),t=jQuery(this).closest(".frm_form_action_settings").find(".frm_action_name").val(),r=document.getElementById("form_id").value,n=document.getElementById("frm_logic_row_"+e),i=kr(n.querySelectorAll(".frm_logic_row"),"frm_logic_"+e+"_"),o=d({id:"frm_logic_"+e+"_"+i,className:"frm_logic_row frm_hidden"});return n.appendChild(o),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_form_logic_row",email_id:e,form_id:r,meta_name:i,type:t,nonce:frmGlobal.nonce},success:function(t){jQuery(document.getElementById("logic_link_"+e)).fadeOut("slow",(function(){o.insertAdjacentHTML("beforebegin",t),o.remove(),jQuery(n).parent(".frm_logic_rows").fadeIn("slow")}))}}),!1}function mi(){var e=jQuery("select.frm_single_post_field");e.css("border-color","");var t=this,r=jQuery(t).val();if(""===r||"checkbox"===r)return!1;e.each((function(){if(jQuery(this).val()===r&&this.name!==t.name)return this.style.borderColor="red",jQuery(t).val(""),H(a.field_already_used),!1}))}function _i(){var e=jQuery(this).val();""===e?(jQuery(".frm_post_content_opt, select.frm_dyncontent_opt").hide().val(""),jQuery(".frm_dyncontent_opt").hide()):"post_content"===e?(jQuery(".frm_post_content_opt").show(),jQuery(".frm_dyncontent_opt").hide(),jQuery("select.frm_dyncontent_opt").val("")):(jQuery(".frm_post_content_opt").hide().val(""),jQuery("select.frm_dyncontent_opt, .frm_form_field.frm_dyncontent_opt").show())}function pi(){var e=jQuery(this).val(),t=jQuery(document.getElementById("frm_dyncontent"));""===e||"new"===e?(t.val(""),jQuery(".frm_dyncontent_opt").show()):jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_display_get_content",id:e,nonce:frmGlobal.nonce},success:function(e){t.val(e),jQuery(".frm_dyncontent_opt").show()}})}function gi(){var e,t,r=document.getElementById("frm_posttax_rows").childNodes,n=document.querySelector(".frm_post_parent_field"),o=document.querySelector(".frm_post_menu_order_field"),a=this.value;jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_replace_posttax_options",post_type:a,nonce:frmGlobal.nonce},success:function(n){for(i=0;i');var e=jQuery(this).closest(".frm_form_action_settings").find('select[name$="[post_content][post_type]"]').val(),t=jQuery(this).closest(".frm_form_action_settings").data("actionkey"),r=jQuery(this).closest(".frm_posttax_row").attr("id").replace("frm_posttax_",""),n=jQuery(this).val(),i=jQuery(document.getElementById(r+"_show_exclude")).is(":checked")?1:0,o=jQuery('select[name$="[post_category]['+r+'][field_id]"]').val(),a=jQuery('input[name="id"]').val();jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_add_posttax_row",form_id:a,post_type:e,tax_key:r,action_key:t,meta_name:n,field_id:o,show_exclude:i,nonce:frmGlobal.nonce},success:function(e){jQuery(document.getElementById("frm_posttax_"+r)).replaceWith(e)}})}}function wi(){var e=jQuery(this).closest(".frm_postmeta_row"),t=e.find(".frm_cancelnew"),r=e.find(".frm_enternew");return e.find("select.frm_cancelnew").is(":visible")?(t.hide(),r.show()):(t.show(),r.hide()),e.find("input.frm_enternew, select.frm_cancelnew").val(""),!1}function Qi(){var e=jQuery(this),t=e.val();"checkbox"===e.attr("type")&&!1===this.checked&&(t="");var r=e.data("toggleclass");""===t?jQuery("."+r).hide():(jQuery("."+r).show(),jQuery(".hide_"+r+"_"+t).hide())}function xi(){Rn()||(Wn(this),Hn(document.querySelector(".frm_form_settings")))}function Ei(e){return e.preventDefault(),ki(jQuery(this),this.getAttribute("data-code")),!1}function ki(e,t){var r=!1,i=e;if("object"===n(e)){if(e.hasClass("frm_noallow"))return;void 0===(i=jQuery(e).closest("[data-fills]").attr("data-fills"))&&void 0!==(i=e.closest("div").attr("class"))&&(i=i.split(" ")[1])}if(void 0===i){var o=document.activeElement;"search"===o.type?null===(i=o.id.replace("-search-input","")).match(/\d/gi)&&(i=(o=jQuery(".frm-single-settings:visible ."+i)).attr("id")):i=o.id}i&&(r=jQuery("#wp-"+i+"-wrap.wp-editor-wrap").length>0);var a=jQuery(document.getElementById(i));if(void 0===e.attr("data-shortcode")&&(!a.length||void 0===a.attr("data-shortcode"))){var l=e.parents("ul.frm_code_list").attr("data-shortcode");"undefined"!==l&&"no"===l||(t="["+t+"]")}if(r&&(wpActiveEditor=i),!a.length)return!1;if("[default-html]"===t||"[default-plain]"===t){var s=0;"[default-plain]"===t&&(s=1),jQuery.ajax({type:"POST",url:ajaxurl,data:{action:"frm_get_default_html",form_id:jQuery('input[name="id"]').val(),plain_text:s,nonce:frmGlobal.nonce},elementId:i,success:function(e){if(r){var t=document.createElement("p");t.innerText=e,send_to_editor(t.innerHTML)}else Li(a,e)}})}else t=function(e,t,r){return"object"===n(t)&&t instanceof jQuery&&0===r[0].id.indexOf("success_url_")&&(t=t[0]).closest("#frm-insert-fields-box")?(t.parentNode.classList.contains("frm_insert_url")||(e=e.replace("]"," sanitize_url=1]")),e):e}(t,e,a),r?send_to_editor(t):Li(a,t);return!1}function Li(e,t){if(document.selection)e[0].focus(),document.selection.createRange().text=t;else{obj=e[0];var r=obj.selectionEnd;t=function(e,t,r,n){var i=e.data("sep");if(void 0===i)return t;var o=e.val();if(!o.trim().length)return t;var a=new RegExp(i+"\\s*$"),l=new RegExp("^\\s*"+i);return o.substr(0,r).trim().length&&!1===a.test(o.substr(0,r))&&(t=i+t),o.substr(n,o.length).trim().length&&!1===l.test(o.substr(n,o.length))&&(t+=i),t}(e,t,obj.selectionStart,r),obj.value=obj.value.substr(0,obj.selectionStart)+t+obj.value.substr(obj.selectionEnd,obj.value.length);var n=r+t.length;!function(e,t){if(e.classList.contains("frm_classes")&&Si(t)){var r=e.value.split(" ").filter(Si);r.length&&(e.value=function(e,t,r){var n=e.split(" ").filter((function(e){return(e=e.trim()).length&&!t.includes(e)}));return n.includes(r)||n.push(r),n.join(" ")}(e.value,r,t.trim()))}}(obj,t),obj.focus(),obj.setSelectionRange(n,n)}Pn(e)}function Si(e){return["frm_half","frm_third","frm_two_thirds","frm_fourth","frm_three_fourths","frm_fifth","frm_sixth","frm2","frm3","frm4","frm6","frm8","frm9","frm10","frm12"].includes(e.trim())}function Ai(){var e=document.getElementById("frm-id-condition"),t=document.getElementById("frm-key-condition");"id"===this.value?(e.classList.remove("frm_hidden"),t.classList.add("frm_hidden"),Io(t,"change")):(e.classList.add("frm_hidden"),t.classList.remove("frm_hidden"),Io(e,"change"))}function Ii(){var e,t,r=document.getElementById("frm-id-key-condition-id").checked?"frm-id-condition":"frm-key-condition",n=document.getElementById("frm-is-condition").value,i=document.getElementById("frm-text-condition").value,o=document.getElementById("frm-insert-condition");t="if "+(e=(r=document.getElementById(r)).options[r.selectedIndex].value)+" "+n+'="'+i+'"]',o.setAttribute("data-code",t+a.conditional_text+"[/if "+e),o.innerHTML="["+t+"[/if "+e+"]"}function Bi(){Cn($i(this),this)}function Ci(e){e.preventDefault(),e.stopPropagation(),Oi(this)}function qi(e){!function(e){var t;if(e.id.startsWith("field_options_type_")){var r=e.id.split("_"),n=r.length&&r[r.length-1];null!==(t=document.querySelector("#frm-single-settings-".concat(n)))&&void 0!==t&&t.classList.contains("frm-type-".concat(e.value))||Ni()}}(e.target)}function Ni(e){var t;void 0===e&&(e=B("You are changing the field type. Not all field settings will appear as expected until you reload the page. Would you like to reload the page now?","formidable")),frmDom.modal.maybeCreateModal("frmSaveAndReloadModal",{title:B("Save and Reload?","formidable"),content:(t=d(e),t.style.padding="var(--gap-md)",t),footer:function(){var e=frmDom.modal.footerButton({text:B("Save and Reload","formidable"),buttonType:"primary"});_(e,(function(){Pi()}));var t=frmDom.modal.footerButton({text:B("Cancel","formidable"),buttonType:"cancel"});return t.classList.add("dismiss"),frmDom.div({children:[t,e]})}()})}function Ti(e){var t;if(e instanceof Event){var r=document.querySelectorAll(".frm-single-settings .frm-show-box.frmsvg use"),n=Array.from(r).find((function(e){return"#frm_close_icon"===e.getAttribute("href")}));if(void 0===n)return;t=n.parentElement}else t=e;var i=t.getBoundingClientRect(),o=document.getElementById("frm_adv_info"),a=o.parentElement.getBoundingClientRect();o.style.top=i.top-a.top+32+"px",o.style.left=i.left-a.left-280+"px"}function Oi(e,r){var n=Gi(e),i=document.getElementById("frm_adv_info"),o=e.className;if("svg"===e.tagName&&(e=e.firstElementChild),"use"===e.tagName&&null===(o=e.getAttributeNS("http://www.w3.org/1999/xlink","href"))&&(o=e.getAttribute("href")),-1!==o.indexOf("frm_close_icon"))Wi(i);else{if(Ti(e),jQuery(".frm_code_list a").removeClass("frm_noallow"),n.classList.contains("frm_not_email_to")?jQuery("#frm-insert-fields-box .frm_code_list li:not(.show_frm_not_email_to) a").addClass("frm_noallow"):n.classList.contains("frm_not_email_subject")&&jQuery(".frm_code_list li.hide_frm_not_email_subject a").addClass("frm_noallow"),i.setAttribute("data-fills",n.id),i.style.display="block","use"===e.tagName)if(e.hasAttributeNS("http://www.w3.org/1999/xlink","href"))e.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon");else{var l=document.createElementNS("http://www.w3.org/2000/svg","use");l.setAttributeNS("http://www.w3.org/1999/xlink","href","#frm_close_icon"),e.parentNode.replaceChild(l,e)}else e.className=o.replace("frm_more_horiz_solid_icon","frm_close_icon");"nofocus"!==r&&("none"!==n.style.display?n.focus():jQuery(tinymce.get(n.id)).trigger("focus")),function(e){["address","body"].forEach((function(r){!function(e,r){var n,i;n=a.contextualShortcodes[r+"Selector"],i=a.contextualShortcodes[r];var o,l=e.matches(n),s=function(e){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=t(e))){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw o}}}}(i);try{for(s.s();!(o=s.n()).done;){var d,c=o.value,f=null===(d=document.querySelector('#frm-adv-info-tab .frm_code_list [data-code="'+c+'"]'))||void 0===d?void 0:d.closest("li");null==f||f.classList.toggle("frm_hidden",!l)}}catch(e){s.e(e)}finally{s.f()}}(e,r)}))}(n)}}function Di(e){return 0===a.contextualShortcodes.length||!function(e){var t=e.querySelector("a");if(!t)return!1;var r=t.dataset.code;return a.contextualShortcodes.address.includes(r)||a.contextualShortcodes.body.includes(r)}(e)||function(e){var t=e.querySelector("a").dataset.code,r=document.getElementById("frm_adv_info").dataset.fills,n=document.getElementById(r),i=a.contextualShortcodes;return i.address.includes(t)?n.matches(i.addressSelector):n.matches(i.bodySelector)}(e)}function Mi(){E||(E=1,window.addEventListener("beforeunload",zi))}function Fi(){E=0}function Hi(){E=0}function Pi(){var e=document.getElementById("frm_submit_side_top");e.classList.contains("frm_submit_ajax")&&e.setAttribute("data-new-addon-installed",!0),e.click()}function zi(e){E&&(e.preventDefault(),e.returnValue="")}function Ri(e,t){var r={my:"top",at:"top+"+t,of:window};e.dialog("option","position",r)}function Gi(e){for(var t,r=e.nextElementSibling;null!==r&&("INPUT"!==r.tagName&&"TEXTAREA"!==r.tagName||r.classList.contains("frm-token-input-field"));)r=Gi(r);return r||(r=null===(t=e.closest(".frm-field-formula"))||void 0===t?void 0:t.querySelector(".frm-calc-field")),r}function $i(e){for(var t=e.previousElementSibling;null!==t&&"I"!==t.tagName&&"svg"!==t.tagName;)t=$i(t);return t}function Wi(e){var t,r,n,i;if((void 0!==e||null!==(e=document.getElementById("frm_adv_info")))&&null===document.getElementById("frm_dyncontent")){for(e.style.display="none",n=document.querySelectorAll(".frm-show-box.frm_close_icon"),t=0;t"+r.data.name+": "+r.data.msg+"

                                      ":'

                                      Imported '+r.data.name+"

                                      ",e.find(".status").prepend(n),e.find(".status").show(),N.importQueue=jQuery.grep(N.importQueue,(function(e){return e!=t})),N.imported++,0===N.importQueue.length?(e.find(".process-count").hide(),e.find(".forms-completed").text(N.imported),e.find(".process-completed").show()):(e.find(".form-current").text(N.imported+1),Xi(e)))}))}function Zi(e){e.preventDefault();var t=!1,r=jQuery('input[name="frm_export_forms[]"]');jQuery('input[name="frm_export_forms[]"]:checked').val()||(r.closest(".frm-table-box").addClass("frm_blank_field"),t="stop");var n=jQuery('input[name="type[]"]');if(jQuery('input[name="type[]"]:checked').val()||"checkbox"!==n.attr("type")||(n.closest("p").addClass("frm_blank_field"),t="stop"),"stop"===t)return!1;e.stopPropagation(),this.submit()}function eo(){var e=jQuery(this).closest(".frm_blank_field");if(void 0!==e){var t=this.name;("type[]"===t&&jQuery('input[name="type[]"]:checked').val()||"frm_export_forms[]"===t&&jQuery(this).val())&&e.removeClass("frm_blank_field")}}function to(){null!==jQuery(this).val().match(/\.csv$/i)?jQuery(".show_csv").fadeIn():jQuery(".show_csv").fadeOut()}function ro(){var e=document.querySelector('select[name="format"]');return e?e.value:""}function no(e){var t,r,n=e.target.value;oo(n),io.call(e.target),t=n,r=document.getElementById("frm-export-select-all"),"csv"===t?(r.checked=!1,r.disabled=!0):r.disabled=!1}function io(){var e=jQuery(this),t=e.find(":selected"),r=t.data("support"),n=r.indexOf("|");jQuery('input[name="type[]"]').each((function(){this.checked=!1,r.indexOf(this.value)>=0?(this.disabled=!1,-1===n&&(this.checked=!0)):this.disabled=!0})),"csv"===e.val()?(jQuery(".csv_opts").show(),jQuery(".xml_opts").hide()):(jQuery(".csv_opts").hide(),jQuery(".xml_opts").show());var i=t.data("count"),o=jQuery('input[name="frm_export_forms[]"]');"single"===i?(o.prop("multiple",!1),o.prop("checked",!1)):(o.prop("multiple",!0),o.prop("disabled",!1)),e.trigger("change")}function oo(e){if(""!==e){var t=document.querySelectorAll(".frm-is-repeater");t.length&&("csv"===e?t.forEach((function(e){e.classList.remove("frm_hidden")})):t.forEach((function(e){e.classList.add("frm_hidden")})),Lo.call(document.querySelector(".frm-auto-search")))}}function ao(){var e=jQuery("select[name=format]").find(":selected").data("count"),t=jQuery('input[name="frm_export_forms[]"]');"single"===e&&this.checked?(t.prop("disabled",!0),this.removeAttribute("disabled")):t.prop("disabled",!1)}function lo(){jQuery(".frm_multiselect").hide().each(frmDom.bootstrap.multiselect.init)}function so(e){e.preventDefault(),uo(this,"frm_multiple_addons")}function co(e){e.preventDefault(),uo(this,"frm_activate_addon")}function fo(e){e.preventDefault(),uo(this,"frm_install_addon")}function uo(e,t){var r,n,i,o;jQuery(".frm-addon-error").remove(),n=(r=jQuery(e)).attr("rel"),i=r.parent(),o=i.parent().find(".addon-status-label"),r.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:t,nonce:frmGlobal.nonce,plugin:n},success:function(e){var n,a,l;"string"!=typeof(e=null!==(n=null===(a=e)||void 0===a?void 0:a.data)&&void 0!==n?n:e)&&"string"==typeof e.message&&(void 0!==e.saveAndReload&&(l=e.saveAndReload),e=e.message);var s=go(e);s?yo(s,i,r):(_o(e,r,o,i,l,t),wp.hooks.doAction("frm_update_addon_state",e))},error:function(){r.removeClass("frm_loading_button")}})}function mo(e){e.preventDefault();var t=jQuery(this),r=t.parent().parent(),n=t.attr("rel");t.addClass("frm_loading_button"),jQuery.ajax({url:ajaxurl,type:"POST",async:!0,cache:!1,dataType:"json",data:{action:"frm_install_addon",nonce:a.nonce,plugin:n,hostname:r.find("#hostname").val(),username:r.find("#username").val(),password:r.find("#password").val()},success:function(e){var n,i,o=go(e=null!==(n=null===(i=e)||void 0===i?void 0:i.data)&&void 0!==n?n:e);o?yo(o,r,t):_o(e,t,message,r)},error:function(){t.removeClass("frm_loading_button")}})}function _o(e,t,r,n,i){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"frm_activate_addon",l=document.querySelectorAll(".frm-addon-status");l.forEach((function(t){t.textContent=e,t.style.display="block"})),t.css({opacity:"0"}),document.querySelectorAll(".frm-oneclick").forEach((function(e){e.style.display="none"})),jQuery("#frm_upgrade_modal h2").hide(),jQuery("#frm_upgrade_modal .frm_lock_icon").addClass("frm_lock_open_icon"),jQuery("#frm_upgrade_modal .frm_lock_icon use").attr("xlink:href","#frm_lock_open_icon");var s={frm_activate_addon:{class:"frm-addon-active",message:a.active},frm_deactivate_addon:{class:"frm-addon-installed",message:a.installed},frm_uninstall_addon:{class:"frm-addon-not-installed",message:a.not_installed}};s.frm_install_addon=s.frm_activate_addon;var c=r[0];c&&(c.textContent=s[o].message);var f=n[0].parentElement;f.classList.remove("frm-addon-not-installed","frm-addon-installed","frm-addon-active"),f.classList.add(s[o].class),t[0].classList.remove("frm_loading_button"),document.querySelectorAll(".frm-admin-page-import, #frm-admin-smtp, #frm-welcome").length>0?window.location.reload():["settings","form_builder"].includes(i)&&l.forEach((function(e){var t=null!==e.closest("#frm_upgrade_modal");e.appendChild(function(e,t){var r=[po(e)];return t&&r.push(function(){var e=document.createElement("a");return e.setAttribute("href","#"),e.classList.add("button","button-secondary","frm-button-secondary","dismiss"),e.textContent=B("Close","formidable"),e}()),d({className:"frm-save-and-reload-options",children:r})}(i,t))}))}function po(e){var t=document.createElement("button");return t.classList.add("frm-save-and-reload","button","button-primary","frm-button-primary"),t.textContent=B("Save and Reload","formidable"),t.addEventListener("click",(function(){var t,r;"form_builder"===e?Pi():"settings"===e&&null!==(t=document.getElementById("form_settings_page"))&&null!==(r=t.querySelector("form.frm_form_settings"))&&(E=0,r.submit())})),t}function go(e){return"string"!=typeof e&&(void 0===e.success||!e.success)&&(e.form&&jQuery(e.form).is("#message")?{message:jQuery(e.form).find("p").html()}:e)}function yo(e,t,r){e.form?(jQuery(".frm-inline-error").remove(),r.closest(".frm-card").html(e.form).css({padding:5}).find("#upgrade").attr("rel",r.attr("rel")).on("click",mo)):(t.append('

                                      '+e.message+"

                                      "),r.removeClass("frm_loading_button"),jQuery(".frm-addon-error").delay(4e3).fadeOut())}function ho(){bo()}function vo(e){!function(e,t,r){var n=jQuery("#frm_leave_email_error");n.removeClass("frm_hidden").attr("frm-error",r),jQuery("#frm_leave_email").one("keyup",(function(){n.addClass("frm_hidden")}))}(0,0,e)}function bo(){var e=document.getElementById("frmapi-email-form");jQuery.ajax({dataType:"json",url:e.getAttribute("data-url"),success:function(t){var r=t.renderedHtml;r=r.replace(/]*(formidableforms.css|action=frmpro_css)[^>]*>/gi,""),e.innerHTML=r}})}function jo(e){frmDom.autocomplete.initSelectionAutocomplete(e)}function wo(e){var t=this.parentNode.parentNode,r=t.elements.type.value;e.preventDefault(),this.classList.add("frm_loading_button"),xo(t,r,this)}function Qo(e){var t=this.elements.type.value,r=this.querySelector("button");e.preventDefault(),r.classList.add("frm_loading_button"),xo(this,t,r)}function xo(e,t,r){var n=function(e){var t,r,n={},i=e.elements;for(r=0;r=0||So(l,n)?(s&&Di(o[e])&&o[e].classList.remove("frm_hidden"),o[e].classList.add("frm-search-result")):(o[e].classList.add("frm_hidden"),o[e].classList.remove("frm-search-result"))}(t=document.querySelector("#frm-insert-fields"))&&t.querySelectorAll(":scope > .frm-with-line").forEach((function(e){var t=e.nextElementSibling;if(t){var r=t.querySelectorAll(":scope > li.frmbutton"),n=Array.from(r).every((function(e){return e.classList.contains("frm_hidden")}));e.classList.toggle("frm_hidden",n)}})),jQuery(this).trigger("frmAfterSearch")}function So(e,t){return"s"!==t&&"s"!==e[e.length-1]&&(e+"s").indexOf(t)>=0}function Ao(e){e.stopPropagation()}function Io(e,t){var r=document.createEvent("HTMLEvents");r.initEvent(t,!1,!0),e.dispatchEvent(r)}function Bo(e,t){var r,n=new XMLHttpRequest,i="string"==typeof e?e:Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&");return n.open("post",ajaxurl,!0),n.onreadystatechange=function(){if(n.readyState>3&&200==n.status){r=n.responseText;try{r=JSON.parse(r)}catch(e){}t(r)}},n.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.setRequestHeader("Content-type","application/x-www-form-urlencoded"),n.send(i),n}function Co(e,t){e.classList.add("frm-fade"),setTimeout(t,1e3)}function qo(e){jQuery(e).css("visibility","hidden")}function No(e){jQuery(e).css("visibility","visible")}function To(e,t){var r=jQuery(e);if(!r.length)return!1;void 0===t&&(t="550px");var n={dialogClass:"frm-dialog",modal:!0,autoOpen:!1,closeOnEscape:!0,width:t,resizable:!1,draggable:!1,open:function(){var e,t;jQuery(".ui-dialog-titlebar").addClass("frm_hidden").removeClass("ui-helper-clearfix"),jQuery("#wpwrap").addClass("frm_overlay"),jQuery(".frm-dialog").removeClass("ui-widget ui-widget-content ui-corner-all"),r.removeClass("ui-dialog-content ui-widget-content"),e=r,t=function(){e.dialog("close")},jQuery(".ui-widget-overlay").on("click",t),e.on("click","a.dismiss",t)},close:function(){jQuery("#wpwrap").removeClass("frm_overlay"),jQuery(".spinner").css("visibility","hidden"),this.removeAttribute("data-option-type");var e=document.getElementById("bulk-option-type");e&&(e.value="")}};return r.dialog(n),r}function Oo(e,t){if("#"===t){var r=document.getElementById(e),n=r.style.display;r.style.display="none"===n?"block":"none"}else e.is(":visible")?e.hide():e.show()}function Do(){window.onbeforeunload=null;var e=jQuery(window);e.off("beforeunload.widgets"),e.off("beforeunload.edit-post")}function Mo(){var e=jQuery(this).closest(".frm-single-settings").data("fid"),t=document.getElementById("frm_field_id_"+e);if(null!==t&&"form"===t.dataset.type)if(t=jQuery(t),this.options[this.selectedIndex].value){t.find(".frm-not-set")[0].classList.add("frm_hidden");var r=t.find(".frm-embed-message");r.html(r.data("embedmsg")+this.options[this.selectedIndex].text),t.find(".frm-embed-field-placeholder")[0].classList.remove("frm_hidden")}else t.find(".frm-not-set")[0].classList.remove("frm_hidden"),t.find(".frm-embed-field-placeholder")[0].classList.add("frm_hidden")}function Fo(){var e=jQuery(this).closest(".frm-single-settings"),t=e.find(".frmjs_product_choices"),r=e.find(".frm_prod_options_heading"),n=this.options[this.selectedIndex].value;t.removeClass("frm_prod_type_single frm_prod_type_user_def"),r.removeClass("frm_prod_user_def"),"single"===n?t.addClass("frm_prod_type_single"):"user_def"===n&&(t.addClass("frm_prod_type_user_def"),r.addClass("frm_prod_user_def"))}function Ho(e){var t=document.getElementById("frm_field_id_"+e);return null!==t&&"product"===t.getAttribute("data-type")}function Po(){var t=function(e,t){return window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]},r=function(e,t,r){window.frmCachedSubFields=window.frmCachedSubFields||{},window.frmCachedSubFields[e]=window.frmCachedSubFields[e]||{},window.frmCachedSubFields[e][t]=r},n=[1,2,3,4,5,6,7,8,9,10,11,12].map((function(e){return"frm"+e})),i=["first","middle","last"];document.addEventListener("change",(function(o){o.target.matches(".frm_name_layout_dropdown")&&function(o){var a,l=o.target.value.split("_"),s=o.target.dataset.fieldId,d=document.querySelector("#field_"+s+"_inner_container .frm_combo_inputs_container"),c=(a=l.length,"frm"+parseInt(12/a));i.forEach((function(t){var i,o=d.querySelector('[data-sub-field-name="'+t+'"]');o&&(o.classList.add("frm_hidden"),(i=o.classList).remove.apply(i,e(n)),r(s,t,o))})),l.forEach((function(e){var r=t(s,e);r&&(r.classList.remove("frm_hidden"),r.classList.add(c),d.append(r))})),i.forEach((function(e){var t=document.querySelector(".frm_sub_field_options-"+e+'[data-field-id="'+s+'"]');t&&(t.classList.add("frm_hidden"),r(s,e+"_options",t))})),l.forEach((function(e){var r=t(s,e+"_options");r&&r.classList.remove("frm_hidden")}))}(o)}),!1)}function zo(e,t){var r,n,i,o=!1,a=!1;(r=t.newOption?(new DOMParser).parseFromString(t.newOption,"text/html").body.childNodes[0]:t).querySelectorAll("svg").forEach((function(e,t){(n=e.getElementsByTagNameNS("http://www.w3.org/2000/svg","use")[0])&&("#frm_drag_icon"===(i=n.getAttributeNS("http://www.w3.org/1999/xlink","href")||n.getAttribute("href"))&&(o=!0),"#frm_save_icon"===i&&(a=!0))})),o||r.prepend(b.drag.cloneNode(!0)),r.querySelector("[id^=field_key_".concat(e,"-]"))&&!a&&r.querySelector("[id^=field_key_".concat(e,"-]")).after(b.save.cloneNode(!0)),t.newOption&&(t.newOption=r)}function Ro(){var e=document.getElementById("frm_leave_email").value.trim();if(""!==e)if(!1!==/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/i.test(e)){var t=jQuery("#frmapi-email-form").find("form"),r=t.find('[type="email"]').not(".frm_verify");if(r.length){if(document.getElementById("frm_empty_inbox")){document.getElementById("frm-add-my-email-address").remove();var n=document.getElementById("frm_leave_email_wrapper");if(n){n.classList.add("frm_hidden");var i=c({className:"frm-wait frm_spinner"});i.style.visibility="visible",i.style.float="none",i.style.width="unset",n.parentElement.insertBefore(i,n.nextElementSibling)}}r.val(e),jQuery.ajax({type:"POST",url:t.attr("action"),data:t.serialize()+"&action=frm_forms_preview"}).done((function(e){if(-1!==jQuery(e).find(".frm_message").text().trim().indexOf("Thanks!")){var t=document.getElementById("frmapi-email-form").parentElement.querySelector(".frm_spinner");t&&t.remove(),wp.hooks.applyFilters("frm_thank_you_on_signup",!0)&&document.getElementById("frm_leave_email_wrapper").replaceWith(c(B("Thank you for signing up!","formidable")))}else vo("invalid")}))}}else vo("invalid");else vo("empty")}function Go(e){if(D||e.stopPropagation(),!(e.target.classList.contains("frm-show-box")||e.target.parentElement&&e.target.parentElement.classList.contains("frm-show-box"))){var t=document.getElementById("frm_adv_info");t&&(t.dataset.fills===e.target.id&&void 0!==e.target.id||e.target.closest("#frm_adv_info")||"none"===t.style.display||Wi(t))}}return{init:function(){var t,r,n,i,o,a,l;!function(){jQuery(document).on("click","#frm-add-my-email-address",(function(e){e.preventDefault(),Ro()}));var e=document.getElementById("frm_empty_inbox"),t=document.getElementById("frm_leave_email");if(e&&t){var r=document.getElementById("frm-leave-email-modal");r.classList.remove("frm_hidden"),r.querySelector(".frm_modal_footer").classList.add("frm_hidden"),t.addEventListener("keyup",(function(e){if("Enter"===e.key){var t=document.getElementById("frm-add-my-email-address");t&&t.click()}}))}}(),r=document.querySelector(".frm-admin-footer-links"),n=null!==(t=document.querySelector(".frm_page_container"))&&void 0!==t?t:document.getElementById("wpbody-content"),r&&n&&(n.appendChild(r),r.classList.remove("frm_hidden")),N={},jQuery(".wp-admin").on("click",(function(e){var t=jQuery(e.target),r=jQuery(".dropdown.open");!r.length||t.hasClass("dropdown")||t.closest(".dropdown").length||r.removeClass("open")})),jQuery("#frm_bs_dropdown:not(.open) a").on("click",Lt),void 0===k&&(k=jQuery(document.getElementById("form_id")).val()),document.querySelectorAll(".frm-warning-dismiss").forEach((function(e){_(e,St)})),frmAdminBuild.inboxBannerInit(),j.length>0?frmAdminBuild.buildInit():null!==document.getElementById("frm_notification_settings")?frmAdminBuild.settingsInit():null!==document.getElementById("frm_styling_form")?frmAdminBuild.styleInit():null!==document.getElementById("form_global_settings")?frmAdminBuild.globalSettingsInit():null!==document.getElementById("frm_export_xml")?frmAdminBuild.exportInit():null!==document.querySelector(".frm-inbox-wrapper")?frmAdminBuild.inboxInit():null!==document.getElementById("frm-welcome")?frmAdminBuild.solutionInit():(function(){if(document.body.classList.contains("frm-admin-page-entries")){var e=document.getElementById("screen-options-wrap");if(e){var t=d({className:"frm_warning_style",text:B("Only 10 columns can be selected at a time.","formidable")});t.style.margin=0;var r=e.querySelector("legend");r.parentNode.insertBefore(t,r.nextElementSibling);var n=Array.from(e.querySelectorAll('input[type="checkbox"]')),i=function(){n.reduce((function(e,t){return t.checked?e+1:e}),0)>=10?(t.classList.remove("frm_hidden"),n.forEach((function(e){e.checked||(e.parentNode.classList.add("frm_noallow"),e.disabled=!0)}))):t.classList.add("frm_hidden")};i(),n.forEach((function(e){e.addEventListener("change",(function(e){e.target.checked?i():(t.classList.add("frm_hidden"),n.forEach((function(e){e.parentNode.classList.remove("frm_noallow"),e.disabled=!1})))}))}))}}}(),jo(),jQuery("[data-frmprint]").on("click",(function(){return window.print(),!1}))),jQuery(document).on("change","select[data-toggleclass], input[data-toggleclass]",Qi),function(){function e(e){var t=e.options[e.selectedIndex];e.querySelectorAll("option[data-dependency]:not([data-dependency-skip])").forEach((function(e){var r=document.querySelector(e.dataset.dependency);null==r||r.classList.toggle("frm_hidden",t!==e)}))}document.querySelectorAll("select.frm_select_with_dependency").forEach(e),frmDom.util.documentOn("change","select.frm_select_with_dependency",(function(t){return e(t.target)}))}(),(jQuery(document.getElementById("frm_adv_info")).length>0||jQuery(".frm_field_list").length>0)&&frmAdminBuild.panelInit(),i=jQuery(".wrap, .frm_wrap"),o=document.getElementById("frm_confirm_modal"),a=!1,l=!1,jQuery(o).on("click","[data-deletefield]",wr),jQuery(o).on("click","[data-removeid]",G),jQuery(o).on("click","[data-trashtemplate]",ko),i.on("click",".frm_remove_tag, .frm_remove_form_action",G),i.on("click","a[data-frmverify]",M),i.on("click","a[data-frmtoggle]",P),i.on("click","a[data-frmhide], a[data-frmshow]",z),i.on("change","input[data-frmhide], input[data-frmshow]",z),i.on("click",".widget-top,a.widget-action",$),i.on("mouseenter.frm",".frm_bstooltip, .frm_help",(function(){jQuery(this).off("mouseenter.frm"),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(this).tooltip("show")})),jQuery(".frm_bstooltip, .frm_help").tooltip(),jQuery(document).on("click","#doaction, #doaction2",(function(e){var t="doaction"===this.id?"top":"bottom",r=document.getElementById("bulk-action-selector-"+t),n=document.getElementById("confirm-bulk-delete-"+t);if(null!==r&&null!==n){if(a=this,!l&&"bulk_delete"===r.value)return e.preventDefault(),F(n),!1}else a=!1})),jQuery(document).on("click","#frm-confirmed-click",(function(e){if(!1!==a&&!e.target.classList.contains("frm-btn-inactive"))return"confirm-bulk-delete"===this.getAttribute("href")?(e.preventDefault(),l=!0,a.click(),!1):void 0})),function(){var e=To("#frm_upgrade_modal");function t(t){var r,n,i;if((r=t.target).classList){var o=r.classList.contains("frm_show_expired_modal")||null!==r.querySelector(".frm_show_expired_modal")||r.closest(".frm_show_expired_modal");if("change"===t.type&&r.classList.contains("frm_select_with_upgrade")){var a=r.options[r.selectedIndex];a&&a.dataset.upgrade&&(r=a)}if(!r.dataset.upgrade){var l=r.closest("[data-upgrade]");if(!l){if(!(l=r.closest(".frm_field_box")))return;r.dataset.upgrade=""}r=l}if(o)wp.hooks.doAction("frm_show_expired_modal",r);else{var s=r.dataset.upgrade;if(s&&!r.classList.contains("frm_show_upgrade_tab")){t.preventDefault();var d=e.get(0),c=d.querySelector(".frm_lock_icon");c&&(c.style.display="block",c.classList.remove("frm_lock_open_icon"),c.querySelector("use").setAttribute("href","#frm_lock_icon"));var f="frm_upgrade_modal_image",u=document.getElementById(f);u&&u.remove(),r.dataset.image&&(c&&(c.style.display="none"),c.parentNode.insertBefore(m({id:f,src:frmGlobal.url+"/images/"+r.dataset.image}),c));var _=d.querySelector(".license-level");_&&(_.textContent=Vn(r)),Jn(r,"modal",s),d.querySelector(".frm_are_not_installed").style.display=r.dataset.image?"none":"inline-block",d.querySelector(".frm_feature_label").textContent=s,d.querySelector("h2").style.display="block",e.dialog("open");var p=d.querySelector(".button-primary:not(.frm-oneclick-button)");n=p.getAttribute("href").replace(/(medium=)[a-z_-]+/gi,"$1"+r.getAttribute("data-medium")),null===(i=r.getAttribute("data-content"))&&(i=""),n=n.replace(/(content=)[a-z_-]+/gi,"$1"+i),p.setAttribute("href",n)}}}}!1!==e&&(document.addEventListener("click",t),frmDom.util.documentOn("change","select.frm_select_with_upgrade",t))}(),frmDom.util.documentOn("click","[data-modal-title]",Un);var s=jQuery(document.getElementById("frm_shortcodediv"));s.length>0&&(jQuery("a.edit-frm_shortcode").on("click",(function(){return s.is(":hidden")&&(s.slideDown("fast"),this.style.display="none"),!1})),jQuery(".cancel-frm_shortcode","#frm_shortcodediv").on("click",(function(){return s.slideUp("fast"),s.siblings("a.edit-frm_shortcode").show(),!1}))),jQuery(document).on("click","#frm-nav-tabs a",W),jQuery(".post-type-frm_display .frm-nav-tabs a, .frm-category-tabs a").on("click",(function(){var e=this.classList.contains("frm_show_upgrade_tab");if(!this.classList.contains("frm_noallow")||e)return e&&Kn(this),U(this),!1})),U(jQuery(".starttab a"),"auto"),jQuery(document).on("click","#frm-fid-search-menu a",(function(){var e=this.id.replace("fid-","");return jQuery('select[name="fid"]').val(e),Hn(document.getElementById("posts-filter")),!1})),jQuery(".frm_select_box").on("click focus",(function(){this.select()})),jQuery(document).on("input search change",".frm-auto-search:not(#frm-form-templates-page #template-search-input)",Lo),jQuery(document).on("focusin click",".frm-auto-search",Ao);var c=jQuery(".frm-auto-search");""!==c.val()&&c.trigger("keyup"),FrmFormsConnect.init(),jQuery(document).on("click",".frm-install-addon",fo),jQuery(document).on("click",".frm-activate-addon",co),jQuery(document).on("click",".frm-solution-multiple",so),jQuery("button, input[type=submit]").on("click",Do),document.addEventListener("click",(function(e){if("LABEL"===e.target.nodeName){var t=e.target.getAttribute("for");if(t){var r=document.getElementById(t);if(r&&r.nextElementSibling){var n=r.nextElementSibling.querySelector("button.dropdown-toggle.multiselect");n&&setTimeout((function(){return n.click()}),0)}}}})),frmAdminBuild.hooks.addFilter("frm_before_embed_modal",(function(e,t){var r,n,i=t.element;if("form"!==t.type)return e;var o=i.closest("tr");if(o)r=parseInt(o.querySelector(".column-id").textContent),n=o.querySelector(".column-form_key").textContent;else{r=document.getElementById("form_id").value;var a=document.getElementById("frm_form_key");if(a)n=a.value;else{var l=document.getElementById("frm-previewDrop");l&&(n=l.nextElementSibling.querySelector(".dropdown-item a").getAttribute("href").split("form=")[1])}}return[r,n]})),document.querySelectorAll("#frm-show-fields > li, .frm_grid_container li").forEach((function(t,r){t.addEventListener("click",(function(){var t,r,n;r=(null===(t=this.querySelector("li"))||void 0===t?void 0:t.dataset.fid)||this.dataset.fid,(n=document.querySelectorAll("[id^=frm_delete_field_".concat(r,"-]"))).length<2||e(n).slice(1).forEach((function(e,t){e.classList.contains("frm_other_option")||zo(r,e)}))}))}));var f=document.getElementById("frm_small_screen_proceed_button");f&&_(f,(function(){var e;null===(e=document.getElementById("frm_small_device_message_container"))||void 0===e||e.remove(),g("small_screen_proceed",new FormData)}));var u=document.getElementById("frm_sale_banner"),p=null==u?void 0:u.querySelector(".dismiss");u&&(_(u,(function(e){e.target.closest(".dismiss")||(window.location.href=u.getAttribute("data-url"))})),p&&_(p,(function(){u.remove();var e=new FormData;g("sale_banner_dismiss",e)})))},buildInit:function(){var e,t,r;jQuery("#frm_builder_page").on("mouseup","*:not(.frm-show-box)",Go),y=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;return frmDom.util.debounce(e,t)}(oe,10),h=document.getElementById("post-body-content"),v=jQuery(h),jQuery(".frm_field_loading").length&&Le(jQuery(".frm_field_loading").first().attr("id")),V("ul.frm_sorting"),document.querySelectorAll(".field_type_list > li:not(.frm_show_upgrade)").forEach(X),jQuery("ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a").disableSelection(),jQuery(".frm_submit_ajax").on("click",Fn),jQuery(".frm_submit_no_ajax").on("click",zn),Gn(),jQuery("a.edit-form-status").on("click",kn),jQuery(".cancel-form-status").on("click",Ln),jQuery(".save-form-status").on("click",(function(){var e=jQuery(document.getElementById("form_change_status")).val();return jQuery('input[name="new_status"]').val(e),jQuery(document.getElementById("form-status-display")).html(e),jQuery(".cancel-form-status").trigger("click"),!1})),jQuery(".frm_form_builder form").first().on("submit",(function(){jQuery(".inplace_field").trigger("blur")})),lo(),Tr(),e=jQuery(w),t=document.getElementById("frm_form_editor_container"),e.on("click",".frm_add_logic_row",Er),e.on("click",".frm_add_watch_lookup_row",Lr),e.on("change",".frm_get_values_form",qr),e.on("change",".frm_logic_field_opts",bn),e.on("frm-multiselect-changed",'select[name^="field_options[admin_only_"]',Sn),jQuery(document.getElementById("frm-insert-fields")).on("click",".frm_add_field",Ae),j.on("click",".frm_clone_field",Ce),e.on("blur",'input[id^="frm_calc"]',Ye),e.on("change","input.frm_format_opt, input.frm_max_length_opt",lt),e.on("change click","[data-changeme]",ot),e.on("click","input.frm_req_field",st),e.on("click",".frm_mark_unique",ct),e.on("change",".frm_repeat_format",Vr),e.on("change",".frm_repeat_limit",Kr),e.on("change",".frm_js_checkbox_limit",Jr),e.on("input",'input[name^="field_options[add_label_"]',(function(){Yr(this,"add")})),e.on("input",'input[name^="field_options[remove_label_"]',(function(){Yr(this,"remove")})),e.on("change",'select[name^="field_options[data_type_"]',Nr),jQuery(t).on("click",".frm-collapse-page",Or),jQuery(t).on("click",".frm-collapse-section",Fr),e.on("click",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",Hr),e.on("keydown",".frm-single-settings h3, .frm-single-settings h4.frm-collapsible",(function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),Hr.call(this,e))})),jQuery(t).on("show.bs.dropdown hide.bs.dropdown",ze),e.on("click",".frm_toggle_sep_values",yt),e.on("click",".frm_toggle_image_options",ht),e.on("click",".frm_remove_image_option",Et),e.on("click",".frm_choose_image_box",xt),e.on("change",".frm_hide_image_text",Qt),e.on("change",".frm_field_options_image_size",jt),e.on("click",".frm_multiselect_opt",kt),j.on("mousedown","input, textarea, select",At),j.on("click","input[type=radio], input[type=checkbox]",At),j.on("click",".frm_delete_field",Nt),j.on("click",".frm_select_field",Tt),jQuery(document).on("click",".frm_delete_field_group",Ot),jQuery(document).on("click",".frm_clone_field_group",Dt),jQuery(document).on("click","#frm_field_group_controls > span:first-child",Mt),jQuery(document).on("click",".frm-row-layout-option",Yt),jQuery(document).on("click",".frm-merge-fields-into-row .frm-row-layout-option",Xt),jQuery(document).on("click",".frm-custom-field-group-layout",er),jQuery(document).on("click",".frm-merge-fields-into-row .frm-custom-field-group-layout",rr),jQuery(document).on("click",".frm-break-field-group",lr),j.on("click","#frm_field_group_popup .frm_grid_container input",sr),jQuery(document).on("click",".frm-cancel-custom-field-group-layout",dr),jQuery(document).on("click",".frm-save-custom-field-group-layout",fr),j.on("click","ul.frm_sorting",ur),jQuery(document).on("click",".frm-merge-fields-into-row",vr),jQuery(document).on("click",".frm-delete-field-groups",jr),j.on("click",'.frm-field-action-icons [data-toggle="dropdown"]',(function(){this.closest("li.form-field").classList.add("frm-field-settings-open"),jQuery(document).on("click","#frm_builder_page",Oe)})),j.on("mousemove","ul.frm_sorting",De),j.on("show.bs.dropdown",".frm-field-action-icons",He),jQuery(document).on("show.bs.dropdown","#frm_field_group_controls",Pe),e.on("click",".frm_single_option a[data-removeid]",It),e.on("mousedown",".frm_single_option input[type=radio]",Bt),e.on("focusin",".frm_single_option input[type=text]",Ct),e.on("click",".frm_add_opt",_t),e.on("change",".frm_single_option input",Zr),e.on("change",".frm_image_id",Zr),e.on("change",".frm_toggle_mult_sel",pt),e.on("focusin",".frm_classes + .frm-token-proxy-input",Bi),j.on("click",".frm_primary_label",zr),j.on("click",".frm_description",Rr),j.on("click","li.ui-state-default:not(.frm_noallow)",$r),j.on("dblclick","li.ui-state-default",Ur),e.on("change",".frm_tax_form_select",Xr),e.on("change","select.conf_field",ft),e.on("change",".frm_get_field_selection",jn),e.on("click",".frm-show-inline-modal",Bn),e.on("click",".frm-inline-modal .dismiss",qn),jQuery(document).on("change","[data-frmchange]",Tn),document.addEventListener("click",Nn),e.on("change",".frm_include_extras_field",et),e.on("change",'select[name^="field_options[form_select_"]',Mo),jQuery(document).on("submit","#frm_js_build_form",Fi),jQuery(document).on("change","#frm_builder_page input:not(.frm-search-input):not(.frm-custom-grid-size-input), #frm_builder_page select, #frm_builder_page textarea",Mi),nt(),jQuery(document).on("change",".frmjs_prod_data_type_opt",Fo),jQuery(document).on("focus",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Ar),jQuery(document).on("blur",'.frm-single-settings ul input[type="text"][name^="field_options[options_"]',Br),frmDom.util.documentOn("click",".frm-show-field-settings",$r),frmDom.util.documentOn("change","select.frm_format_dropdown, select.frm_phone_type_dropdown",Wr),e.on("keydown",'.frm_single_option input[name^="field_options["], .frm_single_option input[name^="rows_"]',(function(e){"Enter"===e.key&&function(e){var t=e.closest(".frm_single_option").parentElement.querySelectorAll('.frm_single_option input[name^="field_options[" ], .frm_single_option input[name^="rows_"]'),r=Array.from(t),n=r.indexOf(e);if(!(n<0)){var i=r.slice(n+1).find((function(e){return null!==e.offsetParent}));if(i){i.focus();var o=i.value.length;i.setSelectionRange(o,o)}}}(e.currentTarget)})),!1!==(r=To("#frm-bulk-modal","700px"))&&(jQuery(".frm-insert-preset").on("click",mt),jQuery(w).on("click","a.frm-bulk-edit-link",(function(e){e.preventDefault();var t,n,i,o,a,l="",s=jQuery(this).closest("[data-fid]").data("fid"),d=pn(s),c=Ho(s);if(o=document.getElementById("frm_field_"+s+"_opts")){for(a=o.getElementsByTagName("li"),document.getElementById("bulk-field-id").value=s,t=0;t=a.length-1&&(document.getElementById("frm_bulk_options").value=l);return r.dialog("open"),!1}})),jQuery("#frm-update-bulk-opts").on("click",(function(){var e=document.getElementById("bulk-field-id").value;document.getElementById("bulk-option-type").value||(this.classList.add("frm_loading_button"),frmAdminBuild.updateOpts(e,document.getElementById("frm_bulk_options").value,r),Mi())}))),In(),document.addEventListener("frm_added_field",In),Be(),Po(),xn(),frmDom.util.documentOn("change",".frm_show_password_setting_input",(function(e){var t=e.target.getAttribute("data-fid"),r=document.getElementById("frm_field_id_"+t);r&&r.classList.toggle("frm_disabled_show_password",!e.target.checked)})),document.addEventListener("scroll",Ti,!0),document.addEventListener("change",qi),document.querySelector(".frm_form_builder").addEventListener("mousedown",(function(e){e.shiftKey&&e.preventDefault()})),wp.hooks.addAction("frmShowedFieldSettings","formidableAdmin",(function(e,t){t.querySelectorAll(".frm-collapse-me").forEach(Pr)}),9999)},settingsInit:function(){var e,t,r,n,i=jQuery(document.getElementById("frm_notification_settings"));i.on("click",".frm_email_buttons",oi),i.on("click",".frm_remove_field",ai),i.on("change",".frm_to_row, .frm_from_row",li),i.on("change",".frm_tax_selector",ji),i.on("change","select.frm_single_post_field",mi),i.on("change","select.frm_toggle_post_content",_i),i.on("change","select.frm_dyncontent_opt",pi),i.on("change",".frm_post_type",gi),i.on("click",".frm_add_postmeta_row",vi),i.on("click",".frm_add_posttax_row",hi),i.on("click",".frm_toggle_cf_opts",wi),i.on("click",".frm_duplicate_form_action",Zn),jQuery(".frm_actions_list").on("click",".frm_active_action",ti),jQuery("#frm-show-groups, #frm-hide-groups").on("click",ri),lo(),jQuery("ul.frm_actions_list li").each((function(){si(jQuery(this).children("a").data("actiontype"));var e=jQuery(this).find("i");"none"!==e.css("background-image")&&e.addClass("frm-inverse")})),jQuery(".frm_submit_settings_btn").on("click",xi),Gn(),(e=jQuery(".frm_form_settings")).on("click",".frm_add_form_logic",ui),e.on("click",".frm_already_used",fi),document.addEventListener("click",(function(e){var t=e.target;t.closest(".frm_image_preview_wrapper")&&(t.closest(".frm_choose_image_box")?xt.bind(t)(e):t.closest(".frm_remove_image_option")&&Et.bind(t)(e))})),e.on("mouseup","*:not(.frm-show-box)",Go),jQuery(document.getElementById("no_save")).on("change",(function(){this.checked&&!0!==confirm(a.no_save_warning)&&jQuery(this).attr("checked",!1)})),jQuery('select[name="options[edit_action]"]').on("change",Xn),t=document.getElementById("logged_in"),jQuery(t).on("change",(function(){this.checked?No(".hide_logged_in"):qo(".hide_logged_in")})),r=jQuery(document.getElementById("frm_cookie_expiration")),jQuery(document.getElementById("frm_single_entry_type")).on("change",(function(){"cookie"===this.value?r.fadeIn("slow"):r.fadeOut("slow")}));var o=document.getElementById("single_entry");jQuery(o).on("change",(function(){this.checked?No(".hide_single_entry"):qo(".hide_single_entry"),this.checked&&"cookie"===jQuery(document.getElementById("frm_single_entry_type")).val()?r.fadeIn("slow"):r.fadeOut("slow")})),jQuery(".hide_save_draft").hide();var l=jQuery(document.getElementById("save_draft"));l.on("change",(function(){this.checked?jQuery(".hide_save_draft").fadeIn("slow"):jQuery(".hide_save_draft").fadeOut("slow")})),Pn(l),n=document.getElementById("editable"),jQuery(n).on("change",(function(){this.checked?(jQuery(".hide_editable").fadeIn("slow"),Pn(document.getElementById("edit_action"))):(jQuery(".hide_editable").fadeOut("slow"),jQuery(".edit_action_message_box").fadeOut("slow"))})),jQuery(document).on("change","#protect_files",(function(){this.checked?jQuery(".hide_protect_files").fadeIn("slow"):jQuery(".hide_protect_files").fadeOut("slow")})),jQuery(document).on("frm-multiselect-changed","#protect_files_role",Sn),jQuery(document).on("submit",".frm_form_settings",Hi),jQuery(document).on("change","#form_settings_page input:not(.frm-search-input), #form_settings_page select, #form_settings_page textarea",Mi),jo(),jQuery(document).on("frm-action-loaded",Vi),frmDom.util.documentOn("change",'.frm_on_submit_type input[type="radio"]',(function(e){if(e.target.checked){var t=e.target.closest(".frm_form_action_settings");t.querySelectorAll(".frm_on_submit_dependent_setting:not(.frm_hidden)").forEach((function(e){e.classList.add("frm_hidden")})),t.querySelectorAll(".frm_on_submit_dependent_setting[data-show-if-"+e.target.value+"]").forEach((function(e){e.classList.remove("frm_hidden")})),t.setAttribute("data-on-submit-type",e.target.value)}}))},panelInit:function(){var e,t,r,n;jQuery(".frm_wrap, #postbox-container-1").on("click",".frm_insert_code",Ei),jQuery(document).on("change",".frm_insert_val",(function(){ki(jQuery(this).data("target"),jQuery(this).val()),jQuery(this).val("")})),jQuery(document).on("click change",'[name="frm-id-key-condition"]',Ai),jQuery(document).on("keyup change",".frm-build-logic",Ii),Yn(),jQuery(document).on("frmElementAdded",(function(e,t){Yn(t)})),jQuery(document).on("mousedown",".frm-show-box",Ci),t=document.getElementById("form_settings_page"),r=document.body.classList.contains("post-type-frm_display"),n=document.getElementById("frm_insert_fields_tab"),(null!==t||r||D)&&jQuery(document).on("focusin","form input, form textarea",(function(e){var i,o,a,l;if(e.stopPropagation(),(o=this).parentNode.parentNode.classList.contains("frm_has_shortcodes")&&(Wi(),"use"===(a=$i(o)).tagName?-1===(a=a.firstElementChild).getAttributeNS("http://www.w3.org/1999/xlink","href").indexOf("frm_close_icon")&&Oi(a,"nofocus"):a.classList.contains("frm_close_icon")||Oi(a,"nofocus")),jQuery(this).is(":not(:submit, input[type=button], .frm-search-input, input[type=checkbox])")){if(jQuery(e.target).closest("#frm_adv_info").length)return;if(null!==t||D)i=jQuery("#frm_html_tab"),jQuery(this).closest("#html_settings").length>0?(i.show(),i.siblings().hide(),jQuery("#frm_html_tab a").trigger("click"),function(e){var t,r=e.id;void 0!==r&&-1===r.indexOf("-search-input")&&(jQuery("#frm-adv-info-tab").attr("data-fills",r.trim()),e.classList.contains("field_custom_html")&&(r="field_custom_html"),t=["after_html","before_html","submit_html","field_custom_html"],jQuery.inArray(r,t)>=0&&(jQuery(".frm_code_list li:not(.show_"+r+")").addClass("frm_hidden"),jQuery(".frm_code_list li.show_"+r).removeClass("frm_hidden")))}(this)):((l=jQuery(".frm-category-tabs li"))[0]&&(l[0].style.display=""),n.click(),i.hide(),i.siblings().show());else if(r){var s=new CustomEvent("frm_legacy_views_handle_field_focus");s.frmData={idAttrValue:this.id},document.dispatchEvent(s)}}})),jQuery(".frm_wrap, #postbox-container-1").on("mousedown","#frm_adv_info a, .frm_field_list a",(function(e){e.preventDefault()})),(e=jQuery("#frm_adv_info")).on("click",".subsubsub a.frmids",(function(e){Ui("frmids",e)})),e.on("click",".subsubsub a.frmkeys",(function(e){Ui("frmkeys",e)}))},inboxInit:function(){var e;jQuery(".frm_inbox_dismiss").on("click",(function(e){var t=this.parentNode.parentNode,r=t.getAttribute("data-message"),n=this.getAttribute("href"),i=t.cloneNode(!0),o=document.querySelector(".frm-dismissed-inbox-messages");if("free_templates"!==r||this.classList.contains("frm_inbox_dismiss")){e.preventDefault(),data={action:"frm_inbox_dismiss",key:r,nonce:frmGlobal.nonce};var a="frm_inbox_slide_in"===t.id;a&&(t.classList.remove("s11-fadein"),t.classList.add("s11-fadeout"),t.addEventListener("animationend",(function(){return t.remove()}),{once:!0})),Bo(data,(function(){if(!a)return"#"!==n?(window.location=n,!0):void Co(t,(function(){var e;null!==o&&(i.classList.remove("frm-fade"),null===(e=i.querySelector(".frm-inbox-message-heading"))||void 0===e||e.removeChild(i.querySelector(".frm-inbox-message-heading .frm_inbox_dismiss")),o.append(i)),1===t.parentNode.querySelectorAll(".frm-inbox-message-container").length&&(document.getElementById("frm_empty_inbox").classList.remove("frm_hidden"),t.parentNode.closest(".frm-active").classList.add("frm-empty-inbox"),ho()),t.parentNode.removeChild(t)}))}))}})),!1===(null===(e=document.getElementById("frm_empty_inbox"))||void 0===e?void 0:e.classList.contains("frm_hidden"))&&ho()},solutionInit:function(){jQuery(document).on("submit","#frm-new-template",Qo)},styleInit:function(){var e=jQuery(".frm_image_preview_wrapper");e.on("click",".frm_choose_image_box",xt),e.on("click",".frm_remove_image_option",Et),wp.hooks.doAction("frm_style_editor_init")},customCSSInit:function(){console.warn("Calling frmAdminBuild.customCSSInit is deprecated.")},globalSettingsInit:function(){var e;jQuery(document).on("click","[data-frmuninstall]",Ki),lo(),null!==(e=document.getElementById("licenses_settings"))&&jQuery(e).on("click",".edd_frm_save_license",Ji),jQuery(document).on("click","#frm-new-template button",wo),jQuery("#frm-dismissable-cta .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_lite_settings_upgrade",nonce:frmGlobal.nonce}),jQuery(".settings-lite-cta").remove()}));var t=document.getElementById("frm_re_type");t&&t.addEventListener("change",Eo),document.querySelector(".frm_captchas").addEventListener("change",(function(e){var t,r=null===(t=document.querySelector('.frm_captchas input[checked="checked"]'))||void 0===t?void 0:t.value,n=e.target.value!==r;document.querySelector(".captcha_settings .frm_note_style").classList.toggle("frm_hidden",!n)})),frmDom.util.documentOn("submit",".frm_settings_form",(function(){return E=0}));var r=document.getElementById("manage_styles_settings");r&&r.addEventListener("change",(function(e){var t=e.target;"SELECT"===t.nodeName&&t.dataset.name&&!t.getAttribute("name")&&t.setAttribute("name",t.dataset.name)}));var n=document.getElementById("payments_settings"),i=null==n?void 0:n.querySelectorAll('[name="frm_payment_section"]');i&&i.forEach((function(e){e.addEventListener("change",(function(){if(e.checked){var t=n.querySelector('label[for="'.concat(e.id,'"]'));t&&t.setAttribute("aria-selected","true"),i.forEach((function(t){if(t!==e){var r=n.querySelector('label[for="'.concat(t.id,'"]'));r&&r.setAttribute("aria-selected","false")}}))}}))}))},exportInit:function(){jQuery(".frm_form_importer").on("submit",Yi),jQuery(document.getElementById("frm_export_xml")).on("submit",Zi),jQuery("#frm_export_xml input, #frm_export_xml select").on("change",eo),jQuery('input[name="frm_import_file"]').on("change",to),document.querySelector('select[name="format"]').addEventListener("change",no),jQuery('input[name="frm_export_forms[]"]').on("click",ao),lo(),jQuery(".frm-feature-banner .dismiss").on("click",(function(e){e.preventDefault(),jQuery.post(ajaxurl,{action:"frm_dismiss_migrator",plugin:this.id,nonce:frmGlobal.nonce}),this.parentElement.remove()})),oo(ro()),document.querySelector("#frm-export-select-all").addEventListener("change",(function(e){document.querySelectorAll('[name="frm_export_forms[]"]').forEach((function(t){return t.checked=e.target.checked}))}))},inboxBannerInit:function(){var e=document.getElementById("frm_banner");if(e){var t=e.querySelector(".frm-banner-dismiss");document.addEventListener("click",(function(r){r.target===t&&Bo({action:"frm_inbox_dismiss",key:e.dataset.key,nonce:frmGlobal.nonce},(function(){jQuery(e).fadeOut(400,(function(){e.remove()}))}))}))}},updateOpts:function(e,t,r){var n=pn(e),i=Ho(e)?"frm_bulk_products":"frm_import_options";jQuery.ajax({type:"POST",url:ajaxurl,data:{action:i,field_id:e,opts:t,separate:n,nonce:frmGlobal.nonce},success:function(t){document.getElementById("frm_field_"+e+"_opts").innerHTML=t,wp.hooks.doAction("frm_after_bulk_edit_opts",e),rn(e),void 0!==r&&(r.dialog("close"),document.getElementById("frm-update-bulk-opts").classList.remove("frm_loading_button"))}})},triggerRemoveLogic:function(e,t){jQuery("#frm_logic_"+e+"_"+t+" .frm_remove_tag").trigger("click")},downloadXML:function(e,t,r){var n=ajaxurl+"?action=frm_"+e+"_xml&ids="+t;null!==r&&(n=n+"&is_template="+r),location.href=n},hooks:{applyFilters:function(e){for(var t,r=arguments.length,n=new Array(r>1?r-1:0),i=1;i1?r-1:0),i=1;i1&&void 0!==arguments[1]?arguments[1]:{};return new Promise((function(r){var n=k,i=0;"summary"===e&&(i=j.children('li[data-type="break"]').length>0?1:0),jQuery.ajax({type:"POST",url:ajaxurl,data:Object.assign(pe(e,0,n,i),{field_options:t}),success:function(t){r(t),setTimeout((function(){Qn(),Ue(t,!0);var r=he(t);r&&wp.hooks.doAction("frm_after_field_added_in_form_builder",{field:t,fieldId:r,fieldType:e,form_id:n})}),10)},error:je})}))},confirmLinkClick:F,handleInsertFieldByDraggingResponse:ye,handleAddFieldClickResponse:Ie,syncLayoutClasses:le}}(),jQuery(document).ready((function(){var e;frmAdminBuild.init(),frmDom.bootstrap.setupBootstrapDropdowns((function(e){var t,r,n=e.querySelector(".frm-dropdown-toggle");n&&(n.hasAttribute("role")||n.setAttribute("role","button"),n.hasAttribute("tabindex")||n.setAttribute("tabindex",0)),"UL"===e.tagName&&(r=(r=(r=(r=(r=(r=(t=e).outerHTML).replace("
                                        ","")).replaceAll("
                                      • ",'
                                      • ",""),t.outerHTML=r)})),null===(e=document.querySelector(".preview.dropdown .frm-dropdown-toggle"))||void 0===e||e.setAttribute("data-toggle","dropdown")}))})(); \ No newline at end of file diff --git a/js/src/admin/admin.js b/js/src/admin/admin.js index 52efb64f7c..42d615e879 100644 --- a/js/src/admin/admin.js +++ b/js/src/admin/admin.js @@ -596,12 +596,12 @@ function frmAdminBuildJS() { } /** - * Fires when a tag element is removed. + * Fires after a tag element has been removed in the admin interface. * * @param {string} id The ID of the removed element - * @param {HTMLElement} fadeEle The removed element + * @param {HTMLElement} fadeEle The removed element that was faded out */ - wp.hooks.doAction( 'frm_after_remove_this_tag', id, fadeEle ); + wp.hooks.doAction( 'frm_admin_tag_removed', id, fadeEle ); return false; }