(window["__googlesitekit_webpackJsonp"] = window["__googlesitekit_webpackJsonp"] || []).push([["googlesitekit-datastore-forms"],{

/***/ "./js/components/ChangeArrow.js":
/*!**************************************!*\
  !*** ./js/components/ChangeArrow.js ***!
  \**************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(React) {/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ \"../node_modules/@wordpress/element/build-module/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ \"../node_modules/prop-types/index.js\");\n/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! classnames */ \"../node_modules/classnames/index.js\");\n/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);\n\n/**\n * External dependencies\n */\n\n\nfunction ChangeArrow(_ref) {\n  var direction = _ref.direction,\n    invertColor = _ref.invertColor,\n    width = _ref.width,\n    height = _ref.height;\n  return /*#__PURE__*/React.createElement(\"svg\", {\n    className: classnames__WEBPACK_IMPORTED_MODULE_2___default()('googlesitekit-change-arrow', \"googlesitekit-change-arrow--\".concat(direction), {\n      'googlesitekit-change-arrow--inverted-color': invertColor\n    }),\n    width: width,\n    height: height,\n    viewBox: \"0 0 10 10\",\n    fill: \"none\",\n    xmlns: \"http://www.w3.org/2000/svg\"\n  }, /*#__PURE__*/React.createElement(\"path\", {\n    d: \"M5.625 10L5.625 2.375L9.125 5.875L10 5L5 -1.76555e-07L-2.7055e-07 5L0.875 5.875L4.375 2.375L4.375 10L5.625 10Z\",\n    fill: \"currentColor\"\n  }));\n}\nChangeArrow.propTypes = {\n  direction: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.string,\n  invertColor: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.bool,\n  width: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number,\n  height: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.number\n};\nChangeArrow.defaultProps = {\n  direction: 'up',\n  invertColor: false,\n  width: 9,\n  height: 9\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = (ChangeArrow);\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! @wordpress/element */ \"../node_modules/@wordpress/element/build-module/index.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy9jb21wb25lbnRzL0NoYW5nZUFycm93LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vanMvY29tcG9uZW50cy9DaGFuZ2VBcnJvdy5qcz9iNjAwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcblxuZnVuY3Rpb24gQ2hhbmdlQXJyb3coIHsgZGlyZWN0aW9uLCBpbnZlcnRDb2xvciwgd2lkdGgsIGhlaWdodCB9ICkge1xuXHRyZXR1cm4gKFxuXHRcdDxzdmdcblx0XHRcdGNsYXNzTmFtZT17IGNsYXNzbmFtZXMoXG5cdFx0XHRcdCdnb29nbGVzaXRla2l0LWNoYW5nZS1hcnJvdycsXG5cdFx0XHRcdGBnb29nbGVzaXRla2l0LWNoYW5nZS1hcnJvdy0tJHsgZGlyZWN0aW9uIH1gLFxuXHRcdFx0XHR7ICdnb29nbGVzaXRla2l0LWNoYW5nZS1hcnJvdy0taW52ZXJ0ZWQtY29sb3InOiBpbnZlcnRDb2xvciB9XG5cdFx0XHQpIH1cblx0XHRcdHdpZHRoPXsgd2lkdGggfVxuXHRcdFx0aGVpZ2h0PXsgaGVpZ2h0IH1cblx0XHRcdHZpZXdCb3g9XCIwIDAgMTAgMTBcIlxuXHRcdFx0ZmlsbD1cIm5vbmVcIlxuXHRcdFx0eG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG5cdFx0PlxuXHRcdFx0PHBhdGhcblx0XHRcdFx0ZD1cIk01LjYyNSAxMEw1LjYyNSAyLjM3NUw5LjEyNSA1Ljg3NUwxMCA1TDUgLTEuNzY1NTVlLTA3TC0yLjcwNTVlLTA3IDVMMC44NzUgNS44NzVMNC4zNzUgMi4zNzVMNC4zNzUgMTBMNS42MjUgMTBaXCJcblx0XHRcdFx0ZmlsbD1cImN1cnJlbnRDb2xvclwiXG5cdFx0XHQvPlxuXHRcdDwvc3ZnPlxuXHQpO1xufVxuXG5DaGFuZ2VBcnJvdy5wcm9wVHlwZXMgPSB7XG5cdGRpcmVjdGlvbjogUHJvcFR5cGVzLnN0cmluZyxcblx0aW52ZXJ0Q29sb3I6IFByb3BUeXBlcy5ib29sLFxuXHR3aWR0aDogUHJvcFR5cGVzLm51bWJlcixcblx0aGVpZ2h0OiBQcm9wVHlwZXMubnVtYmVyLFxufTtcblxuQ2hhbmdlQXJyb3cuZGVmYXVsdFByb3BzID0ge1xuXHRkaXJlY3Rpb246ICd1cCcsXG5cdGludmVydENvbG9yOiBmYWxzZSxcblx0d2lkdGg6IDksXG5cdGhlaWdodDogOSxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IENoYW5nZUFycm93O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUVBO0FBR0E7QUFBQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUdBO0FBQ0E7QUFBQTtBQUlBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./js/components/ChangeArrow.js\n");

/***/ }),

/***/ "./js/features/index.js":
/*!******************************!*\
  !*** ./js/features/index.js ***!
  \******************************/
/*! exports provided: enabledFeatures, isFeatureEnabled */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"enabledFeatures\", function() { return enabledFeatures; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isFeatureEnabled\", function() { return isFeatureEnabled; });\nvar _global, _global$_googlesiteki;\n/**\n * Feature flags.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nvar enabledFeatures = new Set(((_global = global) === null || _global === void 0 ? void 0 : (_global$_googlesiteki = _global._googlesitekitBaseData) === null || _global$_googlesiteki === void 0 ? void 0 : _global$_googlesiteki.enabledFeatures) || []);\n\n/**\n * Returns true if a feature is enabled; false otherwise.\n *\n * @since 1.25.0\n * @since 1.33.0 Changed _enabledFeatures argument to be a `Set` instead of `Array`.\n *\n * @param {string} feature            The name of the feature to check.\n * @param {Set}    [_enabledFeatures] Optional. The set of enabled features. Uses `enabledFeatures` set by the server in a global JS variable, by default.\n * @return {boolean} `true` if a feature is enabled; `false` otherwise.\n */\nfunction isFeatureEnabled(feature) {\n  var _enabledFeatures = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : enabledFeatures;\n  if (!(_enabledFeatures instanceof Set)) {\n    return false;\n  }\n  return _enabledFeatures.has(feature);\n}\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../node_modules/webpack/buildin/global.js */ \"../node_modules/webpack/buildin/global.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy9mZWF0dXJlcy9pbmRleC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2ZlYXR1cmVzL2luZGV4LmpzPzgyM2MiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBGZWF0dXJlIGZsYWdzLlxuICpcbiAqIFNpdGUgS2l0IGJ5IEdvb2dsZSwgQ29weXJpZ2h0IDIwMjEgR29vZ2xlIExMQ1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuZXhwb3J0IGNvbnN0IGVuYWJsZWRGZWF0dXJlcyA9IG5ldyBTZXQoXG5cdGdsb2JhbD8uX2dvb2dsZXNpdGVraXRCYXNlRGF0YT8uZW5hYmxlZEZlYXR1cmVzIHx8IFtdXG4pO1xuXG4vKipcbiAqIFJldHVybnMgdHJ1ZSBpZiBhIGZlYXR1cmUgaXMgZW5hYmxlZDsgZmFsc2Ugb3RoZXJ3aXNlLlxuICpcbiAqIEBzaW5jZSAxLjI1LjBcbiAqIEBzaW5jZSAxLjMzLjAgQ2hhbmdlZCBfZW5hYmxlZEZlYXR1cmVzIGFyZ3VtZW50IHRvIGJlIGEgYFNldGAgaW5zdGVhZCBvZiBgQXJyYXlgLlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBmZWF0dXJlICAgICAgICAgICAgVGhlIG5hbWUgb2YgdGhlIGZlYXR1cmUgdG8gY2hlY2suXG4gKiBAcGFyYW0ge1NldH0gICAgW19lbmFibGVkRmVhdHVyZXNdIE9wdGlvbmFsLiBUaGUgc2V0IG9mIGVuYWJsZWQgZmVhdHVyZXMuIFVzZXMgYGVuYWJsZWRGZWF0dXJlc2Agc2V0IGJ5IHRoZSBzZXJ2ZXIgaW4gYSBnbG9iYWwgSlMgdmFyaWFibGUsIGJ5IGRlZmF1bHQuXG4gKiBAcmV0dXJuIHtib29sZWFufSBgdHJ1ZWAgaWYgYSBmZWF0dXJlIGlzIGVuYWJsZWQ7IGBmYWxzZWAgb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNGZWF0dXJlRW5hYmxlZChcblx0ZmVhdHVyZSxcblx0X2VuYWJsZWRGZWF0dXJlcyA9IGVuYWJsZWRGZWF0dXJlc1xuKSB7XG5cdGlmICggISAoIF9lbmFibGVkRmVhdHVyZXMgaW5zdGFuY2VvZiBTZXQgKSApIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH1cblx0cmV0dXJuIF9lbmFibGVkRmVhdHVyZXMuaGFzKCBmZWF0dXJlICk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./js/features/index.js\n");

/***/ }),

/***/ "./js/googlesitekit-datastore-forms.js":
/*!*********************************************!*\
  !*** ./js/googlesitekit-datastore-forms.js ***!
  \*********************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! googlesitekit-data */ \"googlesitekit-data\");\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(googlesitekit_data__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _googlesitekit_datastore_forms__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./googlesitekit/datastore/forms */ \"./js/googlesitekit/datastore/forms/index.js\");\n/**\n * Entrypoint for the `core/forms` data store.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Internal dependencies\n */\n\n\nObject(_googlesitekit_datastore_forms__WEBPACK_IMPORTED_MODULE_1__[\"registerStore\"])(googlesitekit_data__WEBPACK_IMPORTED_MODULE_0___default.a);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy9nb29nbGVzaXRla2l0LWRhdGFzdG9yZS1mb3Jtcy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2dvb2dsZXNpdGVraXQtZGF0YXN0b3JlLWZvcm1zLmpzPzI3OTciXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFbnRyeXBvaW50IGZvciB0aGUgYGNvcmUvZm9ybXNgIGRhdGEgc3RvcmUuXG4gKlxuICogU2l0ZSBLaXQgYnkgR29vZ2xlLCBDb3B5cmlnaHQgMjAyMSBHb29nbGUgTExDXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgRGF0YSBmcm9tICdnb29nbGVzaXRla2l0LWRhdGEnO1xuaW1wb3J0IHsgcmVnaXN0ZXJTdG9yZSB9IGZyb20gJy4vZ29vZ2xlc2l0ZWtpdC9kYXRhc3RvcmUvZm9ybXMnO1xuXG5yZWdpc3RlclN0b3JlKCBEYXRhICk7XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./js/googlesitekit-datastore-forms.js\n");

/***/ }),

/***/ "./js/googlesitekit/api/cache.js":
/*!***************************************!*\
  !*** ./js/googlesitekit/api/cache.js ***!
  \***************************************/
/*! exports provided: STORAGE_KEY_PREFIX_ROOT, STORAGE_KEY_PREFIX, setSelectedStorageBackend, setStorageOrder, resetDefaultStorageOrder, isStorageAvailable, getStorage, getItem, setItem, deleteItem, getKeys, clearCache */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"STORAGE_KEY_PREFIX_ROOT\", function() { return STORAGE_KEY_PREFIX_ROOT; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"STORAGE_KEY_PREFIX\", function() { return STORAGE_KEY_PREFIX; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setSelectedStorageBackend\", function() { return setSelectedStorageBackend; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setStorageOrder\", function() { return setStorageOrder; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resetDefaultStorageOrder\", function() { return resetDefaultStorageOrder; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isStorageAvailable\", function() { return isStorageAvailable; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getStorage\", function() { return getStorage; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getItem\", function() { return getItem; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setItem\", function() { return setItem; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"deleteItem\", function() { return deleteItem; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getKeys\", function() { return getKeys; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"clearCache\", function() { return clearCache; });\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"../node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"../node_modules/@babel/runtime/helpers/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"../node_modules/@babel/runtime/helpers/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _js_util__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/js/util */ \"./js/util/index.js\");\n\n\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\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); }\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/**\n * Caching functions and cache management for API requests.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Internal dependencies\n */\n\n\n/**\n * Prefix used for all Site Kit keys.\n *\n * Anything not using this prefix should not be touched by this library.\n *\n * @since 1.96.0\n * @private\n */\nvar STORAGE_KEY_PREFIX_ROOT = 'googlesitekit_';\n\n/**\n * Prefix used for all Site Kit keys for the current Site Kit version.\n *\n * Anything not using this key should not be touched by this library.\n *\n * @since 1.5.0\n * @since 1.92.0 Updated to include a user, session, and blog-specific hash.\n * @since 1.96.0 Updated to make use of the new STORAGE_KEY_PREFIX_ROOT constant.\n * @private\n */\nvar STORAGE_KEY_PREFIX = \"\".concat(STORAGE_KEY_PREFIX_ROOT).concat(\"1.161.0\", \"_\").concat(global._googlesitekitBaseData.storagePrefix, \"_\");\nvar defaultOrder = ['sessionStorage', 'localStorage'];\nvar storageBackend;\nvar storageOrder = [].concat(defaultOrder);\n\n/**\n * Overrides the storage backend.\n *\n * Largely used for tests. Should not be used directly.\n *\n * @since 1.5.0\n * @private\n *\n * @param {*} backend Backend to set for the cache.\n */\nfunction setSelectedStorageBackend(backend) {\n  storageBackend = backend;\n}\n\n/**\n * Overrides the priority of storage mechanisms.\n *\n * Largely used for tests. Implicitly resets the selected storage backend,\n * causing `_getStorage` to re-run its checks for the best available\n * storage backend.\n *\n * @since 1.5.0\n * @private\n *\n * @param {Array} order Ordered array of storage backends to use.\n */\nfunction setStorageOrder(order) {\n  storageOrder = _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_2___default()(order);\n  setSelectedStorageBackend(undefined);\n}\n\n/**\n * Resets the storage mechanism order.\n *\n * Largely used for tests. Implicitly resets the selected storage backend,\n * causing `_getStorage` to re-run its checks for the best available\n * storage backend.\n *\n * @since 1.5.0\n * @private\n */\nfunction resetDefaultStorageOrder() {\n  storageOrder = [].concat(defaultOrder);\n  setSelectedStorageBackend(undefined);\n}\n\n/**\n * Detects whether browser storage is both supported and available.\n *\n * @since 1.5.0\n * @private\n *\n * @param {string} type Browser storage to test. Should be one of `localStorage` or `sessionStorage`.\n * @return {boolean} True if the given storage is available, false otherwise.\n */\n// eslint-disable-next-line require-await\nfunction isStorageAvailable(_x) {\n  return _isStorageAvailable.apply(this, arguments);\n}\n\n/**\n * Gets the storage object to use.\n *\n * @since 1.5.0\n * @private\n *\n * @return {Storage|null} A storage mechanism (`localStorage` or `sessionStorage`) if available; otherwise returns `null`.\n */\nfunction _isStorageAvailable() {\n  _isStorageAvailable = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee(type) {\n    var storage, x;\n    return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee$(_context) {\n      while (1) {\n        switch (_context.prev = _context.next) {\n          case 0:\n            storage = global[type];\n            if (storage) {\n              _context.next = 3;\n              break;\n            }\n            return _context.abrupt(\"return\", false);\n          case 3:\n            _context.prev = 3;\n            x = '__storage_test__';\n            storage.setItem(x, x);\n            storage.removeItem(x);\n            return _context.abrupt(\"return\", true);\n          case 10:\n            _context.prev = 10;\n            _context.t0 = _context[\"catch\"](3);\n            return _context.abrupt(\"return\", _context.t0 instanceof DOMException && (\n            // everything except Firefox\n            22 === _context.t0.code ||\n            // Firefox\n            1014 === _context.t0.code ||\n            // test name field too, because code might not be present\n            // everything except Firefox\n            'QuotaExceededError' === _context.t0.name ||\n            // Firefox\n            'NS_ERROR_DOM_QUOTA_REACHED' === _context.t0.name) &&\n            // acknowledge QuotaExceededError only if there's something already stored\n            0 !== storage.length);\n          case 13:\n          case \"end\":\n            return _context.stop();\n        }\n      }\n    }, _callee, null, [[3, 10]]);\n  }));\n  return _isStorageAvailable.apply(this, arguments);\n}\nfunction getStorage() {\n  return _getStorage.apply(this, arguments);\n}\n\n/**\n * Gets cached data.\n *\n * Get cached data from the persistent storage cache.\n *\n * @since 1.5.0\n *\n * @param {string} key Name of cache key.\n * @return {Promise} A promise returned, containing an object with the cached value (if found) and whether or not there was a cache hit.\n */\nfunction _getStorage() {\n  _getStorage = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee2() {\n    var _iterator, _step, backend;\n    return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee2$(_context2) {\n      while (1) {\n        switch (_context2.prev = _context2.next) {\n          case 0:\n            if (!(storageBackend !== undefined)) {\n              _context2.next = 2;\n              break;\n            }\n            return _context2.abrupt(\"return\", storageBackend);\n          case 2:\n            // Only run the logic to determine the storage object once.\n            _iterator = _createForOfIteratorHelper(storageOrder);\n            _context2.prev = 3;\n            _iterator.s();\n          case 5:\n            if ((_step = _iterator.n()).done) {\n              _context2.next = 15;\n              break;\n            }\n            backend = _step.value;\n            if (!storageBackend) {\n              _context2.next = 9;\n              break;\n            }\n            return _context2.abrupt(\"continue\", 13);\n          case 9:\n            _context2.next = 11;\n            return isStorageAvailable(backend);\n          case 11:\n            if (!_context2.sent) {\n              _context2.next = 13;\n              break;\n            }\n            storageBackend = global[backend];\n          case 13:\n            _context2.next = 5;\n            break;\n          case 15:\n            _context2.next = 20;\n            break;\n          case 17:\n            _context2.prev = 17;\n            _context2.t0 = _context2[\"catch\"](3);\n            _iterator.e(_context2.t0);\n          case 20:\n            _context2.prev = 20;\n            _iterator.f();\n            return _context2.finish(20);\n          case 23:\n            if (storageBackend === undefined) {\n              storageBackend = null;\n            }\n            return _context2.abrupt(\"return\", storageBackend);\n          case 25:\n          case \"end\":\n            return _context2.stop();\n        }\n      }\n    }, _callee2, null, [[3, 17, 20, 23]]);\n  }));\n  return _getStorage.apply(this, arguments);\n}\nfunction getItem(_x2) {\n  return _getItem.apply(this, arguments);\n}\n\n/**\n * Sets cached data using a key.\n *\n * Save data to the relevant local storage mechanism, if available.\n * By default, data is saved with a one hour (60 minute) TTL.\n *\n * @since 1.5.0\n *\n * @param {string}  key              Name of cache key.\n * @param {*}       value            Value to store in the cache.\n * @param {Object}  args             Optional object containing ttl, timestamp and isError keys.\n * @param {number}  [args.ttl]       Optional. Validity of the cached item in seconds.\n * @param {number}  [args.timestamp] Optional. Timestamp when the cached item was created.\n * @param {boolean} [args.isError]   Optional. Whether the cached item is an error.\n * @return {Promise} A promise: resolves to `true` if the value was saved; `false` if not (usually because no storage method was available).\n */\nfunction _getItem() {\n  _getItem = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3(key) {\n    var storage, cachedData, parsedData, timestamp, ttl, value, isError;\n    return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) {\n      while (1) {\n        switch (_context3.prev = _context3.next) {\n          case 0:\n            _context3.next = 2;\n            return getStorage();\n          case 2:\n            storage = _context3.sent;\n            if (!storage) {\n              _context3.next = 10;\n              break;\n            }\n            cachedData = storage.getItem(\"\".concat(STORAGE_KEY_PREFIX).concat(key));\n            if (!cachedData) {\n              _context3.next = 10;\n              break;\n            }\n            parsedData = JSON.parse(cachedData);\n            timestamp = parsedData.timestamp, ttl = parsedData.ttl, value = parsedData.value, isError = parsedData.isError; // Ensure a timestamp is found, otherwise this isn't a valid cache hit.\n            // (We don't check for a truthy `value`, because it could be legitimately\n            // false-y if `0`, `null`, etc.)\n            if (!(timestamp && (!ttl ||\n            // Ensure the cached data isn't too old.\n            // The cache dates shouldn't rely on reference\n            // dates for cache expiration. This is a case\n            // where we actually want to rely on\n            // the _actual_ date/time the data was set.\n            Math.round(Date.now() / 1000) - timestamp < ttl) // eslint-disable-line sitekit/no-direct-date\n            )) {\n              _context3.next = 10;\n              break;\n            }\n            return _context3.abrupt(\"return\", {\n              cacheHit: true,\n              value: value,\n              isError: isError\n            });\n          case 10:\n            return _context3.abrupt(\"return\", {\n              cacheHit: false,\n              value: undefined\n            });\n          case 11:\n          case \"end\":\n            return _context3.stop();\n        }\n      }\n    }, _callee3);\n  }));\n  return _getItem.apply(this, arguments);\n}\nfunction setItem(_x3, _x4) {\n  return _setItem.apply(this, arguments);\n}\n\n/**\n * Removes cached data by key.\n *\n * Remove one piece of cached data from the persistent storage cache, by key.\n *\n * @since 1.5.0\n *\n * @param {string} key Name of cache key.\n * @return {Promise} A promise: resolves to `true` if the value was deleted; `false` if not (usually because no storage method was available).\n */\nfunction _setItem() {\n  _setItem = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee4(key, value) {\n    var _ref,\n      _ref$ttl,\n      ttl,\n      _ref$timestamp,\n      timestamp,\n      _ref$isError,\n      isError,\n      storage,\n      _args4 = arguments;\n    return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee4$(_context4) {\n      while (1) {\n        switch (_context4.prev = _context4.next) {\n          case 0:\n            _ref = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : {}, _ref$ttl = _ref.ttl, ttl = _ref$ttl === void 0 ? _js_util__WEBPACK_IMPORTED_MODULE_3__[\"HOUR_IN_SECONDS\"] : _ref$ttl, _ref$timestamp = _ref.timestamp, timestamp = _ref$timestamp === void 0 ? Math.round(Date.now() / 1000) : _ref$timestamp, _ref$isError = _ref.isError, isError = _ref$isError === void 0 ? false : _ref$isError;\n            _context4.next = 3;\n            return getStorage();\n          case 3:\n            storage = _context4.sent;\n            if (!storage) {\n              _context4.next = 14;\n              break;\n            }\n            _context4.prev = 5;\n            storage.setItem(\"\".concat(STORAGE_KEY_PREFIX).concat(key), JSON.stringify({\n              timestamp: timestamp,\n              ttl: ttl,\n              value: value,\n              isError: isError\n            }));\n            return _context4.abrupt(\"return\", true);\n          case 10:\n            _context4.prev = 10;\n            _context4.t0 = _context4[\"catch\"](5);\n            global.console.warn('Encountered an unexpected storage error:', _context4.t0);\n            return _context4.abrupt(\"return\", false);\n          case 14:\n            return _context4.abrupt(\"return\", false);\n          case 15:\n          case \"end\":\n            return _context4.stop();\n        }\n      }\n    }, _callee4, null, [[5, 10]]);\n  }));\n  return _setItem.apply(this, arguments);\n}\nfunction deleteItem(_x5) {\n  return _deleteItem.apply(this, arguments);\n}\n\n/**\n * Gets all cache keys created by Site Kit.\n *\n * @since 1.5.0\n *\n * @return {Promise} A promise: resolves to an array of all keys.\n */\nfunction _deleteItem() {\n  _deleteItem = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee5(key) {\n    var storage, fullKey;\n    return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee5$(_context5) {\n      while (1) {\n        switch (_context5.prev = _context5.next) {\n          case 0:\n            _context5.next = 2;\n            return getStorage();\n          case 2:\n            storage = _context5.sent;\n            if (!storage) {\n              _context5.next = 14;\n              break;\n            }\n            _context5.prev = 4;\n            fullKey = key.startsWith(STORAGE_KEY_PREFIX_ROOT) ? key : \"\".concat(STORAGE_KEY_PREFIX).concat(key);\n            storage.removeItem(fullKey);\n            return _context5.abrupt(\"return\", true);\n          case 10:\n            _context5.prev = 10;\n            _context5.t0 = _context5[\"catch\"](4);\n            global.console.warn('Encountered an unexpected storage error:', _context5.t0);\n            return _context5.abrupt(\"return\", false);\n          case 14:\n            return _context5.abrupt(\"return\", false);\n          case 15:\n          case \"end\":\n            return _context5.stop();\n        }\n      }\n    }, _callee5, null, [[4, 10]]);\n  }));\n  return _deleteItem.apply(this, arguments);\n}\nfunction getKeys() {\n  return _getKeys.apply(this, arguments);\n}\n\n/**\n * Removes the entire cache created by Site Kit.\n *\n * @since 1.5.0\n *\n * @return {Promise} A promise: resolves to `true` if the cache was cleared; `false` if there was an error.\n */\nfunction _getKeys() {\n  _getKeys = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee6() {\n    var storage, keys, i, itemKey;\n    return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee6$(_context6) {\n      while (1) {\n        switch (_context6.prev = _context6.next) {\n          case 0:\n            _context6.next = 2;\n            return getStorage();\n          case 2:\n            storage = _context6.sent;\n            if (!storage) {\n              _context6.next = 14;\n              break;\n            }\n            _context6.prev = 4;\n            keys = [];\n            for (i = 0; i < storage.length; i++) {\n              itemKey = storage.key(i);\n              if (itemKey.indexOf(STORAGE_KEY_PREFIX_ROOT) === 0) {\n                keys.push(itemKey);\n              }\n            }\n            return _context6.abrupt(\"return\", keys);\n          case 10:\n            _context6.prev = 10;\n            _context6.t0 = _context6[\"catch\"](4);\n            global.console.warn('Encountered an unexpected storage error:', _context6.t0);\n            return _context6.abrupt(\"return\", []);\n          case 14:\n            return _context6.abrupt(\"return\", []);\n          case 15:\n          case \"end\":\n            return _context6.stop();\n        }\n      }\n    }, _callee6, null, [[4, 10]]);\n  }));\n  return _getKeys.apply(this, arguments);\n}\nfunction clearCache() {\n  return _clearCache.apply(this, arguments);\n}\nfunction _clearCache() {\n  _clearCache = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default()(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee7() {\n    var storage, keys, _iterator2, _step2, key;\n    return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee7$(_context7) {\n      while (1) {\n        switch (_context7.prev = _context7.next) {\n          case 0:\n            _context7.next = 2;\n            return getStorage();\n          case 2:\n            storage = _context7.sent;\n            if (!storage) {\n              _context7.next = 25;\n              break;\n            }\n            _context7.next = 6;\n            return getKeys();\n          case 6:\n            keys = _context7.sent;\n            _iterator2 = _createForOfIteratorHelper(keys);\n            _context7.prev = 8;\n            _iterator2.s();\n          case 10:\n            if ((_step2 = _iterator2.n()).done) {\n              _context7.next = 16;\n              break;\n            }\n            key = _step2.value;\n            _context7.next = 14;\n            return deleteItem(key);\n          case 14:\n            _context7.next = 10;\n            break;\n          case 16:\n            _context7.next = 21;\n            break;\n          case 18:\n            _context7.prev = 18;\n            _context7.t0 = _context7[\"catch\"](8);\n            _iterator2.e(_context7.t0);\n          case 21:\n            _context7.prev = 21;\n            _iterator2.f();\n            return _context7.finish(21);\n          case 24:\n            return _context7.abrupt(\"return\", true);\n          case 25:\n            return _context7.abrupt(\"return\", false);\n          case 26:\n          case \"end\":\n            return _context7.stop();\n        }\n      }\n    }, _callee7, null, [[8, 18, 21, 24]]);\n  }));\n  return _clearCache.apply(this, arguments);\n}\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../node_modules/webpack/buildin/global.js */ \"../node_modules/webpack/buildin/global.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/googlesitekit/api/cache.js\n");

/***/ }),

/***/ "./js/googlesitekit/data/create-error-store.js":
/*!*****************************************************!*\
  !*** ./js/googlesitekit/data/create-error-store.js ***!
  \*****************************************************/
/*! exports provided: generateErrorKey, actions, createErrorStore */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"generateErrorKey\", function() { return generateErrorKey; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"actions\", function() { return actions; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createErrorStore\", function() { return createErrorStore; });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"../node_modules/@babel/runtime/helpers/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _wordpress_data__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/data */ \"../node_modules/@wordpress/data/build-module/index.js\");\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! invariant */ \"../node_modules/invariant/browser.js\");\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var md5__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! md5 */ \"../node_modules/md5/md5.js\");\n/* harmony import */ var md5__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(md5__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _js_util__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/js/util */ \"./js/util/index.js\");\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! googlesitekit-data */ \"googlesitekit-data\");\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(googlesitekit_data__WEBPACK_IMPORTED_MODULE_5__);\n\n/**\n * API function to create fetch store.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * WordPress dependencies\n */\n\n\n/**\n * External dependencies\n */\n\n\nvar RECEIVE_ERROR = 'RECEIVE_ERROR';\nvar CLEAR_ERROR = 'CLEAR_ERROR';\nvar CLEAR_ERRORS = 'CLEAR_ERRORS';\n\n/**\n * Internal dependencies\n */\n\n\nfunction generateErrorKey(baseName, args) {\n  if (args && Array.isArray(args)) {\n    var stringifiedArgs = args.map(function (item) {\n      return 'object' === _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(item) ? Object(_js_util__WEBPACK_IMPORTED_MODULE_4__[\"stringifyObject\"])(item) : item;\n    });\n    return \"\".concat(baseName, \"::\").concat(md5__WEBPACK_IMPORTED_MODULE_3___default()(JSON.stringify(stringifiedArgs)));\n  }\n  return baseName;\n}\nvar actions = {\n  receiveError: function receiveError(error, baseName) {\n    var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n    invariant__WEBPACK_IMPORTED_MODULE_2___default()(error, 'error is required.');\n    invariant__WEBPACK_IMPORTED_MODULE_2___default()(baseName, 'baseName is required.');\n    invariant__WEBPACK_IMPORTED_MODULE_2___default()(args && Array.isArray(args), 'args must be an array.');\n    return {\n      type: RECEIVE_ERROR,\n      payload: {\n        error: error,\n        baseName: baseName,\n        args: args\n      }\n    };\n  },\n  clearError: function clearError(baseName) {\n    var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n    invariant__WEBPACK_IMPORTED_MODULE_2___default()(baseName, 'baseName is required.');\n    invariant__WEBPACK_IMPORTED_MODULE_2___default()(args && Array.isArray(args), 'args must be an array.');\n    return {\n      type: CLEAR_ERROR,\n      payload: {\n        baseName: baseName,\n        args: args\n      }\n    };\n  },\n  clearErrors: function clearErrors(baseName) {\n    return {\n      type: CLEAR_ERRORS,\n      payload: {\n        baseName: baseName\n      }\n    };\n  }\n};\nfunction createErrorStore(storeName) {\n  invariant__WEBPACK_IMPORTED_MODULE_2___default()(storeName, 'storeName must be defined.');\n  var initialState = {\n    errors: {},\n    errorArgs: {}\n  };\n  var reducer = Object(googlesitekit_data__WEBPACK_IMPORTED_MODULE_5__[\"createReducer\"])(function (state, _ref) {\n    var type = _ref.type,\n      payload = _ref.payload;\n    switch (type) {\n      case RECEIVE_ERROR:\n        {\n          var baseName = payload.baseName,\n            args = payload.args,\n            error = payload.error;\n          var key = generateErrorKey(baseName, args);\n          state.errors = state.errors || {};\n          state.errorArgs = state.errorArgs || {};\n          state.errors[key] = error;\n          state.errorArgs[key] = args;\n          break;\n        }\n      case CLEAR_ERROR:\n        {\n          var _baseName = payload.baseName,\n            _args = payload.args;\n          var _key = generateErrorKey(_baseName, _args);\n          state.errors = state.errors || {};\n          state.errorArgs = state.errorArgs || {};\n          delete state.errors[_key];\n          delete state.errorArgs[_key];\n          break;\n        }\n      case CLEAR_ERRORS:\n        {\n          var _baseName2 = payload.baseName;\n          if (_baseName2) {\n            state.errors = state.errors || {};\n            state.errorArgs = state.errorArgs || {};\n            for (var _key2 in state.errors) {\n              if (_key2 === _baseName2 || _key2.startsWith(\"\".concat(_baseName2, \"::\"))) {\n                delete state.errors[_key2];\n                delete state.errorArgs[_key2];\n              }\n            }\n          } else {\n            state.errors = {};\n            state.errorArgs = {};\n          }\n          break;\n        }\n    }\n  });\n  var controls = {};\n  var resolvers = {};\n  var selectors = {\n    /**\n     * Retrieves the error object from state.\n     *\n     * Error object has the format:\n     *\n     * ```\n     * {\n     *   code: <String>,\n     *   message: <String>,\n     *   data: <Object>\n     * }\n     * ```\n     *\n     * @since 1.15.0\n     *\n     * @param {Object}      state        Data store's state.\n     * @param {string}      selectorName Selector name.\n     * @param {Array.<any>} [args]       Arguments passed to selector (default `[]`).\n     * @return {(Object|undefined)} Error object if exists, otherwise undefined.\n     */\n    getErrorForSelector: function getErrorForSelector(state, selectorName) {\n      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n      invariant__WEBPACK_IMPORTED_MODULE_2___default()(selectorName, 'selectorName is required.');\n      return selectors.getError(state, selectorName, args);\n    },\n    /**\n     * Retrieves the error object from state.\n     *\n     *```\n     * {\n     *   code: <String>,\n     *   message: <String>,\n     *   data: <Object>\n     * }\n     * ```\n     *\n     * @since 1.15.0\n     *\n     * @param {Object}      state      Data store's state.\n     * @param {string}      actionName Action name.\n     * @param {Array.<any>} [args]     Arguments passed to action (default `[]`).\n     * @return {(Object|undefined)} Error object if exists, otherwise undefined.\n     */\n    getErrorForAction: function getErrorForAction(state, actionName) {\n      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n      invariant__WEBPACK_IMPORTED_MODULE_2___default()(actionName, 'actionName is required.');\n      return selectors.getError(state, actionName, args);\n    },\n    /**\n     * Retrieves the error object from state.\n     *\n     *```\n     * {\n     *   code: <String>,\n     *   message: <String>,\n     *   data: <Object>\n     * }\n     * ```\n     *\n     * @since 1.15.0\n     * @private\n     *\n     * @param {Object}      state      Data store's state.\n     * @param {string}      [baseName] Selector or action name.\n     * @param {Array.<any>} [args]     Arguments array.\n     * @return {(Object|undefined)} Error object if exists, otherwise undefined.\n     */\n    getError: function getError(state, baseName, args) {\n      var errors = state.errors;\n      invariant__WEBPACK_IMPORTED_MODULE_2___default()(baseName, 'baseName is required.');\n      return errors[generateErrorKey(baseName, args)];\n    },\n    /**\n     * Gets a list of all unique errors.\n     *\n     * @since 1.19.0\n     *\n     * @param {Object} state Data store's state.\n     * @return {Object[]} Unique set of errors.\n     */\n    getErrors: function getErrors(state) {\n      var errorsSet = new Set(Object.values(state.errors));\n      return Array.from(errorsSet);\n    },\n    /**\n     * Gets the meta-data for a given error object, or null if the error is not found.\n     *\n     * Returns meta-data in the format:\n     *\n     * ```\n     *\t{\n     *\t\tbaseName: <string>,\n     *\t\targs: <Array>\n     *\t}\n     * ```\n     *\n     * @since 1.84.0\n     *\n     * @param {Object} state Data store's state.\n     * @param {Object} error Error object.\n     * @return {Object|null} Meta-data for the given error object, or null if the error is not found.\n     */\n    getMetaDataForError: function getMetaDataForError(state, error) {\n      var key = Object.keys(state.errors).find(function (errorKey) {\n        return state.errors[errorKey] === error;\n      });\n      if (key) {\n        var baseName = key.substring(0, key.indexOf('::'));\n        return {\n          baseName: baseName,\n          args: state.errorArgs[key]\n        };\n      }\n      return null;\n    },\n    /**\n     * Gets the selector data for a given error object, or null if no selector data is available.\n     *\n     * Returns selector data in the format:\n     *\n     * ```\n     *\t{\n     *\t\tstoreName: <string>,\n     *\t\tname: <string>,\n     *\t\targs: <Array>\n     *\t}\n     * ```\n     *\n     * @since 1.87.0\n     *\n     * @param {Object} state Data store's state.\n     * @param {Object} error Error object.\n     * @return {Object|null} Selector data for the given error object, or null if no selector data is available.\n     */\n    getSelectorDataForError: Object(_wordpress_data__WEBPACK_IMPORTED_MODULE_1__[\"createRegistrySelector\"])(function (select) {\n      return function (state, error) {\n        var metaData = select(storeName).getMetaDataForError(error);\n        if (metaData) {\n          var name = metaData.baseName,\n            args = metaData.args;\n          var isSelector = !!select(storeName)[name];\n          if (isSelector) {\n            return {\n              storeName: storeName,\n              name: name,\n              args: args\n            };\n          }\n        }\n        return null;\n      };\n    }),\n    /**\n     * Determines whether the datastore has errors or not.\n     *\n     * @since 1.15.0\n     *\n     * @param {Object} state Data store's state.\n     * @return {boolean} TRUE if the datastore has errors, otherwise FALSE.\n     */\n    hasErrors: function hasErrors(state) {\n      return selectors.getErrors(state).length > 0;\n    }\n  };\n  return {\n    initialState: initialState,\n    actions: actions,\n    controls: controls,\n    reducer: reducer,\n    resolvers: resolvers,\n    selectors: selectors\n  };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/googlesitekit/data/create-error-store.js\n");

/***/ }),

/***/ "./js/googlesitekit/data/create-snapshot-store.js":
/*!********************************************************!*\
  !*** ./js/googlesitekit/data/create-snapshot-store.js ***!
  \********************************************************/
/*! exports provided: createSnapshotStore, getStoresWithSnapshots, snapshotAllStores, restoreAllSnapshots */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createSnapshotStore\", function() { return createSnapshotStore; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getStoresWithSnapshots\", function() { return getStoresWithSnapshots; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"snapshotAllStores\", function() { return snapshotAllStores; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"restoreAllSnapshots\", function() { return restoreAllSnapshots; });\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"../node_modules/@babel/runtime/helpers/objectWithoutProperties.js\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"../node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! invariant */ \"../node_modules/invariant/browser.js\");\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! googlesitekit-data */ \"googlesitekit-data\");\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(googlesitekit_data__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _js_googlesitekit_api_cache__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/js/googlesitekit/api/cache */ \"./js/googlesitekit/api/cache.js\");\n/* harmony import */ var _js_util__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/js/util */ \"./js/util/index.js\");\n\n\n\n/**\n * Provides a datastore for snapshotting and restoring state.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * External dependencies\n */\n\n\n/**\n * Internal dependencies\n */\n\n\n\n\n// Actions\nvar CREATE_SNAPSHOT = 'CREATE_SNAPSHOT';\nvar DELETE_SNAPSHOT = 'DELETE_SNAPSHOT';\nvar RESTORE_SNAPSHOT = 'RESTORE_SNAPSHOT';\nvar SET_STATE_FROM_SNAPSHOT = 'SET_STATE_FROM_SNAPSHOT';\n\n/**\n * Creates a store object that includes actions and controls for restoring/creating state snapshots.\n *\n * @since 1.9.0\n * @private\n *\n * @param {string} storeName The name of the store to snapshot in the cache.\n * @return {Object} The snapshot store object.\n */\nfunction createSnapshotStore(storeName) {\n  var _controls;\n  invariant__WEBPACK_IMPORTED_MODULE_3___default()(storeName, 'storeName is required to create a snapshot store.');\n  var initialState = {};\n  var actions = {\n    /**\n     * Deletes a snapshot of state for a storeName, using our cache API.\n     *\n     * @since 1.9.0\n     * @private\n     *\n     * @return {boolean} Cache deletion response.\n     */\n    deleteSnapshot: /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default.a.mark(function deleteSnapshot() {\n      var cacheResult;\n      return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default.a.wrap(function deleteSnapshot$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              _context.next = 2;\n              return {\n                payload: {},\n                type: DELETE_SNAPSHOT\n              };\n            case 2:\n              cacheResult = _context.sent;\n              return _context.abrupt(\"return\", cacheResult);\n            case 4:\n            case \"end\":\n              return _context.stop();\n          }\n        }\n      }, deleteSnapshot);\n    }),\n    /**\n     * Restores a snapshot of state for a storeName, if available, using our cache API.\n     *\n     * @since 1.9.0\n     * @private\n     *\n     * @param {Object}  [options]                   Options object.\n     * @param {boolean} [options.clearAfterRestore] Whether or not to delete snapshot after restore. Default: true.\n     * @return {boolean} Cache restoration response.\n     */\n    restoreSnapshot: /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default.a.mark(function restoreSnapshot() {\n      var options,\n        _options$clearAfterRe,\n        clearAfterRestore,\n        _yield$payload$type,\n        cacheHit,\n        value,\n        _args2 = arguments;\n      return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default.a.wrap(function restoreSnapshot$(_context2) {\n        while (1) {\n          switch (_context2.prev = _context2.next) {\n            case 0:\n              options = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {};\n              _options$clearAfterRe = options.clearAfterRestore, clearAfterRestore = _options$clearAfterRe === void 0 ? true : _options$clearAfterRe;\n              _context2.next = 4;\n              return {\n                payload: {},\n                type: RESTORE_SNAPSHOT\n              };\n            case 4:\n              _yield$payload$type = _context2.sent;\n              cacheHit = _yield$payload$type.cacheHit;\n              value = _yield$payload$type.value;\n              if (!cacheHit) {\n                _context2.next = 13;\n                break;\n              }\n              _context2.next = 10;\n              return {\n                payload: {\n                  snapshot: value\n                },\n                type: SET_STATE_FROM_SNAPSHOT\n              };\n            case 10:\n              if (!clearAfterRestore) {\n                _context2.next = 13;\n                break;\n              }\n              _context2.next = 13;\n              return {\n                payload: {},\n                type: DELETE_SNAPSHOT\n              };\n            case 13:\n              return _context2.abrupt(\"return\", cacheHit);\n            case 14:\n            case \"end\":\n              return _context2.stop();\n          }\n        }\n      }, restoreSnapshot);\n    }),\n    /**\n     * Creates a snapshot of the current state of this store, using our cache API.\n     *\n     * @since 1.9.0\n     * @private\n     *\n     * @return {boolean} Cache write response.\n     */\n    createSnapshot: /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default.a.mark(function createSnapshot() {\n      var cacheResult;\n      return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_2___default.a.wrap(function createSnapshot$(_context3) {\n        while (1) {\n          switch (_context3.prev = _context3.next) {\n            case 0:\n              _context3.next = 2;\n              return {\n                payload: {},\n                type: CREATE_SNAPSHOT\n              };\n            case 2:\n              cacheResult = _context3.sent;\n              return _context3.abrupt(\"return\", cacheResult);\n            case 4:\n            case \"end\":\n              return _context3.stop();\n          }\n        }\n      }, createSnapshot);\n    })\n  };\n  var controls = (_controls = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(_controls, DELETE_SNAPSHOT, function () {\n    return Object(_js_googlesitekit_api_cache__WEBPACK_IMPORTED_MODULE_5__[\"deleteItem\"])(\"datastore::cache::\".concat(storeName));\n  }), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(_controls, CREATE_SNAPSHOT, Object(googlesitekit_data__WEBPACK_IMPORTED_MODULE_4__[\"createRegistryControl\"])(function (registry) {\n    return function () {\n      return Object(_js_googlesitekit_api_cache__WEBPACK_IMPORTED_MODULE_5__[\"setItem\"])(\"datastore::cache::\".concat(storeName), registry.stores[storeName].store.getState());\n    };\n  })), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(_controls, RESTORE_SNAPSHOT, function () {\n    // Only get snapshots made within the last hour.\n    return Object(_js_googlesitekit_api_cache__WEBPACK_IMPORTED_MODULE_5__[\"getItem\"])(\"datastore::cache::\".concat(storeName), _js_util__WEBPACK_IMPORTED_MODULE_6__[\"HOUR_IN_SECONDS\"]);\n  }), _controls);\n  function reducer() {\n    var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;\n    var _ref = arguments.length > 1 ? arguments[1] : undefined,\n      type = _ref.type,\n      payload = _ref.payload;\n    // eslint-disable-line no-shadow\n    switch (type) {\n      case SET_STATE_FROM_SNAPSHOT:\n        {\n          var snapshot = payload.snapshot; // Exclude any top-level errors from the restored state.\n          // eslint-disable-next-line no-unused-vars\n          var error = snapshot.error,\n            newState = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0___default()(snapshot, [\"error\"]);\n          return newState;\n        }\n      default:\n        {\n          return state;\n        }\n    }\n  }\n  return {\n    initialState: initialState,\n    actions: actions,\n    controls: controls,\n    reducer: reducer\n  };\n}\n\n/**\n * Inspects a registry to find all stores that support our snapshot features.\n *\n * @since 1.9.0\n * @private\n *\n * @param {wp.data.registry} registry Optional. Registry object to inspect for stores that support state restoration. Defaults to `googlesitekit.data`.\n * @return {Object} The snapshot store object.\n */\nfunction getStoresWithSnapshots() {\n  var registry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : googlesitekit_data__WEBPACK_IMPORTED_MODULE_4___default.a;\n  return Object.values(registry.stores).filter(function (store) {\n    return Object.keys(store.getActions()).includes('restoreSnapshot');\n  });\n}\n\n/**\n * Creates snapshots of all supporting stores.\n *\n * @since 1.9.0\n * @private\n *\n * @param {wp.data.registry} [registry] Optional. Registry object to inspect for stores that support state restoration. Defaults to `googlesitekit.data`.\n * @return {Promise} Promise resolves once all snapshots have been taken.\n */\nfunction snapshotAllStores() {\n  var registry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : googlesitekit_data__WEBPACK_IMPORTED_MODULE_4___default.a;\n  return Promise.all(getStoresWithSnapshots(registry).map(function (store) {\n    return store.getActions().createSnapshot();\n  }));\n}\n\n/**\n * Restores state for all snapshots that support it.\n *\n * Only restores snapshots for stores that have `restoreSnapshot` action, and\n * clears the snapshot afterward, so more stores will not be restored unless\n * a snapshot was saved on the last pageview.\n *\n * @since 1.9.0\n * @private\n *\n * @param {wp.data.registry} [registry] Optional. Registry object to inspect for stores that support state restoration. Defaults to `googlesitekit.data`.\n * @return {Promise} Promise resolves once all snapshots have been restored.\n */\nfunction restoreAllSnapshots() {\n  var registry = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : googlesitekit_data__WEBPACK_IMPORTED_MODULE_4___default.a;\n  return Promise.all(getStoresWithSnapshots(registry).map(function (store) {\n    return store.getActions().restoreSnapshot();\n  }));\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/googlesitekit/data/create-snapshot-store.js\n");

/***/ }),

/***/ "./js/googlesitekit/datastore/forms/constants.js":
/*!*******************************************************!*\
  !*** ./js/googlesitekit/datastore/forms/constants.js ***!
  \*******************************************************/
/*! exports provided: CORE_FORMS */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CORE_FORMS\", function() { return CORE_FORMS; });\n/**\n * `core/forms` data store: constants.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nvar CORE_FORMS = 'core/forms';//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy9nb29nbGVzaXRla2l0L2RhdGFzdG9yZS9mb3Jtcy9jb25zdGFudHMuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9qcy9nb29nbGVzaXRla2l0L2RhdGFzdG9yZS9mb3Jtcy9jb25zdGFudHMuanM/YjMxMSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGBjb3JlL2Zvcm1zYCBkYXRhIHN0b3JlOiBjb25zdGFudHMuXG4gKlxuICogU2l0ZSBLaXQgYnkgR29vZ2xlLCBDb3B5cmlnaHQgMjAyMSBHb29nbGUgTExDXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5leHBvcnQgY29uc3QgQ09SRV9GT1JNUyA9ICdjb3JlL2Zvcm1zJztcbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./js/googlesitekit/datastore/forms/constants.js\n");

/***/ }),

/***/ "./js/googlesitekit/datastore/forms/forms.js":
/*!***************************************************!*\
  !*** ./js/googlesitekit/datastore/forms/forms.js ***!
  \***************************************************/
/*! exports provided: initialState, actions, controls, reducer, resolvers, selectors, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"initialState\", function() { return initialState; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"actions\", function() { return actions; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"controls\", function() { return controls; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"reducer\", function() { return reducer; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolvers\", function() { return resolvers; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"selectors\", function() { return selectors; });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! invariant */ \"../node_modules/invariant/browser.js\");\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash */ \"../node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! googlesitekit-data */ \"googlesitekit-data\");\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(googlesitekit_data__WEBPACK_IMPORTED_MODULE_3__);\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n/**\n * `core/forms` data store: forms data\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * External dependencies\n */\n\n\n\n/**\n * Internal dependencies\n */\n\nvar SET_FORM_VALUES = 'SET_FORM_VALUES';\nvar initialState = {};\nvar actions = {\n  /**\n   * Stores site form information.\n   *\n   * @since 1.9.0\n   * @private\n   *\n   * @param {string} formName Name of the form.\n   * @param {Object} formData Form data supplied as a map of keys to set and their respective values.\n   * @return {Object} Redux-style action.\n   */\n  setValues: function setValues(formName, formData) {\n    invariant__WEBPACK_IMPORTED_MODULE_1___default()(formName && typeof formName === 'string', 'a valid formName is required for setting values.');\n    invariant__WEBPACK_IMPORTED_MODULE_1___default()(Object(lodash__WEBPACK_IMPORTED_MODULE_2__[\"isPlainObject\"])(formData), 'formData must be an object.');\n    return {\n      payload: {\n        formName: formName,\n        formData: formData\n      },\n      type: SET_FORM_VALUES\n    };\n  }\n};\nvar controls = {};\nvar reducer = Object(googlesitekit_data__WEBPACK_IMPORTED_MODULE_3__[\"createReducer\"])(function (state, _ref) {\n  var type = _ref.type,\n    payload = _ref.payload;\n  switch (type) {\n    case SET_FORM_VALUES:\n      var formName = payload.formName,\n        formData = payload.formData;\n      state[formName] = _objectSpread(_objectSpread({}, state[formName]), formData);\n      break;\n    default:\n      break;\n  }\n});\nvar resolvers = {};\nvar selectors = {\n  /**\n   * Gets the existing form by formName and key.\n   *\n   * @since 1.9.0\n   * @private\n   *\n   * @param {Object} state    Data store's state.\n   * @param {string} formName Name of the form.\n   * @param {string} key      Get data stored in this key.\n   * @return {*} Value stored in state by formName and key. Returns `undefined` if formName or key isn't found.\n   */\n  getValue: function getValue(state, formName, key) {\n    var formData = state[formName] || {};\n    return formData[key];\n  },\n  /**\n   * Checks whether a form with the given formName exists.\n   *\n   * @since 1.9.0\n   * @private\n   *\n   * @param {Object} state    Data store's state.\n   * @param {string} formName Name of the form.\n   * @return {boolean} True if the form exists, false otherwise.\n   */\n  hasForm: function hasForm(state, formName) {\n    return !!state[formName];\n  }\n};\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n  initialState: initialState,\n  actions: actions,\n  controls: controls,\n  reducer: reducer,\n  resolvers: resolvers,\n  selectors: selectors\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/googlesitekit/datastore/forms/forms.js\n");

/***/ }),

/***/ "./js/googlesitekit/datastore/forms/index.js":
/*!***************************************************!*\
  !*** ./js/googlesitekit/datastore/forms/index.js ***!
  \***************************************************/
/*! exports provided: initialState, actions, controls, reducer, resolvers, selectors, registerStore, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"initialState\", function() { return initialState; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"actions\", function() { return actions; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"controls\", function() { return controls; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"reducer\", function() { return reducer; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"resolvers\", function() { return resolvers; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"selectors\", function() { return selectors; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"registerStore\", function() { return registerStore; });\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! googlesitekit-data */ \"googlesitekit-data\");\n/* harmony import */ var googlesitekit_data__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(googlesitekit_data__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _js_googlesitekit_data_create_error_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/js/googlesitekit/data/create-error-store */ \"./js/googlesitekit/data/create-error-store.js\");\n/* harmony import */ var _js_googlesitekit_data_create_snapshot_store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/js/googlesitekit/data/create-snapshot-store */ \"./js/googlesitekit/data/create-snapshot-store.js\");\n/* harmony import */ var _forms__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./forms */ \"./js/googlesitekit/datastore/forms/forms.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./constants */ \"./js/googlesitekit/datastore/forms/constants.js\");\n/**\n * `core/forms` data store.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Internal dependencies\n */\n\n\n\n\n\nvar store = Object(googlesitekit_data__WEBPACK_IMPORTED_MODULE_0__[\"combineStores\"])(googlesitekit_data__WEBPACK_IMPORTED_MODULE_0__[\"commonStore\"], _forms__WEBPACK_IMPORTED_MODULE_3__[\"default\"], Object(_js_googlesitekit_data_create_snapshot_store__WEBPACK_IMPORTED_MODULE_2__[\"createSnapshotStore\"])(_constants__WEBPACK_IMPORTED_MODULE_4__[\"CORE_FORMS\"]), Object(_js_googlesitekit_data_create_error_store__WEBPACK_IMPORTED_MODULE_1__[\"createErrorStore\"])(_constants__WEBPACK_IMPORTED_MODULE_4__[\"CORE_FORMS\"]));\nvar initialState = store.initialState;\nvar actions = store.actions;\nvar controls = store.controls;\nvar reducer = store.reducer;\nvar resolvers = store.resolvers;\nvar selectors = store.selectors;\nfunction registerStore(registry) {\n  registry.registerStore(_constants__WEBPACK_IMPORTED_MODULE_4__[\"CORE_FORMS\"], store);\n}\n/* harmony default export */ __webpack_exports__[\"default\"] = (store);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy9nb29nbGVzaXRla2l0L2RhdGFzdG9yZS9mb3Jtcy9pbmRleC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL2dvb2dsZXNpdGVraXQvZGF0YXN0b3JlL2Zvcm1zL2luZGV4LmpzPzJjOTUiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBgY29yZS9mb3Jtc2AgZGF0YSBzdG9yZS5cbiAqXG4gKiBTaXRlIEtpdCBieSBHb29nbGUsIENvcHlyaWdodCAyMDIxIEdvb2dsZSBMTENcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IGNvbWJpbmVTdG9yZXMsIGNvbW1vblN0b3JlIH0gZnJvbSAnZ29vZ2xlc2l0ZWtpdC1kYXRhJztcbmltcG9ydCB7IGNyZWF0ZUVycm9yU3RvcmUgfSBmcm9tICdAL2pzL2dvb2dsZXNpdGVraXQvZGF0YS9jcmVhdGUtZXJyb3Itc3RvcmUnO1xuaW1wb3J0IHsgY3JlYXRlU25hcHNob3RTdG9yZSB9IGZyb20gJ0AvanMvZ29vZ2xlc2l0ZWtpdC9kYXRhL2NyZWF0ZS1zbmFwc2hvdC1zdG9yZSc7XG5pbXBvcnQgZm9ybXMgZnJvbSAnLi9mb3Jtcyc7XG5pbXBvcnQgeyBDT1JFX0ZPUk1TIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5jb25zdCBzdG9yZSA9IGNvbWJpbmVTdG9yZXMoXG5cdGNvbW1vblN0b3JlLFxuXHRmb3Jtcyxcblx0Y3JlYXRlU25hcHNob3RTdG9yZSggQ09SRV9GT1JNUyApLFxuXHRjcmVhdGVFcnJvclN0b3JlKCBDT1JFX0ZPUk1TIClcbik7XG5cbmV4cG9ydCBjb25zdCBpbml0aWFsU3RhdGUgPSBzdG9yZS5pbml0aWFsU3RhdGU7XG5leHBvcnQgY29uc3QgYWN0aW9ucyA9IHN0b3JlLmFjdGlvbnM7XG5leHBvcnQgY29uc3QgY29udHJvbHMgPSBzdG9yZS5jb250cm9scztcbmV4cG9ydCBjb25zdCByZWR1Y2VyID0gc3RvcmUucmVkdWNlcjtcbmV4cG9ydCBjb25zdCByZXNvbHZlcnMgPSBzdG9yZS5yZXNvbHZlcnM7XG5leHBvcnQgY29uc3Qgc2VsZWN0b3JzID0gc3RvcmUuc2VsZWN0b3JzO1xuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJTdG9yZSggcmVnaXN0cnkgKSB7XG5cdHJlZ2lzdHJ5LnJlZ2lzdGVyU3RvcmUoIENPUkVfRk9STVMsIHN0b3JlICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHN0b3JlO1xuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBRUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./js/googlesitekit/datastore/forms/index.js\n");

/***/ }),

/***/ "./js/util/chart.js":
/*!**************************!*\
  !*** ./js/util/chart.js ***!
  \**************************/
/*! exports provided: getChartDifferenceArrow, isSingleSlice, calculateDifferenceBetweenChartValues */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(React) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getChartDifferenceArrow\", function() { return getChartDifferenceArrow; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isSingleSlice\", function() { return isSingleSlice; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"calculateDifferenceBetweenChartValues\", function() { return calculateDifferenceBetweenChartValues; });\n/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/element */ \"../node_modules/@wordpress/element/build-module/index.js\");\n/* harmony import */ var _js_components_ChangeArrow__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/js/components/ChangeArrow */ \"./js/components/ChangeArrow.js\");\n\n/**\n * Utility functions for charts.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * WordPress dependencies\n */\n\n\n/**\n * Internal dependencies\n */\n\n\n/**\n * Gets the up/down SVG arrow for Google Chart tooltips.\n *\n * @since 1.30.0\n *\n * @param {number}  difference            The difference which can be positive or negative.\n * @param {string}  [options]             Options to be passed to the ChangeArrow component.\n * @param {boolean} [options.invertColor] Whether we need to reverse the +/- colors of the arrow.\n * @return {string} SVG for the +/- difference.\n */\nfunction getChartDifferenceArrow(difference) {\n  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  if (Number.isNaN(Number(difference))) {\n    return '';\n  }\n  var _options$invertColor = options.invertColor,\n    invertColor = _options$invertColor === void 0 ? false : _options$invertColor;\n  return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__[\"renderToString\"])(/*#__PURE__*/React.createElement(_js_components_ChangeArrow__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n    direction: difference > 0 ? 'up' : 'down',\n    invertColor: invertColor\n  }));\n}\n\n/**\n * Checks if there is a single row of data or one row is contributing 100% of the total for a given dimension.\n *\n * @since 1.31.0\n *\n * @param {Array.<Object>} report An array of report data objects.\n * @return {(boolean|undefined)} Returns undefined if report is undefined, true/false for the above conditions.\n */\nfunction isSingleSlice(report) {\n  var _report$, _report$$data, _report$$data$rows, _report$2, _report$2$data, _report$2$data$rows, _report$2$data$rows$, _report$2$data$rows$$, _report$2$data$rows$$2, _report$2$data$rows$$3, _report$3, _report$3$data, _report$3$data$totals, _report$3$data$totals2, _report$3$data$totals3;\n  if (report === undefined) {\n    return undefined;\n  }\n  if ((report === null || report === void 0 ? void 0 : (_report$ = report[0]) === null || _report$ === void 0 ? void 0 : (_report$$data = _report$.data) === null || _report$$data === void 0 ? void 0 : (_report$$data$rows = _report$$data.rows) === null || _report$$data$rows === void 0 ? void 0 : _report$$data$rows.length) === 1 || (report === null || report === void 0 ? void 0 : (_report$2 = report[0]) === null || _report$2 === void 0 ? void 0 : (_report$2$data = _report$2.data) === null || _report$2$data === void 0 ? void 0 : (_report$2$data$rows = _report$2$data.rows) === null || _report$2$data$rows === void 0 ? void 0 : (_report$2$data$rows$ = _report$2$data$rows[0]) === null || _report$2$data$rows$ === void 0 ? void 0 : (_report$2$data$rows$$ = _report$2$data$rows$.metrics) === null || _report$2$data$rows$$ === void 0 ? void 0 : (_report$2$data$rows$$2 = _report$2$data$rows$$[0]) === null || _report$2$data$rows$$2 === void 0 ? void 0 : (_report$2$data$rows$$3 = _report$2$data$rows$$2.values) === null || _report$2$data$rows$$3 === void 0 ? void 0 : _report$2$data$rows$$3[0]) === (report === null || report === void 0 ? void 0 : (_report$3 = report[0]) === null || _report$3 === void 0 ? void 0 : (_report$3$data = _report$3.data) === null || _report$3$data === void 0 ? void 0 : (_report$3$data$totals = _report$3$data.totals) === null || _report$3$data$totals === void 0 ? void 0 : (_report$3$data$totals2 = _report$3$data$totals[0]) === null || _report$3$data$totals2 === void 0 ? void 0 : (_report$3$data$totals3 = _report$3$data$totals2.values) === null || _report$3$data$totals3 === void 0 ? void 0 : _report$3$data$totals3[0])) {\n    return true;\n  }\n  return false;\n}\n\n/**\n * Calculates difference between two chart values.\n *\n * @since 1.48.0\n *\n * @param {number} currentValue  Current chart value.\n * @param {number} previousValue Previous chart value.\n * @return {number} The difference.\n */\nfunction calculateDifferenceBetweenChartValues(currentValue, previousValue) {\n  if (currentValue > 0 && previousValue > 0) {\n    return currentValue / previousValue - 1;\n  }\n  if (currentValue > 0) {\n    return 1;\n  }\n  if (previousValue > 0) {\n    return -1;\n  }\n  return 0;\n}\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! @wordpress/element */ \"../node_modules/@wordpress/element/build-module/index.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/chart.js\n");

/***/ }),

/***/ "./js/util/convert-time.js":
/*!*********************************!*\
  !*** ./js/util/convert-time.js ***!
  \*********************************/
/*! exports provided: convertSecondsToArray, convertDateStringToUNIXTimestamp */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"convertSecondsToArray\", function() { return convertSecondsToArray; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"convertDateStringToUNIXTimestamp\", function() { return convertDateStringToUNIXTimestamp; });\n/**\n * Time related utility functions.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Converts seconds into an array with the following values [HH, MM, SS, MS] as described below.\n * HH: hours.\n * MM: minutes.\n * SS: seconds.\n * MS: milliseconds.\n *\n * For example, passing 196.385 returns [ 0, 3, 16, 385 ].\n *\n * @since 1.27.0\n *\n * @param {number} seconds The number of seconds.\n * @return {Array} Array containing the hours, minutes, seconds and milliseconds.\n */\nfunction convertSecondsToArray(seconds) {\n  seconds = parseFloat(seconds);\n  if (isNaN(seconds) || 0 === seconds) {\n    return [0, 0, 0, 0];\n  }\n  return [Math.floor(seconds / 60 / 60), Math.floor(seconds / 60 % 60), Math.floor(seconds % 60), Math.floor(seconds * 1000) - Math.floor(seconds) * 1000];\n}\n\n/**\n * Converts Date time string into UNIX timestamp in milliseconds.\n *\n * For example, passing \"2014-10-02T15:01:23Z\" returns 1412262083000.\n *\n * @since 1.116.0\n *\n * @param {string} dateStringValue The date time string.\n * @return {number} UNIX timestamp in milliseconds.\n */\nfunction convertDateStringToUNIXTimestamp(dateStringValue) {\n  var unixTimestamp = dateStringValue && !Number.isInteger(dateStringValue) ?\n  // Valid use of `new Date()` with an argument, because this should only\n  // be passed full time strings, not `YYYY-MM-DD` style dates.\n  //\n  // See: https://github.com/google/site-kit-wp/pull/9459#discussion_r1790660073\n  // eslint-disable-next-line sitekit/no-direct-date\n  new Date(dateStringValue).getTime() : dateStringValue;\n  if (isNaN(unixTimestamp) || !unixTimestamp) {\n    return 0;\n  }\n  return unixTimestamp;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL2NvbnZlcnQtdGltZS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL3V0aWwvY29udmVydC10aW1lLmpzPzJlOTMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaW1lIHJlbGF0ZWQgdXRpbGl0eSBmdW5jdGlvbnMuXG4gKlxuICogU2l0ZSBLaXQgYnkgR29vZ2xlLCBDb3B5cmlnaHQgMjAyMSBHb29nbGUgTExDXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKipcbiAqIENvbnZlcnRzIHNlY29uZHMgaW50byBhbiBhcnJheSB3aXRoIHRoZSBmb2xsb3dpbmcgdmFsdWVzIFtISCwgTU0sIFNTLCBNU10gYXMgZGVzY3JpYmVkIGJlbG93LlxuICogSEg6IGhvdXJzLlxuICogTU06IG1pbnV0ZXMuXG4gKiBTUzogc2Vjb25kcy5cbiAqIE1TOiBtaWxsaXNlY29uZHMuXG4gKlxuICogRm9yIGV4YW1wbGUsIHBhc3NpbmcgMTk2LjM4NSByZXR1cm5zIFsgMCwgMywgMTYsIDM4NSBdLlxuICpcbiAqIEBzaW5jZSAxLjI3LjBcbiAqXG4gKiBAcGFyYW0ge251bWJlcn0gc2Vjb25kcyBUaGUgbnVtYmVyIG9mIHNlY29uZHMuXG4gKiBAcmV0dXJuIHtBcnJheX0gQXJyYXkgY29udGFpbmluZyB0aGUgaG91cnMsIG1pbnV0ZXMsIHNlY29uZHMgYW5kIG1pbGxpc2Vjb25kcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRTZWNvbmRzVG9BcnJheSggc2Vjb25kcyApIHtcblx0c2Vjb25kcyA9IHBhcnNlRmxvYXQoIHNlY29uZHMgKTtcblxuXHRpZiAoIGlzTmFOKCBzZWNvbmRzICkgfHwgMCA9PT0gc2Vjb25kcyApIHtcblx0XHRyZXR1cm4gWyAwLCAwLCAwLCAwIF07XG5cdH1cblxuXHRyZXR1cm4gW1xuXHRcdE1hdGguZmxvb3IoIHNlY29uZHMgLyA2MCAvIDYwICksXG5cdFx0TWF0aC5mbG9vciggKCBzZWNvbmRzIC8gNjAgKSAlIDYwICksXG5cdFx0TWF0aC5mbG9vciggc2Vjb25kcyAlIDYwICksXG5cdFx0TWF0aC5mbG9vciggc2Vjb25kcyAqIDEwMDAgKSAtIE1hdGguZmxvb3IoIHNlY29uZHMgKSAqIDEwMDAsXG5cdF07XG59XG5cbi8qKlxuICogQ29udmVydHMgRGF0ZSB0aW1lIHN0cmluZyBpbnRvIFVOSVggdGltZXN0YW1wIGluIG1pbGxpc2Vjb25kcy5cbiAqXG4gKiBGb3IgZXhhbXBsZSwgcGFzc2luZyBcIjIwMTQtMTAtMDJUMTU6MDE6MjNaXCIgcmV0dXJucyAxNDEyMjYyMDgzMDAwLlxuICpcbiAqIEBzaW5jZSAxLjExNi4wXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGRhdGVTdHJpbmdWYWx1ZSBUaGUgZGF0ZSB0aW1lIHN0cmluZy5cbiAqIEByZXR1cm4ge251bWJlcn0gVU5JWCB0aW1lc3RhbXAgaW4gbWlsbGlzZWNvbmRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29udmVydERhdGVTdHJpbmdUb1VOSVhUaW1lc3RhbXAoIGRhdGVTdHJpbmdWYWx1ZSApIHtcblx0Y29uc3QgdW5peFRpbWVzdGFtcCA9XG5cdFx0ZGF0ZVN0cmluZ1ZhbHVlICYmICEgTnVtYmVyLmlzSW50ZWdlciggZGF0ZVN0cmluZ1ZhbHVlIClcblx0XHRcdD8gLy8gVmFsaWQgdXNlIG9mIGBuZXcgRGF0ZSgpYCB3aXRoIGFuIGFyZ3VtZW50LCBiZWNhdXNlIHRoaXMgc2hvdWxkIG9ubHlcblx0XHRcdCAgLy8gYmUgcGFzc2VkIGZ1bGwgdGltZSBzdHJpbmdzLCBub3QgYFlZWVktTU0tRERgIHN0eWxlIGRhdGVzLlxuXHRcdFx0ICAvL1xuXHRcdFx0ICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvc2l0ZS1raXQtd3AvcHVsbC85NDU5I2Rpc2N1c3Npb25fcjE3OTA2NjAwNzNcblx0XHRcdCAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHNpdGVraXQvbm8tZGlyZWN0LWRhdGVcblx0XHRcdCAgbmV3IERhdGUoIGRhdGVTdHJpbmdWYWx1ZSApLmdldFRpbWUoKVxuXHRcdFx0OiBkYXRlU3RyaW5nVmFsdWU7XG5cblx0aWYgKCBpc05hTiggdW5peFRpbWVzdGFtcCApIHx8ICEgdW5peFRpbWVzdGFtcCApIHtcblx0XHRyZXR1cm4gMDtcblx0fVxuXG5cdHJldHVybiB1bml4VGltZXN0YW1wO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUVBO0FBTUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBO0FBQ0E7QUFDQTtBQUVBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./js/util/convert-time.js\n");

/***/ }),

/***/ "./js/util/dates.js":
/*!**************************!*\
  !*** ./js/util/dates.js ***!
  \**************************/
/*! exports provided: INVALID_DATE_INSTANCE_ERROR, INVALID_DATE_STRING_ERROR, INVALID_DATE_RANGE_ERROR, MINUTE_IN_SECONDS, HOUR_IN_SECONDS, DAY_IN_SECONDS, WEEK_IN_SECONDS, MONTH_IN_SECONDS, getAvailableDateRanges, getCurrentDateRangeDayCount, isValidDateString, getDateString, stringToDate, getPreviousDate, isValidDateRange, dateSub */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"INVALID_DATE_INSTANCE_ERROR\", function() { return INVALID_DATE_INSTANCE_ERROR; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"INVALID_DATE_STRING_ERROR\", function() { return INVALID_DATE_STRING_ERROR; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"INVALID_DATE_RANGE_ERROR\", function() { return INVALID_DATE_RANGE_ERROR; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MINUTE_IN_SECONDS\", function() { return MINUTE_IN_SECONDS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"HOUR_IN_SECONDS\", function() { return HOUR_IN_SECONDS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DAY_IN_SECONDS\", function() { return DAY_IN_SECONDS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"WEEK_IN_SECONDS\", function() { return WEEK_IN_SECONDS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MONTH_IN_SECONDS\", function() { return MONTH_IN_SECONDS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getAvailableDateRanges\", function() { return getAvailableDateRanges; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getCurrentDateRangeDayCount\", function() { return getCurrentDateRangeDayCount; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isValidDateString\", function() { return isValidDateString; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getDateString\", function() { return getDateString; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"stringToDate\", function() { return stringToDate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getPreviousDate\", function() { return getPreviousDate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isValidDateRange\", function() { return isValidDateRange; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"dateSub\", function() { return dateSub; });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"../node_modules/@babel/runtime/helpers/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! invariant */ \"../node_modules/invariant/browser.js\");\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash */ \"../node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/i18n */ \"@wordpress/i18n\");\n/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__);\n\n/**\n * Site Kit by Google, Copyright 2024 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * External dependencies\n */\n\n\n\n/**\n * WordPress dependencies\n */\n\nvar INVALID_DATE_INSTANCE_ERROR = 'Date param must construct to a valid date instance or be a valid date instance itself.';\nvar INVALID_DATE_STRING_ERROR = 'Invalid dateString parameter, it must be a string.';\nvar INVALID_DATE_RANGE_ERROR = 'Invalid date range, it must be a string with the format \"last-x-days\".';\nvar MINUTE_IN_SECONDS = 60;\nvar HOUR_IN_SECONDS = 60 * MINUTE_IN_SECONDS;\nvar DAY_IN_SECONDS = 24 * HOUR_IN_SECONDS;\nvar WEEK_IN_SECONDS = 7 * DAY_IN_SECONDS;\nvar MONTH_IN_SECONDS = 30 * DAY_IN_SECONDS;\n\n/**\n * Gets the hash of available date ranges.\n *\n * @since 1.12.0\n *\n * @return {Object} The object hash where every key is a date range slug, and the value is an object with the date range slug and its translation.\n */\nfunction getAvailableDateRanges() {\n  function label(days) {\n    return Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__[\"sprintf\"])(/* translators: %s: number of days */\n    Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_3__[\"_n\"])('Last %s day', 'Last %s days', days, 'google-site-kit'), days);\n  }\n  return {\n    'last-7-days': {\n      slug: 'last-7-days',\n      label: label(7),\n      days: 7\n    },\n    'last-14-days': {\n      slug: 'last-14-days',\n      label: label(14),\n      days: 14\n    },\n    'last-28-days': {\n      slug: 'last-28-days',\n      label: label(28),\n      days: 28\n    },\n    'last-90-days': {\n      slug: 'last-90-days',\n      label: label(90),\n      days: 90\n    }\n  };\n}\n\n/**\n * Gets the current dateRange day count.\n *\n * @since 1.19.0\n * @since 1.26.0 `dateRange` is now a required argument.\n *\n * @param {string} dateRange The date range slug.\n * @return {number} The number of days in the range.\n */\nfunction getCurrentDateRangeDayCount(dateRange) {\n  var daysMatch = dateRange.match(/last-(\\d+)-days/);\n  if (daysMatch && daysMatch[1]) {\n    return parseInt(daysMatch[1], 10);\n  }\n  throw new Error('Unrecognized date range slug.');\n}\n\n/**\n * Asserts whether a given date string is valid or invalid.\n *\n * @since 1.18.0\n *\n * @param {string} dateString Date string to be asserted against. Defaults to an empty string.\n * @return {boolean}          True if the given date string is valid.\n */\nfunction isValidDateString() {\n  var dateString = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n  if (!Object(lodash__WEBPACK_IMPORTED_MODULE_2__[\"isString\"])(dateString)) {\n    return false;\n  }\n  var dateArray = dateString.split('-');\n  if (dateArray.length !== 3) {\n    return false;\n  }\n\n  // Valid use of `new Date()`, constructing a new date from the string.\n  // eslint-disable-next-line sitekit/no-direct-date\n  var date = new Date(dateString);\n  return Object(lodash__WEBPACK_IMPORTED_MODULE_2__[\"isDate\"])(date) && !isNaN(date);\n}\n\n/**\n * Parses the given Date instance and returns a date string (YYYY-MM-DD).\n *\n * @since 1.18.0\n * @since 1.85.0 Updated the function signature to only accept a Date argument.\n *\n * @param {Date} date Date to parse into a string.\n * @return {string}                 The parsed date string (YYYY-MM-DD).\n */\nfunction getDateString(date) {\n  invariant__WEBPACK_IMPORTED_MODULE_1___default()(Object(lodash__WEBPACK_IMPORTED_MODULE_2__[\"isDate\"])(date) && !isNaN(date), INVALID_DATE_INSTANCE_ERROR);\n  var month = \"\".concat(date.getMonth() + 1);\n  var day = \"\".concat(date.getDate());\n  var year = date.getFullYear();\n  return [year, month.length < 2 ? \"0\".concat(month) : month, day.length < 2 ? \"0\".concat(day) : day].join('-');\n}\n\n/**\n * Converts a valid date string to a Date instance.\n *\n * @since 1.38.0\n *\n * @param {string} dateString The date string to parse.\n * @return {Date} Date instance.\n */\nfunction stringToDate(dateString) {\n  invariant__WEBPACK_IMPORTED_MODULE_1___default()(isValidDateString(dateString), INVALID_DATE_STRING_ERROR);\n\n  /**\n   * Split date into explicit parts rather than pass directly into date constructor\n   * to avoid timezone issues caused by parsing as UTC. Ensures date is accurate for\n   * the user's local time, otherwise has a chance to return a different day than was\n   * passed in depending on timezone.\n   */\n  var _dateString$split = dateString.split('-'),\n    _dateString$split2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_dateString$split, 3),\n    year = _dateString$split2[0],\n    month = _dateString$split2[1],\n    day = _dateString$split2[2];\n  return new Date(year, month - 1, day);\n}\n\n/**\n * Parses the given date and returns the previous date (daysBefore).\n *\n * @since 1.18.0\n *\n * @param {string} relativeDate Date string (YYYY-MM-DD) to subtract days from.\n * @param {number} daysBefore   Number of days to subtract from relativeDate.\n * @return {string}             The date string (YYYY-MM-DD) for the previous date.\n */\nfunction getPreviousDate(relativeDate, daysBefore) {\n  return getDateString(dateSub(relativeDate, daysBefore * DAY_IN_SECONDS));\n}\n\n/**\n * Asserts whether a given dateRange string is valid or invalid.\n *\n * @since 1.18.0\n *\n * @param {string} dateRange Date string to be asserted against. Defaults to an empty string.\n * @return {boolean}          True if the given dateRange string is valid.\n */\nfunction isValidDateRange(dateRange) {\n  var parts = dateRange.split('-');\n  return parts.length === 3 && parts[0] === 'last' && !Number.isNaN(parts[1]) && !Number.isNaN(parseFloat(parts[1])) && parts[2] === 'days';\n}\n\n/**\n * Subtracts duration from the prodived date and returns it.\n *\n * @since 1.132.0\n *\n * @param {Date|string} relativeDate Date string (YYYY-MM-DD) or date object to subtract duration from.\n * @param {number}      duration     The duration in seconds to subtract from relativeDate.\n * @return {Date} Resulting date.\n */\nfunction dateSub(relativeDate, duration) {\n  invariant__WEBPACK_IMPORTED_MODULE_1___default()(isValidDateString(relativeDate) || Object(lodash__WEBPACK_IMPORTED_MODULE_2__[\"isDate\"])(relativeDate) && !isNaN(relativeDate), INVALID_DATE_STRING_ERROR);\n  var timestamp = isValidDateString(relativeDate) ? Date.parse(relativeDate) : relativeDate.getTime();\n\n  // Valid use of `new Date()` using calculations.\n  // eslint-disable-next-line sitekit/no-direct-date\n  return new Date(timestamp - duration * 1000);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/dates.js\n");

/***/ }),

/***/ "./js/util/i18n.js":
/*!*************************!*\
  !*** ./js/util/i18n.js ***!
  \*************************/
/*! exports provided: createDurationFormat, prepareForReadableLargeNumber, readableLargeNumber, expandNumFmtOptions, numFmt, numberFormat, listFormat, getLocale */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createDurationFormat\", function() { return createDurationFormat; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"prepareForReadableLargeNumber\", function() { return prepareForReadableLargeNumber; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"readableLargeNumber\", function() { return readableLargeNumber; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"expandNumFmtOptions\", function() { return expandNumFmtOptions; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"numFmt\", function() { return numFmt; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"numberFormat\", function() { return numberFormat; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"listFormat\", function() { return listFormat; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getLocale\", function() { return getLocale; });\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ \"../node_modules/@babel/runtime/helpers/slicedToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"../node_modules/@babel/runtime/helpers/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ \"../node_modules/@babel/runtime/helpers/objectWithoutProperties.js\");\n/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lodash */ \"../node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! memize */ \"../node_modules/memize/index.js\");\n/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @wordpress/i18n */ \"@wordpress/i18n\");\n/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__);\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n/**\n * Internationalization Utilities.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * External dependencies\n */\n\n\n\n/**\n * WordPress dependencies\n */\n\n\n/**\n * Converts seconds to a display ready string indicating\n * the number of hours, minutes and seconds that have elapsed.\n *\n * For example, passing 65 returns '1m 5s'.\n *\n * @since 1.0.0\n * @since 1.28.0 Refactored and renamed to improve localization.\n * @private\n *\n * @param {number}                     durationInSeconds The number of seconds.\n * @param {(Intl.NumberFormatOptions)} [options]         Optional formatting options.\n * @return {string} Human readable string indicating time elapsed.\n */\nfunction durationFormat(durationInSeconds) {\n  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  var _createDurationFormat = createDurationFormat(durationInSeconds, options),\n    formatUnit = _createDurationFormat.formatUnit,\n    formatDecimal = _createDurationFormat.formatDecimal;\n  try {\n    // Some browsers, e.g. Safari, throw a RangeError when options.style is\n    // not one of decimal, percent, or currency.\n    return formatUnit();\n  } catch (_unused) {\n    // Fallback to XXh YYm ZZs using localized decimals with hardcoded units.\n    return formatDecimal();\n  }\n}\n\n/**\n * Converts seconds to a display ready string indicating\n * the number of hours, minutes and seconds that have elapsed\n * in ISO format - HH:mm:ss.\n *\n * If the duration is less than an hour, the HH part of the string\n * is truncated.\n * For example, passing 65 returns '01:05'.\n * Passing 5400 returns '01:30:00'.\n *\n * @since 1.111.0\n * @private\n *\n * @param {number} durationInSeconds The number of seconds.\n * @return {string} Human readable string indicating time elapsed.\n */\nfunction durationISOFormat(durationInSeconds) {\n  var _parseDuration = parseDuration(durationInSeconds),\n    hours = _parseDuration.hours,\n    minutes = _parseDuration.minutes,\n    seconds = _parseDuration.seconds;\n  seconds = ('0' + seconds).slice(-2);\n  minutes = ('0' + minutes).slice(-2);\n  hours = ('0' + hours).slice(-2);\n  return hours === '00' ? \"\".concat(minutes, \":\").concat(seconds) : \"\".concat(hours, \":\").concat(minutes, \":\").concat(seconds);\n}\n\n/**\n * Parses the duration in seconds into hours, minutes and seconds.\n *\n * @since 1.111.0\n * @private\n *\n * @param {number} durationInSeconds The number of seconds.\n * @return {Object} Number of hours, minutes and seconds equivalent\n * to the given duration in seconds.\n */\nfunction parseDuration(durationInSeconds) {\n  durationInSeconds = parseInt(durationInSeconds, 10);\n  if (Number.isNaN(durationInSeconds)) {\n    durationInSeconds = 0;\n  }\n  var hours = Math.floor(durationInSeconds / 60 / 60);\n  var minutes = Math.floor(durationInSeconds / 60 % 60);\n  var seconds = Math.floor(durationInSeconds % 60);\n  return {\n    hours: hours,\n    minutes: minutes,\n    seconds: seconds\n  };\n}\n\n/**\n * Creates duration formatting utilities.\n *\n * Not intended to be used directly.\n * Use `numFmt( number, { style: 'duration' } )` instead.\n *\n * @since 1.29.0\n * @private\n *\n * @param {number} durationInSeconds Duration to format.\n * @param {Object} [options]         Formatting options.\n * @return {Object} Formatting functions.\n */\nfunction createDurationFormat(durationInSeconds) {\n  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  var _parseDuration2 = parseDuration(durationInSeconds),\n    hours = _parseDuration2.hours,\n    minutes = _parseDuration2.minutes,\n    seconds = _parseDuration2.seconds;\n  return {\n    hours: hours,\n    minutes: minutes,\n    seconds: seconds,\n    formatUnit: function formatUnit() {\n      var _options$unitDisplay = options.unitDisplay,\n        unitDisplay = _options$unitDisplay === void 0 ? 'short' : _options$unitDisplay,\n        restOptions = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3___default()(options, [\"unitDisplay\"]);\n      var commonOptions = _objectSpread(_objectSpread({\n        unitDisplay: unitDisplay\n      }, restOptions), {}, {\n        style: 'unit'\n      });\n      if (durationInSeconds === 0) {\n        return numberFormat(seconds, _objectSpread(_objectSpread({}, commonOptions), {}, {\n          unit: 'second'\n        }));\n      }\n      return Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"sprintf\"])(/* translators: 1: formatted seconds, 2: formatted minutes, 3: formatted hours */\n      Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"_x\"])('%3$s %2$s %1$s', 'duration of time: hh mm ss', 'google-site-kit'), seconds ? numberFormat(seconds, _objectSpread(_objectSpread({}, commonOptions), {}, {\n        unit: 'second'\n      })) : '', minutes ? numberFormat(minutes, _objectSpread(_objectSpread({}, commonOptions), {}, {\n        unit: 'minute'\n      })) : '', hours ? numberFormat(hours, _objectSpread(_objectSpread({}, commonOptions), {}, {\n        unit: 'hour'\n      })) : '').trim();\n    },\n    /**\n     * Formats the duration using integers and translatable strings.\n     * This is only used as a fallback when the above `formatUnit` fails.\n     *\n     * @since 1.29.0\n     *\n     * @return {string} Formatted duration.\n     */\n    formatDecimal: function formatDecimal() {\n      var formattedSeconds = Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"sprintf\"])(\n      // translators: %s: number of seconds with \"s\" as the abbreviated unit.\n      Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"__\"])('%ds', 'google-site-kit'), seconds);\n      if (durationInSeconds === 0) {\n        return formattedSeconds;\n      }\n      var formattedMinutes = Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"sprintf\"])(\n      // translators: %s: number of minutes with \"m\" as the abbreviated unit.\n      Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"__\"])('%dm', 'google-site-kit'), minutes);\n      var formattedHours = Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"sprintf\"])(\n      // translators: %s: number of hours with \"h\" as the abbreviated unit.\n      Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"__\"])('%dh', 'google-site-kit'), hours);\n      return Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"sprintf\"])(/* translators: 1: formatted seconds, 2: formatted minutes, 3: formatted hours */\n      Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"_x\"])('%3$s %2$s %1$s', 'duration of time: hh mm ss', 'google-site-kit'), seconds ? formattedSeconds : '', minutes ? formattedMinutes : '', hours ? formattedHours : '').trim();\n    }\n  };\n}\n\n/**\n * Prepares a number to be used in readableLargeNumber.\n *\n * @since 1.7.0\n *\n * @param {number} number The large number to prepare.\n * @return {number} The prepared number.\n */\nfunction prepareForReadableLargeNumber(number) {\n  if (1000000 <= number) {\n    return Math.round(number / 100000) / 10;\n  }\n  if (10000 <= number) {\n    return Math.round(number / 1000);\n  }\n  if (1000 <= number) {\n    return Math.round(number / 100) / 10;\n  }\n  return number;\n}\n\n/**\n * Formats a large number for shortened display.\n *\n * @since 1.0.0\n *\n * @param {number} number The large number to format.\n * @return {string} The formatted number.\n */\nfunction readableLargeNumber(number) {\n  var withSingleDecimal = {\n    minimumFractionDigits: 1,\n    maximumFractionDigits: 1\n  };\n\n  // Numbers over 1,000,000 round normally and display a single decimal unless the decimal is 0.\n  if (1000000 <= number) {\n    return Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"sprintf\"])(\n    // translators: %s: an abbreviated number in millions.\n    Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"__\"])('%sM', 'google-site-kit'), numberFormat(prepareForReadableLargeNumber(number), number % 10 === 0 ? {} : withSingleDecimal));\n  }\n\n  // Numbers between 10,000 and 1,000,000 round normally and have no decimals\n  if (10000 <= number) {\n    return Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"sprintf\"])(\n    // translators: %s: an abbreviated number in thousands.\n    Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"__\"])('%sK', 'google-site-kit'), numberFormat(prepareForReadableLargeNumber(number)));\n  }\n\n  // Numbers between 1,000 and 10,000 round normally and display a single decimal unless the decimal is 0.\n  if (1000 <= number) {\n    return Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"sprintf\"])(\n    // translators: %s: an abbreviated number in thousands.\n    Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"__\"])('%sK', 'google-site-kit'), numberFormat(prepareForReadableLargeNumber(number), number % 10 === 0 ? {} : withSingleDecimal));\n  }\n  return numberFormat(number, {\n    signDisplay: 'never',\n    maximumFractionDigits: 1\n  });\n}\n\n/**\n * Parses formatting options and returns an object with options for selected formatting.\n *\n * @since 1.103.0\n *\n * @param {(Intl.NumberFormatOptions|string)} options Formatting options or unit shorthand. Possible shorthand values are '%', 's', or a currency code.\n * @return {Object} Formatting options.\n */\nfunction expandNumFmtOptions(options) {\n  var formatOptions = {};\n\n  // Expand shorthand values for units.\n  if ('%' === options) {\n    formatOptions = {\n      style: 'percent',\n      maximumFractionDigits: 2\n    };\n  } else if ('s' === options) {\n    formatOptions = {\n      style: 'duration',\n      unitDisplay: 'narrow'\n    };\n  } else if (!!options && typeof options === 'string') {\n    formatOptions = {\n      style: 'currency',\n      currency: options\n    };\n  } else if (Object(lodash__WEBPACK_IMPORTED_MODULE_4__[\"isPlainObject\"])(options)) {\n    formatOptions = _objectSpread({}, options);\n  }\n  return formatOptions;\n}\n\n/**\n * Formats a number with unit using the JS Internationalization Number Format API.\n *\n * In addition to the supported 'style' values of the lower-level `numberFormat` function, this function\n * supports two additional 'style' values 'metric' and 'duration' (expects a number in seconds).\n *\n * Another differentiation in behavior is that by default the function will use 'metric' formatting instead\n * of 'decimal' formatting.\n *\n * @since 1.24.0\n *\n * @param {number|string}                     number    The number to format.\n * @param {(Intl.NumberFormatOptions|string)} [options] Formatting options or unit shorthand.\n *                                                      Possible shorthand values are '%', 's',\n *                                                      or a currency code.\n * @return {string} The formatted number.\n */\nfunction numFmt(number) {\n  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  // Cast parsable values to numeric types.\n  number = Object(lodash__WEBPACK_IMPORTED_MODULE_4__[\"isFinite\"])(number) ? number : Number(number);\n  if (!Object(lodash__WEBPACK_IMPORTED_MODULE_4__[\"isFinite\"])(number)) {\n    // eslint-disable-next-line no-console\n    console.warn('Invalid number', number, _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1___default()(number));\n    number = 0;\n  }\n  var formatOptions = expandNumFmtOptions(options);\n  var _formatOptions$style = formatOptions.style,\n    style = _formatOptions$style === void 0 ? 'metric' : _formatOptions$style; // Note: `metric` is our custom, default style.\n  if ('metric' === style) {\n    return readableLargeNumber(number);\n  }\n  if ('duration' === style) {\n    return durationFormat(number, formatOptions);\n  }\n  if ('durationISO' === style) {\n    return durationISOFormat(number);\n  }\n  return numberFormat(number, formatOptions);\n}\n\n// Warn once for a given message.\nvar warnOnce = memize__WEBPACK_IMPORTED_MODULE_5___default()(console.warn); // eslint-disable-line no-console\n\n/**\n * Formats a number using the JS Internationalization Number Format API.\n *\n * @since 1.8.0\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat/NumberFormat|`options` parameter} For all available formatting options.\n *\n * @param {number}                   number           The number to format.\n * @param {Intl.NumberFormatOptions} [options]        Formatting options.\n * @param {string}                   [options.locale] Locale to use for formatting. Defaults to current locale used by Site Kit.\n * @return {string} The formatted number.\n */\nfunction numberFormat(number) {\n  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  var _options$locale = options.locale,\n    locale = _options$locale === void 0 ? getLocale() : _options$locale,\n    formatOptions = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_3___default()(options, [\"locale\"]);\n  try {\n    /**\n     * Per https://github.com/google/site-kit-wp/issues/3255 there have been issues with some versions of Safari\n     * on some operating systems throwing issues with some parameters in the formatOptions.\n     *\n     * If an error is thrown, we remove some troublesome params from the formatOptions object and fallback to no formatting.\n     *\n     * This allows us to degrade somewhat gracefully without breaking the dashboard for users of unaffected browsers.\n     */\n    return new Intl.NumberFormat(locale, formatOptions).format(number);\n  } catch (error) {\n    warnOnce(\"Site Kit numberFormat error: Intl.NumberFormat( \".concat(JSON.stringify(locale), \", \").concat(JSON.stringify(formatOptions), \" ).format( \").concat(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1___default()(number), \" )\"), error.message);\n  }\n\n  // Remove these key/values from formatOptions.\n  var unstableFormatOptionValues = {\n    currencyDisplay: 'narrow',\n    currencySign: 'accounting',\n    style: 'unit'\n  };\n\n  // Remove these keys from formatOptions irrespective of value.\n  var unstableFormatOptions = ['signDisplay', 'compactDisplay'];\n  var reducedFormatOptions = {};\n  for (var _i = 0, _Object$entries = Object.entries(formatOptions); _i < _Object$entries.length; _i++) {\n    var _Object$entries$_i = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_Object$entries[_i], 2),\n      key = _Object$entries$_i[0],\n      value = _Object$entries$_i[1];\n    if (unstableFormatOptionValues[key] && value === unstableFormatOptionValues[key]) {\n      continue;\n    }\n    if (unstableFormatOptions.includes(key)) {\n      continue;\n    }\n    reducedFormatOptions[key] = value;\n  }\n  try {\n    return new Intl.NumberFormat(locale, reducedFormatOptions).format(number);\n  } catch (_unused2) {\n    return new Intl.NumberFormat(locale).format(number);\n  }\n}\n\n/**\n * Flattens an array of strings into a string using the JS Internationalization List Format API.\n *\n * @since 1.23.0\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat|`options` parameter} For all available options.\n *\n * @param {Array}  list             The list to flatten.\n * @param {Object} [options]        Formatting options.\n * @param {string} [options.locale] Locale to use for formatting. Defaults to current locale used by Site Kit.\n * @param {string} [options.style]  Length of the formatted message. Defaults to long.\n * @param {string} [options.type]   Type of list. Defaults to 'conjunction' (A, B, and C).\n *                                  Also available 'disjunction' (A, B, or C)\n *                                  Also available 'unit' (5 pounds, 12 ounces)\n * @return {string} The flattened list.\n */\nfunction listFormat(list) {\n  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  var _options$locale2 = options.locale,\n    locale = _options$locale2 === void 0 ? getLocale() : _options$locale2,\n    _options$style = options.style,\n    style = _options$style === void 0 ? 'long' : _options$style,\n    _options$type = options.type,\n    type = _options$type === void 0 ? 'conjunction' : _options$type; // Not all browsers support Intl.Listformat per\n  // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#Browser_compatibility\n  // We've seen that the built versions don't polyfill for the unsupported browsers (iOS/safari) so we provide a fallback.\n  if (Intl.ListFormat) {\n    var formatter = new Intl.ListFormat(locale, {\n      style: style,\n      type: type\n    });\n    return formatter.format(list);\n  }\n\n  /* translators: used between list items, there is a space after the comma. */\n  var listSeparator = Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_6__[\"__\"])(', ', 'google-site-kit');\n  return list.join(listSeparator);\n}\n\n/**\n * Gets the current locale for use with browser APIs.\n *\n * @since 1.8.0\n *\n * @param {Object} _global The global window object.\n * @return {string} Current Site Kit locale if set, otherwise the current language set by the browser.\n *                  E.g. `en-US` or `de-DE`\n */\nfunction getLocale() {\n  var _global = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : global;\n  var siteKitLocale = Object(lodash__WEBPACK_IMPORTED_MODULE_4__[\"get\"])(_global, ['_googlesitekitLegacyData', 'locale']);\n  if (siteKitLocale) {\n    var matches = siteKitLocale.match(/^(\\w{2})?(_)?(\\w{2})/);\n    if (matches && matches[0]) {\n      return matches[0].replace(/_/g, '-');\n    }\n  }\n  return _global.navigator.language;\n}\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../node_modules/webpack/buildin/global.js */ \"../node_modules/webpack/buildin/global.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/i18n.js\n");

/***/ }),

/***/ "./js/util/index.js":
/*!**************************!*\
  !*** ./js/util/index.js ***!
  \**************************/
/*! exports provided: trackEvent, trackEventOnce, sanitizeHTML, untrailingslashit, stringifyObject, storageAvailable, getStorage, createDurationFormat, prepareForReadableLargeNumber, readableLargeNumber, expandNumFmtOptions, numFmt, numberFormat, listFormat, getLocale, markdownToHTML, convertSecondsToArray, convertDateStringToUNIXTimestamp, INVALID_DATE_INSTANCE_ERROR, INVALID_DATE_STRING_ERROR, INVALID_DATE_RANGE_ERROR, MINUTE_IN_SECONDS, HOUR_IN_SECONDS, DAY_IN_SECONDS, WEEK_IN_SECONDS, MONTH_IN_SECONDS, getAvailableDateRanges, getCurrentDateRangeDayCount, isValidDateString, getDateString, stringToDate, getPreviousDate, isValidDateRange, dateSub, getChartDifferenceArrow, isSingleSlice, calculateDifferenceBetweenChartValues, getURLPath, getFullURL, normalizeURL, isHashOnly, shortenURL, isValidNumericID, isNumeric, safelySort, partitionReport, calculateChange, validateJSON, decodeHTMLEntity */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"calculateChange\", function() { return calculateChange; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"validateJSON\", function() { return validateJSON; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"decodeHTMLEntity\", function() { return decodeHTMLEntity; });\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash */ \"../node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _tracking__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./tracking */ \"./js/util/tracking/index.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"trackEvent\", function() { return _tracking__WEBPACK_IMPORTED_MODULE_1__[\"trackEvent\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"trackEventOnce\", function() { return _tracking__WEBPACK_IMPORTED_MODULE_1__[\"trackEventOnce\"]; });\n\n/* harmony import */ var _sanitize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./sanitize */ \"./js/util/sanitize.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"sanitizeHTML\", function() { return _sanitize__WEBPACK_IMPORTED_MODULE_2__[\"sanitizeHTML\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"untrailingslashit\", function() { return _sanitize__WEBPACK_IMPORTED_MODULE_2__[\"untrailingslashit\"]; });\n\n/* harmony import */ var _stringify__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./stringify */ \"./js/util/stringify.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"stringifyObject\", function() { return _stringify__WEBPACK_IMPORTED_MODULE_3__[\"stringifyObject\"]; });\n\n/* harmony import */ var _storage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./storage */ \"./js/util/storage.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"storageAvailable\", function() { return _storage__WEBPACK_IMPORTED_MODULE_4__[\"storageAvailable\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getStorage\", function() { return _storage__WEBPACK_IMPORTED_MODULE_4__[\"getStorage\"]; });\n\n/* harmony import */ var _i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./i18n */ \"./js/util/i18n.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"createDurationFormat\", function() { return _i18n__WEBPACK_IMPORTED_MODULE_5__[\"createDurationFormat\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"prepareForReadableLargeNumber\", function() { return _i18n__WEBPACK_IMPORTED_MODULE_5__[\"prepareForReadableLargeNumber\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"readableLargeNumber\", function() { return _i18n__WEBPACK_IMPORTED_MODULE_5__[\"readableLargeNumber\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"expandNumFmtOptions\", function() { return _i18n__WEBPACK_IMPORTED_MODULE_5__[\"expandNumFmtOptions\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"numFmt\", function() { return _i18n__WEBPACK_IMPORTED_MODULE_5__[\"numFmt\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"numberFormat\", function() { return _i18n__WEBPACK_IMPORTED_MODULE_5__[\"numberFormat\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"listFormat\", function() { return _i18n__WEBPACK_IMPORTED_MODULE_5__[\"listFormat\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getLocale\", function() { return _i18n__WEBPACK_IMPORTED_MODULE_5__[\"getLocale\"]; });\n\n/* harmony import */ var _markdown__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./markdown */ \"./js/util/markdown.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"markdownToHTML\", function() { return _markdown__WEBPACK_IMPORTED_MODULE_6__[\"markdownToHTML\"]; });\n\n/* harmony import */ var _convert_time__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./convert-time */ \"./js/util/convert-time.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"convertSecondsToArray\", function() { return _convert_time__WEBPACK_IMPORTED_MODULE_7__[\"convertSecondsToArray\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"convertDateStringToUNIXTimestamp\", function() { return _convert_time__WEBPACK_IMPORTED_MODULE_7__[\"convertDateStringToUNIXTimestamp\"]; });\n\n/* harmony import */ var _dates__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./dates */ \"./js/util/dates.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"INVALID_DATE_INSTANCE_ERROR\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"INVALID_DATE_INSTANCE_ERROR\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"INVALID_DATE_STRING_ERROR\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"INVALID_DATE_STRING_ERROR\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"INVALID_DATE_RANGE_ERROR\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"INVALID_DATE_RANGE_ERROR\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MINUTE_IN_SECONDS\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"MINUTE_IN_SECONDS\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"HOUR_IN_SECONDS\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"HOUR_IN_SECONDS\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"DAY_IN_SECONDS\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"DAY_IN_SECONDS\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"WEEK_IN_SECONDS\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"WEEK_IN_SECONDS\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MONTH_IN_SECONDS\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"MONTH_IN_SECONDS\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getAvailableDateRanges\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"getAvailableDateRanges\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getCurrentDateRangeDayCount\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"getCurrentDateRangeDayCount\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isValidDateString\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"isValidDateString\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getDateString\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"getDateString\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"stringToDate\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"stringToDate\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getPreviousDate\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"getPreviousDate\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isValidDateRange\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"isValidDateRange\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"dateSub\", function() { return _dates__WEBPACK_IMPORTED_MODULE_8__[\"dateSub\"]; });\n\n/* harmony import */ var _chart__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./chart */ \"./js/util/chart.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getChartDifferenceArrow\", function() { return _chart__WEBPACK_IMPORTED_MODULE_9__[\"getChartDifferenceArrow\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSingleSlice\", function() { return _chart__WEBPACK_IMPORTED_MODULE_9__[\"isSingleSlice\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"calculateDifferenceBetweenChartValues\", function() { return _chart__WEBPACK_IMPORTED_MODULE_9__[\"calculateDifferenceBetweenChartValues\"]; });\n\n/* harmony import */ var _urls__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./urls */ \"./js/util/urls.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getURLPath\", function() { return _urls__WEBPACK_IMPORTED_MODULE_10__[\"getURLPath\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getFullURL\", function() { return _urls__WEBPACK_IMPORTED_MODULE_10__[\"getFullURL\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"normalizeURL\", function() { return _urls__WEBPACK_IMPORTED_MODULE_10__[\"normalizeURL\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isHashOnly\", function() { return _urls__WEBPACK_IMPORTED_MODULE_10__[\"isHashOnly\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"shortenURL\", function() { return _urls__WEBPACK_IMPORTED_MODULE_10__[\"shortenURL\"]; });\n\n/* harmony import */ var _is_valid_numeric_id__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./is-valid-numeric-id */ \"./js/util/is-valid-numeric-id.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isValidNumericID\", function() { return _is_valid_numeric_id__WEBPACK_IMPORTED_MODULE_11__[\"isValidNumericID\"]; });\n\n/* harmony import */ var _isnumeric__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./isnumeric */ \"./js/util/isnumeric.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isNumeric\", function() { return _isnumeric__WEBPACK_IMPORTED_MODULE_12__[\"isNumeric\"]; });\n\n/* harmony import */ var _safely_sort__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./safely-sort */ \"./js/util/safely-sort.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"safelySort\", function() { return _safely_sort__WEBPACK_IMPORTED_MODULE_13__[\"safelySort\"]; });\n\n/* harmony import */ var _partition_report__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./partition-report */ \"./js/util/partition-report.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"partitionReport\", function() { return _partition_report__WEBPACK_IMPORTED_MODULE_14__[\"partitionReport\"]; });\n\n/**\n * Utility functions.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * External dependencies\n */\n\n\n/**\n * Internal dependencies\n */\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Calculates the change between two values.\n *\n * @since 1.24.0\n *\n * @param {number} previous The previous value.\n * @param {number} current  The current value.\n * @return {(number|null)} The percent change. Null if the input or output is invalid.\n */\nfunction calculateChange(previous, current) {\n  function isZero(value) {\n    return value === '0' || value === 0;\n  }\n\n  // Prevent null result when both values are legitimately zero.\n  if (isZero(previous) && isZero(current)) {\n    return 0;\n  }\n\n  // Prevent divide by zero errors.\n  if (isZero(previous) || Number.isNaN(previous)) {\n    return null;\n  }\n\n  // Avoid NaN at all costs.\n  var change = (current - previous) / previous;\n  if (Number.isNaN(change) || !Number.isFinite(change)) {\n    return null;\n  }\n  return change;\n}\n\n/**\n * Verifies whether JSON is valid.\n *\n * @since 1.0.0\n *\n * @param {string} stringToValidate The string to validate.\n * @return {boolean} Indicates JSON is valid.\n */\nfunction validateJSON(stringToValidate) {\n  try {\n    return JSON.parse(stringToValidate) && !!stringToValidate;\n  } catch (e) {\n    return false;\n  }\n}\n\n/**\n * Converts HTML text into an HTML entity.\n *\n * _.unescape doesn't seem to decode some entities for admin bar titles.\n * adding combination in this helper as a workaround.\n *\n * @since 1.0.0\n *\n * @param {string} str The string to decode.\n * @return {string} Decoded HTML entity.\n */\nfunction decodeHTMLEntity(str) {\n  if (!str) {\n    return '';\n  }\n  var decoded = str.replace(/&#(\\d+);/g, function (match, dec) {\n    return String.fromCharCode(dec);\n  }).replace(/(\\\\)/g, '');\n  return Object(lodash__WEBPACK_IMPORTED_MODULE_0__[\"unescape\"])(decoded);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/index.js\n");

/***/ }),

/***/ "./js/util/is-valid-numeric-id.js":
/*!****************************************!*\
  !*** ./js/util/is-valid-numeric-id.js ***!
  \****************************************/
/*! exports provided: isValidNumericID */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isValidNumericID\", function() { return isValidNumericID; });\n/**\n * Utility function related to checking if a given value is numeric.\n *\n * Site Kit by Google, Copyright 2022 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Checks the given value to see if it is a positive integer.\n *\n * @since 1.11.0 Function introduced.\n * @since 1.90.0 Moved outside Tag Manager to a generic utility function.\n *\n * @param {*} input Value to check.\n * @return {boolean} Validity.\n */\nfunction isValidNumericID(input) {\n  var id = parseFloat(input) || 0;\n  if (!Number.isInteger(id)) {\n    return false;\n  }\n  return id > 0;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL2lzLXZhbGlkLW51bWVyaWMtaWQuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9qcy91dGlsL2lzLXZhbGlkLW51bWVyaWMtaWQuanM/MjU1NiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFV0aWxpdHkgZnVuY3Rpb24gcmVsYXRlZCB0byBjaGVja2luZyBpZiBhIGdpdmVuIHZhbHVlIGlzIG51bWVyaWMuXG4gKlxuICogU2l0ZSBLaXQgYnkgR29vZ2xlLCBDb3B5cmlnaHQgMjAyMiBHb29nbGUgTExDXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKipcbiAqIENoZWNrcyB0aGUgZ2l2ZW4gdmFsdWUgdG8gc2VlIGlmIGl0IGlzIGEgcG9zaXRpdmUgaW50ZWdlci5cbiAqXG4gKiBAc2luY2UgMS4xMS4wIEZ1bmN0aW9uIGludHJvZHVjZWQuXG4gKiBAc2luY2UgMS45MC4wIE1vdmVkIG91dHNpZGUgVGFnIE1hbmFnZXIgdG8gYSBnZW5lcmljIHV0aWxpdHkgZnVuY3Rpb24uXG4gKlxuICogQHBhcmFtIHsqfSBpbnB1dCBWYWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm4ge2Jvb2xlYW59IFZhbGlkaXR5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZE51bWVyaWNJRCggaW5wdXQgKSB7XG5cdGNvbnN0IGlkID0gcGFyc2VGbG9hdCggaW5wdXQgKSB8fCAwO1xuXG5cdGlmICggISBOdW1iZXIuaXNJbnRlZ2VyKCBpZCApICkge1xuXHRcdHJldHVybiBmYWxzZTtcblx0fVxuXG5cdHJldHVybiBpZCA+IDA7XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBRUE7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./js/util/is-valid-numeric-id.js\n");

/***/ }),

/***/ "./js/util/isnumeric.js":
/*!******************************!*\
  !*** ./js/util/isnumeric.js ***!
  \******************************/
/*! exports provided: isNumeric */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isNumeric\", function() { return isNumeric; });\n/**\n * Utility function related to checking if a given value is numeric.\n *\n * Site Kit by Google, Copyright 2022 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Checks if a given value is numeric.\n *\n * @since 1.80.0\n *\n * @param {*} value The value to check.\n * @return {boolean} TRUE if a value is numeric FALSE otherwise.\n */\nfunction isNumeric(value) {\n  if (typeof value === 'number') {\n    return true;\n  }\n  var string = (value || '').toString();\n  if (!string) {\n    return false;\n  }\n  return !isNaN(string);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL2lzbnVtZXJpYy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL3V0aWwvaXNudW1lcmljLmpzPzliNDkiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVdGlsaXR5IGZ1bmN0aW9uIHJlbGF0ZWQgdG8gY2hlY2tpbmcgaWYgYSBnaXZlbiB2YWx1ZSBpcyBudW1lcmljLlxuICpcbiAqIFNpdGUgS2l0IGJ5IEdvb2dsZSwgQ29weXJpZ2h0IDIwMjIgR29vZ2xlIExMQ1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLyoqXG4gKiBDaGVja3MgaWYgYSBnaXZlbiB2YWx1ZSBpcyBudW1lcmljLlxuICpcbiAqIEBzaW5jZSAxLjgwLjBcbiAqXG4gKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm4ge2Jvb2xlYW59IFRSVUUgaWYgYSB2YWx1ZSBpcyBudW1lcmljIEZBTFNFIG90aGVyd2lzZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTnVtZXJpYyggdmFsdWUgKSB7XG5cdGlmICggdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyApIHtcblx0XHRyZXR1cm4gdHJ1ZTtcblx0fVxuXG5cdGNvbnN0IHN0cmluZyA9ICggdmFsdWUgfHwgJycgKS50b1N0cmluZygpO1xuXG5cdGlmICggISBzdHJpbmcgKSB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0cmV0dXJuICEgaXNOYU4oIHN0cmluZyApO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFFQTtBQUNBO0FBQ0E7QUFFQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./js/util/isnumeric.js\n");

/***/ }),

/***/ "./js/util/markdown.js":
/*!*****************************!*\
  !*** ./js/util/markdown.js ***!
  \*****************************/
/*! exports provided: markdownToHTML */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"markdownToHTML\", function() { return markdownToHTML; });\n/**\n * Markdown utility.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Replaces markdown links with its HTML equivalents.\n *\n * @since 1.22.0\n *\n * @param {string} text Markdown text.\n * @return {string} Text with HTML links.\n */\nfunction markdownLinks(text) {\n  return text.replace(new RegExp('\\\\[([^\\\\]]+)\\\\]\\\\((https?://[^/]+\\\\.\\\\w+/?.*?)\\\\)', 'gi'), '<a href=\"$2\" target=\"_blank\" rel=\"noopener noreferrer\">$1</a>');\n}\n\n/**\n * Adds paragraphs to the text.\n *\n * @since 1.22.0\n *\n * @param {string} text Markdown text.\n * @return {string} Text with HTML links.\n */\nfunction markdownParagraphs(text) {\n  return \"<p>\".concat(text.replace(/\\n{2,}/g, '</p><p>'), \"</p>\");\n}\n\n/**\n * Replaces line breaks in the text.\n *\n * @since 1.22.0\n *\n * @param {string} text Markdown text.\n * @return {string} Text with HTML links.\n */\nfunction markdownBreaks(text) {\n  return text.replace(/\\n/gi, '<br>');\n}\n\n/**\n * Converts markdown to HTML.\n *\n * @since 1.22.0\n *\n * @param {string} text Markdown text.\n * @return {string} HTML version of the markdown text.\n */\nfunction markdownToHTML(text) {\n  var rules = [markdownLinks, markdownParagraphs, markdownBreaks];\n  var html = text;\n  for (var _i = 0, _rules = rules; _i < _rules.length; _i++) {\n    var rule = _rules[_i];\n    html = rule(html);\n  }\n  return html;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL21hcmtkb3duLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vanMvdXRpbC9tYXJrZG93bi5qcz9kYjAyIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTWFya2Rvd24gdXRpbGl0eS5cbiAqXG4gKiBTaXRlIEtpdCBieSBHb29nbGUsIENvcHlyaWdodCAyMDIxIEdvb2dsZSBMTENcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qKlxuICogUmVwbGFjZXMgbWFya2Rvd24gbGlua3Mgd2l0aCBpdHMgSFRNTCBlcXVpdmFsZW50cy5cbiAqXG4gKiBAc2luY2UgMS4yMi4wXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHRleHQgTWFya2Rvd24gdGV4dC5cbiAqIEByZXR1cm4ge3N0cmluZ30gVGV4dCB3aXRoIEhUTUwgbGlua3MuXG4gKi9cbmZ1bmN0aW9uIG1hcmtkb3duTGlua3MoIHRleHQgKSB7XG5cdHJldHVybiB0ZXh0LnJlcGxhY2UoXG5cdFx0bmV3IFJlZ0V4cCggJ1xcXFxbKFteXFxcXF1dKylcXFxcXVxcXFwoKGh0dHBzPzovL1teL10rXFxcXC5cXFxcdysvPy4qPylcXFxcKScsICdnaScgKSxcblx0XHQnPGEgaHJlZj1cIiQyXCIgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiPiQxPC9hPidcblx0KTtcbn1cblxuLyoqXG4gKiBBZGRzIHBhcmFncmFwaHMgdG8gdGhlIHRleHQuXG4gKlxuICogQHNpbmNlIDEuMjIuMFxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IE1hcmtkb3duIHRleHQuXG4gKiBAcmV0dXJuIHtzdHJpbmd9IFRleHQgd2l0aCBIVE1MIGxpbmtzLlxuICovXG5mdW5jdGlvbiBtYXJrZG93blBhcmFncmFwaHMoIHRleHQgKSB7XG5cdHJldHVybiBgPHA+JHsgdGV4dC5yZXBsYWNlKCAvXFxuezIsfS9nLCAnPC9wPjxwPicgKSB9PC9wPmA7XG59XG5cbi8qKlxuICogUmVwbGFjZXMgbGluZSBicmVha3MgaW4gdGhlIHRleHQuXG4gKlxuICogQHNpbmNlIDEuMjIuMFxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IE1hcmtkb3duIHRleHQuXG4gKiBAcmV0dXJuIHtzdHJpbmd9IFRleHQgd2l0aCBIVE1MIGxpbmtzLlxuICovXG5mdW5jdGlvbiBtYXJrZG93bkJyZWFrcyggdGV4dCApIHtcblx0cmV0dXJuIHRleHQucmVwbGFjZSggL1xcbi9naSwgJzxicj4nICk7XG59XG5cbi8qKlxuICogQ29udmVydHMgbWFya2Rvd24gdG8gSFRNTC5cbiAqXG4gKiBAc2luY2UgMS4yMi4wXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IHRleHQgTWFya2Rvd24gdGV4dC5cbiAqIEByZXR1cm4ge3N0cmluZ30gSFRNTCB2ZXJzaW9uIG9mIHRoZSBtYXJrZG93biB0ZXh0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFya2Rvd25Ub0hUTUwoIHRleHQgKSB7XG5cdGNvbnN0IHJ1bGVzID0gWyBtYXJrZG93bkxpbmtzLCBtYXJrZG93blBhcmFncmFwaHMsIG1hcmtkb3duQnJlYWtzIF07XG5cblx0bGV0IGh0bWwgPSB0ZXh0O1xuXHRmb3IgKCBjb25zdCBydWxlIG9mIHJ1bGVzICkge1xuXHRcdGh0bWwgPSBydWxlKCBodG1sICk7XG5cdH1cblxuXHRyZXR1cm4gaHRtbDtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQUVBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./js/util/markdown.js\n");

/***/ }),

/***/ "./js/util/partition-report.js":
/*!*************************************!*\
  !*** ./js/util/partition-report.js ***!
  \*************************************/
/*! exports provided: partitionReport */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"partitionReport\", function() { return partitionReport; });\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! invariant */ \"../node_modules/invariant/browser.js\");\n/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_0__);\n/**\n * Report partitioning utility.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * External dependencies\n */\n\n\n/**\n * Splits report data into segments for current and comparison ranges.\n *\n * @since 1.33.0\n * @since 1.34.0 Updated to support incomplete `report` arrays.\n *\n * @param {Array}  report               Report rows.\n * @param {Object} args                 Additional arguments.\n * @param {number} args.dateRangeLength Date range length of report segments.\n * @return {Object} Object with keys for `compareRange` and `currentRange`.\n */\nfunction partitionReport(report, _ref) {\n  var dateRangeLength = _ref.dateRangeLength;\n  invariant__WEBPACK_IMPORTED_MODULE_0___default()(Array.isArray(report), 'report must be an array to partition.');\n  invariant__WEBPACK_IMPORTED_MODULE_0___default()(Number.isInteger(dateRangeLength) && dateRangeLength > 0, 'dateRangeLength must be a positive integer.');\n\n  // Use a negative date range length for reverse slicing.\n  var _dateRangeLength = -1 * dateRangeLength;\n  return {\n    // The current range should always be sliced from the end.\n    currentRange: report.slice(_dateRangeLength),\n    // The compare range continues from where the current left off (slicing towards the start),\n    // and may be shorter (where older data is not available yet) which is fine.\n    compareRange: report.slice(_dateRangeLength * 2, _dateRangeLength)\n  };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL3BhcnRpdGlvbi1yZXBvcnQuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9qcy91dGlsL3BhcnRpdGlvbi1yZXBvcnQuanM/NTk4MCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJlcG9ydCBwYXJ0aXRpb25pbmcgdXRpbGl0eS5cbiAqXG4gKiBTaXRlIEtpdCBieSBHb29nbGUsIENvcHlyaWdodCAyMDIxIEdvb2dsZSBMTENcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBpbnZhcmlhbnQgZnJvbSAnaW52YXJpYW50JztcblxuLyoqXG4gKiBTcGxpdHMgcmVwb3J0IGRhdGEgaW50byBzZWdtZW50cyBmb3IgY3VycmVudCBhbmQgY29tcGFyaXNvbiByYW5nZXMuXG4gKlxuICogQHNpbmNlIDEuMzMuMFxuICogQHNpbmNlIDEuMzQuMCBVcGRhdGVkIHRvIHN1cHBvcnQgaW5jb21wbGV0ZSBgcmVwb3J0YCBhcnJheXMuXG4gKlxuICogQHBhcmFtIHtBcnJheX0gIHJlcG9ydCAgICAgICAgICAgICAgIFJlcG9ydCByb3dzLlxuICogQHBhcmFtIHtPYmplY3R9IGFyZ3MgICAgICAgICAgICAgICAgIEFkZGl0aW9uYWwgYXJndW1lbnRzLlxuICogQHBhcmFtIHtudW1iZXJ9IGFyZ3MuZGF0ZVJhbmdlTGVuZ3RoIERhdGUgcmFuZ2UgbGVuZ3RoIG9mIHJlcG9ydCBzZWdtZW50cy5cbiAqIEByZXR1cm4ge09iamVjdH0gT2JqZWN0IHdpdGgga2V5cyBmb3IgYGNvbXBhcmVSYW5nZWAgYW5kIGBjdXJyZW50UmFuZ2VgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFydGl0aW9uUmVwb3J0KCByZXBvcnQsIHsgZGF0ZVJhbmdlTGVuZ3RoIH0gKSB7XG5cdGludmFyaWFudChcblx0XHRBcnJheS5pc0FycmF5KCByZXBvcnQgKSxcblx0XHQncmVwb3J0IG11c3QgYmUgYW4gYXJyYXkgdG8gcGFydGl0aW9uLidcblx0KTtcblx0aW52YXJpYW50KFxuXHRcdE51bWJlci5pc0ludGVnZXIoIGRhdGVSYW5nZUxlbmd0aCApICYmIGRhdGVSYW5nZUxlbmd0aCA+IDAsXG5cdFx0J2RhdGVSYW5nZUxlbmd0aCBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlci4nXG5cdCk7XG5cblx0Ly8gVXNlIGEgbmVnYXRpdmUgZGF0ZSByYW5nZSBsZW5ndGggZm9yIHJldmVyc2Ugc2xpY2luZy5cblx0Y29uc3QgX2RhdGVSYW5nZUxlbmd0aCA9IC0xICogZGF0ZVJhbmdlTGVuZ3RoO1xuXG5cdHJldHVybiB7XG5cdFx0Ly8gVGhlIGN1cnJlbnQgcmFuZ2Ugc2hvdWxkIGFsd2F5cyBiZSBzbGljZWQgZnJvbSB0aGUgZW5kLlxuXHRcdGN1cnJlbnRSYW5nZTogcmVwb3J0LnNsaWNlKCBfZGF0ZVJhbmdlTGVuZ3RoICksXG5cdFx0Ly8gVGhlIGNvbXBhcmUgcmFuZ2UgY29udGludWVzIGZyb20gd2hlcmUgdGhlIGN1cnJlbnQgbGVmdCBvZmYgKHNsaWNpbmcgdG93YXJkcyB0aGUgc3RhcnQpLFxuXHRcdC8vIGFuZCBtYXkgYmUgc2hvcnRlciAod2hlcmUgb2xkZXIgZGF0YSBpcyBub3QgYXZhaWxhYmxlIHlldCkgd2hpY2ggaXMgZmluZS5cblx0XHRjb21wYXJlUmFuZ2U6IHJlcG9ydC5zbGljZSggX2RhdGVSYW5nZUxlbmd0aCAqIDIsIF9kYXRlUmFuZ2VMZW5ndGggKSxcblx0fTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQUlBO0FBQ0E7QUFJQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./js/util/partition-report.js\n");

/***/ }),

/***/ "./js/util/purify.js":
/*!***************************!*\
  !*** ./js/util/purify.js ***!
  \***************************/
/*! exports provided: purify */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"purify\", function() { return purify; });\n/* harmony import */ var dompurify__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! dompurify */ \"../node_modules/dompurify/dist/purify.js\");\n/* harmony import */ var dompurify__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(dompurify__WEBPACK_IMPORTED_MODULE_0__);\n/**\n * External dependencies\n */\n\nvar purify = dompurify__WEBPACK_IMPORTED_MODULE_0___default()(global);\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../node_modules/webpack/buildin/global.js */ \"../node_modules/webpack/buildin/global.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL3B1cmlmeS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL3V0aWwvcHVyaWZ5LmpzPzgxMWIiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IGNyZWF0ZURPTVB1cmlmeSBmcm9tICdkb21wdXJpZnknO1xuXG5leHBvcnQgY29uc3QgcHVyaWZ5ID0gY3JlYXRlRE9NUHVyaWZ5KCBnbG9iYWwgKTtcbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./js/util/purify.js\n");

/***/ }),

/***/ "./js/util/safely-sort.js":
/*!********************************!*\
  !*** ./js/util/safely-sort.js ***!
  \********************************/
/*! exports provided: safelySort */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"safelySort\", function() { return safelySort; });\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ \"../node_modules/@babel/runtime/helpers/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\n * `safelySort` utility function.\n *\n * Site Kit by Google, Copyright 2024 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Sorts an array without causing the mutation if the given parameter is an array.\n * If the parameter is not an array, it returns the parameter as is.\n *\n * @since 1.110.0\n * @since 1.128.0 Moved to the common utility directory from the key metrics directory.\n *\n * @param {Array|*} arr Param to be sorted.\n * @return {Array|*} \tSafely sorted array without mutation.\n */\nfunction safelySort(arr) {\n  return Array.isArray(arr) ? _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default()(arr).sort() : arr;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL3NhZmVseS1zb3J0LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vanMvdXRpbC9zYWZlbHktc29ydC5qcz8zMzQ3Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogYHNhZmVseVNvcnRgIHV0aWxpdHkgZnVuY3Rpb24uXG4gKlxuICogU2l0ZSBLaXQgYnkgR29vZ2xlLCBDb3B5cmlnaHQgMjAyNCBHb29nbGUgTExDXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKipcbiAqIFNvcnRzIGFuIGFycmF5IHdpdGhvdXQgY2F1c2luZyB0aGUgbXV0YXRpb24gaWYgdGhlIGdpdmVuIHBhcmFtZXRlciBpcyBhbiBhcnJheS5cbiAqIElmIHRoZSBwYXJhbWV0ZXIgaXMgbm90IGFuIGFycmF5LCBpdCByZXR1cm5zIHRoZSBwYXJhbWV0ZXIgYXMgaXMuXG4gKlxuICogQHNpbmNlIDEuMTEwLjBcbiAqIEBzaW5jZSAxLjEyOC4wIE1vdmVkIHRvIHRoZSBjb21tb24gdXRpbGl0eSBkaXJlY3RvcnkgZnJvbSB0aGUga2V5IG1ldHJpY3MgZGlyZWN0b3J5LlxuICpcbiAqIEBwYXJhbSB7QXJyYXl8Kn0gYXJyIFBhcmFtIHRvIGJlIHNvcnRlZC5cbiAqIEByZXR1cm4ge0FycmF5fCp9IFx0U2FmZWx5IHNvcnRlZCBhcnJheSB3aXRob3V0IG11dGF0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2FmZWx5U29ydCggYXJyICkge1xuXHRyZXR1cm4gQXJyYXkuaXNBcnJheSggYXJyICkgPyBbIC4uLmFyciBdLnNvcnQoKSA6IGFycjtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./js/util/safely-sort.js\n");

/***/ }),

/***/ "./js/util/sanitize.js":
/*!*****************************!*\
  !*** ./js/util/sanitize.js ***!
  \*****************************/
/*! exports provided: sanitizeHTML, untrailingslashit */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"sanitizeHTML\", function() { return sanitizeHTML; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"untrailingslashit\", function() { return untrailingslashit; });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"../node_modules/@babel/runtime/helpers/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _purify__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./purify */ \"./js/util/purify.js\");\n\n/**\n * Internal dependencies\n */\n\nfunction sanitizeHTML(unsafeHTML) {\n  var domPurifyConfig = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n  return {\n    __html: _purify__WEBPACK_IMPORTED_MODULE_1__[\"purify\"].sanitize(unsafeHTML, domPurifyConfig)\n  };\n}\n\n/**\n * Takes a string or an URL object, removes the trailing slash if any and returns it.\n *\n * @since 1.20.0\n * @private\n *\n * @param {Object|string} url A string with or without trailing slash or an URL object.\n * @return {string|undefined} The URL string after removing the trailing slash.\n */\nfunction untrailingslashit(url) {\n  var _originalURL$replace;\n  var originalURL = _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(url) === 'object' ? url.toString() : url;\n  return originalURL === null || originalURL === void 0 ? void 0 : (_originalURL$replace = originalURL.replace) === null || _originalURL$replace === void 0 ? void 0 : _originalURL$replace.call(originalURL, /\\/+$/, '');\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL3Nhbml0aXplLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vanMvdXRpbC9zYW5pdGl6ZS5qcz8yZmFkIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IHB1cmlmeSB9IGZyb20gJy4vcHVyaWZ5JztcblxuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplSFRNTCggdW5zYWZlSFRNTCwgZG9tUHVyaWZ5Q29uZmlnID0ge30gKSB7XG5cdHJldHVybiB7XG5cdFx0X19odG1sOiBwdXJpZnkuc2FuaXRpemUoIHVuc2FmZUhUTUwsIGRvbVB1cmlmeUNvbmZpZyApLFxuXHR9O1xufVxuXG4vKipcbiAqIFRha2VzIGEgc3RyaW5nIG9yIGFuIFVSTCBvYmplY3QsIHJlbW92ZXMgdGhlIHRyYWlsaW5nIHNsYXNoIGlmIGFueSBhbmQgcmV0dXJucyBpdC5cbiAqXG4gKiBAc2luY2UgMS4yMC4wXG4gKiBAcHJpdmF0ZVxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fHN0cmluZ30gdXJsIEEgc3RyaW5nIHdpdGggb3Igd2l0aG91dCB0cmFpbGluZyBzbGFzaCBvciBhbiBVUkwgb2JqZWN0LlxuICogQHJldHVybiB7c3RyaW5nfHVuZGVmaW5lZH0gVGhlIFVSTCBzdHJpbmcgYWZ0ZXIgcmVtb3ZpbmcgdGhlIHRyYWlsaW5nIHNsYXNoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW50cmFpbGluZ3NsYXNoaXQoIHVybCApIHtcblx0Y29uc3Qgb3JpZ2luYWxVUkwgPSB0eXBlb2YgdXJsID09PSAnb2JqZWN0JyA/IHVybC50b1N0cmluZygpIDogdXJsO1xuXHRyZXR1cm4gb3JpZ2luYWxVUkw/LnJlcGxhY2U/LiggL1xcLyskLywgJycgKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./js/util/sanitize.js\n");

/***/ }),

/***/ "./js/util/storage.js":
/*!****************************!*\
  !*** ./js/util/storage.js ***!
  \****************************/
/*! exports provided: storageAvailable, getStorage */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"storageAvailable\", function() { return storageAvailable; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getStorage\", function() { return getStorage; });\n/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ \"../node_modules/@babel/runtime/helpers/classCallCheck.js\");\n/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ \"../node_modules/@babel/runtime/helpers/createClass.js\");\n/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__);\n\n\n/**\n * Storage abstraction.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Detects whether browser storage is both supported and available.\n *\n * @since 1.0.0\n *\n * @param {string} type Browser storage to test. ex localStorage or sessionStorage.\n * @return {boolean} True if the given storage is available, false otherwise.\n */\nfunction storageAvailable(type) {\n  var storage = global[type];\n  if (!storage) {\n    return false;\n  }\n  try {\n    var x = '__storage_test__';\n    storage.setItem(x, x);\n    storage.removeItem(x);\n    return true;\n  } catch (e) {\n    return e instanceof DOMException && (\n    // everything except Firefox\n    22 === e.code ||\n    // Firefox\n    1014 === e.code ||\n    // test name field too, because code might not be present\n    // everything except Firefox\n    'QuotaExceededError' === e.name ||\n    // Firefox\n    'NS_ERROR_DOM_QUOTA_REACHED' === e.name) &&\n    // acknowledge QuotaExceededError only if there's something already stored\n    0 !== storage.length;\n  }\n}\n\n// Custom no-op implementation of window.Storage.\nvar NullStorage = /*#__PURE__*/function () {\n  function NullStorage() {\n    _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, NullStorage);\n  }\n  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(NullStorage, [{\n    key: \"key\",\n    value: function key() {\n      return null;\n    }\n  }, {\n    key: \"getItem\",\n    value: function getItem() {\n      return null;\n    }\n  }, {\n    key: \"setItem\",\n    value: function setItem() {\n      // Empty method body.\n    }\n  }, {\n    key: \"removeItem\",\n    value: function removeItem() {\n      // Empty method body.\n    }\n  }, {\n    key: \"clear\",\n    value: function clear() {\n      // Empty method body.\n    }\n  }, {\n    key: \"length\",\n    get: function get() {\n      return 0;\n    }\n  }]);\n  return NullStorage;\n}();\nvar storageObj;\n\n/**\n * Gets the storage object to use.\n *\n * @since 1.0.0\n *\n * @return {Storage} Either window.sessionStorage, window.localStorage', or a\n *                   no-op implementation if neither is available.\n */\nfunction getStorage() {\n  // Only run the logic to determine the storage object once.\n  if (!storageObj) {\n    if (storageAvailable('sessionStorage')) {\n      storageObj = global.sessionStorage;\n    } else if (storageAvailable('localStorage')) {\n      storageObj = global.localStorage;\n    } else {\n      storageObj = new NullStorage();\n    }\n  }\n  return storageObj;\n}\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../node_modules/webpack/buildin/global.js */ \"../node_modules/webpack/buildin/global.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/storage.js\n");

/***/ }),

/***/ "./js/util/stringify.js":
/*!******************************!*\
  !*** ./js/util/stringify.js ***!
  \******************************/
/*! exports provided: stringifyObject */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"stringifyObject\", function() { return stringifyObject; });\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ \"../node_modules/@babel/runtime/helpers/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var md5__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! md5 */ \"../node_modules/md5/md5.js\");\n/* harmony import */ var md5__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(md5__WEBPACK_IMPORTED_MODULE_1__);\n\n/**\n * Stringify function.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * External dependencies\n */\n\n\n/**\n * Transforms an object into a hash string.\n *\n * This function can be used to e.g. generate cache keys, based on the given\n * object. Object properties are sorted, so even if they are provided in\n * different order, the hash will match. The function furthermore supports\n * nested objects.\n *\n * @since 1.7.0\n *\n * @param {Object} obj The object to stringify.\n * @return {string} Hash for the object.\n */\nfunction stringifyObject(obj) {\n  return md5__WEBPACK_IMPORTED_MODULE_1___default()(JSON.stringify(sortObjectProperties(obj)));\n}\nfunction sortObjectProperties(obj) {\n  var orderedData = {};\n  Object.keys(obj).sort().forEach(function (key) {\n    var val = obj[key];\n    if (val && 'object' === _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(val) && !Array.isArray(val)) {\n      val = sortObjectProperties(val);\n    }\n    orderedData[key] = val;\n  });\n  return orderedData;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL3N0cmluZ2lmeS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL3V0aWwvc3RyaW5naWZ5LmpzP2I3NGUiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTdHJpbmdpZnkgZnVuY3Rpb24uXG4gKlxuICogU2l0ZSBLaXQgYnkgR29vZ2xlLCBDb3B5cmlnaHQgMjAyMSBHb29nbGUgTExDXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKipcbiAqIEV4dGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgbWQ1IGZyb20gJ21kNSc7XG5cbi8qKlxuICogVHJhbnNmb3JtcyBhbiBvYmplY3QgaW50byBhIGhhc2ggc3RyaW5nLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZS5nLiBnZW5lcmF0ZSBjYWNoZSBrZXlzLCBiYXNlZCBvbiB0aGUgZ2l2ZW5cbiAqIG9iamVjdC4gT2JqZWN0IHByb3BlcnRpZXMgYXJlIHNvcnRlZCwgc28gZXZlbiBpZiB0aGV5IGFyZSBwcm92aWRlZCBpblxuICogZGlmZmVyZW50IG9yZGVyLCB0aGUgaGFzaCB3aWxsIG1hdGNoLiBUaGUgZnVuY3Rpb24gZnVydGhlcm1vcmUgc3VwcG9ydHNcbiAqIG5lc3RlZCBvYmplY3RzLlxuICpcbiAqIEBzaW5jZSAxLjcuMFxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmogVGhlIG9iamVjdCB0byBzdHJpbmdpZnkuXG4gKiBAcmV0dXJuIHtzdHJpbmd9IEhhc2ggZm9yIHRoZSBvYmplY3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdpZnlPYmplY3QoIG9iaiApIHtcblx0cmV0dXJuIG1kNSggSlNPTi5zdHJpbmdpZnkoIHNvcnRPYmplY3RQcm9wZXJ0aWVzKCBvYmogKSApICk7XG59XG5cbmZ1bmN0aW9uIHNvcnRPYmplY3RQcm9wZXJ0aWVzKCBvYmogKSB7XG5cdGNvbnN0IG9yZGVyZWREYXRhID0ge307XG5cdE9iamVjdC5rZXlzKCBvYmogKVxuXHRcdC5zb3J0KClcblx0XHQuZm9yRWFjaCggKCBrZXkgKSA9PiB7XG5cdFx0XHRsZXQgdmFsID0gb2JqWyBrZXkgXTtcblx0XHRcdGlmICggdmFsICYmICdvYmplY3QnID09PSB0eXBlb2YgdmFsICYmICEgQXJyYXkuaXNBcnJheSggdmFsICkgKSB7XG5cdFx0XHRcdHZhbCA9IHNvcnRPYmplY3RQcm9wZXJ0aWVzKCB2YWwgKTtcblx0XHRcdH1cblx0XHRcdG9yZGVyZWREYXRhWyBrZXkgXSA9IHZhbDtcblx0XHR9ICk7XG5cdHJldHVybiBvcmRlcmVkRGF0YTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./js/util/stringify.js\n");

/***/ }),

/***/ "./js/util/tracking/constants.js":
/*!***************************************!*\
  !*** ./js/util/tracking/constants.js ***!
  \***************************************/
/*! exports provided: DATA_LAYER, SCRIPT_IDENTIFIER */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DATA_LAYER\", function() { return DATA_LAYER; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"SCRIPT_IDENTIFIER\", function() { return SCRIPT_IDENTIFIER; });\n/**\n * Constants related to event tracking.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Data layer global used for internal/private Site Kit data.\n *\n * @since 1.8.0\n * @private\n */\nvar DATA_LAYER = '_googlesitekitDataLayer';\n\n/**\n * The `gtag` `<script>` identifier.\n *\n * @since 1.8.0\n * @private\n */\nvar SCRIPT_IDENTIFIER = 'data-googlesitekit-gtag';//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL3RyYWNraW5nL2NvbnN0YW50cy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2pzL3V0aWwvdHJhY2tpbmcvY29uc3RhbnRzLmpzPzJkNjgiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb25zdGFudHMgcmVsYXRlZCB0byBldmVudCB0cmFja2luZy5cbiAqXG4gKiBTaXRlIEtpdCBieSBHb29nbGUsIENvcHlyaWdodCAyMDIxIEdvb2dsZSBMTENcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbi8qKlxuICogRGF0YSBsYXllciBnbG9iYWwgdXNlZCBmb3IgaW50ZXJuYWwvcHJpdmF0ZSBTaXRlIEtpdCBkYXRhLlxuICpcbiAqIEBzaW5jZSAxLjguMFxuICogQHByaXZhdGVcbiAqL1xuZXhwb3J0IGNvbnN0IERBVEFfTEFZRVIgPSAnX2dvb2dsZXNpdGVraXREYXRhTGF5ZXInO1xuXG4vKipcbiAqIFRoZSBgZ3RhZ2AgYDxzY3JpcHQ+YCBpZGVudGlmaWVyLlxuICpcbiAqIEBzaW5jZSAxLjguMFxuICogQHByaXZhdGVcbiAqL1xuZXhwb3J0IGNvbnN0IFNDUklQVF9JREVOVElGSUVSID0gJ2RhdGEtZ29vZ2xlc2l0ZWtpdC1ndGFnJztcbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./js/util/tracking/constants.js\n");

/***/ }),

/***/ "./js/util/tracking/createDataLayerPush.js":
/*!*************************************************!*\
  !*** ./js/util/tracking/createDataLayerPush.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return createDataLayerPush; });\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ \"./js/util/tracking/constants.js\");\n/**\n * Internal dependencies\n */\n\n\n/**\n * Returns a function which, when invoked will initialize the dataLayer and push data onto it.\n *\n * @since 1.3.0\n *\n * @param {Object} target Object to enhance with dataLayer data.\n * @return {Function} Function that pushes data onto the dataLayer.\n */\nfunction createDataLayerPush(target) {\n  /**\n   * Pushes data onto the data layer.\n   *\n   * Must push an instance of Arguments to the target.\n   * Using an ES6 spread operator (i.e. `...args`) will cause tracking events to\n   * _silently_ fail.\n   *\n   * @since 1.0.0\n   * @see {@link https://github.com/google/site-kit-wp/issues/1181}\n   */\n  return function dataLayerPush() {\n    target[_constants__WEBPACK_IMPORTED_MODULE_0__[\"DATA_LAYER\"]] = target[_constants__WEBPACK_IMPORTED_MODULE_0__[\"DATA_LAYER\"]] || [];\n    target[_constants__WEBPACK_IMPORTED_MODULE_0__[\"DATA_LAYER\"]].push(arguments);\n  };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL3RyYWNraW5nL2NyZWF0ZURhdGFMYXllclB1c2guanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9qcy91dGlsL3RyYWNraW5nL2NyZWF0ZURhdGFMYXllclB1c2guanM/ZTAyZSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgeyBEQVRBX0xBWUVSIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG4vKipcbiAqIFJldHVybnMgYSBmdW5jdGlvbiB3aGljaCwgd2hlbiBpbnZva2VkIHdpbGwgaW5pdGlhbGl6ZSB0aGUgZGF0YUxheWVyIGFuZCBwdXNoIGRhdGEgb250byBpdC5cbiAqXG4gKiBAc2luY2UgMS4zLjBcbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gdGFyZ2V0IE9iamVjdCB0byBlbmhhbmNlIHdpdGggZGF0YUxheWVyIGRhdGEuXG4gKiBAcmV0dXJuIHtGdW5jdGlvbn0gRnVuY3Rpb24gdGhhdCBwdXNoZXMgZGF0YSBvbnRvIHRoZSBkYXRhTGF5ZXIuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGNyZWF0ZURhdGFMYXllclB1c2goIHRhcmdldCApIHtcblx0LyoqXG5cdCAqIFB1c2hlcyBkYXRhIG9udG8gdGhlIGRhdGEgbGF5ZXIuXG5cdCAqXG5cdCAqIE11c3QgcHVzaCBhbiBpbnN0YW5jZSBvZiBBcmd1bWVudHMgdG8gdGhlIHRhcmdldC5cblx0ICogVXNpbmcgYW4gRVM2IHNwcmVhZCBvcGVyYXRvciAoaS5lLiBgLi4uYXJnc2ApIHdpbGwgY2F1c2UgdHJhY2tpbmcgZXZlbnRzIHRvXG5cdCAqIF9zaWxlbnRseV8gZmFpbC5cblx0ICpcblx0ICogQHNpbmNlIDEuMC4wXG5cdCAqIEBzZWUge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvc2l0ZS1raXQtd3AvaXNzdWVzLzExODF9XG5cdCAqL1xuXHRyZXR1cm4gZnVuY3Rpb24gZGF0YUxheWVyUHVzaCgpIHtcblx0XHR0YXJnZXRbIERBVEFfTEFZRVIgXSA9IHRhcmdldFsgREFUQV9MQVlFUiBdIHx8IFtdO1xuXHRcdHRhcmdldFsgREFUQV9MQVlFUiBdLnB1c2goIGFyZ3VtZW50cyApO1xuXHR9O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./js/util/tracking/createDataLayerPush.js\n");

/***/ }),

/***/ "./js/util/tracking/createInitializeSnippet.js":
/*!*****************************************************!*\
  !*** ./js/util/tracking/createInitializeSnippet.js ***!
  \*****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return createInitializeSnippet; });\n/* harmony import */ var _createDataLayerPush__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./createDataLayerPush */ \"./js/util/tracking/createDataLayerPush.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ \"./js/util/tracking/constants.js\");\n/* harmony import */ var _js_features_index__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/js/features/index */ \"./js/features/index.js\");\n/**\n * Internal dependencies\n */\n\n\n\n\n/**\n * Returns a function which, when invoked injects the gtag script if necessary.\n *\n * @since 1.44.0\n *\n * @param {Object} config          Tracking configuration.\n * @param {Object} dataLayerTarget Data layer parent object.\n * @return {Function} Function that injects gtag script if it isn't yet present.\n */\nfunction createInitializeSnippet(config, dataLayerTarget) {\n  var dataLayerPush = Object(_createDataLayerPush__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dataLayerTarget);\n  var hasInsertedTag;\n  var activeModules = config.activeModules,\n    referenceSiteURL = config.referenceSiteURL,\n    userIDHash = config.userIDHash,\n    _config$userRoles = config.userRoles,\n    userRoles = _config$userRoles === void 0 ? [] : _config$userRoles,\n    isAuthenticated = config.isAuthenticated,\n    pluginVersion = config.pluginVersion;\n  /**\n   * Injects the necessary script tag if not present.\n   *\n   * @since 1.118.0\n   *\n   * @return {boolean|Object} Tag src as scriptTagSrc property.\n   */\n  return function initializeSnippet() {\n    var _global = global,\n      document = _global.document;\n    if (undefined === hasInsertedTag) {\n      hasInsertedTag = !!document.querySelector(\"script[\".concat(_constants__WEBPACK_IMPORTED_MODULE_1__[\"SCRIPT_IDENTIFIER\"], \"]\"));\n    }\n    if (hasInsertedTag) {\n      return false;\n    }\n    hasInsertedTag = true;\n\n    // Sometimes the user roles returned by Site Kit/WordPress is not an\n    // array, as expected, so we guard against it here.\n    //\n    // See: https://github.com/google/site-kit-wp/issues/8266\n    var userRolesAsString = (userRoles === null || userRoles === void 0 ? void 0 : userRoles.length) ? userRoles.join(',') : '';\n\n    // We should use the real time, and not the reference date, when\n    // measuring when we initialized tracking.\n    dataLayerPush('js', new Date()); // eslint-disable-line sitekit/no-direct-date\n    dataLayerPush('config', config.trackingID, {\n      groups: 'site_kit',\n      send_page_view: config.isSiteKitScreen,\n      domain: referenceSiteURL,\n      plugin_version: pluginVersion || '',\n      enabled_features: Array.from(_js_features_index__WEBPACK_IMPORTED_MODULE_2__[\"enabledFeatures\"]).join(','),\n      active_modules: activeModules.join(','),\n      authenticated: isAuthenticated ? '1' : '0',\n      user_properties: {\n        user_roles: userRolesAsString,\n        user_identifier: userIDHash\n      }\n    });\n\n    // If not present, inject it and initialize dataLayer.\n    var scriptTag = document.createElement('script');\n    scriptTag.setAttribute(_constants__WEBPACK_IMPORTED_MODULE_1__[\"SCRIPT_IDENTIFIER\"], '');\n    scriptTag.async = true;\n    scriptTag.src = \"https://www.googletagmanager.com/gtag/js?id=\".concat(config.trackingID, \"&l=\").concat(_constants__WEBPACK_IMPORTED_MODULE_1__[\"DATA_LAYER\"]);\n    document.head.appendChild(scriptTag);\n    return {\n      scriptTagSrc: \"https://www.googletagmanager.com/gtag/js?id=\".concat(config.trackingID, \"&l=\").concat(_constants__WEBPACK_IMPORTED_MODULE_1__[\"DATA_LAYER\"])\n    };\n  };\n}\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../node_modules/webpack/buildin/global.js */ \"../node_modules/webpack/buildin/global.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/tracking/createInitializeSnippet.js\n");

/***/ }),

/***/ "./js/util/tracking/createTrackEvent.js":
/*!**********************************************!*\
  !*** ./js/util/tracking/createTrackEvent.js ***!
  \**********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return createTrackEvent; });\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"../node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ \"../node_modules/@babel/runtime/helpers/asyncToGenerator.js\");\n/* harmony import */ var _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _createDataLayerPush__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./createDataLayerPush */ \"./js/util/tracking/createDataLayerPush.js\");\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n/**\n * Internal dependencies\n */\n\n\n/**\n * Returns a function which, when invoked tracks a single event.\n *\n * @since 1.3.0\n *\n * @param {Object}   config            Tracking configuration.\n * @param {Object}   dataLayerTarget   Data layer parent object.\n * @param {Function} initializeSnippet Function to initialize tracking.\n * @param {Object}   _global           The global window object.\n * @return {Function} Function that tracks an event.\n */\nfunction createTrackEvent(config, dataLayerTarget, initializeSnippet, _global) {\n  var dataLayerPush = Object(_createDataLayerPush__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(dataLayerTarget);\n\n  /**\n   * Send an Analytics tracking event.\n   *\n   * @since 1.3.0\n   *\n   * @param {string} category The category of the event.\n   * @param {string} action   The action name of the event.\n   * @param {string} [label]  Optional. The label of the event.\n   * @param {number} [value]  Optional. A non-negative integer that will appear as the event value.\n   * @return {Promise} Promise that always resolves.\n   */\n  // eslint-disable-next-line require-await\n  return /*#__PURE__*/function () {\n    var _trackEvent = _babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_2___default()(/*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee(category, action, label, value) {\n      var trackingEnabled, eventData;\n      return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee$(_context) {\n        while (1) {\n          switch (_context.prev = _context.next) {\n            case 0:\n              trackingEnabled = config.trackingEnabled;\n              if (trackingEnabled) {\n                _context.next = 3;\n                break;\n              }\n              return _context.abrupt(\"return\", null);\n            case 3:\n              initializeSnippet();\n              eventData = {\n                send_to: 'site_kit',\n                event_category: category,\n                event_label: label,\n                value: value\n              };\n              return _context.abrupt(\"return\", new Promise(function (resolve) {\n                var _global$_gaUserPrefs, _global$_gaUserPrefs$;\n                // This timeout ensures a tracking event does not block the user\n                // event if it is not sent (in time).\n                // If the event beacon fails, it shouldn't reject the promise since event\n                // tracking should not result in user-facing errors. It will just\n                // trigger a console warning.\n                function failCallback() {\n                  _global.console.warn(\"Tracking event \\\"\".concat(action, \"\\\" (category \\\"\").concat(category, \"\\\") took too long to fire.\"));\n                  resolve();\n                }\n                var failTimeout = setTimeout(failCallback, 1000);\n                // eslint-disable-next-line camelcase\n                function event_callback() {\n                  clearTimeout(failTimeout);\n                  resolve();\n                }\n                dataLayerPush('event', action, _objectSpread(_objectSpread({}, eventData), {}, {\n                  event_callback: event_callback\n                }));\n\n                // If the client-side opt-out is present, the event_callback will never be called\n                // so we call it here to prevent the warning and added delay.\n                if ((_global$_gaUserPrefs = _global._gaUserPrefs) === null || _global$_gaUserPrefs === void 0 ? void 0 : (_global$_gaUserPrefs$ = _global$_gaUserPrefs.ioo) === null || _global$_gaUserPrefs$ === void 0 ? void 0 : _global$_gaUserPrefs$.call(_global$_gaUserPrefs)) {\n                  event_callback();\n                }\n              }));\n            case 6:\n            case \"end\":\n              return _context.stop();\n          }\n        }\n      }, _callee);\n    }));\n    function trackEvent(_x, _x2, _x3, _x4) {\n      return _trackEvent.apply(this, arguments);\n    }\n    return trackEvent;\n  }();\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/tracking/createTrackEvent.js\n");

/***/ }),

/***/ "./js/util/tracking/createTracking.js":
/*!********************************************!*\
  !*** ./js/util/tracking/createTracking.js ***!
  \********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return createTracking; });\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ \"../node_modules/@babel/runtime/helpers/defineProperty.js\");\n/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash */ \"../node_modules/lodash/lodash.js\");\n/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _createInitializeSnippet__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./createInitializeSnippet */ \"./js/util/tracking/createInitializeSnippet.js\");\n/* harmony import */ var _createTrackEvent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./createTrackEvent */ \"./js/util/tracking/createTrackEvent.js\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n/**\n * Site Kit by Google, Copyright 2023 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * External dependencies\n */\n\n\n/**\n * Internal dependencies\n */\n\n\nvar DEFAULT_CONFIG = {\n  activeModules: [],\n  isAuthenticated: false,\n  referenceSiteURL: '',\n  trackingEnabled: false,\n  trackingID: '',\n  userIDHash: '',\n  userRoles: []\n};\n\n/**\n * Initializes tracking.\n *\n * @since 1.3.0\n *\n * @param {Object} newConfig       New configuration.\n * @param {Object} dataLayerTarget Data layer parent object.\n * @param {Object} _global         The global window object.\n * @return {Object} Tracking config.\n */\nfunction createTracking(newConfig) {\n  var dataLayerTarget = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : global;\n  var _global = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : global;\n  var config = _objectSpread(_objectSpread({}, DEFAULT_CONFIG), newConfig);\n  // Remove any trailing slash from the reference URL.\n  if (config.referenceSiteURL) {\n    config.referenceSiteURL = config.referenceSiteURL.toString().replace(/\\/+$/, '');\n  }\n  var initializeSnippet = Object(_createInitializeSnippet__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(config, dataLayerTarget);\n  var trackEvent = Object(_createTrackEvent__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(config, dataLayerTarget, initializeSnippet, _global);\n  var onceTrackedEventsMap = {};\n  function trackEventOnce() {\n    for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {\n      params[_key] = arguments[_key];\n    }\n    var key = JSON.stringify(params);\n    if (!onceTrackedEventsMap[key]) {\n      onceTrackedEventsMap[key] = Object(lodash__WEBPACK_IMPORTED_MODULE_1__[\"once\"])(trackEvent);\n    }\n    onceTrackedEventsMap[key].apply(onceTrackedEventsMap, params);\n  }\n  return {\n    enableTracking: function enableTracking() {\n      config.trackingEnabled = true;\n    },\n    disableTracking: function disableTracking() {\n      config.trackingEnabled = false;\n    },\n    initializeSnippet: initializeSnippet,\n    isTrackingEnabled: function isTrackingEnabled() {\n      return !!config.trackingEnabled;\n    },\n    trackEvent: trackEvent,\n    trackEventOnce: trackEventOnce\n  };\n}\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../node_modules/webpack/buildin/global.js */ \"../node_modules/webpack/buildin/global.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/tracking/createTracking.js\n");

/***/ }),

/***/ "./js/util/tracking/index.js":
/*!***********************************!*\
  !*** ./js/util/tracking/index.js ***!
  \***********************************/
/*! exports provided: enableTracking, disableTracking, isTrackingEnabled, toggleTracking, trackEvent, trackEventOnce */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"enableTracking\", function() { return enableTracking; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"disableTracking\", function() { return disableTracking; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isTrackingEnabled\", function() { return isTrackingEnabled; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"toggleTracking\", function() { return toggleTracking; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"trackEvent\", function() { return trackEvent; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"trackEventOnce\", function() { return trackEventOnce; });\n/* harmony import */ var _createTracking__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./createTracking */ \"./js/util/tracking/createTracking.js\");\n/**\n * Event tracking utilities.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/* eslint-disable sitekit/jsdoc-no-unnamed-boolean-params */\n\n/**\n * Internal dependencies\n */\n\nvar _ref = global._googlesitekitTrackingData || {},\n  _ref$activeModules = _ref.activeModules,\n  activeModules = _ref$activeModules === void 0 ? [] : _ref$activeModules,\n  isSiteKitScreen = _ref.isSiteKitScreen,\n  trackingEnabled = _ref.trackingEnabled,\n  trackingID = _ref.trackingID,\n  referenceSiteURL = _ref.referenceSiteURL,\n  userIDHash = _ref.userIDHash,\n  isAuthenticated = _ref.isAuthenticated,\n  userRoles = _ref.userRoles;\nvar _global = global,\n  pluginVersion = \"1.161.0\";\nvar initialConfig = {\n  activeModules: activeModules,\n  trackingEnabled: trackingEnabled,\n  trackingID: trackingID,\n  referenceSiteURL: referenceSiteURL,\n  userIDHash: userIDHash,\n  isSiteKitScreen: isSiteKitScreen,\n  userRoles: userRoles,\n  isAuthenticated: isAuthenticated,\n  pluginVersion: pluginVersion\n};\nvar _createTracking = Object(_createTracking__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(initialConfig),\n  enableTracking = _createTracking.enableTracking,\n  disableTracking = _createTracking.disableTracking,\n  isTrackingEnabled = _createTracking.isTrackingEnabled,\n  initializeSnippet = _createTracking.initializeSnippet,\n  trackEvent = _createTracking.trackEvent,\n  trackEventOnce = _createTracking.trackEventOnce;\n/**\n * Changes the active state of tracking.\n *\n * @since 1.3.0\n *\n * @param {boolean} activeStatus The new state to set.\n */\nfunction toggleTracking(activeStatus) {\n  if (!!activeStatus) {\n    enableTracking();\n  } else {\n    disableTracking();\n  }\n}\n\n// Bootstrap on import if tracking is allowed.\nif (isSiteKitScreen && trackingEnabled) {\n  initializeSnippet();\n}\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../node_modules/webpack/buildin/global.js */ \"../node_modules/webpack/buildin/global.js\")))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9qcy91dGlsL3RyYWNraW5nL2luZGV4LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vanMvdXRpbC90cmFja2luZy9pbmRleC5qcz82YTc3Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXZlbnQgdHJhY2tpbmcgdXRpbGl0aWVzLlxuICpcbiAqIFNpdGUgS2l0IGJ5IEdvb2dsZSwgQ29weXJpZ2h0IDIwMjEgR29vZ2xlIExMQ1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuLyogZXNsaW50LWRpc2FibGUgc2l0ZWtpdC9qc2RvYy1uby11bm5hbWVkLWJvb2xlYW4tcGFyYW1zICovXG5cbi8qKlxuICogSW50ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCBjcmVhdGVUcmFja2luZyBmcm9tICcuL2NyZWF0ZVRyYWNraW5nJztcblxuY29uc3Qge1xuXHRhY3RpdmVNb2R1bGVzID0gW10sXG5cdGlzU2l0ZUtpdFNjcmVlbixcblx0dHJhY2tpbmdFbmFibGVkLFxuXHR0cmFja2luZ0lELFxuXHRyZWZlcmVuY2VTaXRlVVJMLFxuXHR1c2VySURIYXNoLFxuXHRpc0F1dGhlbnRpY2F0ZWQsXG5cdHVzZXJSb2xlcyxcbn0gPSBnbG9iYWwuX2dvb2dsZXNpdGVraXRUcmFja2luZ0RhdGEgfHwge307XG5cbmNvbnN0IHsgR09PR0xFU0lURUtJVF9WRVJTSU9OOiBwbHVnaW5WZXJzaW9uIH0gPSBnbG9iYWw7XG5cbmNvbnN0IGluaXRpYWxDb25maWcgPSB7XG5cdGFjdGl2ZU1vZHVsZXMsXG5cdHRyYWNraW5nRW5hYmxlZCxcblx0dHJhY2tpbmdJRCxcblx0cmVmZXJlbmNlU2l0ZVVSTCxcblx0dXNlcklESGFzaCxcblx0aXNTaXRlS2l0U2NyZWVuLFxuXHR1c2VyUm9sZXMsXG5cdGlzQXV0aGVudGljYXRlZCxcblx0cGx1Z2luVmVyc2lvbixcbn07XG5cbmNvbnN0IHtcblx0ZW5hYmxlVHJhY2tpbmcsXG5cdGRpc2FibGVUcmFja2luZyxcblx0aXNUcmFja2luZ0VuYWJsZWQsXG5cdGluaXRpYWxpemVTbmlwcGV0LFxuXHR0cmFja0V2ZW50LFxuXHR0cmFja0V2ZW50T25jZSxcbn0gPSBjcmVhdGVUcmFja2luZyggaW5pdGlhbENvbmZpZyApO1xuXG4vKipcbiAqIENoYW5nZXMgdGhlIGFjdGl2ZSBzdGF0ZSBvZiB0cmFja2luZy5cbiAqXG4gKiBAc2luY2UgMS4zLjBcbiAqXG4gKiBAcGFyYW0ge2Jvb2xlYW59IGFjdGl2ZVN0YXR1cyBUaGUgbmV3IHN0YXRlIHRvIHNldC5cbiAqL1xuZnVuY3Rpb24gdG9nZ2xlVHJhY2tpbmcoIGFjdGl2ZVN0YXR1cyApIHtcblx0aWYgKCAhISBhY3RpdmVTdGF0dXMgKSB7XG5cdFx0ZW5hYmxlVHJhY2tpbmcoKTtcblx0fSBlbHNlIHtcblx0XHRkaXNhYmxlVHJhY2tpbmcoKTtcblx0fVxufVxuXG4vLyBCb290c3RyYXAgb24gaW1wb3J0IGlmIHRyYWNraW5nIGlzIGFsbG93ZWQuXG5pZiAoIGlzU2l0ZUtpdFNjcmVlbiAmJiB0cmFja2luZ0VuYWJsZWQgKSB7XG5cdGluaXRpYWxpemVTbmlwcGV0KCk7XG59XG5cbmV4cG9ydCB7XG5cdGVuYWJsZVRyYWNraW5nLFxuXHRkaXNhYmxlVHJhY2tpbmcsXG5cdGlzVHJhY2tpbmdFbmFibGVkLFxuXHR0b2dnbGVUcmFja2luZyxcblx0dHJhY2tFdmVudCxcblx0dHJhY2tFdmVudE9uY2UsXG59O1xuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFXQTtBQVJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUdBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./js/util/tracking/index.js\n");

/***/ }),

/***/ "./js/util/urls.js":
/*!*************************!*\
  !*** ./js/util/urls.js ***!
  \*************************/
/*! exports provided: getURLPath, getFullURL, normalizeURL, isHashOnly, shortenURL */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getURLPath\", function() { return getURLPath; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getFullURL\", function() { return getFullURL; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"normalizeURL\", function() { return normalizeURL; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isHashOnly\", function() { return isHashOnly; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"shortenURL\", function() { return shortenURL; });\n/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/url */ \"../node_modules/@wordpress/url/build-module/index.js\");\n/**\n * URL pathname getter utility function.\n *\n * Site Kit by Google, Copyright 2021 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * WordPress dependencies\n */\n\n\n/**\n * Returns the path from a URL, omitting its protocol, hostname, query params, and hash.\n *\n * @since 1.24.0\n *\n * @param {string} url The URL to get the path from.\n * @return {string} The URL path.\n */\nfunction getURLPath(url) {\n  try {\n    return new URL(url).pathname;\n  } catch (_unused) {}\n  return null;\n}\n\n/**\n * Returns the absolute URL from a path including the siteURL.\n *\n * @since 1.32.0\n *\n * @param {string} siteURL The siteURL fo the WordPress install.\n * @param {string} path    The path.\n * @return {string} The URL path.\n */\nfunction getFullURL(siteURL, path) {\n  try {\n    return new URL(path, siteURL).href;\n  } catch (_unused2) {}\n  return (typeof siteURL === 'string' ? siteURL : '') + (typeof path === 'string' ? path : '');\n}\n\n/**\n * Normalizes URL by removing protocol, www subdomain and trailing slash.\n *\n * @since 1.33.0\n *\n * @param {string} incomingURL The original URL.\n * @return {string} Normalized URL.\n */\nfunction normalizeURL(incomingURL) {\n  if (typeof incomingURL !== 'string') {\n    return incomingURL;\n  }\n  return incomingURL\n  // Remove protocol and optional \"www.\" prefix from the URL.\n  .replace(/^https?:\\/\\/(www\\.)?/i, '')\n  // Remove trailing slash.\n  .replace(/\\/$/, '');\n}\n\n/**\n * Checks if a string is not a full URL and simply a hash / anchor link.\n *\n * @since 1.49.0\n *\n * @param {string} url The URL or Hash string to test.\n * @return {boolean} Returns true if the string is only a hash and not a full URL.\n */\nfunction isHashOnly(url) {\n  return /^#\\w[A-Za-z0-9-_]*$/.test(url);\n}\n\n/**\n * Shortens a URL to fit a given length.\n *\n * @since 1.49.0\n *\n * @param {string} url      The original URL to shorten.\n * @param {number} maxChars The maximum length of the URL.\n * @return {string} The shortened URL.\n */\nfunction shortenURL(url, maxChars) {\n  if (!Object(_wordpress_url__WEBPACK_IMPORTED_MODULE_0__[\"isURL\"])(url)) {\n    return url;\n  }\n  if (url.length <= maxChars) {\n    return url;\n  }\n  var urlObject = new URL(url);\n  var shortenedURL = url.replace(urlObject.origin, '');\n  if (shortenedURL.length < maxChars) {\n    return shortenedURL;\n  }\n  var extraChars = shortenedURL.length - Math.floor(maxChars) + 1; // 1 is the length of \"…\".\n  return '…' + shortenedURL.substr(extraChars);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64, \n//# sourceURL=webpack-internal:///./js/util/urls.js\n");

/***/ }),

/***/ "@wordpress/i18n":
/*!*****************************************!*\
  !*** external ["googlesitekit","i18n"] ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

eval("module.exports = googlesitekit[\"i18n\"];//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQHdvcmRwcmVzcy9pMThuLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL2V4dGVybmFsIFtcImdvb2dsZXNpdGVraXRcIixcImkxOG5cIl0/YTFhZCJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IGdvb2dsZXNpdGVraXRbXCJpMThuXCJdOyJdLCJtYXBwaW5ncyI6IkFBQUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///@wordpress/i18n\n");

/***/ }),

/***/ "googlesitekit-data":
/*!*****************************************!*\
  !*** external ["googlesitekit","data"] ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

eval("module.exports = googlesitekit[\"data\"];//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlc2l0ZWtpdC1kYXRhLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL2V4dGVybmFsIFtcImdvb2dsZXNpdGVraXRcIixcImRhdGFcIl0/NzIwYyJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IGdvb2dsZXNpdGVraXRbXCJkYXRhXCJdOyJdLCJtYXBwaW5ncyI6IkFBQUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///googlesitekit-data\n");

/***/ })

},[["./js/googlesitekit-datastore-forms.js","runtime","googlesitekit-vendor"]]]);