/* * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development"). * This devtool is neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ /******/ (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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ compile; }\n/* harmony export */ });\n/* harmony import */ var _tannin_postfix__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tannin/postfix */ \"./node_modules/@tannin/postfix/index.js\");\n/* harmony import */ var _tannin_evaluate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tannin/evaluate */ \"./node_modules/@tannin/evaluate/index.js\");\n\n\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 */\nfunction compile( expression ) {\n\tvar terms = (0,_tannin_postfix__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( expression );\n\n\treturn function( variables ) {\n\t\treturn (0,_tannin_evaluate__WEBPACK_IMPORTED_MODULE_1__[\"default\"])( terms, variables );\n\t};\n}\n\n\n//# sourceURL=webpack://starter-theme/./node_modules/@tannin/compile/index.js?"); /***/ }), /***/ "./node_modules/@tannin/evaluate/index.js": /*!************************************************!*\ !*** ./node_modules/@tannin/evaluate/index.js ***! \************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ evaluate; }\n/* harmony export */ });\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 */\nfunction 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\n\n//# sourceURL=webpack://starter-theme/./node_modules/@tannin/evaluate/index.js?"); /***/ }), /***/ "./node_modules/@tannin/plural-forms/index.js": /*!****************************************************!*\ !*** ./node_modules/@tannin/plural-forms/index.js ***! \****************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ pluralForms; }\n/* harmony export */ });\n/* harmony import */ var _tannin_compile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tannin/compile */ \"./node_modules/@tannin/compile/index.js\");\n\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 */\nfunction pluralForms( expression ) {\n\tvar evaluate = (0,_tannin_compile__WEBPACK_IMPORTED_MODULE_0__[\"default\"])( expression );\n\n\treturn function( n ) {\n\t\treturn +evaluate( { n: n } );\n\t};\n}\n\n\n//# sourceURL=webpack://starter-theme/./node_modules/@tannin/plural-forms/index.js?"); /***/ }), /***/ "./node_modules/@tannin/postfix/index.js": /*!***********************************************!*\ !*** ./node_modules/@tannin/postfix/index.js ***! \***********************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* binding */ postfix; }\n/* harmony export */ });\nvar 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 */\nfunction 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\n//# sourceURL=webpack://starter-theme/./node_modules/@tannin/postfix/index.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/index.js": /*!*****************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/index.js ***! \*****************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/i18n */ \"./node_modules/@wordpress/i18n/build-module/index.js\");\n/* harmony import */ var _middlewares_nonce__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./middlewares/nonce */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/nonce.js\");\n/* harmony import */ var _middlewares_root_url__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./middlewares/root-url */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/root-url.js\");\n/* harmony import */ var _middlewares_preloading__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./middlewares/preloading */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/preloading.js\");\n/* harmony import */ var _middlewares_fetch_all_middleware__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./middlewares/fetch-all-middleware */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/fetch-all-middleware.js\");\n/* harmony import */ var _middlewares_namespace_endpoint__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./middlewares/namespace-endpoint */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/namespace-endpoint.js\");\n/* harmony import */ var _middlewares_http_v1__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./middlewares/http-v1 */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/http-v1.js\");\n/* harmony import */ var _middlewares_user_locale__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./middlewares/user-locale */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/user-locale.js\");\n/* harmony import */ var _middlewares_media_upload__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./middlewares/media-upload */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/media-upload.js\");\n/* harmony import */ var _utils_response__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./utils/response */ \"./node_modules/@wordpress/api-fetch/build-module/utils/response.js\");\n/**\n * WordPress dependencies\n */\n\n/**\n * Internal dependencies\n */\n\n\n\n\n\n\n\n\n\n\n/**\n * Default set of header values which should be sent with every request unless\n * explicitly provided through apiFetch options.\n *\n * @type {Record}\n */\n\nconst DEFAULT_HEADERS = {\n // The backend uses the Accept header as a condition for considering an\n // incoming request as a REST request.\n //\n // See: https://core.trac.wordpress.org/ticket/44534\n Accept: 'application/json, */*;q=0.1'\n};\n/**\n * Default set of fetch option values which should be sent with every request\n * unless explicitly provided through apiFetch options.\n *\n * @type {Object}\n */\n\nconst DEFAULT_OPTIONS = {\n credentials: 'include'\n};\n/** @typedef {import('./types').APIFetchMiddleware} APIFetchMiddleware */\n\n/** @typedef {import('./types').APIFetchOptions} APIFetchOptions */\n\n/**\n * @type {import('./types').APIFetchMiddleware[]}\n */\n\nconst middlewares = [_middlewares_user_locale__WEBPACK_IMPORTED_MODULE_7__[\"default\"], _middlewares_namespace_endpoint__WEBPACK_IMPORTED_MODULE_5__[\"default\"], _middlewares_http_v1__WEBPACK_IMPORTED_MODULE_6__[\"default\"], _middlewares_fetch_all_middleware__WEBPACK_IMPORTED_MODULE_4__[\"default\"]];\n/**\n * Register a middleware\n *\n * @param {import('./types').APIFetchMiddleware} middleware\n */\n\nfunction registerMiddleware(middleware) {\n middlewares.unshift(middleware);\n}\n/**\n * Checks the status of a response, throwing the Response as an error if\n * it is outside the 200 range.\n *\n * @param {Response} response\n * @return {Response} The response if the status is in the 200 range.\n */\n\n\nconst checkStatus = response => {\n if (response.status >= 200 && response.status < 300) {\n return response;\n }\n\n throw response;\n};\n/** @typedef {(options: import('./types').APIFetchOptions) => Promise} FetchHandler*/\n\n/**\n * @type {FetchHandler}\n */\n\n\nconst defaultFetchHandler = nextOptions => {\n const {\n url,\n path,\n data,\n parse = true,\n ...remainingOptions\n } = nextOptions;\n let {\n body,\n headers\n } = nextOptions; // Merge explicitly-provided headers with default values.\n\n headers = { ...DEFAULT_HEADERS,\n ...headers\n }; // The `data` property is a shorthand for sending a JSON body.\n\n if (data) {\n body = JSON.stringify(data);\n headers['Content-Type'] = 'application/json';\n }\n\n const responsePromise = window.fetch( // Fall back to explicitly passing `window.location` which is the behavior if `undefined` is passed.\n url || path || window.location.href, { ...DEFAULT_OPTIONS,\n ...remainingOptions,\n body,\n headers\n });\n return responsePromise.then(value => Promise.resolve(value).then(checkStatus).catch(response => (0,_utils_response__WEBPACK_IMPORTED_MODULE_9__.parseAndThrowError)(response, parse)).then(response => (0,_utils_response__WEBPACK_IMPORTED_MODULE_9__.parseResponseAndNormalizeError)(response, parse)), err => {\n // Re-throw AbortError for the users to handle it themselves.\n if (err && err.name === 'AbortError') {\n throw err;\n } // Otherwise, there is most likely no network connection.\n // Unfortunately the message might depend on the browser.\n\n\n throw {\n code: 'fetch_error',\n message: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('You are probably offline.')\n };\n });\n};\n/** @type {FetchHandler} */\n\n\nlet fetchHandler = defaultFetchHandler;\n/**\n * Defines a custom fetch handler for making the requests that will override\n * the default one using window.fetch\n *\n * @param {FetchHandler} newFetchHandler The new fetch handler\n */\n\nfunction setFetchHandler(newFetchHandler) {\n fetchHandler = newFetchHandler;\n}\n/**\n * @template T\n * @param {import('./types').APIFetchOptions} options\n * @return {Promise} A promise representing the request processed via the registered middlewares.\n */\n\n\nfunction apiFetch(options) {\n // creates a nested function chain that calls all middlewares and finally the `fetchHandler`,\n // converting `middlewares = [ m1, m2, m3 ]` into:\n // ```\n // opts1 => m1( opts1, opts2 => m2( opts2, opts3 => m3( opts3, fetchHandler ) ) );\n // ```\n const enhancedHandler = middlewares.reduceRight((\n /** @type {FetchHandler} */\n next, middleware) => {\n return workingOptions => middleware(workingOptions, next);\n }, fetchHandler);\n return enhancedHandler(options).catch(error => {\n if (error.code !== 'rest_cookie_invalid_nonce') {\n return Promise.reject(error);\n } // If the nonce is invalid, refresh it and try again.\n\n\n return window // @ts-ignore\n .fetch(apiFetch.nonceEndpoint).then(checkStatus).then(data => data.text()).then(text => {\n // @ts-ignore\n apiFetch.nonceMiddleware.nonce = text;\n return apiFetch(options);\n });\n });\n}\n\napiFetch.use = registerMiddleware;\napiFetch.setFetchHandler = setFetchHandler;\napiFetch.createNonceMiddleware = _middlewares_nonce__WEBPACK_IMPORTED_MODULE_1__[\"default\"];\napiFetch.createPreloadingMiddleware = _middlewares_preloading__WEBPACK_IMPORTED_MODULE_3__[\"default\"];\napiFetch.createRootURLMiddleware = _middlewares_root_url__WEBPACK_IMPORTED_MODULE_2__[\"default\"];\napiFetch.fetchAllMiddleware = _middlewares_fetch_all_middleware__WEBPACK_IMPORTED_MODULE_4__[\"default\"];\napiFetch.mediaUploadMiddleware = _middlewares_media_upload__WEBPACK_IMPORTED_MODULE_8__[\"default\"];\n/* harmony default export */ __webpack_exports__[\"default\"] = (apiFetch);\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/index.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/middlewares/fetch-all-middleware.js": /*!********************************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/middlewares/fetch-all-middleware.js ***! \********************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/url */ \"./node_modules/@wordpress/url/build-module/add-query-args.js\");\n/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! .. */ \"./node_modules/@wordpress/api-fetch/build-module/index.js\");\n/**\n * WordPress dependencies\n */\n\n/**\n * Internal dependencies\n */\n\n\n/**\n * Apply query arguments to both URL and Path, whichever is present.\n *\n * @param {import('../types').APIFetchOptions} props\n * @param {Record} queryArgs\n * @return {import('../types').APIFetchOptions} The request with the modified query args\n */\n\nconst modifyQuery = (_ref, queryArgs) => {\n let {\n path,\n url,\n ...options\n } = _ref;\n return { ...options,\n url: url && (0,_wordpress_url__WEBPACK_IMPORTED_MODULE_1__.addQueryArgs)(url, queryArgs),\n path: path && (0,_wordpress_url__WEBPACK_IMPORTED_MODULE_1__.addQueryArgs)(path, queryArgs)\n };\n};\n/**\n * Duplicates parsing functionality from apiFetch.\n *\n * @param {Response} response\n * @return {Promise} Parsed response json.\n */\n\n\nconst parseResponse = response => response.json ? response.json() : Promise.reject(response);\n/**\n * @param {string | null} linkHeader\n * @return {{ next?: string }} The parsed link header.\n */\n\n\nconst parseLinkHeader = linkHeader => {\n if (!linkHeader) {\n return {};\n }\n\n const match = linkHeader.match(/<([^>]+)>; rel=\"next\"/);\n return match ? {\n next: match[1]\n } : {};\n};\n/**\n * @param {Response} response\n * @return {string | undefined} The next page URL.\n */\n\n\nconst getNextPageUrl = response => {\n const {\n next\n } = parseLinkHeader(response.headers.get('link'));\n return next;\n};\n/**\n * @param {import('../types').APIFetchOptions} options\n * @return {boolean} True if the request contains an unbounded query.\n */\n\n\nconst requestContainsUnboundedQuery = options => {\n const pathIsUnbounded = !!options.path && options.path.indexOf('per_page=-1') !== -1;\n const urlIsUnbounded = !!options.url && options.url.indexOf('per_page=-1') !== -1;\n return pathIsUnbounded || urlIsUnbounded;\n};\n/**\n * The REST API enforces an upper limit on the per_page option. To handle large\n * collections, apiFetch consumers can pass `per_page=-1`; this middleware will\n * then recursively assemble a full response array from all available pages.\n *\n * @type {import('../types').APIFetchMiddleware}\n */\n\n\nconst fetchAllMiddleware = async (options, next) => {\n if (options.parse === false) {\n // If a consumer has opted out of parsing, do not apply middleware.\n return next(options);\n }\n\n if (!requestContainsUnboundedQuery(options)) {\n // If neither url nor path is requesting all items, do not apply middleware.\n return next(options);\n } // Retrieve requested page of results.\n\n\n const response = await (0,___WEBPACK_IMPORTED_MODULE_0__[\"default\"])({ ...modifyQuery(options, {\n per_page: 100\n }),\n // Ensure headers are returned for page 1.\n parse: false\n });\n const results = await parseResponse(response);\n\n if (!Array.isArray(results)) {\n // We have no reliable way of merging non-array results.\n return results;\n }\n\n let nextPage = getNextPageUrl(response);\n\n if (!nextPage) {\n // There are no further pages to request.\n return results;\n } // Iteratively fetch all remaining pages until no \"next\" header is found.\n\n\n let mergedResults =\n /** @type {any[]} */\n [].concat(results);\n\n while (nextPage) {\n const nextResponse = await (0,___WEBPACK_IMPORTED_MODULE_0__[\"default\"])({ ...options,\n // Ensure the URL for the next page is used instead of any provided path.\n path: undefined,\n url: nextPage,\n // Ensure we still get headers so we can identify the next page.\n parse: false\n });\n const nextResults = await parseResponse(nextResponse);\n mergedResults = mergedResults.concat(nextResults);\n nextPage = getNextPageUrl(nextResponse);\n }\n\n return mergedResults;\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (fetchAllMiddleware);\n//# sourceMappingURL=fetch-all-middleware.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/middlewares/fetch-all-middleware.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/middlewares/http-v1.js": /*!*******************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/middlewares/http-v1.js ***! \*******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/**\n * Set of HTTP methods which are eligible to be overridden.\n *\n * @type {Set}\n */\nconst OVERRIDE_METHODS = new Set(['PATCH', 'PUT', 'DELETE']);\n/**\n * Default request method.\n *\n * \"A request has an associated method (a method). Unless stated otherwise it\n * is `GET`.\"\n *\n * @see https://fetch.spec.whatwg.org/#requests\n *\n * @type {string}\n */\n\nconst DEFAULT_METHOD = 'GET';\n/**\n * API Fetch middleware which overrides the request method for HTTP v1\n * compatibility leveraging the REST API X-HTTP-Method-Override header.\n *\n * @type {import('../types').APIFetchMiddleware}\n */\n\nconst httpV1Middleware = (options, next) => {\n const {\n method = DEFAULT_METHOD\n } = options;\n\n if (OVERRIDE_METHODS.has(method.toUpperCase())) {\n options = { ...options,\n headers: { ...options.headers,\n 'X-HTTP-Method-Override': method,\n 'Content-Type': 'application/json'\n },\n method: 'POST'\n };\n }\n\n return next(options);\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (httpV1Middleware);\n//# sourceMappingURL=http-v1.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/middlewares/http-v1.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/middlewares/media-upload.js": /*!************************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/middlewares/media-upload.js ***! \************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/i18n */ \"./node_modules/@wordpress/i18n/build-module/index.js\");\n/* harmony import */ var _utils_response__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/response */ \"./node_modules/@wordpress/api-fetch/build-module/utils/response.js\");\n/**\n * WordPress dependencies\n */\n\n/**\n * Internal dependencies\n */\n\n\n/**\n * @param {import('../types').APIFetchOptions} options\n * @return {boolean} True if the request is for media upload.\n */\n\nfunction isMediaUploadRequest(options) {\n const isCreateMethod = !!options.method && options.method === 'POST';\n const isMediaEndpoint = !!options.path && options.path.indexOf('/wp/v2/media') !== -1 || !!options.url && options.url.indexOf('/wp/v2/media') !== -1;\n return isMediaEndpoint && isCreateMethod;\n}\n/**\n * Middleware handling media upload failures and retries.\n *\n * @type {import('../types').APIFetchMiddleware}\n */\n\n\nconst mediaUploadMiddleware = (options, next) => {\n if (!isMediaUploadRequest(options)) {\n return next(options);\n }\n\n let retries = 0;\n const maxRetries = 5;\n /**\n * @param {string} attachmentId\n * @return {Promise} Processed post response.\n */\n\n const postProcess = attachmentId => {\n retries++;\n return next({\n path: `/wp/v2/media/${attachmentId}/post-process`,\n method: 'POST',\n data: {\n action: 'create-image-subsizes'\n },\n parse: false\n }).catch(() => {\n if (retries < maxRetries) {\n return postProcess(attachmentId);\n }\n\n next({\n path: `/wp/v2/media/${attachmentId}?force=true`,\n method: 'DELETE'\n });\n return Promise.reject();\n });\n };\n\n return next({ ...options,\n parse: false\n }).catch(response => {\n const attachmentId = response.headers.get('x-wp-upload-attachment-id');\n\n if (response.status >= 500 && response.status < 600 && attachmentId) {\n return postProcess(attachmentId).catch(() => {\n if (options.parse !== false) {\n return Promise.reject({\n code: 'post_process',\n message: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('Media upload failed. If this is a photo or a large image, please scale it down and try again.')\n });\n }\n\n return Promise.reject(response);\n });\n }\n\n return (0,_utils_response__WEBPACK_IMPORTED_MODULE_1__.parseAndThrowError)(response, options.parse);\n }).then(response => (0,_utils_response__WEBPACK_IMPORTED_MODULE_1__.parseResponseAndNormalizeError)(response, options.parse));\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (mediaUploadMiddleware);\n//# sourceMappingURL=media-upload.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/middlewares/media-upload.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/middlewares/namespace-endpoint.js": /*!******************************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/middlewares/namespace-endpoint.js ***! \******************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/**\n * @type {import('../types').APIFetchMiddleware}\n */\nconst namespaceAndEndpointMiddleware = (options, next) => {\n let path = options.path;\n let namespaceTrimmed, endpointTrimmed;\n\n if (typeof options.namespace === 'string' && typeof options.endpoint === 'string') {\n namespaceTrimmed = options.namespace.replace(/^\\/|\\/$/g, '');\n endpointTrimmed = options.endpoint.replace(/^\\//, '');\n\n if (endpointTrimmed) {\n path = namespaceTrimmed + '/' + endpointTrimmed;\n } else {\n path = namespaceTrimmed;\n }\n }\n\n delete options.namespace;\n delete options.endpoint;\n return next({ ...options,\n path\n });\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (namespaceAndEndpointMiddleware);\n//# sourceMappingURL=namespace-endpoint.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/middlewares/namespace-endpoint.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/middlewares/nonce.js": /*!*****************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/middlewares/nonce.js ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/**\n * @param {string} nonce\n * @return {import('../types').APIFetchMiddleware & { nonce: string }} A middleware to enhance a request with a nonce.\n */\nfunction createNonceMiddleware(nonce) {\n /**\n * @type {import('../types').APIFetchMiddleware & { nonce: string }}\n */\n const middleware = (options, next) => {\n const {\n headers = {}\n } = options; // If an 'X-WP-Nonce' header (or any case-insensitive variation\n // thereof) was specified, no need to add a nonce header.\n\n for (const headerName in headers) {\n if (headerName.toLowerCase() === 'x-wp-nonce' && headers[headerName] === middleware.nonce) {\n return next(options);\n }\n }\n\n return next({ ...options,\n headers: { ...headers,\n 'X-WP-Nonce': middleware.nonce\n }\n });\n };\n\n middleware.nonce = nonce;\n return middleware;\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (createNonceMiddleware);\n//# sourceMappingURL=nonce.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/middlewares/nonce.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/middlewares/preloading.js": /*!**********************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/middlewares/preloading.js ***! \**********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/url */ \"./node_modules/@wordpress/url/build-module/normalize-path.js\");\n/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/url */ \"./node_modules/@wordpress/url/build-module/get-query-args.js\");\n/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/url */ \"./node_modules/@wordpress/url/build-module/add-query-args.js\");\n/**\n * WordPress dependencies\n */\n\n/**\n * @param {Record} preloadedData\n * @return {import('../types').APIFetchMiddleware} Preloading middleware.\n */\n\nfunction createPreloadingMiddleware(preloadedData) {\n const cache = Object.fromEntries(Object.entries(preloadedData).map(_ref => {\n let [path, data] = _ref;\n return [(0,_wordpress_url__WEBPACK_IMPORTED_MODULE_0__.normalizePath)(path), data];\n }));\n return (options, next) => {\n const {\n parse = true\n } = options;\n /** @type {string | void} */\n\n let rawPath = options.path;\n\n if (!rawPath && options.url) {\n const {\n rest_route: pathFromQuery,\n ...queryArgs\n } = (0,_wordpress_url__WEBPACK_IMPORTED_MODULE_1__.getQueryArgs)(options.url);\n\n if (typeof pathFromQuery === 'string') {\n rawPath = (0,_wordpress_url__WEBPACK_IMPORTED_MODULE_2__.addQueryArgs)(pathFromQuery, queryArgs);\n }\n }\n\n if (typeof rawPath !== 'string') {\n return next(options);\n }\n\n const method = options.method || 'GET';\n const path = (0,_wordpress_url__WEBPACK_IMPORTED_MODULE_0__.normalizePath)(rawPath);\n\n if ('GET' === method && cache[path]) {\n const cacheData = cache[path]; // Unsetting the cache key ensures that the data is only used a single time.\n\n delete cache[path];\n return prepareResponse(cacheData, !!parse);\n } else if ('OPTIONS' === method && cache[method] && cache[method][path]) {\n const cacheData = cache[method][path]; // Unsetting the cache key ensures that the data is only used a single time.\n\n delete cache[method][path];\n return prepareResponse(cacheData, !!parse);\n }\n\n return next(options);\n };\n}\n/**\n * This is a helper function that sends a success response.\n *\n * @param {Record} responseData\n * @param {boolean} parse\n * @return {Promise} Promise with the response.\n */\n\n\nfunction prepareResponse(responseData, parse) {\n return Promise.resolve(parse ? responseData.body : new window.Response(JSON.stringify(responseData.body), {\n status: 200,\n statusText: 'OK',\n headers: responseData.headers\n }));\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (createPreloadingMiddleware);\n//# sourceMappingURL=preloading.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/middlewares/preloading.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/middlewares/root-url.js": /*!********************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/middlewares/root-url.js ***! \********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _namespace_endpoint__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./namespace-endpoint */ \"./node_modules/@wordpress/api-fetch/build-module/middlewares/namespace-endpoint.js\");\n/**\n * Internal dependencies\n */\n\n/**\n * @param {string} rootURL\n * @return {import('../types').APIFetchMiddleware} Root URL middleware.\n */\n\nconst createRootURLMiddleware = rootURL => (options, next) => {\n return (0,_namespace_endpoint__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options, optionsWithPath => {\n let url = optionsWithPath.url;\n let path = optionsWithPath.path;\n let apiRoot;\n\n if (typeof path === 'string') {\n apiRoot = rootURL;\n\n if (-1 !== rootURL.indexOf('?')) {\n path = path.replace('?', '&');\n }\n\n path = path.replace(/^\\//, ''); // API root may already include query parameter prefix if site is\n // configured to use plain permalinks.\n\n if ('string' === typeof apiRoot && -1 !== apiRoot.indexOf('?')) {\n path = path.replace('?', '&');\n }\n\n url = apiRoot + path;\n }\n\n return next({ ...optionsWithPath,\n url\n });\n });\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (createRootURLMiddleware);\n//# sourceMappingURL=root-url.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/middlewares/root-url.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/middlewares/user-locale.js": /*!***********************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/middlewares/user-locale.js ***! \***********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/url */ \"./node_modules/@wordpress/url/build-module/has-query-arg.js\");\n/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/url */ \"./node_modules/@wordpress/url/build-module/add-query-args.js\");\n/**\n * WordPress dependencies\n */\n\n/**\n * @type {import('../types').APIFetchMiddleware}\n */\n\nconst userLocaleMiddleware = (options, next) => {\n if (typeof options.url === 'string' && !(0,_wordpress_url__WEBPACK_IMPORTED_MODULE_0__.hasQueryArg)(options.url, '_locale')) {\n options.url = (0,_wordpress_url__WEBPACK_IMPORTED_MODULE_1__.addQueryArgs)(options.url, {\n _locale: 'user'\n });\n }\n\n if (typeof options.path === 'string' && !(0,_wordpress_url__WEBPACK_IMPORTED_MODULE_0__.hasQueryArg)(options.path, '_locale')) {\n options.path = (0,_wordpress_url__WEBPACK_IMPORTED_MODULE_1__.addQueryArgs)(options.path, {\n _locale: 'user'\n });\n }\n\n return next(options);\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (userLocaleMiddleware);\n//# sourceMappingURL=user-locale.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/middlewares/user-locale.js?"); /***/ }), /***/ "./node_modules/@wordpress/api-fetch/build-module/utils/response.js": /*!**************************************************************************!*\ !*** ./node_modules/@wordpress/api-fetch/build-module/utils/response.js ***! \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"parseAndThrowError\": function() { return /* binding */ parseAndThrowError; },\n/* harmony export */ \"parseResponseAndNormalizeError\": function() { return /* binding */ parseResponseAndNormalizeError; }\n/* harmony export */ });\n/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/i18n */ \"./node_modules/@wordpress/i18n/build-module/index.js\");\n/**\n * WordPress dependencies\n */\n\n/**\n * Parses the apiFetch response.\n *\n * @param {Response} response\n * @param {boolean} shouldParseResponse\n *\n * @return {Promise | null | Response} Parsed response.\n */\n\nconst parseResponse = function (response) {\n let shouldParseResponse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (shouldParseResponse) {\n if (response.status === 204) {\n return null;\n }\n\n return response.json ? response.json() : Promise.reject(response);\n }\n\n return response;\n};\n/**\n * Calls the `json` function on the Response, throwing an error if the response\n * doesn't have a json function or if parsing the json itself fails.\n *\n * @param {Response} response\n * @return {Promise} Parsed response.\n */\n\n\nconst parseJsonAndNormalizeError = response => {\n const invalidJsonError = {\n code: 'invalid_json',\n message: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('The response is not a valid JSON response.')\n };\n\n if (!response || !response.json) {\n throw invalidJsonError;\n }\n\n return response.json().catch(() => {\n throw invalidJsonError;\n });\n};\n/**\n * Parses the apiFetch response properly and normalize response errors.\n *\n * @param {Response} response\n * @param {boolean} shouldParseResponse\n *\n * @return {Promise} Parsed response.\n */\n\n\nconst parseResponseAndNormalizeError = function (response) {\n let shouldParseResponse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n return Promise.resolve(parseResponse(response, shouldParseResponse)).catch(res => parseAndThrowError(res, shouldParseResponse));\n};\n/**\n * Parses a response, throwing an error if parsing the response fails.\n *\n * @param {Response} response\n * @param {boolean} shouldParseResponse\n * @return {Promise} Parsed response.\n */\n\nfunction parseAndThrowError(response) {\n let shouldParseResponse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (!shouldParseResponse) {\n throw response;\n }\n\n return parseJsonAndNormalizeError(response).then(error => {\n const unknownError = {\n code: 'unknown_error',\n message: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_0__.__)('An unknown error occurred.')\n };\n throw error || unknownError;\n });\n}\n//# sourceMappingURL=response.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/api-fetch/build-module/utils/response.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateNamespace.js */ \"./node_modules/@wordpress/hooks/build-module/validateNamespace.js\");\n/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./validateHookName.js */ \"./node_modules/@wordpress/hooks/build-module/validateHookName.js\");\n/**\n * Internal dependencies\n */\n\n\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 let priority = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 10;\n const hooksStore = hooks[storeKey];\n\n if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(hookName)) {\n return;\n }\n\n if (!(0,_validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(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 const handler = {\n callback,\n priority,\n namespace\n };\n\n if (hooksStore[hookName]) {\n // Find the correct insert index of the new hook.\n const handlers = hooksStore[hookName].handlers;\n /** @type {number} */\n\n let 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(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\n/* harmony default export */ __webpack_exports__[\"default\"] = (createAddHook);\n//# sourceMappingURL=createAddHook.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/createAddHook.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/**\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 const 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\n/* harmony default export */ __webpack_exports__[\"default\"] = (createCurrentHook);\n//# sourceMappingURL=createCurrentHook.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/createCurrentHook.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateHookName.js */ \"./node_modules/@wordpress/hooks/build-module/validateHookName.js\");\n/**\n * Internal dependencies\n */\n\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 const hooksStore = hooks[storeKey];\n\n if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(hookName)) {\n return;\n }\n\n return hooksStore[hookName] && hooksStore[hookName].runs ? hooksStore[hookName].runs : 0;\n };\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (createDidHook);\n//# sourceMappingURL=createDidHook.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/createDidHook.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/**\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 const 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\n/* harmony default export */ __webpack_exports__[\"default\"] = (createDoingHook);\n//# sourceMappingURL=createDoingHook.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/createDoingHook.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/**\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 const hooksStore = hooks[storeKey]; // Use the namespace if provided.\n\n if ('undefined' !== typeof namespace) {\n return hookName in hooksStore && hooksStore[hookName].handlers.some(hook => hook.namespace === namespace);\n }\n\n return hookName in hooksStore;\n };\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (createHasHook);\n//# sourceMappingURL=createHasHook.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/createHasHook.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"_Hooks\": function() { return /* binding */ _Hooks; }\n/* harmony export */ });\n/* harmony import */ var _createAddHook__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./createAddHook */ \"./node_modules/@wordpress/hooks/build-module/createAddHook.js\");\n/* harmony import */ var _createRemoveHook__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./createRemoveHook */ \"./node_modules/@wordpress/hooks/build-module/createRemoveHook.js\");\n/* harmony import */ var _createHasHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./createHasHook */ \"./node_modules/@wordpress/hooks/build-module/createHasHook.js\");\n/* harmony import */ var _createRunHook__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./createRunHook */ \"./node_modules/@wordpress/hooks/build-module/createRunHook.js\");\n/* harmony import */ var _createCurrentHook__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createCurrentHook */ \"./node_modules/@wordpress/hooks/build-module/createCurrentHook.js\");\n/* harmony import */ var _createDoingHook__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./createDoingHook */ \"./node_modules/@wordpress/hooks/build-module/createDoingHook.js\");\n/* harmony import */ var _createDidHook__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./createDidHook */ \"./node_modules/@wordpress/hooks/build-module/createDidHook.js\");\n/**\n * Internal dependencies\n */\n\n\n\n\n\n\n\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\nclass _Hooks {\n constructor() {\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 = (0,_createAddHook__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(this, 'actions');\n this.addFilter = (0,_createAddHook__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(this, 'filters');\n this.removeAction = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(this, 'actions');\n this.removeFilter = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(this, 'filters');\n this.hasAction = (0,_createHasHook__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(this, 'actions');\n this.hasFilter = (0,_createHasHook__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(this, 'filters');\n this.removeAllActions = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(this, 'actions', true);\n this.removeAllFilters = (0,_createRemoveHook__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(this, 'filters', true);\n this.doAction = (0,_createRunHook__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(this, 'actions');\n this.applyFilters = (0,_createRunHook__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(this, 'filters', true);\n this.currentAction = (0,_createCurrentHook__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(this, 'actions');\n this.currentFilter = (0,_createCurrentHook__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(this, 'filters');\n this.doingAction = (0,_createDoingHook__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(this, 'actions');\n this.doingFilter = (0,_createDoingHook__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(this, 'filters');\n this.didAction = (0,_createDidHook__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(this, 'actions');\n this.didFilter = (0,_createDidHook__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(this, 'filters');\n }\n\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\n/* harmony default export */ __webpack_exports__[\"default\"] = (createHooks);\n//# sourceMappingURL=createHooks.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/createHooks.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./validateNamespace.js */ \"./node_modules/@wordpress/hooks/build-module/validateNamespace.js\");\n/* harmony import */ var _validateHookName_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./validateHookName.js */ \"./node_modules/@wordpress/hooks/build-module/validateHookName.js\");\n/**\n * Internal dependencies\n */\n\n\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 let removeAll = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function removeHook(hookName, namespace) {\n const hooksStore = hooks[storeKey];\n\n if (!(0,_validateHookName_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(hookName)) {\n return;\n }\n\n if (!removeAll && !(0,_validateNamespace_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(namespace)) {\n return;\n } // Bail if no hooks exist by this name.\n\n\n if (!hooksStore[hookName]) {\n return 0;\n }\n\n let 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 const handlers = hooksStore[hookName].handlers;\n\n for (let i = handlers.length - 1; i >= 0; 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(hookInfo => {\n if (hookInfo.name === hookName && hookInfo.currentIndex >= i) {\n hookInfo.currentIndex--;\n }\n });\n }\n }\n }\n\n if (hookName !== 'hookRemoved') {\n hooks.doAction('hookRemoved', hookName, namespace);\n }\n\n return handlersRemoved;\n };\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (createRemoveHook);\n//# sourceMappingURL=createRemoveHook.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/createRemoveHook.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\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 let returnFirstArg = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n return function runHooks(hookName) {\n const hooksStore = hooks[storeKey];\n\n if (!hooksStore[hookName]) {\n hooksStore[hookName] = {\n handlers: [],\n runs: 0\n };\n }\n\n hooksStore[hookName].runs++;\n const handlers = hooksStore[hookName].handlers; // The following code is stripped from production builds.\n\n if (true) {\n // Handle any 'all' hooks registered.\n if ('hookAdded' !== hookName && hooksStore.all) {\n handlers.push(...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 const hookInfo = {\n name: hookName,\n currentIndex: 0\n };\n\n hooksStore.__current.push(hookInfo);\n\n while (hookInfo.currentIndex < handlers.length) {\n const handler = handlers[hookInfo.currentIndex];\n const 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\n/* harmony default export */ __webpack_exports__[\"default\"] = (createRunHook);\n//# sourceMappingURL=createRunHook.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/createRunHook.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"actions\": function() { return /* binding */ actions; },\n/* harmony export */ \"addAction\": function() { return /* binding */ addAction; },\n/* harmony export */ \"addFilter\": function() { return /* binding */ addFilter; },\n/* harmony export */ \"applyFilters\": function() { return /* binding */ applyFilters; },\n/* harmony export */ \"createHooks\": function() { return /* reexport safe */ _createHooks__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; },\n/* harmony export */ \"currentAction\": function() { return /* binding */ currentAction; },\n/* harmony export */ \"currentFilter\": function() { return /* binding */ currentFilter; },\n/* harmony export */ \"defaultHooks\": function() { return /* binding */ defaultHooks; },\n/* harmony export */ \"didAction\": function() { return /* binding */ didAction; },\n/* harmony export */ \"didFilter\": function() { return /* binding */ didFilter; },\n/* harmony export */ \"doAction\": function() { return /* binding */ doAction; },\n/* harmony export */ \"doingAction\": function() { return /* binding */ doingAction; },\n/* harmony export */ \"doingFilter\": function() { return /* binding */ doingFilter; },\n/* harmony export */ \"filters\": function() { return /* binding */ filters; },\n/* harmony export */ \"hasAction\": function() { return /* binding */ hasAction; },\n/* harmony export */ \"hasFilter\": function() { return /* binding */ hasFilter; },\n/* harmony export */ \"removeAction\": function() { return /* binding */ removeAction; },\n/* harmony export */ \"removeAllActions\": function() { return /* binding */ removeAllActions; },\n/* harmony export */ \"removeAllFilters\": function() { return /* binding */ removeAllFilters; },\n/* harmony export */ \"removeFilter\": function() { return /* binding */ removeFilter; }\n/* harmony export */ });\n/* harmony import */ var _createHooks__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./createHooks */ \"./node_modules/@wordpress/hooks/build-module/createHooks.js\");\n/**\n * Internal dependencies\n */\n\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\nconst defaultHooks = (0,_createHooks__WEBPACK_IMPORTED_MODULE_0__[\"default\"])();\nconst {\n addAction,\n addFilter,\n removeAction,\n removeFilter,\n hasAction,\n hasFilter,\n removeAllActions,\n removeAllFilters,\n doAction,\n applyFilters,\n currentAction,\n currentFilter,\n doingAction,\n doingFilter,\n didAction,\n didFilter,\n actions,\n filters\n} = defaultHooks;\n\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/index.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/**\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\n/* harmony default export */ __webpack_exports__[\"default\"] = (validateHookName);\n//# sourceMappingURL=validateHookName.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/validateHookName.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/**\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\n/* harmony default export */ __webpack_exports__[\"default\"] = (validateNamespace);\n//# sourceMappingURL=validateNamespace.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/hooks/build-module/validateNamespace.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"createI18n\": function() { return /* binding */ createI18n; }\n/* harmony export */ });\n/* harmony import */ var tannin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tannin */ \"./node_modules/tannin/index.js\");\n/**\n * External dependencies\n */\n\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\nconst DEFAULT_LOCALE_DATA = {\n '': {\n /** @param {number} n */\n plural_forms(n) {\n return n === 1 ? 0 : 1;\n }\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\nconst 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. Note that this\n * function will overwrite the domain configuration. 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} AddLocaleData\n *\n * Merges locale data into the Tannin instance by domain. Note that this\n * function will also merge the domain configuration. 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. Note that this\n * function will overwrite the domain configuration. Accepts data in a\n * Jed-formatted JSON object shape.\n * @property {AddLocaleData} addLocaleData Merges locale data into the Tannin instance by domain. Note that this\n * function will also merge the domain configuration. 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 *\n * @return {I18n} I18n instance.\n */\n\nconst createI18n = (initialData, initialDomain, hooks) => {\n /**\n * The underlying instance of Tannin to which exported functions interface.\n *\n * @type {Tannin}\n */\n const tannin = new tannin__WEBPACK_IMPORTED_MODULE_0__[\"default\"]({});\n const listeners = new Set();\n\n const notifyListeners = () => {\n listeners.forEach(listener => listener());\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 const subscribe = callback => {\n listeners.add(callback);\n return () => listeners.delete(callback);\n };\n /** @type {GetLocaleData} */\n\n\n const getLocaleData = function () {\n let 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 const doSetLocaleData = function (data) {\n var _tannin$data$domain;\n\n let domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';\n tannin.data[domain] = { ...tannin.data[domain],\n ...data\n }; // Populate default domain configuration (supported locale date which omits\n // a plural forms expression).\n\n tannin.data[domain][''] = { ...DEFAULT_LOCALE_DATA[''],\n ...((_tannin$data$domain = tannin.data[domain]) === null || _tannin$data$domain === void 0 ? void 0 : _tannin$data$domain[''])\n }; // Clean up cached plural forms functions cache as it might be updated.\n\n delete tannin.pluralForms[domain];\n };\n /** @type {SetLocaleData} */\n\n\n const setLocaleData = (data, domain) => {\n doSetLocaleData(data, domain);\n notifyListeners();\n };\n /** @type {AddLocaleData} */\n\n\n const addLocaleData = function (data) {\n var _tannin$data$domain2;\n\n let domain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';\n tannin.data[domain] = { ...tannin.data[domain],\n ...data,\n // Populate default domain configuration (supported locale date which omits\n // a plural forms expression).\n '': { ...DEFAULT_LOCALE_DATA[''],\n ...((_tannin$data$domain2 = tannin.data[domain]) === null || _tannin$data$domain2 === void 0 ? void 0 : _tannin$data$domain2['']),\n ...(data === null || data === void 0 ? void 0 : data[''])\n }\n }; // Clean up cached plural forms functions cache as it might be updated.\n\n delete tannin.pluralForms[domain];\n notifyListeners();\n };\n /** @type {ResetLocaleData} */\n\n\n const 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 const dcnpgettext = function () {\n let domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n let context = arguments.length > 1 ? arguments[1] : undefined;\n let single = arguments.length > 2 ? arguments[2] : undefined;\n let plural = arguments.length > 3 ? arguments[3] : undefined;\n let 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 const getFilterDomain = function () {\n let domain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'default';\n return domain;\n };\n /** @type {__} */\n\n\n const __ = (text, domain) => {\n let 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 const _x = (text, context, domain) => {\n let 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 const _n = (single, plural, number, domain) => {\n let 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 const _nx = (single, plural, number, context, domain) => {\n let 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 const isRTL = () => {\n return 'rtl' === _x('ltr', 'text direction');\n };\n /** @type {HasTranslation} */\n\n\n const hasTranslation = (single, context, domain) => {\n var _tannin$data, _tannin$data2;\n\n const key = context ? context + '\\u0004' + single : single;\n let 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 const 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,\n setLocaleData,\n addLocaleData,\n resetLocaleData,\n subscribe,\n __,\n _x,\n _n,\n _nx,\n isRTL,\n hasTranslation\n };\n};\n//# sourceMappingURL=create-i18n.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/i18n/build-module/create-i18n.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"__\": function() { return /* binding */ __; },\n/* harmony export */ \"_n\": function() { return /* binding */ _n; },\n/* harmony export */ \"_nx\": function() { return /* binding */ _nx; },\n/* harmony export */ \"_x\": function() { return /* binding */ _x; },\n/* harmony export */ \"getLocaleData\": function() { return /* binding */ getLocaleData; },\n/* harmony export */ \"hasTranslation\": function() { return /* binding */ hasTranslation; },\n/* harmony export */ \"isRTL\": function() { return /* binding */ isRTL; },\n/* harmony export */ \"resetLocaleData\": function() { return /* binding */ resetLocaleData; },\n/* harmony export */ \"setLocaleData\": function() { return /* binding */ setLocaleData; },\n/* harmony export */ \"subscribe\": function() { return /* binding */ subscribe; }\n/* harmony export */ });\n/* harmony import */ var _create_i18n__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./create-i18n */ \"./node_modules/@wordpress/i18n/build-module/create-i18n.js\");\n/* harmony import */ var _wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/hooks */ \"./node_modules/@wordpress/hooks/build-module/index.js\");\n/**\n * Internal dependencies\n */\n\n/**\n * WordPress dependencies\n */\n\n\nconst i18n = (0,_create_i18n__WEBPACK_IMPORTED_MODULE_0__.createI18n)(undefined, undefined, _wordpress_hooks__WEBPACK_IMPORTED_MODULE_1__.defaultHooks);\n/**\n * Default, singleton instance of `I18n`.\n */\n\n/* harmony default export */ __webpack_exports__[\"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\nconst 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\nconst 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\nconst 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\nconst 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\nconst __ = 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\nconst _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\nconst _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\nconst _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\nconst 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\nconst hasTranslation = i18n.hasTranslation.bind(i18n);\n//# sourceMappingURL=default-i18n.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/i18n/build-module/default-i18n.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"__\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.__; },\n/* harmony export */ \"_n\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._n; },\n/* harmony export */ \"_nx\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._nx; },\n/* harmony export */ \"_x\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__._x; },\n/* harmony export */ \"createI18n\": function() { return /* reexport safe */ _create_i18n__WEBPACK_IMPORTED_MODULE_1__.createI18n; },\n/* harmony export */ \"defaultI18n\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__[\"default\"]; },\n/* harmony export */ \"getLocaleData\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.getLocaleData; },\n/* harmony export */ \"hasTranslation\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.hasTranslation; },\n/* harmony export */ \"isRTL\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.isRTL; },\n/* harmony export */ \"resetLocaleData\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.resetLocaleData; },\n/* harmony export */ \"setLocaleData\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.setLocaleData; },\n/* harmony export */ \"sprintf\": function() { return /* reexport safe */ _sprintf__WEBPACK_IMPORTED_MODULE_0__.sprintf; },\n/* harmony export */ \"subscribe\": function() { return /* reexport safe */ _default_i18n__WEBPACK_IMPORTED_MODULE_2__.subscribe; }\n/* harmony export */ });\n/* harmony import */ var _sprintf__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sprintf */ \"./node_modules/@wordpress/i18n/build-module/sprintf.js\");\n/* harmony import */ var _create_i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./create-i18n */ \"./node_modules/@wordpress/i18n/build-module/create-i18n.js\");\n/* harmony import */ var _default_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./default-i18n */ \"./node_modules/@wordpress/i18n/build-module/default-i18n.js\");\n\n\n\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/i18n/build-module/index.js?"); /***/ }), /***/ "./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"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"sprintf\": function() { return /* binding */ sprintf; }\n/* harmony export */ });\n/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! memize */ \"./node_modules/memize/index.js\");\n/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var sprintf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! sprintf-js */ \"./node_modules/@wordpress/i18n/node_modules/sprintf-js/src/sprintf.js\");\n/* harmony import */ var sprintf_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(sprintf_js__WEBPACK_IMPORTED_MODULE_1__);\n/**\n * External dependencies\n */\n\n\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\nconst logErrorOnce = memize__WEBPACK_IMPORTED_MODULE_0___default()(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\nfunction 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 sprintf_js__WEBPACK_IMPORTED_MODULE_1___default().sprintf(format, ...args);\n } catch (error) {\n if (error instanceof Error) {\n logErrorOnce('sprintf error: \\n\\n' + error.toString());\n }\n\n return format;\n }\n}\n//# sourceMappingURL=sprintf.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/i18n/build-module/sprintf.js?"); /***/ }), /***/ "./node_modules/@wordpress/i18n/node_modules/sprintf-js/src/sprintf.js": /*!*****************************************************************************!*\ !*** ./node_modules/@wordpress/i18n/node_modules/sprintf-js/src/sprintf.js ***! \*****************************************************************************/ /***/ (function(module, exports, __webpack_require__) { eval("var __WEBPACK_AMD_DEFINE_RESULT__;/* 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 (true) {\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 (true) {\n !(__WEBPACK_AMD_DEFINE_RESULT__ = (function() {\n return {\n 'sprintf': sprintf,\n 'vsprintf': vsprintf\n }\n }).call(exports, __webpack_require__, exports, module),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__))\n }\n }\n /* eslint-enable quote-props */\n}(); // eslint-disable-line\n\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/i18n/node_modules/sprintf-js/src/sprintf.js?"); /***/ }), /***/ "./node_modules/@wordpress/url/build-module/add-query-args.js": /*!********************************************************************!*\ !*** ./node_modules/@wordpress/url/build-module/add-query-args.js ***! \********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"addQueryArgs\": function() { return /* binding */ addQueryArgs; }\n/* harmony export */ });\n/* harmony import */ var _get_query_args__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./get-query-args */ \"./node_modules/@wordpress/url/build-module/get-query-args.js\");\n/* harmony import */ var _build_query_string__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./build-query-string */ \"./node_modules/@wordpress/url/build-module/build-query-string.js\");\n/**\n * Internal dependencies\n */\n\n\n/**\n * Appends arguments as querystring to the provided URL. If the URL already\n * includes query arguments, the arguments are merged with (and take precedent\n * over) the existing set.\n *\n * @param {string} [url=''] URL to which arguments should be appended. If omitted,\n * only the resulting querystring is returned.\n * @param {Object} [args] Query arguments to apply to URL.\n *\n * @example\n * ```js\n * const newURL = addQueryArgs( 'https://google.com', { q: 'test' } ); // https://google.com/?q=test\n * ```\n *\n * @return {string} URL with arguments applied.\n */\n\nfunction addQueryArgs() {\n let url = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n let args = arguments.length > 1 ? arguments[1] : undefined;\n\n // If no arguments are to be appended, return original URL.\n if (!args || !Object.keys(args).length) {\n return url;\n }\n\n let baseUrl = url; // Determine whether URL already had query arguments.\n\n const queryStringIndex = url.indexOf('?');\n\n if (queryStringIndex !== -1) {\n // Merge into existing query arguments.\n args = Object.assign((0,_get_query_args__WEBPACK_IMPORTED_MODULE_0__.getQueryArgs)(url), args); // Change working base URL to omit previous query arguments.\n\n baseUrl = baseUrl.substr(0, queryStringIndex);\n }\n\n return baseUrl + '?' + (0,_build_query_string__WEBPACK_IMPORTED_MODULE_1__.buildQueryString)(args);\n}\n//# sourceMappingURL=add-query-args.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/url/build-module/add-query-args.js?"); /***/ }), /***/ "./node_modules/@wordpress/url/build-module/build-query-string.js": /*!************************************************************************!*\ !*** ./node_modules/@wordpress/url/build-module/build-query-string.js ***! \************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"buildQueryString\": function() { return /* binding */ buildQueryString; }\n/* harmony export */ });\n/**\n * Generates URL-encoded query string using input query data.\n *\n * It is intended to behave equivalent as PHP's `http_build_query`, configured\n * with encoding type PHP_QUERY_RFC3986 (spaces as `%20`).\n *\n * @example\n * ```js\n * const queryString = buildQueryString( {\n * simple: 'is ok',\n * arrays: [ 'are', 'fine', 'too' ],\n * objects: {\n * evenNested: {\n * ok: 'yes',\n * },\n * },\n * } );\n * // \"simple=is%20ok&arrays%5B0%5D=are&arrays%5B1%5D=fine&arrays%5B2%5D=too&objects%5BevenNested%5D%5Bok%5D=yes\"\n * ```\n *\n * @param {Record} data Data to encode.\n *\n * @return {string} Query string.\n */\nfunction buildQueryString(data) {\n let string = '';\n const stack = Object.entries(data);\n let pair;\n\n while (pair = stack.shift()) {\n let [key, value] = pair; // Support building deeply nested data, from array or object values.\n\n const hasNestedData = Array.isArray(value) || value && value.constructor === Object;\n\n if (hasNestedData) {\n // Push array or object values onto the stack as composed of their\n // original key and nested index or key, retaining order by a\n // combination of Array#reverse and Array#unshift onto the stack.\n const valuePairs = Object.entries(value).reverse();\n\n for (const [member, memberValue] of valuePairs) {\n stack.unshift([`${key}[${member}]`, memberValue]);\n }\n } else if (value !== undefined) {\n // Null is treated as special case, equivalent to empty string.\n if (value === null) {\n value = '';\n }\n\n string += '&' + [key, value].map(encodeURIComponent).join('=');\n }\n } // Loop will concatenate with leading `&`, but it's only expected for all\n // but the first query parameter. This strips the leading `&`, while still\n // accounting for the case that the string may in-fact be empty.\n\n\n return string.substr(1);\n}\n//# sourceMappingURL=build-query-string.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/url/build-module/build-query-string.js?"); /***/ }), /***/ "./node_modules/@wordpress/url/build-module/get-query-arg.js": /*!*******************************************************************!*\ !*** ./node_modules/@wordpress/url/build-module/get-query-arg.js ***! \*******************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"getQueryArg\": function() { return /* binding */ getQueryArg; }\n/* harmony export */ });\n/* harmony import */ var _get_query_args__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./get-query-args */ \"./node_modules/@wordpress/url/build-module/get-query-args.js\");\n/**\n * Internal dependencies\n */\n\n/**\n * @typedef {{[key: string]: QueryArgParsed}} QueryArgObject\n */\n\n/**\n * @typedef {string|string[]|QueryArgObject} QueryArgParsed\n */\n\n/**\n * Returns a single query argument of the url\n *\n * @param {string} url URL.\n * @param {string} arg Query arg name.\n *\n * @example\n * ```js\n * const foo = getQueryArg( 'https://wordpress.org?foo=bar&bar=baz', 'foo' ); // bar\n * ```\n *\n * @return {QueryArgParsed|void} Query arg value.\n */\n\nfunction getQueryArg(url, arg) {\n return (0,_get_query_args__WEBPACK_IMPORTED_MODULE_0__.getQueryArgs)(url)[arg];\n}\n//# sourceMappingURL=get-query-arg.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/url/build-module/get-query-arg.js?"); /***/ }), /***/ "./node_modules/@wordpress/url/build-module/get-query-args.js": /*!********************************************************************!*\ !*** ./node_modules/@wordpress/url/build-module/get-query-args.js ***! \********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"getQueryArgs\": function() { return /* binding */ getQueryArgs; }\n/* harmony export */ });\n/* harmony import */ var _get_query_string__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./get-query-string */ \"./node_modules/@wordpress/url/build-module/get-query-string.js\");\n/**\n * Internal dependencies\n */\n\n/** @typedef {import('./get-query-arg').QueryArgParsed} QueryArgParsed */\n\n/**\n * @typedef {Record} QueryArgs\n */\n\n/**\n * Sets a value in object deeply by a given array of path segments. Mutates the\n * object reference.\n *\n * @param {Record} object Object in which to assign.\n * @param {string[]} path Path segment at which to set value.\n * @param {*} value Value to set.\n */\n\nfunction setPath(object, path, value) {\n const length = path.length;\n const lastIndex = length - 1;\n\n for (let i = 0; i < length; i++) {\n let key = path[i];\n\n if (!key && Array.isArray(object)) {\n // If key is empty string and next value is array, derive key from\n // the current length of the array.\n key = object.length.toString();\n }\n\n key = ['__proto__', 'constructor', 'prototype'].includes(key) ? key.toUpperCase() : key; // If the next key in the path is numeric (or empty string), it will be\n // created as an array. Otherwise, it will be created as an object.\n\n const isNextKeyArrayIndex = !isNaN(Number(path[i + 1]));\n object[key] = i === lastIndex ? // If at end of path, assign the intended value.\n value : // Otherwise, advance to the next object in the path, creating\n // it if it does not yet exist.\n object[key] || (isNextKeyArrayIndex ? [] : {});\n\n if (Array.isArray(object[key]) && !isNextKeyArrayIndex) {\n // If we current key is non-numeric, but the next value is an\n // array, coerce the value to an object.\n object[key] = { ...object[key]\n };\n } // Update working reference object to the next in the path.\n\n\n object = object[key];\n }\n}\n/**\n * Returns an object of query arguments of the given URL. If the given URL is\n * invalid or has no querystring, an empty object is returned.\n *\n * @param {string} url URL.\n *\n * @example\n * ```js\n * const foo = getQueryArgs( 'https://wordpress.org?foo=bar&bar=baz' );\n * // { \"foo\": \"bar\", \"bar\": \"baz\" }\n * ```\n *\n * @return {QueryArgs} Query args object.\n */\n\n\nfunction getQueryArgs(url) {\n return ((0,_get_query_string__WEBPACK_IMPORTED_MODULE_0__.getQueryString)(url) || '' // Normalize space encoding, accounting for PHP URL encoding\n // corresponding to `application/x-www-form-urlencoded`.\n //\n // See: https://tools.ietf.org/html/rfc1866#section-8.2.1\n ).replace(/\\+/g, '%20').split('&').reduce((accumulator, keyValue) => {\n const [key, value = ''] = keyValue.split('=') // Filtering avoids decoding as `undefined` for value, where\n // default is restored in destructuring assignment.\n .filter(Boolean).map(decodeURIComponent);\n\n if (key) {\n const segments = key.replace(/\\]/g, '').split('[');\n setPath(accumulator, segments, value);\n }\n\n return accumulator;\n }, Object.create(null));\n}\n//# sourceMappingURL=get-query-args.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/url/build-module/get-query-args.js?"); /***/ }), /***/ "./node_modules/@wordpress/url/build-module/get-query-string.js": /*!**********************************************************************!*\ !*** ./node_modules/@wordpress/url/build-module/get-query-string.js ***! \**********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"getQueryString\": function() { return /* binding */ getQueryString; }\n/* harmony export */ });\n/**\n * Returns the query string part of the URL.\n *\n * @param {string} url The full URL.\n *\n * @example\n * ```js\n * const queryString = getQueryString( 'http://localhost:8080/this/is/a/test?query=true#fragment' ); // 'query=true'\n * ```\n *\n * @return {string|void} The query string part of the URL.\n */\nfunction getQueryString(url) {\n let query;\n\n try {\n query = new URL(url, 'http://example.com').search.substring(1);\n } catch (error) {}\n\n if (query) {\n return query;\n }\n}\n//# sourceMappingURL=get-query-string.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/url/build-module/get-query-string.js?"); /***/ }), /***/ "./node_modules/@wordpress/url/build-module/has-query-arg.js": /*!*******************************************************************!*\ !*** ./node_modules/@wordpress/url/build-module/has-query-arg.js ***! \*******************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"hasQueryArg\": function() { return /* binding */ hasQueryArg; }\n/* harmony export */ });\n/* harmony import */ var _get_query_arg__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./get-query-arg */ \"./node_modules/@wordpress/url/build-module/get-query-arg.js\");\n/**\n * Internal dependencies\n */\n\n/**\n * Determines whether the URL contains a given query arg.\n *\n * @param {string} url URL.\n * @param {string} arg Query arg name.\n *\n * @example\n * ```js\n * const hasBar = hasQueryArg( 'https://wordpress.org?foo=bar&bar=baz', 'bar' ); // true\n * ```\n *\n * @return {boolean} Whether or not the URL contains the query arg.\n */\n\nfunction hasQueryArg(url, arg) {\n return (0,_get_query_arg__WEBPACK_IMPORTED_MODULE_0__.getQueryArg)(url, arg) !== undefined;\n}\n//# sourceMappingURL=has-query-arg.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/url/build-module/has-query-arg.js?"); /***/ }), /***/ "./node_modules/@wordpress/url/build-module/normalize-path.js": /*!********************************************************************!*\ !*** ./node_modules/@wordpress/url/build-module/normalize-path.js ***! \********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"normalizePath\": function() { return /* binding */ normalizePath; }\n/* harmony export */ });\n/**\n * Given a path, returns a normalized path where equal query parameter values\n * will be treated as identical, regardless of order they appear in the original\n * text.\n *\n * @param {string} path Original path.\n *\n * @return {string} Normalized path.\n */\nfunction normalizePath(path) {\n const splitted = path.split('?');\n const query = splitted[1];\n const base = splitted[0];\n\n if (!query) {\n return base;\n } // 'b=1%2C2&c=2&a=5'\n\n\n return base + '?' + query // [ 'b=1%2C2', 'c=2', 'a=5' ]\n .split('&') // [ [ 'b, '1%2C2' ], [ 'c', '2' ], [ 'a', '5' ] ]\n .map(entry => entry.split('=')) // [ [ 'b', '1,2' ], [ 'c', '2' ], [ 'a', '5' ] ]\n .map(pair => pair.map(decodeURIComponent)) // [ [ 'a', '5' ], [ 'b, '1,2' ], [ 'c', '2' ] ]\n .sort((a, b) => a[0].localeCompare(b[0])) // [ [ 'a', '5' ], [ 'b, '1%2C2' ], [ 'c', '2' ] ]\n .map(pair => pair.map(encodeURIComponent)) // [ 'a=5', 'b=1%2C2', 'c=2' ]\n .map(pair => pair.join('=')) // 'a=5&b=1%2C2&c=2'\n .join('&');\n}\n//# sourceMappingURL=normalize-path.js.map\n\n//# sourceURL=webpack://starter-theme/./node_modules/@wordpress/url/build-module/normalize-path.js?"); /***/ }), /***/ "./assets/js-new/react/QuestionsForm.jsx": /*!***********************************************!*\ !*** ./assets/js-new/react/QuestionsForm.jsx ***! \***********************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_dom_client__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom/client */ \"./node_modules/react-dom/client.js\");\n/* harmony import */ var html_react_parser__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! html-react-parser */ \"./node_modules/html-react-parser/index.mjs\");\n/* harmony import */ var _wordpress_api_fetch__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/api-fetch */ \"./node_modules/@wordpress/api-fetch/build-module/index.js\");\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n\n\n\n\nvar QuestionsForm = function QuestionsForm() {\n var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),\n _useState2 = _slicedToArray(_useState, 2),\n status = _useState2[0],\n setStatus = _useState2[1];\n\n var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),\n _useState4 = _slicedToArray(_useState3, 2),\n errorClass = _useState4[0],\n setErrorClass = _useState4[1];\n\n var submitForm = function submitForm() {\n setStatus('loading...');\n (0,_wordpress_api_fetch__WEBPACK_IMPORTED_MODULE_3__[\"default\"])({\n path: \"https://questions.thelifecoachschool.com/wp-json/gf/v2/forms/\".concat(form.id, \"/submissions\"),\n method: 'POST',\n data: {\n \"input_3\": document.getElementById('questionTitle').value,\n \"input_2\": document.getElementById('askQuestions').value,\n \"input_5\": form.author,\n \"input_6\": form.email\n }\n }).then(function (data) {\n if (data[\"is_valid\"] === true) {\n setStatus(data.confirmation_message);\n setErrorClass('');\n }\n }).catch(function (error) {\n if (error[\"is_valid\"] === false) {\n setErrorClass(\"Question Title can't be empty\");\n setStatus('');\n } else {\n console.log(error);\n setErrorClass('Something went wrong. Please try again later.');\n setStatus('');\n }\n });\n };\n\n var QuestionForm = function QuestionForm() {\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"h2\", {\n style: {\n marginBottom: '15px'\n }\n }, \"Question Title\", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"span\", {\n style: {\n color: '#cb0000',\n fontSize: '32px',\n verticalAlign: 'top'\n }\n }, \"*\")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"small\", {\n style: {\n marginBottom: '15px',\n display: 'block',\n letterSpacing: '.1em',\n fontSize: '.75rem'\n }\n }, \"PLEASE ENTER A TITLE FOR YOUR QUESTION\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"textarea\", {\n rows: \"7\",\n cols: \"50\",\n className: \"formVal\",\n name: \"first_name\",\n id: \"questionTitle\"\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"h2\", {\n style: {\n marginBottom: '15px',\n marginTop: '30px'\n }\n }, \"Ask Question\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"small\", {\n style: {\n marginBottom: '15px',\n display: 'block',\n letterSpacing: '.1em',\n fontSize: '.75rem'\n }\n }, \"PLEASE TAKE YOUR TIME AND WRITE AS MUCH OR AS LITTLE AS YOU WOULD LIKE ABOUT YOUR QUESTION. BE SPECIFIC.\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"textarea\", {\n rows: \"7\",\n cols: \"50\",\n className: \"formVal\",\n name: \"last_name\",\n id: \"askQuestions\",\n style: {\n marginBottom: '10px'\n }\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"p\", {\n style: {\n color: 'red'\n }\n }, errorClass ? errorClass : ''), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"input\", {\n type: \"submit\",\n className: \"gform_button button\",\n value: \"SUBMIT\",\n id: \"test\",\n onClick: function onClick() {\n return submitForm();\n }\n }));\n };\n\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {}, [status]);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {}, []);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, !status ? QuestionForm() : (0,html_react_parser__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(status));\n};\n\nvar rootElement = document.getElementById('questionForm');\nvar root = (0,react_dom_client__WEBPACK_IMPORTED_MODULE_1__.createRoot)(rootElement);\nroot.render( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(QuestionsForm, null));\n\n//# sourceURL=webpack://starter-theme/./assets/js-new/react/QuestionsForm.jsx?"); /***/ }), /***/ "./node_modules/domelementtype/lib/index.js": /*!**************************************************!*\ !*** ./node_modules/domelementtype/lib/index.js ***! \**************************************************/ /***/ (function(__unused_webpack_module, exports) { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.Doctype = exports.CDATA = exports.Tag = exports.Style = exports.Script = exports.Comment = exports.Directive = exports.Text = exports.Root = exports.isTag = exports.ElementType = void 0;\n/** Types of elements found in htmlparser2's DOM */\nvar ElementType;\n(function (ElementType) {\n /** Type for the root element of a document */\n ElementType[\"Root\"] = \"root\";\n /** Type for Text */\n ElementType[\"Text\"] = \"text\";\n /** Type for */\n ElementType[\"Directive\"] = \"directive\";\n /** Type for */\n ElementType[\"Comment\"] = \"comment\";\n /** Type for