{"version":3,"file":"app-09c273fb8f37cbe7a87e.js","mappings":"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","sources":["webpack://early_menopause_app/./node_modules/@gatsbyjs/reach-router/dist/index.modern.mjs","webpack://early_menopause_app/./node_modules/gatsby-page-utils/dist/apply-trailing-slash-option.js","webpack://early_menopause_app/./node_modules/gatsby/dist/internal-plugins/partytown/gatsby-browser.js","webpack://early_menopause_app/./node_modules/gatsby/dist/internal-plugins/partytown/utils/get-forwards.js","webpack://early_menopause_app/./node_modules/gatsby/dist/internal-plugins/partytown/utils/inject-partytown-snippet.js","webpack://early_menopause_app/./node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack.production.min.js","webpack://early_menopause_app/./node_modules/react-server-dom-webpack/index.js","webpack://early_menopause_app/./node_modules/gatsby-react-router-scroll/index.js","webpack://early_menopause_app/./node_modules/gatsby-react-router-scroll/scroll-handler.js","webpack://early_menopause_app/./node_modules/gatsby-react-router-scroll/session-storage.js","webpack://early_menopause_app/./node_modules/gatsby-react-router-scroll/use-scroll-restoration.js","webpack://early_menopause_app/./.cache/_this_is_virtual_fs_path_/$virtual/async-requires.js","webpack://early_menopause_app/./.cache/api-runner-browser-plugins.js","webpack://early_menopause_app/./.cache/api-runner-browser.js","webpack://early_menopause_app/./.cache/create-content-digest-browser-shim.js","webpack://early_menopause_app/./node_modules/mitt/dist/mitt.es.js","webpack://early_menopause_app/./.cache/emitter.js","webpack://early_menopause_app/./.cache/normalize-page-path.js","webpack://early_menopause_app/./.cache/find-path.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/construct.js","webpack://early_menopause_app/./.cache/slice/server-slice-renderer.js","webpack://early_menopause_app/./.cache/slice/server-slice.js","webpack://early_menopause_app/./.cache/slice/inline-slice.js","webpack://early_menopause_app/./.cache/slice.js","webpack://early_menopause_app/./.cache/gatsby-browser-entry.js","webpack://early_menopause_app/./.cache/prefetch.js","webpack://early_menopause_app/./.cache/loader.js","webpack://early_menopause_app/./.cache/head/components/fire-callback-in-effect.js","webpack://early_menopause_app/./.cache/head/constants.js","webpack://early_menopause_app/./.cache/head/utils.js","webpack://early_menopause_app/./.cache/head/head-export-handler-for-browser.js","webpack://early_menopause_app/./.cache/page-renderer.js","webpack://early_menopause_app/./.cache/route-announcer-props.js","webpack://early_menopause_app/./.cache/navigation.js","webpack://early_menopause_app/./node_modules/shallow-compare/es/index.js","webpack://early_menopause_app/./.cache/ensure-resources.js","webpack://early_menopause_app/./.cache/production-app.js","webpack://early_menopause_app/./.cache/public-page-renderer-prod.js","webpack://early_menopause_app/./.cache/public-page-renderer.js","webpack://early_menopause_app/./.cache/react-dom-utils.js","webpack://early_menopause_app/./.cache/redirect-utils.js","webpack://early_menopause_app/./.cache/register-service-worker.js","webpack://early_menopause_app/./.cache/slice/context.js","webpack://early_menopause_app/./.cache/static-query.js","webpack://early_menopause_app/./.cache/context-utils.js","webpack://early_menopause_app/./.cache/strip-prefix.js","webpack://early_menopause_app/./gatsby-browser.js","webpack://early_menopause_app/./node_modules/gatsby-plugin-google-tagmanager/gatsby-browser.js","webpack://early_menopause_app/./node_modules/gatsby-plugin-manifest/gatsby-browser.js","webpack://early_menopause_app/./node_modules/gatsby-plugin-manifest/get-manifest-pathname.js","webpack://early_menopause_app/./node_modules/gatsby-plugin-offline/gatsby-browser.js","webpack://early_menopause_app/./node_modules/invariant/browser.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack://early_menopause_app/./node_modules/@builder.io/partytown/integration/index.cjs","webpack://early_menopause_app/./node_modules/core-js/internals/a-callable.js","webpack://early_menopause_app/./node_modules/core-js/internals/add-to-unscopables.js","webpack://early_menopause_app/./node_modules/core-js/internals/an-object.js","webpack://early_menopause_app/./node_modules/core-js/internals/array-includes.js","webpack://early_menopause_app/./node_modules/core-js/internals/array-method-is-strict.js","webpack://early_menopause_app/./node_modules/core-js/internals/array-slice.js","webpack://early_menopause_app/./node_modules/core-js/internals/array-sort.js","webpack://early_menopause_app/./node_modules/core-js/internals/array-species-constructor.js","webpack://early_menopause_app/./node_modules/core-js/internals/array-species-create.js","webpack://early_menopause_app/./node_modules/core-js/internals/classof-raw.js","webpack://early_menopause_app/./node_modules/core-js/internals/classof.js","webpack://early_menopause_app/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://early_menopause_app/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://early_menopause_app/./node_modules/core-js/internals/create-property-descriptor.js","webpack://early_menopause_app/./node_modules/core-js/internals/define-built-in.js","webpack://early_menopause_app/./node_modules/core-js/internals/define-global-property.js","webpack://early_menopause_app/./node_modules/core-js/internals/delete-property-or-throw.js","webpack://early_menopause_app/./node_modules/core-js/internals/descriptors.js","webpack://early_menopause_app/./node_modules/core-js/internals/document-create-element.js","webpack://early_menopause_app/./node_modules/core-js/internals/does-not-exceed-safe-integer.js","webpack://early_menopause_app/./node_modules/core-js/internals/enum-bug-keys.js","webpack://early_menopause_app/./node_modules/core-js/internals/environment-ff-version.js","webpack://early_menopause_app/./node_modules/core-js/internals/environment-is-ie-or-edge.js","webpack://early_menopause_app/./node_modules/core-js/internals/environment-user-agent.js","webpack://early_menopause_app/./node_modules/core-js/internals/environment-v8-version.js","webpack://early_menopause_app/./node_modules/core-js/internals/environment-webkit-version.js","webpack://early_menopause_app/./node_modules/core-js/internals/export.js","webpack://early_menopause_app/./node_modules/core-js/internals/fails.js","webpack://early_menopause_app/./node_modules/core-js/internals/flatten-into-array.js","webpack://early_menopause_app/./node_modules/core-js/internals/function-bind-context.js","webpack://early_menopause_app/./node_modules/core-js/internals/function-bind-native.js","webpack://early_menopause_app/./node_modules/core-js/internals/function-call.js","webpack://early_menopause_app/./node_modules/core-js/internals/function-name.js","webpack://early_menopause_app/./node_modules/core-js/internals/function-uncurry-this-clause.js","webpack://early_menopause_app/./node_modules/core-js/internals/function-uncurry-this.js","webpack://early_menopause_app/./node_modules/core-js/internals/get-built-in.js","webpack://early_menopause_app/./node_modules/core-js/internals/get-method.js","webpack://early_menopause_app/./node_modules/core-js/internals/global-this.js","webpack://early_menopause_app/./node_modules/core-js/internals/has-own-property.js","webpack://early_menopause_app/./node_modules/core-js/internals/hidden-keys.js","webpack://early_menopause_app/./node_modules/core-js/internals/html.js","webpack://early_menopause_app/./node_modules/core-js/internals/ie8-dom-define.js","webpack://early_menopause_app/./node_modules/core-js/internals/indexed-object.js","webpack://early_menopause_app/./node_modules/core-js/internals/inspect-source.js","webpack://early_menopause_app/./node_modules/core-js/internals/internal-state.js","webpack://early_menopause_app/./node_modules/core-js/internals/is-array.js","webpack://early_menopause_app/./node_modules/core-js/internals/is-callable.js","webpack://early_menopause_app/./node_modules/core-js/internals/is-constructor.js","webpack://early_menopause_app/./node_modules/core-js/internals/is-forced.js","webpack://early_menopause_app/./node_modules/core-js/internals/is-null-or-undefined.js","webpack://early_menopause_app/./node_modules/core-js/internals/is-object.js","webpack://early_menopause_app/./node_modules/core-js/internals/is-pure.js","webpack://early_menopause_app/./node_modules/core-js/internals/is-symbol.js","webpack://early_menopause_app/./node_modules/core-js/internals/length-of-array-like.js","webpack://early_menopause_app/./node_modules/core-js/internals/make-built-in.js","webpack://early_menopause_app/./node_modules/core-js/internals/math-trunc.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-create.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-define-properties.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-define-property.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-keys-internal.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-keys.js","webpack://early_menopause_app/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://early_menopause_app/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://early_menopause_app/./node_modules/core-js/internals/own-keys.js","webpack://early_menopause_app/./node_modules/core-js/internals/require-object-coercible.js","webpack://early_menopause_app/./node_modules/core-js/internals/shared-key.js","webpack://early_menopause_app/./node_modules/core-js/internals/shared-store.js","webpack://early_menopause_app/./node_modules/core-js/internals/shared.js","webpack://early_menopause_app/./node_modules/core-js/internals/symbol-constructor-detection.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-absolute-index.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-indexed-object.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-length.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-object.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-primitive.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-property-key.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-string-tag-support.js","webpack://early_menopause_app/./node_modules/core-js/internals/to-string.js","webpack://early_menopause_app/./node_modules/core-js/internals/try-to-string.js","webpack://early_menopause_app/./node_modules/core-js/internals/uid.js","webpack://early_menopause_app/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://early_menopause_app/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://early_menopause_app/./node_modules/core-js/internals/weak-map-basic-detection.js","webpack://early_menopause_app/./node_modules/core-js/internals/well-known-symbol.js","webpack://early_menopause_app/./node_modules/core-js/modules/es.array.flat-map.js","webpack://early_menopause_app/./node_modules/core-js/modules/es.array.sort.js","webpack://early_menopause_app/./node_modules/core-js/modules/es.array.unscopables.flat-map.js","webpack://early_menopause_app/./node_modules/core-js/modules/es.global-this.js","webpack://early_menopause_app/./node_modules/core-js/modules/esnext.global-this.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://early_menopause_app/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://early_menopause_app/./node_modules/gatsby-link/dist/index.modern.mjs","webpack://early_menopause_app/./node_modules/gatsby-script/dist/index.modern.mjs"],"sourcesContent":["import _classCallCheck from \"/codebuild/output/src4099276006/src/early-menopause-app/node_modules/@babel/runtime/helpers/esm/classCallCheck.js\";\nimport _createClass from \"/codebuild/output/src4099276006/src/early-menopause-app/node_modules/@babel/runtime/helpers/esm/createClass.js\";\nimport _possibleConstructorReturn from \"/codebuild/output/src4099276006/src/early-menopause-app/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js\";\nimport _getPrototypeOf from \"/codebuild/output/src4099276006/src/early-menopause-app/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js\";\nimport _inherits from \"/codebuild/output/src4099276006/src/early-menopause-app/node_modules/@babel/runtime/helpers/esm/inherits.js\";\nimport _slicedToArray from \"/codebuild/output/src4099276006/src/early-menopause-app/node_modules/@babel/runtime/helpers/esm/slicedToArray.js\";\nfunction _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nimport \"core-js/modules/es.array.sort.js\";\nimport \"core-js/modules/esnext.global-this.js\";\nimport * as e from \"react\";\nimport t from \"react\";\nimport r from \"prop-types\";\nimport n from \"invariant\";\nfunction o() {\n return o = Object.assign ? Object.assign.bind() : function (e) {\n for (var t = 1; t < arguments.length; t++) {\n var r = arguments[t];\n for (var n in r) Object.prototype.hasOwnProperty.call(r, n) && (e[n] = r[n]);\n }\n return e;\n }, o.apply(this, arguments);\n}\nfunction a(e, t) {\n if (null == e) return {};\n var r,\n n,\n o = {},\n a = Object.keys(e);\n for (n = 0; n < a.length; n++) t.indexOf(r = a[n]) >= 0 || (o[r] = e[r]);\n return o;\n}\nvar s = function s(e) {\n var _e$location = e.location,\n t = _e$location.search,\n r = _e$location.hash,\n n = _e$location.href,\n o = _e$location.origin,\n a = _e$location.protocol,\n s = _e$location.host,\n i = _e$location.hostname,\n c = _e$location.port;\n var l = e.location.pathname;\n return !l && n && u && (l = new URL(n).pathname), {\n pathname: encodeURI(decodeURI(l)),\n search: t,\n hash: r,\n href: n,\n origin: o,\n protocol: a,\n host: s,\n hostname: i,\n port: c,\n state: e.history.state,\n key: e.history.state && e.history.state.key || \"initial\"\n };\n },\n i = function i(e, t) {\n var r = [],\n n = s(e),\n a = !1,\n i = function i() {};\n return {\n get location() {\n return n;\n },\n get transitioning() {\n return a;\n },\n _onTransitionComplete: function _onTransitionComplete() {\n a = !1, i();\n },\n listen: function listen(t) {\n r.push(t);\n var o = function o() {\n n = s(e), t({\n location: n,\n action: \"POP\"\n });\n };\n return e.addEventListener(\"popstate\", o), function () {\n e.removeEventListener(\"popstate\", o), r = r.filter(function (e) {\n return e !== t;\n });\n };\n },\n navigate: function navigate(t) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n c = _ref.state,\n _ref$replace = _ref.replace,\n u = _ref$replace === void 0 ? !1 : _ref$replace;\n if (\"number\" == typeof t) e.history.go(t);else {\n c = o({}, c, {\n key: Date.now() + \"\"\n });\n try {\n a || u ? e.history.replaceState(c, null, t) : e.history.pushState(c, null, t);\n } catch (r) {\n e.location[u ? \"replace\" : \"assign\"](t);\n }\n }\n n = s(e), a = !0;\n var l = new Promise(function (e) {\n return i = e;\n });\n return r.forEach(function (e) {\n return e({\n location: n,\n action: \"PUSH\"\n });\n }), l;\n }\n };\n },\n c = function c() {\n var e = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"/\";\n var t = e.indexOf(\"?\"),\n r = {\n pathname: t > -1 ? e.substr(0, t) : e,\n search: t > -1 ? e.substr(t) : \"\"\n };\n var n = 0;\n var o = [r],\n a = [null];\n return {\n get location() {\n return o[n];\n },\n addEventListener: function addEventListener(e, t) {},\n removeEventListener: function removeEventListener(e, t) {},\n history: {\n get entries() {\n return o;\n },\n get index() {\n return n;\n },\n get state() {\n return a[n];\n },\n pushState: function pushState(e, t, r) {\n var _r$split = r.split(\"?\"),\n _r$split2 = _slicedToArray(_r$split, 2),\n s = _r$split2[0],\n _r$split2$ = _r$split2[1],\n i = _r$split2$ === void 0 ? \"\" : _r$split2$;\n n++, o.push({\n pathname: s,\n search: i.length ? \"?\".concat(i) : i\n }), a.push(e);\n },\n replaceState: function replaceState(e, t, r) {\n var _r$split3 = r.split(\"?\"),\n _r$split4 = _slicedToArray(_r$split3, 2),\n s = _r$split4[0],\n _r$split4$ = _r$split4[1],\n i = _r$split4$ === void 0 ? \"\" : _r$split4$;\n o[n] = {\n pathname: s,\n search: i\n }, a[n] = e;\n },\n go: function go(e) {\n var t = n + e;\n t < 0 || t > a.length - 1 || (n = t);\n }\n }\n };\n },\n u = !(\"undefined\" == typeof window || !window.document || !window.document.createElement),\n l = i(u ? window : c()),\n p = l.navigate;\nfunction h(e, r) {\n return t.createServerContext ? function (e) {\n var r = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n return globalThis.__SERVER_CONTEXT || (globalThis.__SERVER_CONTEXT = {}), globalThis.__SERVER_CONTEXT[e] || (globalThis.__SERVER_CONTEXT[e] = t.createServerContext(e, r)), globalThis.__SERVER_CONTEXT[e];\n }(e, r) : t.createContext(r);\n}\nvar m = h(\"Base\", {\n baseuri: \"/\",\n basepath: \"/\"\n }),\n d = h(\"Location\"),\n f = function f() {\n return e.useContext(m);\n },\n y = function y() {\n return e.useContext(d);\n };\nfunction E(e) {\n this.uri = e;\n}\nvar g = function g(e) {\n return e instanceof E;\n },\n v = function v(e) {\n throw new E(e);\n };\nfunction b(t) {\n var r = t.to,\n _t$replace = t.replace,\n n = _t$replace === void 0 ? !0 : _t$replace,\n o = t.state,\n a = t.noThrow,\n s = t.baseuri;\n e.useEffect(function () {\n Promise.resolve().then(function () {\n var e = k(r, s);\n p(P(e, t), {\n replace: n,\n state: o\n });\n });\n }, []);\n var i = k(r, s);\n return a || v(P(i, t)), null;\n}\nvar R = function R(t) {\n var r = y(),\n _f = f(),\n n = _f.baseuri; /*#__PURE__*/\n return e.createElement(b, o({}, r, {\n baseuri: n\n }, t));\n};\nR.propTypes = {\n from: r.string,\n to: r.string.isRequired\n};\nvar C = function C(e, t) {\n return e.substr(0, t.length) === t;\n },\n w = function w(e, t) {\n var r, o;\n var _t$split = t.split(\"?\"),\n _t$split2 = _slicedToArray(_t$split, 1),\n a = _t$split2[0],\n s = N(a),\n i = \"\" === s[0],\n c = j(e);\n for (var _e = 0, _a = c.length; _e < _a; _e++) {\n var _a2 = !1;\n var _u = c[_e].route;\n if (_u.default) {\n o = {\n route: _u,\n params: {},\n uri: t\n };\n continue;\n }\n var _l = N(_u.path),\n _p = {},\n _h = Math.max(s.length, _l.length);\n var _m = 0;\n for (; _m < _h; _m++) {\n var _e2 = _l[_m],\n _t = s[_m];\n if ($(_e2)) {\n _p[_e2.slice(1) || \"*\"] = s.slice(_m).map(decodeURIComponent).join(\"/\");\n break;\n }\n if (void 0 === _t) {\n _a2 = !0;\n break;\n }\n var _r = O.exec(_e2);\n if (_r && !i) {\n var _e3 = -1 === U.indexOf(_r[1]);\n n(_e3, \" dynamic segment \\\"\".concat(_r[1], \"\\\" is a reserved name. Please use a different name in path \\\"\").concat(_u.path, \"\\\".\"));\n var _o = decodeURIComponent(_t);\n _p[_r[1]] = _o;\n } else if (_e2 !== _t) {\n _a2 = !0;\n break;\n }\n }\n if (!_a2) {\n r = {\n route: _u,\n params: _p,\n uri: \"/\" + s.slice(0, _m).join(\"/\")\n };\n break;\n }\n }\n return r || o || null;\n },\n x = function x(e, t) {\n return w([{\n path: e\n }], t);\n },\n k = function k(e, t) {\n if (C(e, \"/\")) return e;\n var _e$split = e.split(\"?\"),\n _e$split2 = _slicedToArray(_e$split, 2),\n r = _e$split2[0],\n n = _e$split2[1],\n _t$split3 = t.split(\"?\"),\n _t$split4 = _slicedToArray(_t$split3, 1),\n o = _t$split4[0],\n a = N(r),\n s = N(o);\n if (\"\" === a[0]) return L(o, n);\n if (!C(a[0], \".\")) {\n var _e4 = s.concat(a).join(\"/\");\n return L((\"/\" === o ? \"\" : \"/\") + _e4, n);\n }\n var i = s.concat(a),\n c = [];\n for (var _e5 = 0, _t2 = i.length; _e5 < _t2; _e5++) {\n var _t3 = i[_e5];\n \"..\" === _t3 ? c.pop() : \".\" !== _t3 && c.push(_t3);\n }\n return L(\"/\" + c.join(\"/\"), n);\n },\n P = function P(e, t) {\n var _e$split3 = e.split(\"?\"),\n _e$split4 = _slicedToArray(_e$split3, 2),\n r = _e$split4[0],\n _e$split4$ = _e$split4[1],\n n = _e$split4$ === void 0 ? \"\" : _e$split4$;\n var o = \"/\" + N(r).map(function (e) {\n var r = O.exec(e);\n return r ? t[r[1]] : e;\n }).join(\"/\");\n var _t$location = t.location,\n _t$location2 = _t$location === void 0 ? {} : _t$location,\n _t$location2$search = _t$location2.search,\n a = _t$location2$search === void 0 ? \"\" : _t$location2$search,\n s = a.split(\"?\")[1] || \"\";\n return o = L(o, n, s), o;\n },\n T = function T(e, t) {\n var r = function r(e) {\n return _(e);\n };\n return N(e).filter(r).sort().join(\"/\") === N(t).filter(r).sort().join(\"/\");\n },\n O = /^:(.+)/,\n _ = function _(e) {\n return O.test(e);\n },\n $ = function $(e) {\n return e && \"*\" === e[0];\n },\n S = function S(e, t) {\n return {\n route: e,\n score: e.default ? 0 : N(e.path).reduce(function (e, t) {\n return e += 4, function (e) {\n return \"\" === e;\n }(t) ? e += 1 : _(t) ? e += 2 : $(t) ? e -= 5 : e += 3, e;\n }, 0),\n index: t\n };\n },\n j = function j(e) {\n return e.map(S).sort(function (e, t) {\n return e.score < t.score ? 1 : e.score > t.score ? -1 : e.index - t.index;\n });\n },\n N = function N(e) {\n return e.replace(/(^\\/+|\\/+$)/g, \"\").split(\"/\");\n },\n L = function L(e) {\n for (var _len = arguments.length, t = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n t[_key - 1] = arguments[_key];\n }\n return e + ((t = t.filter(function (e) {\n return e && e.length > 0;\n })) && t.length > 0 ? \"?\".concat(t.join(\"&\")) : \"\");\n },\n U = [\"uri\", \"path\"],\n D = function D(e, t) {\n var r = Object.keys(e);\n return r.length === Object.keys(t).length && r.every(function (r) {\n return t.hasOwnProperty(r) && e[r] === t[r];\n });\n },\n M = function M(e) {\n return e.replace(/(^\\/+|\\/+$)/g, \"\");\n },\n _I = function I(t) {\n return function (r) {\n if (!r) return null;\n if (r.type === e.Fragment && r.props.children) return e.Children.map(r.props.children, _I(t));\n if (n(r.props.path || r.props.default || r.type === R, \": Children of must have a `path` or `default` prop, or be a ``. None found on element type `\".concat(r.type, \"`\")), n(!!(r.type !== R || r.props.from && r.props.to), \" requires both \\\"from\\\" and \\\"to\\\" props when inside a .\")), n(!(r.type === R && !T(r.props.from, r.props.to)), \" has mismatched dynamic segments, ensure both paths have the exact same dynamic segments.\")), r.props.default) return {\n value: r,\n default: !0\n };\n var o = r.type === R ? r.props.from : r.props.path,\n a = \"/\" === o ? t : \"\".concat(M(t), \"/\").concat(M(o));\n return {\n value: r,\n default: r.props.default,\n path: r.props.children ? \"\".concat(M(a), \"/*\") : a\n };\n };\n },\n V = [\"innerRef\"],\n q = [\"to\", \"state\", \"replace\", \"getProps\"],\n X = [\"key\"];\nvar B = e.forwardRef;\nvoid 0 === B && (B = function B(e) {\n return e;\n});\nvar K = function K() {},\n A = B(function (t, r) {\n var n = t.innerRef,\n s = a(t, V);\n var _f2 = f(),\n i = _f2.baseuri,\n _y = y(),\n c = _y.location,\n u = s.to,\n l = s.state,\n h = s.replace,\n _s$getProps = s.getProps,\n m = _s$getProps === void 0 ? K : _s$getProps,\n d = a(s, q),\n E = k(u, i),\n g = encodeURI(E),\n v = c.pathname === g,\n b = C(c.pathname, g); /*#__PURE__*/\n return e.createElement(\"a\", o({\n ref: r || n,\n \"aria-current\": v ? \"page\" : void 0\n }, d, m({\n isCurrent: v,\n isPartiallyCurrent: b,\n href: E,\n location: c\n }), {\n href: E,\n onClick: function onClick(e) {\n if (d.onClick && d.onClick(e), function (e) {\n return !e.defaultPrevented && 0 === e.button && !(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey);\n }(e)) {\n e.preventDefault();\n var _t4 = h;\n if (\"boolean\" != typeof h && v) {\n var _e6 = a(o({}, c.state), X);\n _t4 = D(o({}, l), _e6);\n }\n p(E, {\n state: l,\n replace: _t4\n });\n }\n }\n }));\n });\nA.displayName = \"Link\", A.propTypes = {\n to: r.string.isRequired\n};\nvar F = /*#__PURE__*/function (_e$Component) {\n function F() {\n var _this;\n _classCallCheck(this, F);\n for (var _len2 = arguments.length, e = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n e[_key2] = arguments[_key2];\n }\n _this = _callSuper(this, F, [].concat(e)), _this.displayName = \"ReactUseErrorBoundary\";\n return _this;\n }\n _inherits(F, _e$Component);\n return _createClass(F, [{\n key: \"componentDidCatch\",\n value: function componentDidCatch() {\n var _this$props;\n this.setState({}), (_this$props = this.props).onError.apply(_this$props, arguments);\n }\n }, {\n key: \"render\",\n value: function render() {\n return this.props.children;\n }\n }]);\n}(e.Component);\nvar W = e.createContext({\n componentDidCatch: {\n current: void 0\n },\n error: void 0,\n setError: function setError() {\n return !1;\n }\n});\nfunction H(_ref2) {\n var t = _ref2.children;\n var _e$useState = e.useState(),\n _e$useState2 = _slicedToArray(_e$useState, 2),\n r = _e$useState2[0],\n n = _e$useState2[1],\n o = e.useRef(),\n a = e.useMemo(function () {\n return {\n componentDidCatch: o,\n error: r,\n setError: n\n };\n }, [r]); /*#__PURE__*/\n return e.createElement(W.Provider, {\n value: a\n }, /*#__PURE__*/e.createElement(F, {\n error: r,\n onError: function onError(e, t) {\n n(e), null == o.current || o.current(e, t);\n }\n }, t));\n}\nH.displayName = \"ReactUseErrorBoundaryContext\";\nvar z = function (t) {\n var r, n;\n function a(r) {\n /*#__PURE__*/return e.createElement(H, null, /*#__PURE__*/e.createElement(t, o({\n key: \"WrappedComponent\"\n }, r)));\n }\n return a.displayName = \"WithErrorBoundary(\".concat(null != (r = null != (n = t.displayName) ? n : t.name) ? r : \"Component\", \")\"), a;\n }(function (_ref3) {\n var _ref3$history = _ref3.history,\n t = _ref3$history === void 0 ? l : _ref3$history,\n r = _ref3.children;\n var n = t.location,\n _e$useState3 = e.useState({\n location: n\n }),\n _e$useState4 = _slicedToArray(_e$useState3, 2),\n o = _e$useState4[0],\n a = _e$useState4[1],\n _ref4 = function (t) {\n var r = e.useContext(W);\n r.componentDidCatch.current = void 0;\n var n = e.useCallback(function () {\n r.setError(void 0);\n }, []);\n return [r.error, n];\n }(),\n _ref5 = _slicedToArray(_ref4, 1),\n s = _ref5[0];\n if (e.useEffect(function () {\n t._onTransitionComplete();\n }, [o.location]), e.useEffect(function () {\n var e = !1;\n var r = t.listen(function (_ref6) {\n var t = _ref6.location;\n Promise.resolve().then(function () {\n requestAnimationFrame(function () {\n e || a({\n location: t\n });\n });\n });\n });\n return function () {\n e = !0, r();\n };\n }, []), s) {\n if (!g(s)) throw s;\n p(s.uri, {\n replace: !0\n });\n } /*#__PURE__*/\n return e.createElement(d.Provider, {\n value: o\n }, \"function\" == typeof r ? r(o) : r || null);\n }),\n G = function G(_ref7) {\n var t = _ref7.children;\n var r = y();\n return r ? t(r) : /*#__PURE__*/e.createElement(z, null, t);\n },\n J = function J(_ref8) {\n var t = _ref8.url,\n r = _ref8.children;\n var n = t.indexOf(\"?\");\n var o,\n a = \"\";\n return n > -1 ? (o = t.substring(0, n), a = t.substring(n)) : o = t, /*#__PURE__*/e.createElement(d.Provider, {\n value: {\n location: {\n pathname: o,\n search: a,\n hash: \"\"\n }\n }\n }, r);\n },\n Q = function Q(_ref9) {\n var e = _ref9.path,\n t = _ref9.children;\n var _f3 = f(),\n r = _f3.baseuri,\n _y2 = y(),\n n = _y2.location,\n a = k(e, r),\n s = x(a, n.pathname);\n return t({\n location: n,\n match: s ? o({}, s.params, {\n uri: s.uri,\n path: e\n }) : null\n });\n },\n Y = [\"uri\", \"location\", \"component\"],\n Z = [\"children\", \"style\", \"component\", \"uri\", \"location\"],\n ee = function ee(t) {\n var r = t.uri,\n n = t.location,\n s = t.component,\n i = a(t, Y); /*#__PURE__*/\n return e.createElement(re, o({}, i, {\n component: s,\n uri: r,\n location: n\n }));\n };\nvar te = 0;\nvar re = function re(t) {\n var r = t.children,\n n = t.style,\n _t$component = t.component,\n s = _t$component === void 0 ? \"div\" : _t$component,\n i = t.uri,\n c = t.location,\n u = a(t, Z);\n var l = e.useRef(),\n p = e.useRef(!0),\n h = e.useRef(i),\n m = e.useRef(c.pathname),\n d = e.useRef(!1);\n e.useEffect(function () {\n return te++, f(), function () {\n te--, 0 === te && (p.current = !0);\n };\n }, []), e.useEffect(function () {\n var e = !1,\n t = !1;\n i !== h.current && (h.current = i, e = !0), c.pathname !== m.current && (m.current = c.pathname, t = !0), d.current = e || t && c.pathname === i, d.current && f();\n }, [i, c]);\n var f = e.useCallback(function () {\n var e;\n \"test\" !== process.env.NODE_ENV && (p.current ? p.current = !1 : (e = l.current, d.current && e && e.focus()));\n }, []); /*#__PURE__*/\n return e.createElement(s, o({\n style: o({\n outline: \"none\"\n }, n),\n tabIndex: \"-1\",\n ref: l\n }, u), r);\n },\n ne = [\"location\", \"primary\", \"children\", \"basepath\", \"baseuri\", \"component\"],\n oe = function oe(t) {\n var r = f(),\n n = y(); /*#__PURE__*/\n return e.createElement(ae, o({}, r, n, t));\n };\nfunction ae(t) {\n var r = t.location,\n _t$primary = t.primary,\n n = _t$primary === void 0 ? !0 : _t$primary,\n s = t.children,\n i = t.basepath,\n _t$component2 = t.component,\n c = _t$component2 === void 0 ? \"div\" : _t$component2,\n u = a(t, ne),\n l = e.Children.toArray(s).reduce(function (e, t) {\n var r = _I(i)(t);\n return e.concat(r);\n }, []),\n p = r.pathname,\n h = w(l, p);\n if (h) {\n var _t5 = h.params,\n _a3 = h.uri,\n _s = h.route,\n _l2 = h.route.value,\n _p2 = _s.default ? i : _s.path.replace(/\\*$/, \"\"),\n _d = o({}, _t5, {\n uri: _a3,\n location: r\n }),\n _f4 = e.cloneElement(_l2, _d, _l2.props.children ? /*#__PURE__*/e.createElement(oe, {\n location: r,\n primary: n\n }, _l2.props.children) : void 0),\n _y3 = n ? ee : c,\n _E = n ? o({\n uri: _a3,\n location: r,\n component: c\n }, u) : u; /*#__PURE__*/\n return e.createElement(m.Provider, {\n value: {\n baseuri: _a3,\n basepath: _p2\n }\n }, /*#__PURE__*/e.createElement(_y3, _E, _f4));\n }\n return null;\n}\nvar se = function se() {\n var e = y();\n if (!e) throw new Error(\"useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n return e.location;\n },\n ie = function ie() {\n throw new Error(\"useNavigate is removed. Use import { navigate } from 'gatsby' instead\");\n },\n ce = function ce() {\n var e = f();\n if (!e) throw new Error(\"useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n var t = se(),\n r = x(e.basepath, t.pathname);\n return r ? r.params : null;\n },\n ue = function ue(e) {\n if (!e) throw new Error(\"useMatch(path: string) requires an argument of a string to match against\");\n var t = f();\n if (!t) throw new Error(\"useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n var r = se(),\n n = k(e, t.baseuri),\n a = x(n, r.pathname);\n return a ? o({}, a.params, {\n uri: a.uri,\n path: e\n }) : null;\n };\nexport { m as BaseContext, A as Link, G as Location, d as LocationContext, z as LocationProvider, Q as Match, R as Redirect, oe as Router, J as ServerLocation, i as createHistory, c as createMemorySource, l as globalHistory, P as insertParams, g as isRedirect, x as match, p as navigate, w as pick, v as redirectTo, k as resolve, D as shallowCompare, C as startsWith, f as useBaseContext, se as useLocation, y as useLocationContext, ue as useMatch, ie as useNavigate, ce as useParams, T as validateRedirect };","\"use strict\";\n\nfunction _createForOfIteratorHelper(r, e) { var t = \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && \"number\" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, 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 o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\nexports.__esModule = true;\nexports.applyTrailingSlashOption = void 0;\nvar endsWithSuffixes = function endsWithSuffixes(suffixes, input) {\n var _iterator = _createForOfIteratorHelper(suffixes),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var suffix = _step.value;\n if (input.endsWith(suffix)) return true;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n return false;\n};\nvar suffixes = [\".html\", \".json\", \".js\", \".map\", \".txt\", \".xml\", \".pdf\"];\nvar applyTrailingSlashOption = function applyTrailingSlashOption(input) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"always\";\n if (input === \"/\") return input;\n var hasTrailingSlash = input.endsWith(\"/\");\n if (endsWithSuffixes(suffixes, input)) {\n return input;\n }\n if (option === \"always\") {\n return hasTrailingSlash ? input : \"\".concat(input, \"/\");\n }\n if (option === \"never\") {\n return hasTrailingSlash ? input.slice(0, -1) : input;\n }\n return input;\n};\nexports.applyTrailingSlashOption = applyTrailingSlashOption;","\"use strict\";\n\nexports.__esModule = true;\nexports.onInitialClientRender = void 0;\nvar _gatsbyScript = require(\"gatsby-script\");\nvar _injectPartytownSnippet = require(\"./utils/inject-partytown-snippet\");\n// Makes sure off-main-thread scripts are loaded in `gatsby develop`\nvar onInitialClientRender = function onInitialClientRender() {\n if (process.env.NODE_ENV !== \"development\") {\n return;\n }\n (0, _injectPartytownSnippet.injectPartytownSnippet)(_gatsbyScript.collectedScriptsByPage.get(window.location.pathname));\n\n // Clear scripts after we've used them to avoid leaky behavior\n _gatsbyScript.collectedScriptsByPage.delete(window.location.pathname);\n};\n\n// Client-side navigation (CSR, e.g. Gatsby Link navigations) are broken upstream in Partytown.\n// We need an official API from Partytown for handling re-configuration and on-demand script loading.\n// Until then, `off-main-thread` scripts load only on server-side navigation (SSR).\n// See https://github.com/BuilderIO/partytown/issues/74 for more details.\nexports.onInitialClientRender = onInitialClientRender;","\"use strict\";\n\nrequire(\"core-js/modules/es.array.flat-map.js\");\nrequire(\"core-js/modules/es.array.unscopables.flat-map.js\");\nexports.__esModule = true;\nexports.getForwards = getForwards;\nfunction getForwards(collectedScripts) {\n return collectedScripts === null || collectedScripts === void 0 ? void 0 : collectedScripts.flatMap(function (script) {\n return (script === null || script === void 0 ? void 0 : script.forward) || [];\n });\n}","\"use strict\";\n\nexports.__esModule = true;\nexports.injectPartytownSnippet = injectPartytownSnippet;\nvar _integration = require(\"@builder.io/partytown/integration\");\nvar _getForwards = require(\"./get-forwards\");\n// Adapted from https://github.com/BuilderIO/partytown/blob/main/src/react/snippet.tsx to only include CSR logic\nfunction injectPartytownSnippet(collectedScripts) {\n if (!collectedScripts.length) {\n return;\n }\n var existingSnippet = document.querySelector(\"script[data-partytown]\");\n var existingSandbox = document.querySelector(\"iframe[src*=\\\"~partytown/partytown-sandbox-sw\\\"]\");\n if (existingSnippet) {\n existingSnippet.remove();\n }\n if (existingSandbox) {\n existingSandbox.remove();\n }\n var forwards = (0, _getForwards.getForwards)(collectedScripts);\n var snippet = document.createElement(\"script\");\n snippet.dataset.partytown = \"\";\n snippet.innerHTML = (0, _integration.partytownSnippet)({\n forward: forwards\n });\n document.head.appendChild(snippet);\n}","/**\n * @license React\n * react-server-dom-webpack.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';\n\nvar k = require(\"react\"),\n l = {\n stream: !0\n },\n n = new Map(),\n p = Symbol.for(\"react.element\"),\n q = Symbol.for(\"react.lazy\"),\n r = Symbol.for(\"react.default_value\"),\n t = k.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ContextRegistry;\nfunction u(a) {\n t[a] || (t[a] = k.createServerContext(a, r));\n return t[a];\n}\nfunction v(a, b, c) {\n this._status = a;\n this._value = b;\n this._response = c;\n}\nv.prototype.then = function (a) {\n 0 === this._status ? (null === this._value && (this._value = []), this._value.push(a)) : a();\n};\nfunction w(a) {\n switch (a._status) {\n case 3:\n return a._value;\n case 1:\n var b = JSON.parse(a._value, a._response._fromJSON);\n a._status = 3;\n return a._value = b;\n case 2:\n b = a._value;\n for (var c = b.chunks, d = 0; d < c.length; d++) {\n var e = n.get(c[d]);\n if (null !== e) throw e;\n }\n c = __webpack_require__(b.id);\n b = \"*\" === b.name ? c : \"\" === b.name ? c.__esModule ? c.default : c : c[b.name];\n a._status = 3;\n return a._value = b;\n case 0:\n throw a;\n default:\n throw a._value;\n }\n}\nfunction x() {\n var a = y(this, 0);\n return w(a);\n}\nfunction z(a, b) {\n return new v(3, b, a);\n}\nfunction A(a) {\n if (null !== a) for (var b = 0; b < a.length; b++) (0, a[b])();\n}\nfunction C(a, b) {\n if (0 === a._status) {\n var c = a._value;\n a._status = 4;\n a._value = b;\n A(c);\n }\n}\nfunction D(a, b) {\n a._chunks.forEach(function (a) {\n C(a, b);\n });\n}\nfunction y(a, b) {\n var c = a._chunks,\n d = c.get(b);\n d || (d = new v(0, null, a), c.set(b, d));\n return d;\n}\nfunction E(a, b, c) {\n switch (c[0]) {\n case \"$\":\n if (\"$\" === c) return p;\n if (\"$\" === c[1] || \"@\" === c[1]) return c.substring(1);\n b = parseInt(c.substring(1), 16);\n a = y(a, b);\n return w(a);\n case \"@\":\n return b = parseInt(c.substring(1), 16), a = y(a, b), {\n $$typeof: q,\n _payload: a,\n _init: w\n };\n }\n return c;\n}\nfunction F(a) {\n D(a, Error(\"Connection closed.\"));\n}\nfunction G(a, b) {\n if (\"\" !== b) {\n var c = b[0],\n d = b.indexOf(\":\", 1),\n e = parseInt(b.substring(1, d), 16);\n d = b.substring(d + 1);\n switch (c) {\n case \"J\":\n b = a._chunks;\n (c = b.get(e)) ? 0 === c._status && (a = c._value, c._status = 1, c._value = d, A(a)) : b.set(e, new v(1, d, a));\n break;\n case \"M\":\n b = a._chunks;\n c = b.get(e);\n d = JSON.parse(d, a._fromJSON);\n var f = a._bundlerConfig;\n d = f ? f[d.id][d.name] : d;\n f = d.chunks;\n for (var h = 0; h < f.length; h++) {\n var g = f[h];\n if (void 0 === n.get(g)) {\n var B = __webpack_chunk_load__(g),\n m = n.set.bind(n, g, null),\n J = n.set.bind(n, g);\n B.then(m, J);\n n.set(g, B);\n }\n }\n c ? 0 === c._status && (a = c._value, c._status = 2, c._value = d, A(a)) : b.set(e, new v(2, d, a));\n break;\n case \"P\":\n a._chunks.set(e, z(a, u(d).Provider));\n break;\n case \"S\":\n c = JSON.parse(d);\n a._chunks.set(e, z(a, Symbol.for(c)));\n break;\n case \"E\":\n b = JSON.parse(d);\n c = Error(b.message);\n c.stack = b.stack;\n b = a._chunks;\n (d = b.get(e)) ? C(d, c) : b.set(e, new v(4, c, a));\n break;\n default:\n throw Error(\"Error parsing the data. It's probably an error code or network corruption.\");\n }\n }\n}\nfunction H(a) {\n return function (b, c) {\n return \"string\" === typeof c ? E(a, this, c) : \"object\" === typeof c && null !== c ? (b = c[0] === p ? {\n $$typeof: p,\n type: c[1],\n key: c[2],\n ref: null,\n props: c[3],\n _owner: null\n } : c, b) : c;\n };\n}\nfunction I(a) {\n var b = new TextDecoder(),\n c = new Map();\n a = {\n _bundlerConfig: a,\n _chunks: c,\n readRoot: x,\n _partialRow: \"\",\n _stringDecoder: b\n };\n a._fromJSON = H(a);\n return a;\n}\nfunction K(a, b) {\n function c(b) {\n var h = b.value;\n if (b.done) F(a);else {\n b = h;\n h = a._stringDecoder;\n for (var g = b.indexOf(10); -1 < g;) {\n var f = a._partialRow;\n var m = b.subarray(0, g);\n m = h.decode(m);\n G(a, f + m);\n a._partialRow = \"\";\n b = b.subarray(g + 1);\n g = b.indexOf(10);\n }\n a._partialRow += h.decode(b, l);\n return e.read().then(c, d);\n }\n }\n function d(b) {\n D(a, b);\n }\n var e = b.getReader();\n e.read().then(c, d);\n}\nexports.createFromFetch = function (a, b) {\n var c = I(b && b.moduleMap ? b.moduleMap : null);\n a.then(function (a) {\n K(c, a.body);\n }, function (a) {\n D(c, a);\n });\n return c;\n};\nexports.createFromReadableStream = function (a, b) {\n b = I(b && b.moduleMap ? b.moduleMap : null);\n K(b, a);\n return b;\n};\nexports.createFromXHR = function (a, b) {\n function c() {\n for (var b = a.responseText, c = f, d = b.indexOf(\"\\n\", c); -1 < d;) c = e._partialRow + b.substring(c, d), G(e, c), e._partialRow = \"\", c = d + 1, d = b.indexOf(\"\\n\", c);\n e._partialRow += b.substring(c);\n f = b.length;\n }\n function d() {\n D(e, new TypeError(\"Network error\"));\n }\n var e = I(b && b.moduleMap ? b.moduleMap : null),\n f = 0;\n a.addEventListener(\"progress\", c);\n a.addEventListener(\"load\", function () {\n c();\n F(e);\n });\n a.addEventListener(\"error\", d);\n a.addEventListener(\"abort\", d);\n a.addEventListener(\"timeout\", d);\n return e;\n};","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-server-dom-webpack.production.min.js');\n} else {\n module.exports = require('./cjs/react-server-dom-webpack.development.js');\n}","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = exports.ScrollContext = void 0;\nvar _scrollHandler = require(\"./scroll-handler\");\nexports.ScrollContext = _scrollHandler.ScrollHandler;\nvar _useScrollRestoration = require(\"./use-scroll-restoration\");\nexports.useScrollRestoration = _useScrollRestoration.useScrollRestoration;","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nexports.__esModule = true;\nexports.ScrollHandler = exports.ScrollContext = void 0;\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\nvar React = _interopRequireWildcard(require(\"react\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _sessionStorage = require(\"./session-storage\");\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\nvar ScrollContext = /*#__PURE__*/React.createContext(new _sessionStorage.SessionStorage());\nexports.ScrollContext = ScrollContext;\nScrollContext.displayName = \"GatsbyScrollContext\";\nvar ScrollHandler = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollHandler, _React$Component);\n function ScrollHandler() {\n var _this;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this._stateStorage = new _sessionStorage.SessionStorage();\n _this._isTicking = false;\n _this._latestKnownScrollY = 0;\n _this.scrollListener = function () {\n _this._latestKnownScrollY = window.scrollY;\n if (!_this._isTicking) {\n _this._isTicking = true;\n requestAnimationFrame(_this._saveScroll.bind((0, _assertThisInitialized2.default)(_this)));\n }\n };\n _this.windowScroll = function (position, prevProps) {\n if (_this.shouldUpdateScroll(prevProps, _this.props)) {\n window.scrollTo(0, position);\n }\n };\n _this.scrollToHash = function (hash, prevProps) {\n var node = document.getElementById(hash.substring(1));\n if (node && _this.shouldUpdateScroll(prevProps, _this.props)) {\n node.scrollIntoView();\n }\n };\n _this.shouldUpdateScroll = function (prevRouterProps, routerProps) {\n var shouldUpdateScroll = _this.props.shouldUpdateScroll;\n if (!shouldUpdateScroll) {\n return true;\n }\n\n // Hack to allow accessing this._stateStorage.\n return shouldUpdateScroll.call((0, _assertThisInitialized2.default)(_this), prevRouterProps, routerProps);\n };\n return _this;\n }\n var _proto = ScrollHandler.prototype;\n _proto._saveScroll = function _saveScroll() {\n var key = this.props.location.key || null;\n if (key) {\n this._stateStorage.save(this.props.location, key, this._latestKnownScrollY);\n }\n this._isTicking = false;\n };\n _proto.componentDidMount = function componentDidMount() {\n window.addEventListener(\"scroll\", this.scrollListener);\n var scrollPosition;\n var _this$props$location = this.props.location,\n key = _this$props$location.key,\n hash = _this$props$location.hash;\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n /** If a hash is present in the browser url as the component mounts (i.e. the user is navigating\n * from an external website) then scroll to the hash instead of any previously stored scroll\n * position. */\n if (hash) {\n this.scrollToHash(decodeURI(hash), undefined);\n } else if (scrollPosition) {\n this.windowScroll(scrollPosition, undefined);\n }\n };\n _proto.componentWillUnmount = function componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollListener);\n };\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this$props$location2 = this.props.location,\n hash = _this$props$location2.hash,\n key = _this$props$location2.key;\n var scrollPosition;\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n /** There are two pieces of state: the browser url and\n * history state which keeps track of scroll position\n * Native behaviour prescribes that we ought to restore scroll position\n * when a user navigates back in their browser (this is the `POP` action)\n * Currently, reach router has a bug that prevents this at https://github.com/reach/router/issues/228\n * So we _always_ stick to the url as a source of truth — if the url\n * contains a hash, we scroll to it\n */\n\n if (hash) {\n this.scrollToHash(decodeURI(hash), prevProps);\n } else {\n this.windowScroll(scrollPosition, prevProps);\n }\n };\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(ScrollContext.Provider, {\n value: this._stateStorage\n }, this.props.children);\n };\n return ScrollHandler;\n}(React.Component);\nexports.ScrollHandler = ScrollHandler;\nScrollHandler.propTypes = {\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired,\n location: _propTypes.default.object.isRequired\n};","\"use strict\";\n\nexports.__esModule = true;\nexports.SessionStorage = void 0;\nvar STATE_KEY_PREFIX = \"@@scroll|\";\nvar GATSBY_ROUTER_SCROLL_STATE = \"___GATSBY_REACT_ROUTER_SCROLL\";\nvar SessionStorage = /*#__PURE__*/function () {\n function SessionStorage() {}\n var _proto = SessionStorage.prototype;\n _proto.read = function read(location, key) {\n var stateKey = this.getStateKey(location, key);\n try {\n var value = window.sessionStorage.getItem(stateKey);\n return value ? JSON.parse(value) : 0;\n } catch (e) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to access sessionStorage; sessionStorage is not available.\");\n }\n if (window && window[GATSBY_ROUTER_SCROLL_STATE] && window[GATSBY_ROUTER_SCROLL_STATE][stateKey]) {\n return window[GATSBY_ROUTER_SCROLL_STATE][stateKey];\n }\n return 0;\n }\n };\n _proto.save = function save(location, key, value) {\n var stateKey = this.getStateKey(location, key);\n var storedValue = JSON.stringify(value);\n try {\n window.sessionStorage.setItem(stateKey, storedValue);\n } catch (e) {\n if (window && window[GATSBY_ROUTER_SCROLL_STATE]) {\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n } else {\n window[GATSBY_ROUTER_SCROLL_STATE] = {};\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n }\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to save state in sessionStorage; sessionStorage is not available.\");\n }\n }\n };\n _proto.getStateKey = function getStateKey(location, key) {\n var stateKeyBase = \"\" + STATE_KEY_PREFIX + location.pathname;\n return key === null || typeof key === \"undefined\" ? stateKeyBase : stateKeyBase + \"|\" + key;\n };\n return SessionStorage;\n}();\nexports.SessionStorage = SessionStorage;","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = useScrollRestoration;\nvar _scrollHandler = require(\"./scroll-handler\");\nvar _react = require(\"react\");\nvar _reachRouter = require(\"@gatsbyjs/reach-router\");\nfunction useScrollRestoration(identifier) {\n var location = (0, _reachRouter.useLocation)();\n var state = (0, _react.useContext)(_scrollHandler.ScrollContext);\n var ref = (0, _react.useRef)(null);\n (0, _react.useLayoutEffect)(function () {\n if (ref.current) {\n var position = state.read(location, identifier);\n ref.current.scrollTo(0, position || 0);\n }\n }, [location.key]);\n return {\n ref: ref,\n onScroll: function onScroll() {\n if (ref.current) {\n state.save(location, identifier, ref.current.scrollTop);\n }\n }\n };\n}","exports.components = {\n \"component---cache-caches-gatsby-plugin-offline-app-shell-js\": () => import(\"./../../caches/gatsby-plugin-offline/app-shell.js\" /* webpackChunkName: \"component---cache-caches-gatsby-plugin-offline-app-shell-js\" */),\n \"component---src-pages-404-js\": () => import(\"./../../../src/pages/404.js\" /* webpackChunkName: \"component---src-pages-404-js\" */),\n \"component---src-pages-changepwd-index-tsx\": () => import(\"./../../../src/pages/changepwd/index.tsx\" /* webpackChunkName: \"component---src-pages-changepwd-index-tsx\" */),\n \"component---src-pages-dashboard-index-tsx\": () => import(\"./../../../src/pages/dashboard/index.tsx\" /* webpackChunkName: \"component---src-pages-dashboard-index-tsx\" */),\n \"component---src-pages-discover-index-tsx\": () => import(\"./../../../src/pages/discover/index.tsx\" /* webpackChunkName: \"component---src-pages-discover-index-tsx\" */),\n \"component---src-pages-discuss-index-tsx\": () => import(\"./../../../src/pages/discuss/index.tsx\" /* webpackChunkName: \"component---src-pages-discuss-index-tsx\" */),\n \"component---src-pages-index-js\": () => import(\"./../../../src/pages/index.js\" /* webpackChunkName: \"component---src-pages-index-js\" */),\n \"component---src-pages-login-index-tsx\": () => import(\"./../../../src/pages/login/index.tsx\" /* webpackChunkName: \"component---src-pages-login-index-tsx\" */),\n \"component---src-pages-manage-index-tsx\": () => import(\"./../../../src/pages/manage/index.tsx\" /* webpackChunkName: \"component---src-pages-manage-index-tsx\" */),\n \"component---src-pages-participants-index-tsx\": () => import(\"./../../../src/pages/participants/index.tsx\" /* webpackChunkName: \"component---src-pages-participants-index-tsx\" */),\n \"component---src-pages-profile-index-tsx\": () => import(\"./../../../src/pages/profile/index.tsx\" /* webpackChunkName: \"component---src-pages-profile-index-tsx\" */),\n \"component---src-pages-qpl-index-tsx\": () => import(\"./../../../src/pages/qpl/index.tsx\" /* webpackChunkName: \"component---src-pages-qpl-index-tsx\" */),\n \"component---src-pages-search-tsx\": () => import(\"./../../../src/pages/search.tsx\" /* webpackChunkName: \"component---src-pages-search-tsx\" */),\n \"component---src-pages-self-assessment-index-tsx\": () => import(\"./../../../src/pages/self-assessment/index.tsx\" /* webpackChunkName: \"component---src-pages-self-assessment-index-tsx\" */),\n \"component---src-pages-signup-index-tsx\": () => import(\"./../../../src/pages/signup/index.tsx\" /* webpackChunkName: \"component---src-pages-signup-index-tsx\" */),\n \"component---src-pages-thread-index-tsx\": () => import(\"./../../../src/pages/thread/index.tsx\" /* webpackChunkName: \"component---src-pages-thread-index-tsx\" */),\n \"component---src-pages-using-typescript-tsx\": () => import(\"./../../../src/pages/using-typescript.tsx\" /* webpackChunkName: \"component---src-pages-using-typescript-tsx\" */),\n \"component---src-pages-womenvoices-index-tsx\": () => import(\"./../../../src/pages/womenvoices/index.tsx\" /* webpackChunkName: \"component---src-pages-womenvoices-index-tsx\" */),\n \"component---src-templates-article-page-index-tsx\": () => import(\"./../../../src/templates/ArticlePage/index.tsx\" /* webpackChunkName: \"component---src-templates-article-page-index-tsx\" */)\n}\n\n","module.exports = [{\n plugin: require('../node_modules/gatsby-plugin-google-tagmanager/gatsby-browser.js'),\n options: {\"plugins\":[],\"id\":\"GTM-KDLCRXZ\",\"includeInDevelopment\":true,\"defaultDataLayer\":null,\"routeChangeEventName\":\"gatsby-route-change\",\"enableWebVitalsTracking\":false,\"selfHostedOrigin\":\"https://www.googletagmanager.com\",\"selfHostedPath\":\"gtm.js\"},\n },{\n plugin: require('../node_modules/gatsby-plugin-manifest/gatsby-browser.js'),\n options: {\"plugins\":[],\"name\":\"early-menopause-app\",\"short_name\":\"early-menopause\",\"start_url\":\"/\",\"background_color\":\"#663399\",\"theme_color\":\"#663399\",\"display\":\"standalone\",\"icon\":\"src/images/ask_early_menopause_logo.png\",\"icon_options\":{\"purpose\":\"maskable\"},\"crossOrigin\":\"use-credentials\",\"legacy\":true,\"theme_color_in_head\":true,\"cache_busting_mode\":\"query\",\"include_favicon\":true,\"cacheDigest\":\"8050c750726febb7d4a072fadf357500\"},\n },{\n plugin: require('../node_modules/gatsby-plugin-offline/gatsby-browser.js'),\n options: {\"plugins\":[]},\n },{\n plugin: require('../gatsby-browser.js'),\n options: {\"plugins\":[]},\n },{\n plugin: require('../node_modules/gatsby/dist/internal-plugins/partytown/gatsby-browser.js'),\n options: {\"plugins\":[]},\n }]\n","const plugins = require(`./api-runner-browser-plugins`)\nconst { getResourceURLsForPathname, loadPage, loadPageSync } =\n require(`./loader`).publicLoader\n\nexports.apiRunner = (api, args = {}, defaultReturn, argTransform) => {\n // Hooks for gatsby-cypress's API handler\n if (process.env.CYPRESS_SUPPORT) {\n if (window.___apiHandler) {\n window.___apiHandler(api)\n } else if (window.___resolvedAPIs) {\n window.___resolvedAPIs.push(api)\n } else {\n window.___resolvedAPIs = [api]\n }\n }\n\n let results = plugins.map(plugin => {\n if (!plugin.plugin[api]) {\n return undefined\n }\n\n args.getResourceURLsForPathname = getResourceURLsForPathname\n args.loadPage = loadPage\n args.loadPageSync = loadPageSync\n\n const result = plugin.plugin[api](args, plugin.options)\n if (result && argTransform) {\n args = argTransform({ args, result, plugin })\n }\n return result\n })\n\n // Filter out undefined results.\n results = results.filter(result => typeof result !== `undefined`)\n\n if (results.length > 0) {\n return results\n } else if (defaultReturn) {\n return [defaultReturn]\n } else {\n return []\n }\n}\n\nexports.apiRunnerAsync = (api, args, defaultReturn) =>\n plugins.reduce(\n (previous, next) =>\n next.plugin[api]\n ? previous.then(() => next.plugin[api](args, next.options))\n : previous,\n Promise.resolve()\n )\n","exports.createContentDigest = () => ``\n","// \n// An event handler can take an optional event argument\n// and should not return a value\n \n \n\n// An array of all currently registered event handlers for a type\n \n \n// A map of event types and their corresponding event handlers.\n \n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).slice().map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).slice().map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nexport default mitt;\n//# sourceMappingURL=mitt.es.js.map\n","import mitt from \"mitt\"\n\nconst emitter = mitt()\nexport default emitter\n","export default pathAndSearch => {\n if (pathAndSearch === undefined) {\n return pathAndSearch\n }\n let [path, search = ``] = pathAndSearch.split(`?`)\n if (search) {\n search = `?` + search\n }\n\n if (path === `/`) {\n return `/` + search\n }\n if (path.charAt(path.length - 1) === `/`) {\n return path.slice(0, -1) + search\n }\n return path + search\n}\n","import { pick } from \"@gatsbyjs/reach-router\"\nimport stripPrefix from \"./strip-prefix\"\nimport normalizePagePath from \"./normalize-page-path\"\nimport { maybeGetBrowserRedirect } from \"./redirect-utils.js\"\n\nconst pathCache = new Map()\nlet matchPaths = []\n\nconst trimPathname = rawPathname => {\n let newRawPathname = rawPathname\n const queryIndex = rawPathname.indexOf(`?`)\n\n if (queryIndex !== -1) {\n const [path, qs] = rawPathname.split(`?`)\n newRawPathname = `${path}?${encodeURIComponent(qs)}`\n }\n\n const pathname = decodeURIComponent(newRawPathname)\n\n // Remove the pathPrefix from the pathname.\n const trimmedPathname = stripPrefix(\n pathname,\n decodeURIComponent(__BASE_PATH__)\n )\n // Remove any hashfragment\n .split(`#`)[0]\n\n return trimmedPathname\n}\n\nfunction absolutify(path) {\n // If it's already absolute, return as-is\n if (\n path.startsWith(`/`) ||\n path.startsWith(`https://`) ||\n path.startsWith(`http://`)\n ) {\n return path\n }\n // Calculate path relative to current location, adding a trailing slash to\n // match behavior of @reach/router\n return new URL(\n path,\n window.location.href + (window.location.href.endsWith(`/`) ? `` : `/`)\n ).pathname\n}\n\n/**\n * Set list of matchPaths\n *\n * @param {Array<{path: string, matchPath: string}>} value collection of matchPaths\n */\nexport const setMatchPaths = value => {\n matchPaths = value\n}\n\n/**\n * Return a matchpath url\n * if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n * `/foo?bar=far` => `/page1`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string|null}\n */\nexport const findMatchPath = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return normalizePagePath(path.route.originalPath)\n }\n\n return null\n}\n\n/**\n * Return a matchpath params from reach/router rules\n * if `match-paths.json` contains `{ \":bar/*foo\" }`, and the path is /baz/zaz/zoo\n * then it returns\n * { bar: baz, foo: zaz/zoo }\n *\n * @param {string} rawPathname A raw pathname\n * @return {object}\n */\nexport const grabMatchParams = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return path.params\n }\n\n return {}\n}\n\n// Given a raw URL path, returns the cleaned version of it (trim off\n// `#` and query params), or if it matches an entry in\n// `match-paths.json`, its matched path is returned\n//\n// E.g. `/foo?bar=far` => `/foo`\n//\n// Or if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n// `/foo?bar=far` => `/page1`\nexport const findPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n if (pathCache.has(trimmedPathname)) {\n return pathCache.get(trimmedPathname)\n }\n\n const redirect = maybeGetBrowserRedirect(rawPathname)\n if (redirect) {\n return findPath(redirect.toPath)\n }\n\n let foundPath = findMatchPath(trimmedPathname)\n\n if (!foundPath) {\n foundPath = cleanPath(rawPathname)\n }\n\n pathCache.set(trimmedPathname, foundPath)\n\n return foundPath\n}\n\n/**\n * Clean a url and converts /index.html => /\n * E.g. `/foo?bar=far` => `/foo`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string}\n */\nexport const cleanPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n\n let foundPath = trimmedPathname\n if (foundPath === `/index.html`) {\n foundPath = `/`\n }\n\n foundPath = normalizePagePath(foundPath)\n\n return foundPath\n}\n","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nfunction _wrapNativeSuper(t) {\n var r = \"function\" == typeof Map ? new Map() : void 0;\n return _wrapNativeSuper = function _wrapNativeSuper(t) {\n if (null === t || !isNativeFunction(t)) return t;\n if (\"function\" != typeof t) throw new TypeError(\"Super expression must either be null or a function\");\n if (void 0 !== r) {\n if (r.has(t)) return r.get(t);\n r.set(t, Wrapper);\n }\n function Wrapper() {\n return construct(t, arguments, getPrototypeOf(this).constructor);\n }\n return Wrapper.prototype = Object.create(t.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: !1,\n writable: !0,\n configurable: !0\n }\n }), setPrototypeOf(Wrapper, t);\n }, _wrapNativeSuper(t);\n}\nexport { _wrapNativeSuper as default };","function _isNativeFunction(t) {\n try {\n return -1 !== Function.toString.call(t).indexOf(\"[native code]\");\n } catch (n) {\n return \"function\" == typeof t;\n }\n}\nexport { _isNativeFunction as default };","import isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _construct(t, e, r) {\n if (isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments);\n var o = [null];\n o.push.apply(o, e);\n var p = new (t.bind.apply(t, o))();\n return r && setPrototypeOf(p, r.prototype), p;\n}\nexport { _construct as default };","import React from \"react\"\n\nexport const ServerSliceRenderer = ({ sliceId, children }) => {\n const contents = [\n React.createElement(`slice-start`, {\n id: `${sliceId}-1`,\n }),\n React.createElement(`slice-end`, {\n id: `${sliceId}-1`,\n }),\n ]\n\n if (children) {\n // if children exist, we split the slice into a before and after piece\n // see renderSlices in render-html\n contents.push(children)\n contents.push(\n React.createElement(`slice-start`, {\n id: `${sliceId}-2`,\n }),\n React.createElement(`slice-end`, {\n id: `${sliceId}-2`,\n })\n )\n }\n\n return contents\n}\n","import React, { useContext } from \"react\"\nimport { createContentDigest } from \"gatsby-core-utils/create-content-digest\"\nimport { SlicesMapContext, SlicesPropsContext } from \"./context\"\nimport { ServerSliceRenderer } from \"./server-slice-renderer\"\n\nconst getSliceId = (sliceName, sliceProps) => {\n if (!Object.keys(sliceProps).length) {\n return sliceName\n }\n\n const propsString = createContentDigest(sliceProps)\n return `${sliceName}-${propsString}`\n}\n\nexport const ServerSlice = ({\n sliceName,\n allowEmpty,\n children,\n ...sliceProps\n}) => {\n const slicesMap = useContext(SlicesMapContext)\n const slicesProps = useContext(SlicesPropsContext)\n const concreteSliceName = slicesMap[sliceName]\n\n if (!concreteSliceName) {\n if (allowEmpty) {\n return null\n } else {\n throw new Error(\n `Slice \"${concreteSliceName}\" for \"${sliceName}\" slot not found`\n )\n }\n }\n\n const sliceId = getSliceId(concreteSliceName, sliceProps)\n\n // set props on context object for static-entry to return\n let sliceUsage = slicesProps[sliceId]\n if (!sliceUsage) {\n slicesProps[sliceId] = sliceUsage = {\n props: sliceProps,\n sliceName: concreteSliceName,\n hasChildren: !!children,\n }\n } else {\n if (children) {\n sliceUsage.hasChildren = true\n }\n }\n\n return {children}\n}\n","import React, { useContext } from \"react\"\nimport { SlicesMapContext, SlicesResultsContext } from \"./context\"\n\nexport const InlineSlice = ({\n sliceName,\n allowEmpty,\n children,\n ...sliceProps\n}) => {\n const slicesMap = useContext(SlicesMapContext)\n const slicesResultsMap = useContext(SlicesResultsContext)\n const concreteSliceName = slicesMap[sliceName]\n const slice = slicesResultsMap.get(concreteSliceName)\n\n if (!slice) {\n if (allowEmpty) {\n return null\n } else {\n throw new Error(\n `Slice \"${concreteSliceName}\" for \"${sliceName}\" slot not found`\n )\n }\n }\n\n return (\n \n {children}\n \n )\n}\n","\"use client\"\n\nimport React, { useContext } from \"react\"\nimport { ServerSlice } from \"./slice/server-slice\"\nimport { InlineSlice } from \"./slice/inline-slice\"\nimport { SlicesContext } from \"./slice/context\"\n\nexport function Slice(props) {\n if (process.env.GATSBY_SLICES) {\n // we use sliceName internally, so remap alias to sliceName\n const internalProps = {\n ...props,\n sliceName: props.alias,\n }\n delete internalProps.alias\n delete internalProps.__renderedByLocation\n\n const slicesContext = useContext(SlicesContext)\n\n // validate props\n const propErrors = validateSliceProps(props)\n if (Object.keys(propErrors).length) {\n throw new SlicePropsError(\n slicesContext.renderEnvironment === `browser`,\n internalProps.sliceName,\n propErrors,\n props.__renderedByLocation\n )\n }\n\n if (slicesContext.renderEnvironment === `server`) {\n return \n } else if (slicesContext.renderEnvironment === `browser`) {\n // in the browser, we'll just render the component as is\n return \n } else if (\n slicesContext.renderEnvironment === `engines` ||\n slicesContext.renderEnvironment === `dev-ssr`\n ) {\n // if we're in SSR, we'll just render the component as is\n return \n } else if (slicesContext.renderEnvironment === `slices`) {\n // we are not yet supporting nested slices\n\n let additionalContextMessage = ``\n\n // just in case generating additional contextual information fails, we still want the base message to show\n // and not show another cryptic error message\n try {\n additionalContextMessage = `\\n\\nSlice component \"${slicesContext.sliceRoot.name}\" (${slicesContext.sliceRoot.componentPath}) tried to render `\n } catch {\n // don't need to handle it, we will just skip the additional context message if we fail to generate it\n }\n\n throw new Error(\n `Nested slices are not supported.${additionalContextMessage}\\n\\nSee https://gatsbyjs.com/docs/reference/built-in-components/gatsby-slice#nested-slices`\n )\n } else {\n throw new Error(\n `Slice context \"${slicesContext.renderEnvironment}\" is not supported.`\n )\n }\n } else {\n throw new Error(`Slices are disabled.`)\n }\n}\n\nclass SlicePropsError extends Error {\n constructor(inBrowser, sliceName, propErrors, renderedByLocation) {\n const errors = Object.entries(propErrors)\n .map(\n ([key, value]) =>\n `not serializable \"${value}\" type passed to \"${key}\" prop`\n )\n .join(`, `)\n\n const name = `SlicePropsError`\n let stack = ``\n let message = ``\n\n if (inBrowser) {\n // They're just (kinda) kidding, I promise... You can still work here <3\n // https://www.gatsbyjs.com/careers/\n const fullStack =\n React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactDebugCurrentFrame.getCurrentStack()\n\n // remove the first line of the stack trace\n const stackLines = fullStack.trim().split(`\\n`).slice(1)\n stackLines[0] = stackLines[0].trim()\n stack = `\\n` + stackLines.join(`\\n`)\n\n message = `Slice \"${sliceName}\" was passed props that are not serializable (${errors}).`\n } else {\n // we can't really grab any extra info outside of the browser, so just print what we can\n message = `${name}: Slice \"${sliceName}\" was passed props that are not serializable (${errors}).`\n const stackLines = new Error().stack.trim().split(`\\n`).slice(2)\n stack = `${message}\\n${stackLines.join(`\\n`)}`\n }\n\n super(message)\n this.name = name\n if (stack) {\n this.stack = stack\n } else {\n Error.captureStackTrace(this, SlicePropsError)\n }\n\n if (renderedByLocation) {\n this.forcedLocation = { ...renderedByLocation, functionName: `Slice` }\n }\n }\n}\n\nconst validateSliceProps = (\n props,\n errors = {},\n seenObjects = [],\n path = null\n) => {\n // recursively validate all props\n for (const [name, value] of Object.entries(props)) {\n if (\n value === undefined ||\n value === null ||\n (!path && name === `children`)\n ) {\n continue\n }\n\n const propPath = path ? `${path}.${name}` : name\n\n if (typeof value === `function`) {\n errors[propPath] = typeof value\n } else if (typeof value === `object` && seenObjects.indexOf(value) <= 0) {\n seenObjects.push(value)\n validateSliceProps(value, errors, seenObjects, propPath)\n }\n }\n\n return errors\n}\n","import loader from \"./loader\"\n\nconst prefetchPathname = loader.enqueue\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport { default as PageRenderer } from \"./public-page-renderer\"\nexport { useScrollRestoration } from \"gatsby-react-router-scroll\"\nexport {\n Link,\n withPrefix,\n withAssetPrefix,\n navigate,\n parsePath,\n} from \"gatsby-link\"\n\nexport { graphql, prefetchPathname }\nexport { StaticQuery, StaticQueryContext, useStaticQuery } from \"./static-query\"\nexport { Slice } from \"./slice\"\nexport * from \"gatsby-script\"\n","const support = function (feature) {\n if (typeof document === `undefined`) {\n return false\n }\n const fakeLink = document.createElement(`link`)\n try {\n if (fakeLink.relList && typeof fakeLink.relList.supports === `function`) {\n return fakeLink.relList.supports(feature)\n }\n } catch (err) {\n return false\n }\n return false\n}\n\nconst linkPrefetchStrategy = function (url, options) {\n return new Promise((resolve, reject) => {\n if (typeof document === `undefined`) {\n reject()\n return\n }\n\n const link = document.createElement(`link`)\n link.setAttribute(`rel`, `prefetch`)\n link.setAttribute(`href`, url)\n\n Object.keys(options).forEach(key => {\n link.setAttribute(key, options[key])\n })\n\n link.onload = resolve\n link.onerror = reject\n\n const parentElement =\n document.getElementsByTagName(`head`)[0] ||\n document.getElementsByName(`script`)[0].parentNode\n parentElement.appendChild(link)\n })\n}\n\nconst xhrPrefetchStrategy = function (url) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(`GET`, url, true)\n\n req.onload = () => {\n if (req.status === 200) {\n resolve()\n } else {\n reject()\n }\n }\n\n req.send(null)\n })\n}\n\nconst supportedPrefetchStrategy = support(`prefetch`)\n ? linkPrefetchStrategy\n : xhrPrefetchStrategy\n\nconst preFetched = {}\n\nconst prefetch = function (url, options) {\n return new Promise(resolve => {\n if (preFetched[url]) {\n resolve()\n return\n }\n\n supportedPrefetchStrategy(url, options)\n .then(() => {\n resolve()\n preFetched[url] = true\n })\n .catch(() => {}) // 404s are logged to the console anyway\n })\n}\n\nexport default prefetch\n","import { createFromReadableStream } from \"react-server-dom-webpack\"\nimport prefetchHelper from \"./prefetch\"\nimport emitter from \"./emitter\"\nimport { setMatchPaths, findPath, findMatchPath } from \"./find-path\"\n\n/**\n * Available resource loading statuses\n */\nexport const PageResourceStatus = {\n /**\n * At least one of critical resources failed to load\n */\n Error: `error`,\n /**\n * Resources loaded successfully\n */\n Success: `success`,\n}\n\nconst preferDefault = m => (m && m.default) || m\n\nconst stripSurroundingSlashes = s => {\n s = s[0] === `/` ? s.slice(1) : s\n s = s.endsWith(`/`) ? s.slice(0, -1) : s\n return s\n}\n\nconst createPageDataUrl = rawPath => {\n const [path, maybeSearch] = rawPath.split(`?`)\n const fixedPath = path === `/` ? `index` : stripSurroundingSlashes(path)\n return `${__PATH_PREFIX__}/page-data/${fixedPath}/page-data.json${\n maybeSearch ? `?${maybeSearch}` : ``\n }`\n}\n\n/**\n * Utility to check the path that goes into doFetch for e.g. potential malicious intentions.\n * It checks for \"//\" because with this you could do a fetch request to a different domain.\n */\nconst shouldAbortFetch = rawPath => rawPath.startsWith(`//`)\n\nfunction doFetch(url, method = `GET`) {\n return new Promise(resolve => {\n const req = new XMLHttpRequest()\n req.open(method, url, true)\n req.onreadystatechange = () => {\n if (req.readyState == 4) {\n resolve(req)\n }\n }\n req.send(null)\n })\n}\n\nconst doesConnectionSupportPrefetch = () => {\n if (\n `connection` in navigator &&\n typeof navigator.connection !== `undefined`\n ) {\n if ((navigator.connection.effectiveType || ``).includes(`2g`)) {\n return false\n }\n if (navigator.connection.saveData) {\n return false\n }\n }\n return true\n}\n\n// Regex that matches common search crawlers\nconst BOT_REGEX = /bot|crawler|spider|crawling/i\n\nconst toPageResources = (pageData, component = null, head) => {\n const page = {\n componentChunkName: pageData.componentChunkName,\n path: pageData.path,\n webpackCompilationHash: pageData.webpackCompilationHash,\n matchPath: pageData.matchPath,\n staticQueryHashes: pageData.staticQueryHashes,\n getServerDataError: pageData.getServerDataError,\n slicesMap: pageData.slicesMap ?? {},\n }\n\n return {\n component,\n head,\n json: pageData.result,\n page,\n }\n}\n\nfunction waitForResponse(response) {\n return new Promise(resolve => {\n try {\n const result = response.readRoot()\n resolve(result)\n } catch (err) {\n if (\n Object.hasOwnProperty.call(err, `_response`) &&\n Object.hasOwnProperty.call(err, `_status`)\n ) {\n setTimeout(() => {\n waitForResponse(response).then(resolve)\n }, 200)\n } else {\n throw err\n }\n }\n })\n}\n\nexport class BaseLoader {\n constructor(loadComponent, matchPaths) {\n // Map of pagePath -> Page. Where Page is an object with: {\n // status: PageResourceStatus.Success || PageResourceStatus.Error,\n // payload: PageResources, // undefined if PageResourceStatus.Error\n // }\n // PageResources is {\n // component,\n // json: pageData.result,\n // page: {\n // componentChunkName,\n // path,\n // webpackCompilationHash,\n // staticQueryHashes\n // },\n // staticQueryResults\n // }\n this.pageDb = new Map()\n this.inFlightDb = new Map()\n this.staticQueryDb = {}\n this.pageDataDb = new Map()\n this.partialHydrationDb = new Map()\n this.slicesDataDb = new Map()\n this.sliceInflightDb = new Map()\n this.slicesDb = new Map()\n this.isPrefetchQueueRunning = false\n this.prefetchQueued = []\n this.prefetchTriggered = new Set()\n this.prefetchCompleted = new Set()\n this.loadComponent = loadComponent\n setMatchPaths(matchPaths)\n }\n\n inFlightNetworkRequests = new Map()\n\n memoizedGet(url) {\n let inFlightPromise = this.inFlightNetworkRequests.get(url)\n\n if (!inFlightPromise) {\n inFlightPromise = doFetch(url, `GET`)\n this.inFlightNetworkRequests.set(url, inFlightPromise)\n }\n\n // Prefer duplication with then + catch over .finally to prevent problems in ie11 + firefox\n return inFlightPromise\n .then(response => {\n this.inFlightNetworkRequests.delete(url)\n return response\n })\n .catch(err => {\n this.inFlightNetworkRequests.delete(url)\n throw err\n })\n }\n\n setApiRunner(apiRunner) {\n this.apiRunner = apiRunner\n this.prefetchDisabled = apiRunner(`disableCorePrefetching`).some(a => a)\n }\n\n fetchPageDataJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.path === undefined) {\n throw new Error(`not a valid pageData response`)\n }\n\n const maybeSearch = pagePath.split(`?`)[1]\n if (maybeSearch && !jsonPayload.path.includes(maybeSearch)) {\n jsonPayload.path += `?${maybeSearch}`\n }\n\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: jsonPayload,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404/500 page and it doesn't exist, we're done\n if (pagePath === `/404.html` || pagePath === `/500.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPageDataJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, {\n pagePath: `/500.html`,\n internalServerError: true,\n })\n )\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n fetchPartialHydrationJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath).replace(`.json`, `-rsc.json`)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: responseText,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404/500 page and it doesn't exist, we're done\n if (pagePath === `/404.html` || pagePath === `/500.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, {\n pagePath: `/500.html`,\n internalServerError: true,\n })\n )\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPartialHydrationJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n loadPageDataJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDataDb.has(pagePath)) {\n const pageData = this.pageDataDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !pageData.stale) {\n return Promise.resolve(pageData)\n }\n }\n\n return this.fetchPageDataJson({ pagePath }).then(pageData => {\n this.pageDataDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n loadPartialHydrationJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.partialHydrationDb.has(pagePath)) {\n const pageData = this.partialHydrationDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !pageData.stale) {\n return Promise.resolve(pageData)\n }\n }\n\n return this.fetchPartialHydrationJson({ pagePath }).then(pageData => {\n this.partialHydrationDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n loadSliceDataJson(sliceName) {\n if (this.slicesDataDb.has(sliceName)) {\n const jsonPayload = this.slicesDataDb.get(sliceName)\n return Promise.resolve({ sliceName, jsonPayload })\n }\n\n const url = `${__PATH_PREFIX__}/slice-data/${sliceName}.json`\n return doFetch(url, `GET`).then(res => {\n const jsonPayload = JSON.parse(res.responseText)\n\n this.slicesDataDb.set(sliceName, jsonPayload)\n return { sliceName, jsonPayload }\n })\n }\n\n findMatchPath(rawPath) {\n return findMatchPath(rawPath)\n }\n\n // TODO check all uses of this and whether they use undefined for page resources not exist\n loadPage(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const page = this.pageDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !page.payload.stale) {\n if (page.error) {\n return Promise.resolve({\n error: page.error,\n status: page.status,\n })\n }\n\n return Promise.resolve(page.payload)\n }\n }\n\n if (this.inFlightDb.has(pagePath)) {\n return this.inFlightDb.get(pagePath)\n }\n\n const loadDataPromises = [\n this.loadAppData(),\n this.loadPageDataJson(pagePath),\n ]\n\n if (global.hasPartialHydration) {\n loadDataPromises.push(this.loadPartialHydrationJson(pagePath))\n }\n\n const inFlightPromise = Promise.all(loadDataPromises).then(allData => {\n const [appDataResponse, pageDataResponse, rscDataResponse] = allData\n\n if (\n pageDataResponse.status === PageResourceStatus.Error ||\n rscDataResponse?.status === PageResourceStatus.Error\n ) {\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n let pageData = pageDataResponse.payload\n\n const {\n componentChunkName,\n staticQueryHashes: pageStaticQueryHashes = [],\n slicesMap = {},\n } = pageData\n\n const finalResult = {}\n\n const dedupedSliceNames = Array.from(new Set(Object.values(slicesMap)))\n\n const loadSlice = slice => {\n if (this.slicesDb.has(slice.name)) {\n return this.slicesDb.get(slice.name)\n } else if (this.sliceInflightDb.has(slice.name)) {\n return this.sliceInflightDb.get(slice.name)\n }\n\n const inFlight = this.loadComponent(slice.componentChunkName).then(\n component => {\n return {\n component: preferDefault(component),\n sliceContext: slice.result.sliceContext,\n data: slice.result.data,\n }\n }\n )\n\n this.sliceInflightDb.set(slice.name, inFlight)\n inFlight.then(results => {\n this.slicesDb.set(slice.name, results)\n this.sliceInflightDb.delete(slice.name)\n })\n\n return inFlight\n }\n\n return Promise.all(\n dedupedSliceNames.map(sliceName => this.loadSliceDataJson(sliceName))\n ).then(slicesData => {\n const slices = []\n const dedupedStaticQueryHashes = [...pageStaticQueryHashes]\n\n for (const { jsonPayload, sliceName } of Object.values(slicesData)) {\n slices.push({ name: sliceName, ...jsonPayload })\n for (const staticQueryHash of jsonPayload.staticQueryHashes) {\n if (!dedupedStaticQueryHashes.includes(staticQueryHash)) {\n dedupedStaticQueryHashes.push(staticQueryHash)\n }\n }\n }\n\n const loadChunkPromises = [\n Promise.all(slices.map(loadSlice)),\n this.loadComponent(componentChunkName, `head`),\n ]\n\n if (!global.hasPartialHydration) {\n loadChunkPromises.push(this.loadComponent(componentChunkName))\n }\n\n // In develop we have separate chunks for template and Head components\n // to enable HMR (fast refresh requires single exports).\n // In production we have shared chunk with both exports. Double loadComponent here\n // will be deduped by webpack runtime resulting in single request and single module\n // being loaded for both `component` and `head`.\n // get list of components to get\n const componentChunkPromises = Promise.all(loadChunkPromises).then(\n components => {\n const [sliceComponents, headComponent, pageComponent] = components\n\n finalResult.createdAt = new Date()\n\n for (const sliceComponent of sliceComponents) {\n if (!sliceComponent || sliceComponent instanceof Error) {\n finalResult.status = PageResourceStatus.Error\n finalResult.error = sliceComponent\n }\n }\n\n if (\n !global.hasPartialHydration &&\n (!pageComponent || pageComponent instanceof Error)\n ) {\n finalResult.status = PageResourceStatus.Error\n finalResult.error = pageComponent\n }\n\n let pageResources\n\n if (finalResult.status !== PageResourceStatus.Error) {\n finalResult.status = PageResourceStatus.Success\n if (\n pageDataResponse.notFound === true ||\n rscDataResponse?.notFound === true\n ) {\n finalResult.notFound = true\n }\n pageData = Object.assign(pageData, {\n webpackCompilationHash: appDataResponse\n ? appDataResponse.webpackCompilationHash\n : ``,\n })\n\n if (typeof rscDataResponse?.payload === `string`) {\n pageResources = toPageResources(pageData, null, headComponent)\n\n pageResources.partialHydration = rscDataResponse.payload\n\n const readableStream = new ReadableStream({\n start(controller) {\n const te = new TextEncoder()\n controller.enqueue(te.encode(rscDataResponse.payload))\n },\n pull(controller) {\n // close on next read when queue is empty\n controller.close()\n },\n cancel() {},\n })\n\n return waitForResponse(\n createFromReadableStream(readableStream)\n ).then(result => {\n pageResources.partialHydration = result\n\n return pageResources\n })\n } else {\n pageResources = toPageResources(\n pageData,\n pageComponent,\n headComponent\n )\n }\n }\n\n // undefined if final result is an error\n return pageResources\n }\n )\n\n // get list of static queries to get\n const staticQueryBatchPromise = Promise.all(\n dedupedStaticQueryHashes.map(staticQueryHash => {\n // Check for cache in case this static query result has already been loaded\n if (this.staticQueryDb[staticQueryHash]) {\n const jsonPayload = this.staticQueryDb[staticQueryHash]\n return { staticQueryHash, jsonPayload }\n }\n\n return this.memoizedGet(\n `${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json`\n )\n .then(req => {\n const jsonPayload = JSON.parse(req.responseText)\n return { staticQueryHash, jsonPayload }\n })\n .catch(() => {\n throw new Error(\n `We couldn't load \"${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json\"`\n )\n })\n })\n ).then(staticQueryResults => {\n const staticQueryResultsMap = {}\n\n staticQueryResults.forEach(({ staticQueryHash, jsonPayload }) => {\n staticQueryResultsMap[staticQueryHash] = jsonPayload\n this.staticQueryDb[staticQueryHash] = jsonPayload\n })\n\n return staticQueryResultsMap\n })\n\n return (\n Promise.all([componentChunkPromises, staticQueryBatchPromise])\n .then(([pageResources, staticQueryResults]) => {\n let payload\n if (pageResources) {\n payload = { ...pageResources, staticQueryResults }\n finalResult.payload = payload\n emitter.emit(`onPostLoadPageResources`, {\n page: payload,\n pageResources: payload,\n })\n }\n\n this.pageDb.set(pagePath, finalResult)\n\n if (finalResult.error) {\n return {\n error: finalResult.error,\n status: finalResult.status,\n }\n }\n\n return payload\n })\n // when static-query fail to load we throw a better error\n .catch(err => {\n return {\n error: err,\n status: PageResourceStatus.Error,\n }\n })\n )\n })\n })\n\n inFlightPromise\n .then(() => {\n this.inFlightDb.delete(pagePath)\n })\n .catch(error => {\n this.inFlightDb.delete(pagePath)\n throw error\n })\n\n this.inFlightDb.set(pagePath, inFlightPromise)\n\n return inFlightPromise\n }\n\n // returns undefined if the page does not exists in cache\n loadPageSync(rawPath, options = {}) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const pageData = this.pageDb.get(pagePath)\n\n if (pageData.payload) {\n return pageData.payload\n }\n\n if (options?.withErrorDetails) {\n return {\n error: pageData.error,\n status: pageData.status,\n }\n }\n }\n return undefined\n }\n\n shouldPrefetch(pagePath) {\n // Skip prefetching if we know user is on slow or constrained connection\n if (!doesConnectionSupportPrefetch()) {\n return false\n }\n\n // Don't prefetch if this is a crawler bot\n if (navigator.userAgent && BOT_REGEX.test(navigator.userAgent)) {\n return false\n }\n\n // Check if the page exists.\n if (this.pageDb.has(pagePath)) {\n return false\n }\n\n return true\n }\n\n prefetch(pagePath) {\n if (!this.shouldPrefetch(pagePath)) {\n return {\n then: resolve => resolve(false),\n abort: () => {},\n }\n }\n if (this.prefetchTriggered.has(pagePath)) {\n return {\n then: resolve => resolve(true),\n abort: () => {},\n }\n }\n\n const defer = {\n resolve: null,\n reject: null,\n promise: null,\n }\n defer.promise = new Promise((resolve, reject) => {\n defer.resolve = resolve\n defer.reject = reject\n })\n this.prefetchQueued.push([pagePath, defer])\n const abortC = new AbortController()\n abortC.signal.addEventListener(`abort`, () => {\n const index = this.prefetchQueued.findIndex(([p]) => p === pagePath)\n // remove from the queue\n if (index !== -1) {\n this.prefetchQueued.splice(index, 1)\n }\n })\n\n if (!this.isPrefetchQueueRunning) {\n this.isPrefetchQueueRunning = true\n setTimeout(() => {\n this._processNextPrefetchBatch()\n }, 3000)\n }\n\n return {\n then: (resolve, reject) => defer.promise.then(resolve, reject),\n abort: abortC.abort.bind(abortC),\n }\n }\n\n _processNextPrefetchBatch() {\n const idleCallback = window.requestIdleCallback || (cb => setTimeout(cb, 0))\n\n idleCallback(() => {\n const toPrefetch = this.prefetchQueued.splice(0, 4)\n const prefetches = Promise.all(\n toPrefetch.map(([pagePath, dPromise]) => {\n // Tell plugins with custom prefetching logic that they should start\n // prefetching this path.\n if (!this.prefetchTriggered.has(pagePath)) {\n this.apiRunner(`onPrefetchPathname`, { pathname: pagePath })\n this.prefetchTriggered.add(pagePath)\n }\n\n // If a plugin has disabled core prefetching, stop now.\n if (this.prefetchDisabled) {\n return dPromise.resolve(false)\n }\n\n return this.doPrefetch(findPath(pagePath)).then(() => {\n if (!this.prefetchCompleted.has(pagePath)) {\n this.apiRunner(`onPostPrefetchPathname`, { pathname: pagePath })\n this.prefetchCompleted.add(pagePath)\n }\n\n dPromise.resolve(true)\n })\n })\n )\n\n if (this.prefetchQueued.length) {\n prefetches.then(() => {\n setTimeout(() => {\n this._processNextPrefetchBatch()\n }, 3000)\n })\n } else {\n this.isPrefetchQueueRunning = false\n }\n })\n }\n\n doPrefetch(pagePath) {\n const pageDataUrl = createPageDataUrl(pagePath)\n\n if (global.hasPartialHydration) {\n return Promise.all([\n prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n ),\n prefetchHelper(pageDataUrl.replace(`.json`, `-rsc.json`), {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPartialHydrationJson(pagePath)\n ),\n ])\n } else {\n return prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n )\n }\n }\n\n hovering(rawPath) {\n this.loadPage(rawPath)\n }\n\n getResourceURLsForPathname(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDataDb.get(pagePath)\n if (page) {\n const pageResources = toPageResources(page.payload)\n\n return [\n ...createComponentUrls(pageResources.page.componentChunkName),\n createPageDataUrl(pagePath),\n ]\n } else {\n return null\n }\n }\n\n isPageNotFound(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDb.get(pagePath)\n return !page || page.notFound\n }\n\n loadAppData(retries = 0) {\n return this.memoizedGet(`${__PATH_PREFIX__}/page-data/app-data.json`).then(\n req => {\n const { status, responseText } = req\n\n let appData\n\n if (status !== 200 && retries < 3) {\n // Retry 3 times incase of non-200 responses\n return this.loadAppData(retries + 1)\n }\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.webpackCompilationHash === undefined) {\n throw new Error(`not a valid app-data response`)\n }\n\n appData = jsonPayload\n } catch (err) {\n // continue regardless of error\n }\n }\n\n return appData\n }\n )\n }\n}\n\nconst createComponentUrls = componentChunkName =>\n (window.___chunkMapping[componentChunkName] || []).map(\n chunk => __PATH_PREFIX__ + chunk\n )\n\nexport class ProdLoader extends BaseLoader {\n constructor(asyncRequires, matchPaths, pageData) {\n const loadComponent = (chunkName, exportType = `components`) => {\n if (!global.hasPartialHydration) {\n exportType = `components`\n }\n\n if (!asyncRequires[exportType][chunkName]) {\n throw new Error(\n `We couldn't find the correct component chunk with the name \"${chunkName}\"`\n )\n }\n\n return (\n asyncRequires[exportType][chunkName]()\n // loader will handle the case when component is error\n .catch(err => err)\n )\n }\n\n super(loadComponent, matchPaths)\n\n if (pageData) {\n this.pageDataDb.set(findPath(pageData.path), {\n pagePath: pageData.path,\n payload: pageData,\n status: `success`,\n })\n }\n }\n\n doPrefetch(pagePath) {\n return super.doPrefetch(pagePath).then(result => {\n if (result.status !== PageResourceStatus.Success) {\n return Promise.resolve()\n }\n const pageData = result.payload\n const chunkName = pageData.componentChunkName\n const componentUrls = createComponentUrls(chunkName)\n return Promise.all(componentUrls.map(prefetchHelper)).then(() => pageData)\n })\n }\n\n loadPageDataJson(rawPath) {\n return super.loadPageDataJson(rawPath).then(data => {\n if (data.notFound) {\n if (shouldAbortFetch(rawPath)) {\n return data\n }\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n\n loadPartialHydrationJson(rawPath) {\n return super.loadPartialHydrationJson(rawPath).then(data => {\n if (data.notFound) {\n if (shouldAbortFetch(rawPath)) {\n return data\n }\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n}\n\nlet instance\n\nexport const setLoader = _loader => {\n instance = _loader\n}\n\nexport const publicLoader = {\n enqueue: rawPath => instance.prefetch(rawPath),\n\n // Real methods\n getResourceURLsForPathname: rawPath =>\n instance.getResourceURLsForPathname(rawPath),\n loadPage: rawPath => instance.loadPage(rawPath),\n // TODO add deprecation to v4 so people use withErrorDetails and then we can remove in v5 and change default behaviour\n loadPageSync: (rawPath, options = {}) =>\n instance.loadPageSync(rawPath, options),\n prefetch: rawPath => instance.prefetch(rawPath),\n isPageNotFound: rawPath => instance.isPageNotFound(rawPath),\n hovering: rawPath => instance.hovering(rawPath),\n loadAppData: () => instance.loadAppData(),\n}\n\nexport default publicLoader\n\nexport function getStaticQueryResults() {\n if (instance) {\n return instance.staticQueryDb\n } else {\n return {}\n }\n}\n\nexport function getSliceResults() {\n if (instance) {\n return instance.slicesDb\n } else {\n return {}\n }\n}\n","import { useEffect } from \"react\"\n\n/*\n * Calls callback in an effect and renders children\n */\nexport function FireCallbackInEffect({ children, callback }) {\n useEffect(() => {\n callback()\n })\n\n return children\n}\n","export const VALID_NODE_NAMES = [\n `link`,\n `meta`,\n `style`,\n `title`,\n `base`,\n `noscript`,\n `script`,\n `html`,\n `body`,\n]\n","import { VALID_NODE_NAMES } from \"./constants\"\n\n/**\n * Filter the props coming from a page down to just the ones that are relevant for head.\n * This e.g. filters out properties that are undefined during SSR.\n */\nexport function filterHeadProps(input) {\n return {\n location: {\n pathname: input.location.pathname,\n },\n params: input.params,\n data: input.data || {},\n serverData: input.serverData,\n pageContext: input.pageContext,\n }\n}\n\n/**\n * Throw error if Head export is not a valid function\n */\nexport function headExportValidator(head) {\n if (typeof head !== `function`)\n throw new Error(\n `Expected \"Head\" export to be a function got \"${typeof head}\".`\n )\n}\n\n/**\n * Warn once for same messsage\n */\nlet warnOnce = _ => {}\nif (process.env.NODE_ENV !== `production`) {\n const warnings = new Set()\n warnOnce = msg => {\n if (!warnings.has(msg)) {\n console.warn(msg)\n }\n warnings.add(msg)\n }\n}\n\n/**\n * Warn for invalid tags in Head which may have been directly added or introduced by `wrapRootElement`\n * @param {string} tagName\n */\nexport function warnForInvalidTag(tagName) {\n if (process.env.NODE_ENV !== `production`) {\n const warning = createWarningForInvalidTag(tagName)\n warnOnce(warning)\n }\n}\n\nfunction createWarningForInvalidTag(tagName) {\n return `<${tagName}> is not a valid head element. Please use one of the following: ${VALID_NODE_NAMES.join(\n `, `\n )}.\\n\\nAlso make sure that wrapRootElement in gatsby-ssr/gatsby-browser doesn't contain UI elements: https://gatsby.dev/invalid-head-elements`\n}\n\n/**\n * When a `nonce` is present on an element, browsers such as Chrome and Firefox strip it out of the\n * actual HTML attributes for security reasons *when the element is added to the document*. Thus,\n * given two equivalent elements that have nonces, `Element,isEqualNode()` will return false if one\n * of those elements gets added to the document. Although the `element.nonce` property will be the\n * same for both elements, the one that was added to the document will return an empty string for\n * its nonce HTML attribute value.\n *\n * This custom `isEqualNode()` function therefore removes the nonce value from the `newTag` before\n * comparing it to `oldTag`, restoring it afterwards.\n *\n * For more information, see:\n * https://bugs.chromium.org/p/chromium/issues/detail?id=1211471#c12\n */\nexport function isEqualNode(oldTag, newTag) {\n if (oldTag instanceof HTMLElement && newTag instanceof HTMLElement) {\n const nonce = newTag.getAttribute(`nonce`)\n // Only strip the nonce if `oldTag` has had it stripped. An element's nonce attribute will not\n // be stripped if there is no content security policy response header that includes a nonce.\n if (nonce && !oldTag.getAttribute(`nonce`)) {\n const cloneTag = newTag.cloneNode(true)\n cloneTag.setAttribute(`nonce`, ``)\n cloneTag.nonce = nonce\n return nonce === oldTag.nonce && oldTag.isEqualNode(cloneTag)\n }\n }\n\n return oldTag.isEqualNode(newTag)\n}\n\nexport function diffNodes({ oldNodes, newNodes, onStale, onNew }) {\n for (const existingHeadElement of oldNodes) {\n const indexInNewNodes = newNodes.findIndex(e =>\n isEqualNode(e, existingHeadElement)\n )\n\n if (indexInNewNodes === -1) {\n onStale(existingHeadElement)\n } else {\n // this node is re-created as-is, so we keep old node, and remove it from list of new nodes (as we handled it already here)\n newNodes.splice(indexInNewNodes, 1)\n }\n }\n\n // remaing new nodes didn't have matching old node, so need to be added\n for (const newNode of newNodes) {\n onNew(newNode)\n }\n}\n\nexport function getValidHeadNodesAndAttributes(\n rootNode,\n htmlAndBodyAttributes = {\n html: {},\n body: {},\n }\n) {\n const seenIds = new Map()\n const validHeadNodes = []\n\n // Filter out non-element nodes before looping since we don't care about them\n for (const node of rootNode.childNodes) {\n const nodeName = node.nodeName.toLowerCase()\n const id = node.attributes?.id?.value\n\n if (!isElementType(node)) continue\n\n if (isValidNodeName(nodeName)) {\n // and tags are treated differently, in that we don't render them, we only extract the attributes and apply them separetely\n if (nodeName === `html` || nodeName === `body`) {\n for (const attribute of node.attributes) {\n const isStyleAttribute = attribute.name === `style`\n\n // Merge attributes for same nodeName from previous loop iteration\n htmlAndBodyAttributes[nodeName] = {\n ...htmlAndBodyAttributes[nodeName],\n }\n\n if (!isStyleAttribute) {\n htmlAndBodyAttributes[nodeName][attribute.name] = attribute.value\n }\n\n // If there is already a style attribute, we need to merge them as otherwise the last one will \"win\"\n if (isStyleAttribute) {\n htmlAndBodyAttributes[nodeName].style = `${\n htmlAndBodyAttributes[nodeName]?.style\n ? htmlAndBodyAttributes[nodeName].style\n : ``\n }${attribute.value} `\n }\n }\n } else {\n let clonedNode = node.cloneNode(true)\n clonedNode.setAttribute(`data-gatsby-head`, true)\n\n // // This is hack to make script tags work\n if (clonedNode.nodeName.toLowerCase() === `script`) {\n clonedNode = massageScript(clonedNode)\n }\n // Duplicate ids are not allowed in the head, so we need to dedupe them\n if (id) {\n if (!seenIds.has(id)) {\n validHeadNodes.push(clonedNode)\n seenIds.set(id, validHeadNodes.length - 1)\n } else {\n const indexOfPreviouslyInsertedNode = seenIds.get(id)\n validHeadNodes[\n indexOfPreviouslyInsertedNode\n ].parentNode?.removeChild(\n validHeadNodes[indexOfPreviouslyInsertedNode]\n )\n validHeadNodes[indexOfPreviouslyInsertedNode] = clonedNode\n }\n } else {\n validHeadNodes.push(clonedNode)\n }\n }\n } else {\n warnForInvalidTag(nodeName)\n }\n\n if (node.childNodes.length) {\n validHeadNodes.push(\n ...getValidHeadNodesAndAttributes(node, htmlAndBodyAttributes)\n .validHeadNodes\n )\n }\n }\n\n return { validHeadNodes, htmlAndBodyAttributes }\n}\n\nfunction massageScript(node) {\n const script = document.createElement(`script`)\n for (const attr of node.attributes) {\n script.setAttribute(attr.name, attr.value)\n }\n script.innerHTML = node.innerHTML\n\n return script\n}\n\nexport function isValidNodeName(nodeName) {\n return VALID_NODE_NAMES.includes(nodeName)\n}\n/*\n * For Head, we only care about element nodes(type = 1), so this util is used to skip over non-element nodes\n * For Node type, see https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeType\n */\nexport function isElementType(node) {\n return node.nodeType === 1\n}\n\n/**\n * Removes all the head elements that were added by `Head`\n */\nexport function removePrevHeadElements() {\n const prevHeadNodes = document.querySelectorAll(`[data-gatsby-head]`)\n for (const node of prevHeadNodes) {\n node.parentNode.removeChild(node)\n }\n}\n\nexport function applyHtmlAndBodyAttributes(htmlAndBodyAttributes) {\n if (!htmlAndBodyAttributes) return\n\n const { html, body } = htmlAndBodyAttributes\n\n const htmlElement = document.querySelector(`html`)\n if (htmlElement) {\n Object.entries(html).forEach(([attributeName, attributeValue]) => {\n htmlElement.setAttribute(attributeName, attributeValue)\n })\n }\n\n const bodyElement = document.querySelector(`body`)\n if (bodyElement) {\n Object.entries(body).forEach(([attributeName, attributeValue]) => {\n bodyElement.setAttribute(attributeName, attributeValue)\n })\n }\n}\n\nexport function removeHtmlAndBodyAttributes(htmlAndBodyattributeList) {\n if (!htmlAndBodyattributeList) return\n\n const { html, body } = htmlAndBodyattributeList\n\n if (html) {\n const htmlElement = document.querySelector(`html`)\n html.forEach(attributeName => {\n if (htmlElement) {\n htmlElement.removeAttribute(attributeName)\n }\n })\n }\n\n if (body) {\n const bodyElement = document.querySelector(`body`)\n body.forEach(attributeName => {\n if (bodyElement) {\n bodyElement.removeAttribute(attributeName)\n }\n })\n }\n}\n","import React from \"react\"\nimport { useEffect } from \"react\"\nimport { StaticQueryContext } from \"gatsby\"\nimport { LocationProvider } from \"@gatsbyjs/reach-router\"\nimport { reactDOMUtils } from \"../react-dom-utils\"\nimport { FireCallbackInEffect } from \"./components/fire-callback-in-effect\"\nimport {\n headExportValidator,\n filterHeadProps,\n diffNodes,\n getValidHeadNodesAndAttributes,\n removePrevHeadElements,\n applyHtmlAndBodyAttributes,\n removeHtmlAndBodyAttributes,\n} from \"./utils\"\nimport { apiRunner } from \"../api-runner-browser\"\n\nconst hiddenRoot = document.createElement(`div`)\nconst keysOfHtmlAndBodyAttributes = {\n html: [],\n body: [],\n}\n\nconst onHeadRendered = () => {\n const { validHeadNodes, htmlAndBodyAttributes } =\n getValidHeadNodesAndAttributes(hiddenRoot)\n\n keysOfHtmlAndBodyAttributes.html = Object.keys(htmlAndBodyAttributes.html)\n keysOfHtmlAndBodyAttributes.body = Object.keys(htmlAndBodyAttributes.body)\n\n applyHtmlAndBodyAttributes(htmlAndBodyAttributes)\n\n /**\n * The rest of the code block below is a diffing mechanism to ensure that\n * the head elements aren't duplicted on every re-render.\n */\n const existingHeadElements = document.querySelectorAll(`[data-gatsby-head]`)\n\n if (existingHeadElements.length === 0) {\n document.head.append(...validHeadNodes)\n return\n }\n\n const newHeadNodes = []\n diffNodes({\n oldNodes: existingHeadElements,\n newNodes: validHeadNodes,\n onStale: node => node.parentNode.removeChild(node),\n onNew: node => newHeadNodes.push(node),\n })\n\n document.head.append(...newHeadNodes)\n}\n\nif (process.env.BUILD_STAGE === `develop`) {\n // sigh ... and elements are not valid descedents of
(our hidden element)\n // react-dom in dev mode will warn about this. There doesn't seem to be a way to render arbitrary\n // user Head without hitting this issue (our hidden element could be just \"new Document()\", but\n // this can only have 1 child, and we don't control what is being rendered so that's not an option)\n // instead we continue to render to
, and just silence warnings for and elements\n // https://github.com/facebook/react/blob/e2424f33b3ad727321fc12e75c5e94838e84c2b5/packages/react-dom-bindings/src/client/validateDOMNesting.js#L498-L520\n const originalConsoleError = console.error.bind(console)\n console.error = (...args) => {\n if (\n Array.isArray(args) &&\n args.length >= 2 &&\n args[0]?.includes?.(`validateDOMNesting(...): %s cannot appear as`) &&\n (args[1] === `` || args[1] === ``)\n ) {\n return undefined\n }\n return originalConsoleError(...args)\n }\n\n /* We set up observer to be able to regenerate after react-refresh\n updates our hidden element.\n */\n const observer = new MutationObserver(onHeadRendered)\n observer.observe(hiddenRoot, {\n attributes: true,\n childList: true,\n characterData: true,\n subtree: true,\n })\n}\n\nexport function headHandlerForBrowser({\n pageComponent,\n staticQueryResults,\n pageComponentProps,\n}) {\n useEffect(() => {\n if (pageComponent?.Head) {\n headExportValidator(pageComponent.Head)\n\n const { render } = reactDOMUtils()\n\n const HeadElement = (\n \n )\n\n const WrapHeadElement = apiRunner(\n `wrapRootElement`,\n { element: HeadElement },\n HeadElement,\n ({ result }) => {\n return { element: result }\n }\n ).pop()\n\n render(\n // just a hack to call the callback after react has done first render\n // Note: In dev, we call onHeadRendered twice( in FireCallbackInEffect and after mutualution observer dectects initail render into hiddenRoot) this is for hot reloading\n // In Prod we only call onHeadRendered in FireCallbackInEffect to render to head\n \n \n {WrapHeadElement}\n \n ,\n hiddenRoot\n )\n }\n\n return () => {\n removePrevHeadElements()\n removeHtmlAndBodyAttributes(keysOfHtmlAndBodyAttributes)\n }\n })\n}\n","import React, { Suspense, createElement } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport { grabMatchParams } from \"./find-path\"\nimport { headHandlerForBrowser } from \"./head/head-export-handler-for-browser\"\n\n// Renders page\nfunction PageRenderer(props) {\n const pageComponentProps = {\n ...props,\n params: {\n ...grabMatchParams(props.location.pathname),\n ...props.pageResources.json.pageContext.__params,\n },\n }\n\n const preferDefault = m => (m && m.default) || m\n\n let pageElement\n if (props.pageResources.partialHydration) {\n pageElement = props.pageResources.partialHydration\n } else {\n pageElement = createElement(preferDefault(props.pageResources.component), {\n ...pageComponentProps,\n key: props.path || props.pageResources.page.path,\n })\n }\n\n const pageComponent = props.pageResources.head\n\n headHandlerForBrowser({\n pageComponent,\n staticQueryResults: props.pageResources.staticQueryResults,\n pageComponentProps,\n })\n\n const wrappedPage = apiRunner(\n `wrapPageElement`,\n {\n element: pageElement,\n props: pageComponentProps,\n },\n pageElement,\n ({ result }) => {\n return { element: result, props: pageComponentProps }\n }\n ).pop()\n\n return wrappedPage\n}\n\nPageRenderer.propTypes = {\n location: PropTypes.object.isRequired,\n pageResources: PropTypes.object.isRequired,\n data: PropTypes.object,\n pageContext: PropTypes.object.isRequired,\n}\n\nexport default PageRenderer\n","// This is extracted to separate module because it's shared\n// between browser and SSR code\nexport const RouteAnnouncerProps = {\n id: `gatsby-announcer`,\n style: {\n position: `absolute`,\n top: 0,\n width: 1,\n height: 1,\n padding: 0,\n overflow: `hidden`,\n clip: `rect(0, 0, 0, 0)`,\n whiteSpace: `nowrap`,\n border: 0,\n },\n \"aria-live\": `assertive`,\n \"aria-atomic\": `true`,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport { maybeGetBrowserRedirect } from \"./redirect-utils.js\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport emitter from \"./emitter\"\nimport { RouteAnnouncerProps } from \"./route-announcer-props\"\nimport {\n navigate as reachNavigate,\n globalHistory,\n} from \"@gatsbyjs/reach-router\"\nimport { parsePath } from \"gatsby-link\"\n\nfunction maybeRedirect(pathname) {\n const redirect = maybeGetBrowserRedirect(pathname)\n const { hash, search } = window.location\n\n if (redirect != null) {\n window.___replace(redirect.toPath + search + hash)\n return true\n } else {\n return false\n }\n}\n\n// Catch unhandled chunk loading errors and force a restart of the app.\nlet nextRoute = ``\n\nwindow.addEventListener(`unhandledrejection`, event => {\n if (/loading chunk \\d* failed./i.test(event.reason)) {\n if (nextRoute) {\n window.location.pathname = nextRoute\n }\n }\n})\n\nconst onPreRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n nextRoute = location.pathname\n apiRunner(`onPreRouteUpdate`, { location, prevLocation })\n }\n}\n\nconst onRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onRouteUpdate`, { location, prevLocation })\n if (\n process.env.GATSBY_QUERY_ON_DEMAND &&\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR === `true`\n ) {\n emitter.emit(`onRouteUpdate`, { location, prevLocation })\n }\n }\n}\n\nconst navigate = (to, options = {}) => {\n // Support forward/backward navigation with numbers\n // navigate(-2) (jumps back 2 history steps)\n // navigate(2) (jumps forward 2 history steps)\n if (typeof to === `number`) {\n globalHistory.navigate(to)\n return\n }\n\n const { pathname, search, hash } = parsePath(to)\n const redirect = maybeGetBrowserRedirect(pathname)\n\n // If we're redirecting, just replace the passed in pathname\n // to the one we want to redirect to.\n if (redirect) {\n to = redirect.toPath + search + hash\n }\n\n // If we had a service worker update, no matter the path, reload window and\n // reset the pathname whitelist\n if (window.___swUpdated) {\n window.location = pathname + search + hash\n return\n }\n\n // Start a timer to wait for a second before transitioning and showing a\n // loader in case resources aren't around yet.\n const timeoutId = setTimeout(() => {\n emitter.emit(`onDelayedLoadPageResources`, { pathname })\n apiRunner(`onRouteUpdateDelayed`, {\n location: window.location,\n })\n }, 1000)\n\n loader.loadPage(pathname + search).then(pageResources => {\n // If no page resources, then refresh the page\n // Do this, rather than simply `window.location.reload()`, so that\n // pressing the back/forward buttons work - otherwise when pressing\n // back, the browser will just change the URL and expect JS to handle\n // the change, which won't always work since it might not be a Gatsby\n // page.\n if (!pageResources || pageResources.status === PageResourceStatus.Error) {\n window.history.replaceState({}, ``, location.href)\n window.location = pathname\n clearTimeout(timeoutId)\n return\n }\n\n // If the loaded page has a different compilation hash to the\n // window, then a rebuild has occurred on the server. Reload.\n if (process.env.NODE_ENV === `production` && pageResources) {\n if (\n pageResources.page.webpackCompilationHash !==\n window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n window.location = pathname + search + hash\n }\n }\n reachNavigate(to, options)\n clearTimeout(timeoutId)\n })\n}\n\nfunction shouldUpdateScroll(prevRouterProps, { location }) {\n const { pathname, hash } = location\n const results = apiRunner(`shouldUpdateScroll`, {\n prevRouterProps,\n // `pathname` for backwards compatibility\n pathname,\n routerProps: { location },\n getSavedScrollPosition: args => [\n 0,\n // FIXME this is actually a big code smell, we should fix this\n // eslint-disable-next-line @babel/no-invalid-this\n this._stateStorage.read(args, args.key),\n ],\n })\n if (results.length > 0) {\n // Use the latest registered shouldUpdateScroll result, this allows users to override plugin's configuration\n // @see https://github.com/gatsbyjs/gatsby/issues/12038\n return results[results.length - 1]\n }\n\n if (prevRouterProps) {\n const {\n location: { pathname: oldPathname },\n } = prevRouterProps\n if (oldPathname === pathname) {\n // Scroll to element if it exists, if it doesn't, or no hash is provided,\n // scroll to top.\n return hash ? decodeURI(hash.slice(1)) : [0, 0]\n }\n }\n return true\n}\n\nfunction init() {\n // The \"scroll-behavior\" package expects the \"action\" to be on the location\n // object so let's copy it over.\n globalHistory.listen(args => {\n args.location.action = args.action\n })\n\n window.___push = to => navigate(to, { replace: false })\n window.___replace = to => navigate(to, { replace: true })\n window.___navigate = (to, options) => navigate(to, options)\n}\n\nclass RouteAnnouncer extends React.Component {\n constructor(props) {\n super(props)\n this.announcementRef = React.createRef()\n }\n\n componentDidUpdate(prevProps, nextProps) {\n requestAnimationFrame(() => {\n let pageName = `new page at ${this.props.location.pathname}`\n if (document.title) {\n pageName = document.title\n }\n const pageHeadings = document.querySelectorAll(`#gatsby-focus-wrapper h1`)\n if (pageHeadings && pageHeadings.length) {\n pageName = pageHeadings[0].textContent\n }\n const newAnnouncement = `Navigated to ${pageName}`\n if (this.announcementRef.current) {\n const oldAnnouncement = this.announcementRef.current.innerText\n if (oldAnnouncement !== newAnnouncement) {\n this.announcementRef.current.innerText = newAnnouncement\n }\n }\n })\n }\n\n render() {\n return
\n }\n}\n\nconst compareLocationProps = (prevLocation, nextLocation) => {\n if (prevLocation.href !== nextLocation.href) {\n return true\n }\n\n if (prevLocation?.state?.key !== nextLocation?.state?.key) {\n return true\n }\n\n return false\n}\n\n// Fire on(Pre)RouteUpdate APIs\nclass RouteUpdates extends React.Component {\n constructor(props) {\n super(props)\n onPreRouteUpdate(props.location, null)\n }\n\n componentDidMount() {\n onRouteUpdate(this.props.location, null)\n }\n\n shouldComponentUpdate(nextProps) {\n if (compareLocationProps(this.props.location, nextProps.location)) {\n onPreRouteUpdate(nextProps.location, this.props.location)\n return true\n }\n return false\n }\n\n componentDidUpdate(prevProps) {\n if (compareLocationProps(prevProps.location, this.props.location)) {\n onRouteUpdate(this.props.location, prevProps.location)\n }\n }\n\n render() {\n return (\n \n {this.props.children}\n \n \n )\n }\n}\n\nRouteUpdates.propTypes = {\n location: PropTypes.object.isRequired,\n}\n\nexport { init, shouldUpdateScroll, RouteUpdates, maybeGetBrowserRedirect }\n","// Pulled from react-compat\n// https://github.com/developit/preact-compat/blob/7c5de00e7c85e2ffd011bf3af02899b63f699d3a/src/index.js#L349\nfunction shallowDiffers(a, b) {\n for (var i in a) {\n if (!(i in b)) return true;\n }for (var _i in b) {\n if (a[_i] !== b[_i]) return true;\n }return false;\n}\n\nexport default (function (instance, nextProps, nextState) {\n return shallowDiffers(instance.props, nextProps) || shallowDiffers(instance.state, nextState);\n});","import React from \"react\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport shallowCompare from \"shallow-compare\"\n\nclass EnsureResources extends React.Component {\n constructor(props) {\n super()\n const { location, pageResources } = props\n this.state = {\n location: { ...location },\n pageResources:\n pageResources ||\n loader.loadPageSync(location.pathname + location.search, {\n withErrorDetails: true,\n }),\n }\n }\n\n static getDerivedStateFromProps({ location }, prevState) {\n if (prevState.location.href !== location.href) {\n const pageResources = loader.loadPageSync(\n location.pathname + location.search,\n {\n withErrorDetails: true,\n }\n )\n\n return {\n pageResources,\n location: { ...location },\n }\n }\n\n return {\n location: { ...location },\n }\n }\n\n loadResources(rawPath) {\n loader.loadPage(rawPath).then(pageResources => {\n if (pageResources && pageResources.status !== PageResourceStatus.Error) {\n this.setState({\n location: { ...window.location },\n pageResources,\n })\n } else {\n window.history.replaceState({}, ``, location.href)\n window.location = rawPath\n }\n })\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n // Always return false if we're missing resources.\n if (!nextState.pageResources) {\n this.loadResources(\n nextProps.location.pathname + nextProps.location.search\n )\n return false\n }\n\n if (\n process.env.BUILD_STAGE === `develop` &&\n nextState.pageResources.stale\n ) {\n this.loadResources(\n nextProps.location.pathname + nextProps.location.search\n )\n return false\n }\n\n // Check if the component or json have changed.\n if (this.state.pageResources !== nextState.pageResources) {\n return true\n }\n if (\n this.state.pageResources.component !== nextState.pageResources.component\n ) {\n return true\n }\n\n if (this.state.pageResources.json !== nextState.pageResources.json) {\n return true\n }\n // Check if location has changed on a page using internal routing\n // via matchPath configuration.\n if (\n this.state.location.key !== nextState.location.key &&\n nextState.pageResources.page &&\n (nextState.pageResources.page.matchPath ||\n nextState.pageResources.page.path)\n ) {\n return true\n }\n return shallowCompare(this, nextProps, nextState)\n }\n\n render() {\n if (\n process.env.NODE_ENV !== `production` &&\n (!this.state.pageResources ||\n this.state.pageResources.status === PageResourceStatus.Error)\n ) {\n const message = `EnsureResources was not able to find resources for path: \"${this.props.location.pathname}\"\nThis typically means that an issue occurred building components for that path.\nRun \\`gatsby clean\\` to remove any cached elements.`\n if (this.state.pageResources?.error) {\n console.error(message)\n throw this.state.pageResources.error\n }\n\n throw new Error(message)\n }\n\n return this.props.children(this.state)\n }\n}\n\nexport default EnsureResources\n","import { apiRunner, apiRunnerAsync } from \"./api-runner-browser\"\nimport React from \"react\"\nimport { Router, navigate, Location, BaseContext } from \"@gatsbyjs/reach-router\"\nimport { ScrollContext } from \"gatsby-react-router-scroll\"\nimport { StaticQueryContext } from \"./static-query\"\nimport {\n SlicesMapContext,\n SlicesContext,\n SlicesResultsContext,\n} from \"./slice/context\"\nimport {\n shouldUpdateScroll,\n init as navigationInit,\n RouteUpdates,\n} from \"./navigation\"\nimport emitter from \"./emitter\"\nimport PageRenderer from \"./page-renderer\"\nimport asyncRequires from \"$virtual/async-requires\"\nimport {\n setLoader,\n ProdLoader,\n publicLoader,\n PageResourceStatus,\n getStaticQueryResults,\n getSliceResults,\n} from \"./loader\"\nimport EnsureResources from \"./ensure-resources\"\nimport stripPrefix from \"./strip-prefix\"\n\n// Generated during bootstrap\nimport matchPaths from \"$virtual/match-paths.json\"\nimport { reactDOMUtils } from \"./react-dom-utils\"\n\nconst loader = new ProdLoader(asyncRequires, matchPaths, window.pageData)\nsetLoader(loader)\nloader.setApiRunner(apiRunner)\n\nconst { render, hydrate } = reactDOMUtils()\n\nwindow.asyncRequires = asyncRequires\nwindow.___emitter = emitter\nwindow.___loader = publicLoader\n\nnavigationInit()\n\nconst reloadStorageKey = `gatsby-reload-compilation-hash-match`\n\napiRunnerAsync(`onClientEntry`).then(() => {\n // Let plugins register a service worker. The plugin just needs\n // to return true.\n if (apiRunner(`registerServiceWorker`).filter(Boolean).length > 0) {\n require(`./register-service-worker`)\n }\n\n // In gatsby v2 if Router is used in page using matchPaths\n // paths need to contain full path.\n // For example:\n // - page have `/app/*` matchPath\n // - inside template user needs to use `/app/xyz` as path\n // Resetting `basepath`/`baseuri` keeps current behaviour\n // to not introduce breaking change.\n // Remove this in v3\n const RouteHandler = props => (\n \n \n \n )\n\n const DataContext = React.createContext({})\n\n const slicesContext = {\n renderEnvironment: `browser`,\n }\n\n class GatsbyRoot extends React.Component {\n render() {\n const { children } = this.props\n return (\n \n {({ location }) => (\n \n {({ pageResources, location }) => {\n const staticQueryResults = getStaticQueryResults()\n const sliceResults = getSliceResults()\n\n return (\n \n \n \n \n \n {children}\n \n \n \n \n \n )\n }}\n \n )}\n \n )\n }\n }\n\n class LocationHandler extends React.Component {\n render() {\n return (\n \n {({ pageResources, location }) => (\n \n \n \n \n \n \n \n )}\n \n )\n }\n }\n\n const { pagePath, location: browserLoc } = window\n\n // Explicitly call navigate if the canonical path (window.pagePath)\n // is different to the browser path (window.location.pathname). SSR\n // page paths might include search params, while SSG and DSG won't.\n // If page path include search params we also compare query params.\n // But only if NONE of the following conditions hold:\n //\n // - The url matches a client side route (page.matchPath)\n // - it's a 404 page\n // - it's the offline plugin shell (/offline-plugin-app-shell-fallback/)\n if (\n pagePath &&\n __BASE_PATH__ + pagePath !==\n browserLoc.pathname + (pagePath.includes(`?`) ? browserLoc.search : ``) &&\n !(\n loader.findMatchPath(stripPrefix(browserLoc.pathname, __BASE_PATH__)) ||\n pagePath.match(/^\\/(404|500)(\\/?|.html)$/) ||\n pagePath.match(/^\\/offline-plugin-app-shell-fallback\\/?$/)\n )\n ) {\n navigate(\n __BASE_PATH__ +\n pagePath +\n (!pagePath.includes(`?`) ? browserLoc.search : ``) +\n browserLoc.hash,\n {\n replace: true,\n }\n )\n }\n\n // It's possible that sessionStorage can throw an exception if access is not granted, see https://github.com/gatsbyjs/gatsby/issues/34512\n const getSessionStorage = () => {\n try {\n return sessionStorage\n } catch {\n return null\n }\n }\n\n publicLoader.loadPage(browserLoc.pathname + browserLoc.search).then(page => {\n const sessionStorage = getSessionStorage()\n\n if (\n page?.page?.webpackCompilationHash &&\n page.page.webpackCompilationHash !== window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n // We have not matching html + js (inlined `window.___webpackCompilationHash`)\n // with our data (coming from `app-data.json` file). This can cause issues such as\n // errors trying to load static queries (as list of static queries is inside `page-data`\n // which might not match to currently loaded `.js` scripts).\n // We are making attempt to reload if hashes don't match, but we also have to handle case\n // when reload doesn't fix it (possibly broken deploy) so we don't end up in infinite reload loop\n if (sessionStorage) {\n const isReloaded = sessionStorage.getItem(reloadStorageKey) === `1`\n\n if (!isReloaded) {\n sessionStorage.setItem(reloadStorageKey, `1`)\n window.location.reload(true)\n return\n }\n }\n }\n\n if (sessionStorage) {\n sessionStorage.removeItem(reloadStorageKey)\n }\n\n if (!page || page.status === PageResourceStatus.Error) {\n const message = `page resources for ${browserLoc.pathname} not found. Not rendering React`\n\n // if the chunk throws an error we want to capture the real error\n // This should help with https://github.com/gatsbyjs/gatsby/issues/19618\n if (page && page.error) {\n console.error(message)\n throw page.error\n }\n\n throw new Error(message)\n }\n\n const SiteRoot = apiRunner(\n `wrapRootElement`,\n { element: },\n ,\n ({ result }) => {\n return { element: result }\n }\n ).pop()\n\n const App = function App() {\n const onClientEntryRanRef = React.useRef(false)\n\n React.useEffect(() => {\n if (!onClientEntryRanRef.current) {\n onClientEntryRanRef.current = true\n if (performance.mark) {\n performance.mark(`onInitialClientRender`)\n }\n\n apiRunner(`onInitialClientRender`)\n }\n }, [])\n\n return {SiteRoot}\n }\n\n const focusEl = document.getElementById(`gatsby-focus-wrapper`)\n\n // Client only pages have any empty body so we just do a normal\n // render to avoid React complaining about hydration mis-matches.\n let defaultRenderer = render\n if (focusEl && focusEl.children.length) {\n defaultRenderer = hydrate\n }\n\n const renderer = apiRunner(\n `replaceHydrateFunction`,\n undefined,\n defaultRenderer\n )[0]\n\n function runRender() {\n const rootElement =\n typeof window !== `undefined`\n ? document.getElementById(`___gatsby`)\n : null\n\n renderer(, rootElement)\n }\n\n // https://github.com/madrobby/zepto/blob/b5ed8d607f67724788ec9ff492be297f64d47dfc/src/zepto.js#L439-L450\n // TODO remove IE 10 support\n const doc = document\n if (\n doc.readyState === `complete` ||\n (doc.readyState !== `loading` && !doc.documentElement.doScroll)\n ) {\n setTimeout(function () {\n runRender()\n }, 0)\n } else {\n const handler = function () {\n doc.removeEventListener(`DOMContentLoaded`, handler, false)\n window.removeEventListener(`load`, handler, false)\n\n runRender()\n }\n\n doc.addEventListener(`DOMContentLoaded`, handler, false)\n window.addEventListener(`load`, handler, false)\n }\n\n return\n })\n})\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport loader from \"./loader\"\nimport InternalPageRenderer from \"./page-renderer\"\n\nconst ProdPageRenderer = ({ location }) => {\n const pageResources = loader.loadPageSync(location.pathname)\n if (!pageResources) {\n return null\n }\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","const map = new WeakMap()\n\nexport function reactDOMUtils() {\n const reactDomClient = require(`react-dom/client`)\n\n const render = (Component, el) => {\n let root = map.get(el)\n if (!root) {\n map.set(el, (root = reactDomClient.createRoot(el)))\n }\n root.render(Component)\n }\n\n const hydrate = (Component, el) => reactDomClient.hydrateRoot(el, Component)\n\n return { render, hydrate }\n}\n","import redirects from \"./redirects.json\"\n\n// Convert to a map for faster lookup in maybeRedirect()\n\nconst redirectMap = new Map()\nconst redirectIgnoreCaseMap = new Map()\n\nredirects.forEach(redirect => {\n if (redirect.ignoreCase) {\n redirectIgnoreCaseMap.set(redirect.fromPath, redirect)\n } else {\n redirectMap.set(redirect.fromPath, redirect)\n }\n})\n\nexport function maybeGetBrowserRedirect(pathname) {\n let redirect = redirectMap.get(pathname)\n if (!redirect) {\n redirect = redirectIgnoreCaseMap.get(pathname.toLowerCase())\n }\n return redirect\n}\n","import { apiRunner } from \"./api-runner-browser\"\n\nif (\n window.location.protocol !== `https:` &&\n window.location.hostname !== `localhost`\n) {\n console.error(\n `Service workers can only be used over HTTPS, or on localhost for development`\n )\n} else if (`serviceWorker` in navigator) {\n navigator.serviceWorker\n .register(`${__BASE_PATH__}/sw.js`)\n .then(function (reg) {\n reg.addEventListener(`updatefound`, () => {\n apiRunner(`onServiceWorkerUpdateFound`, { serviceWorker: reg })\n // The updatefound event implies that reg.installing is set; see\n // https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event\n const installingWorker = reg.installing\n console.log(`installingWorker`, installingWorker)\n installingWorker.addEventListener(`statechange`, () => {\n switch (installingWorker.state) {\n case `installed`:\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and the fresh content will\n // have been added to the cache.\n\n // We set a flag so Gatsby Link knows to refresh the page on next navigation attempt\n window.___swUpdated = true\n // We call the onServiceWorkerUpdateReady API so users can show update prompts.\n apiRunner(`onServiceWorkerUpdateReady`, { serviceWorker: reg })\n\n // If resources failed for the current page, reload.\n if (window.___failedResources) {\n console.log(`resources failed, SW updated - reloading`)\n window.location.reload()\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a \"Content is cached for offline use.\" message.\n console.log(`Content is now available offline!`)\n\n // Post to service worker that install is complete.\n // Delay to allow time for the event listener to be added --\n // otherwise fetch is called too soon and resources aren't cached.\n apiRunner(`onServiceWorkerInstalled`, { serviceWorker: reg })\n }\n break\n\n case `redundant`:\n console.error(`The installing service worker became redundant.`)\n apiRunner(`onServiceWorkerRedundant`, { serviceWorker: reg })\n break\n\n case `activated`:\n apiRunner(`onServiceWorkerActive`, { serviceWorker: reg })\n break\n }\n })\n })\n })\n .catch(function (e) {\n console.error(`Error during service worker registration:`, e)\n })\n}\n","import React from \"react\"\n\nconst SlicesResultsContext = React.createContext({})\nconst SlicesContext = React.createContext({})\nconst SlicesMapContext = React.createContext({})\nconst SlicesPropsContext = React.createContext({})\n\nexport {\n SlicesResultsContext,\n SlicesContext,\n SlicesMapContext,\n SlicesPropsContext,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport { createServerOrClientContext } from \"./context-utils\"\n\nconst StaticQueryContext = createServerOrClientContext(`StaticQuery`, {})\n\nfunction StaticQueryDataRenderer({ staticQueryData, data, query, render }) {\n const finalData = data\n ? data.data\n : staticQueryData[query] && staticQueryData[query].data\n\n return (\n \n {finalData && render(finalData)}\n {!finalData &&
Loading (StaticQuery)
}\n
\n )\n}\n\nlet warnedAboutStaticQuery = false\n\n// TODO(v6): Remove completely\nconst StaticQuery = props => {\n const { data, query, render, children } = props\n\n if (process.env.NODE_ENV === `development` && !warnedAboutStaticQuery) {\n console.warn(\n `The component is deprecated and will be removed in Gatsby v6. Use useStaticQuery instead. Refer to the migration guide for more information: https://gatsby.dev/migrating-4-to-5/#staticquery--is-deprecated`\n )\n warnedAboutStaticQuery = true\n }\n\n return (\n \n {staticQueryData => (\n \n )}\n \n )\n}\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nconst useStaticQuery = query => {\n if (\n typeof React.useContext !== `function` &&\n process.env.NODE_ENV === `development`\n ) {\n // TODO(v5): Remove since we require React >= 18\n throw new Error(\n `You're likely using a version of React that doesn't support Hooks\\n` +\n `Please update React and ReactDOM to 16.8.0 or later to use the useStaticQuery hook.`\n )\n }\n\n const context = React.useContext(StaticQueryContext)\n\n // query is a stringified number like `3303882` when wrapped with graphql, If a user forgets\n // to wrap the query in a grqphql, then casting it to a Number results in `NaN` allowing us to\n // catch the misuse of the API and give proper direction\n if (isNaN(Number(query))) {\n throw new Error(`useStaticQuery was called with a string but expects to be called using \\`graphql\\`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql\\`${query}\\`);\n`)\n }\n\n if (context[query]?.data) {\n return context[query].data\n } else {\n throw new Error(\n `The result of this StaticQuery could not be fetched.\\n\\n` +\n `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +\n `please open an issue in https://github.com/gatsbyjs/gatsby/issues`\n )\n }\n}\n\nexport { StaticQuery, StaticQueryContext, useStaticQuery }\n","import React from \"react\"\n\n// Ensure serverContext is not created more than once as React will throw when creating it more than once\n// https://github.com/facebook/react/blob/dd2d6522754f52c70d02c51db25eb7cbd5d1c8eb/packages/react/src/ReactServerContext.js#L101\nconst createServerContext = (name, defaultValue = null) => {\n /* eslint-disable no-undef */\n if (!globalThis.__SERVER_CONTEXT) {\n globalThis.__SERVER_CONTEXT = {}\n }\n\n if (!globalThis.__SERVER_CONTEXT[name]) {\n globalThis.__SERVER_CONTEXT[name] = React.createServerContext(\n name,\n defaultValue\n )\n }\n\n return globalThis.__SERVER_CONTEXT[name]\n}\n\nfunction createServerOrClientContext(name, defaultValue) {\n if (React.createServerContext) {\n return createServerContext(name, defaultValue)\n }\n\n return React.createContext(defaultValue)\n}\n\nexport { createServerOrClientContext }\n","/**\n * Remove a prefix from a string. Return the input string if the given prefix\n * isn't found.\n */\n\nexport default function stripPrefix(str, prefix = ``) {\n if (!prefix) {\n return str\n }\n\n if (str === prefix) {\n return `/`\n }\n\n if (str.startsWith(`${prefix}/`)) {\n return str.slice(prefix.length)\n }\n\n return str\n}\n","/**\n * Implement Gatsby's Browser APIs in this file.\n *\n * See: https://www.gatsbyjs.com/docs/browser-apis/\n */\n\n// You can delete this file if you're not using it\nimport \"./src/index.scss\"\n\n// force update without alert\nexport const onServiceWorkerUpdateReady = () => window.location.reload(true)\n\n// export const onServiceWorkerUpdateFound = () => {\n// if (\n// window.confirm(\n// \"This site has been updated with new data. Do you wish to reload the site to get the new data?\"\n// )\n// ) {\n// window.location.reload(true)\n// }\n// }\n","const listOfMetricsSend = new Set();\nfunction debounce(fn, timeout) {\n let timer = null;\n return function (...args) {\n if (timer) {\n clearTimeout(timer);\n }\n timer = setTimeout(fn, timeout, ...args);\n };\n}\nfunction sendWebVitals(dataLayerName = `dataLayer`) {\n const win = window;\n function sendData(data) {\n if (listOfMetricsSend.has(data.name)) {\n return;\n }\n listOfMetricsSend.add(data.name);\n sendToGTM(data, win[dataLayerName]);\n }\n return import(`web-vitals/base`).then(({\n getLCP,\n getFID,\n getCLS\n }) => {\n const debouncedCLS = debounce(sendData, 3000);\n // we don't need to debounce FID - we send it when it happens\n const debouncedFID = sendData;\n // LCP can occur multiple times so we debounce it\n const debouncedLCP = debounce(sendData, 3000);\n\n // With the true flag, we measure all previous occurences too, in case we start listening to late.\n getCLS(debouncedCLS, true);\n getFID(debouncedFID, true);\n getLCP(debouncedLCP, true);\n });\n}\nfunction sendToGTM({\n name,\n value,\n id\n}, dataLayer) {\n dataLayer.push({\n event: `core-web-vitals`,\n webVitalsMeasurement: {\n name: name,\n // The `id` value will be unique to the current page load. When sending\n // multiple values from the same page (e.g. for CLS), Google Analytics can\n // compute a total by grouping on this ID (note: requires `eventLabel` to\n // be a dimension in your report).\n id,\n // Google Analytics metrics must be integers, so the value is rounded.\n // For CLS the value is first multiplied by 1000 for greater precision\n // (note: increase the multiplier for greater precision if needed).\n value: Math.round(name === `CLS` ? value * 1000 : value)\n }\n });\n}\nexport function onRouteUpdate(_, pluginOptions) {\n if (process.env.NODE_ENV === `production` || pluginOptions.includeInDevelopment) {\n // wrap inside a timeout to ensure the title has properly been changed\n setTimeout(() => {\n const data = pluginOptions.dataLayerName ? window[pluginOptions.dataLayerName] : window.dataLayer;\n const eventName = pluginOptions.routeChangeEventName ? pluginOptions.routeChangeEventName : `gatsby-route-change`;\n data.push({\n event: eventName\n });\n }, 50);\n }\n}\nexport function onInitialClientRender(_, pluginOptions) {\n // we only load the polyfill in production so we can't enable it in development\n if (process.env.NODE_ENV === `production` && pluginOptions.enableWebVitalsTracking) {\n sendWebVitals(pluginOptions.dataLayerName);\n }\n}","/* global __MANIFEST_PLUGIN_HAS_LOCALISATION__ */\nimport { withPrefix } from \"gatsby\";\nimport getManifestForPathname from \"./get-manifest-pathname\";\n\n// when we don't have localisation in our manifest, we tree shake everything away\nexport const onRouteUpdate = function onRouteUpdate({\n location\n}, pluginOptions) {\n if (__MANIFEST_PLUGIN_HAS_LOCALISATION__) {\n const {\n localize\n } = pluginOptions;\n const manifestFilename = getManifestForPathname(location.pathname, localize, true);\n const manifestEl = document.head.querySelector(`link[rel=\"manifest\"]`);\n if (manifestEl) {\n manifestEl.setAttribute(`href`, withPrefix(manifestFilename));\n }\n }\n};","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\nvar _gatsby = require(\"gatsby\");\n/**\n * Get a manifest filename depending on localized pathname\n *\n * @param {string} pathname\n * @param {Array<{start_url: string, lang: string}>} localizedManifests\n * @param {boolean} shouldPrependPathPrefix\n * @return string\n */\nvar _default = (pathname, localizedManifests, shouldPrependPathPrefix = false) => {\n const defaultFilename = `manifest.webmanifest`;\n if (!Array.isArray(localizedManifests)) {\n return defaultFilename;\n }\n const localizedManifest = localizedManifests.find(app => {\n let startUrl = app.start_url;\n if (shouldPrependPathPrefix) {\n startUrl = (0, _gatsby.withPrefix)(startUrl);\n }\n return pathname.startsWith(startUrl);\n });\n if (!localizedManifest) {\n return defaultFilename;\n }\n return `manifest_${localizedManifest.lang}.webmanifest`;\n};\nexports.default = _default;","\"use strict\";\n\nexports.registerServiceWorker = function () {\n return process.env.GATSBY_IS_PREVIEW !== \"true\";\n};\n\n// only cache relevant resources for this page\nvar whiteListLinkRels = /^(stylesheet|preload)$/;\nvar prefetchedPathnames = [];\nexports.onServiceWorkerActive = function (_ref) {\n var getResourceURLsForPathname = _ref.getResourceURLsForPathname,\n serviceWorker = _ref.serviceWorker;\n if (process.env.GATSBY_IS_PREVIEW === \"true\") {\n return;\n }\n\n // if the SW has just updated then clear the path dependencies and don't cache\n // stuff, since we're on the old revision until we navigate to another page\n if (window.___swUpdated) {\n serviceWorker.active.postMessage({\n gatsbyApi: \"clearPathResources\"\n });\n return;\n }\n\n // grab nodes from head of document\n var nodes = document.querySelectorAll(\"\\n head > script[src],\\n head > link[href],\\n head > style[data-href]\\n \");\n\n // get all resource URLs\n var headerResources = [].slice.call(nodes)\n // don't include preconnect/prefetch/prerender resources\n .filter(function (node) {\n return node.tagName !== \"LINK\" || whiteListLinkRels.test(node.getAttribute(\"rel\"));\n }).map(function (node) {\n return node.src || node.href || node.getAttribute(\"data-href\");\n });\n\n // Loop over prefetched pages and add their resources to an array,\n // plus specify which resources are required for those paths.\n var prefetchedResources = [];\n prefetchedPathnames.forEach(function (path) {\n var resources = getResourceURLsForPathname(path);\n prefetchedResources.push.apply(prefetchedResources, resources);\n serviceWorker.active.postMessage({\n gatsbyApi: \"setPathResources\",\n path: path,\n resources: resources\n });\n });\n\n // Loop over all resources and fetch the page component + JSON data\n // to add it to the SW cache.\n var resources = [].concat(headerResources, prefetchedResources);\n resources.forEach(function (resource) {\n // Create a prefetch link for each resource, so Workbox runtime-caches them\n var link = document.createElement(\"link\");\n link.rel = \"prefetch\";\n link.href = resource;\n link.onload = link.remove;\n link.onerror = link.remove;\n document.head.appendChild(link);\n });\n};\nfunction setPathResources(path, getResourceURLsForPathname) {\n // do nothing if the SW has just updated, since we still have old pages in\n // memory which we don't want to be whitelisted\n if (window.___swUpdated) return;\n if (\"serviceWorker\" in navigator) {\n var _navigator = navigator,\n serviceWorker = _navigator.serviceWorker;\n if (serviceWorker.controller === null) {\n // if SW is not installed, we need to record any prefetches\n // that happen so we can then add them to SW cache once installed\n prefetchedPathnames.push(path);\n } else {\n var resources = getResourceURLsForPathname(path);\n serviceWorker.controller.postMessage({\n gatsbyApi: \"setPathResources\",\n path: path,\n resources: resources\n });\n }\n }\n}\nexports.onRouteUpdate = function (_ref2) {\n var location = _ref2.location,\n getResourceURLsForPathname = _ref2.getResourceURLsForPathname;\n var pathname = location.pathname.replace(__BASE_PATH__, \"\");\n setPathResources(pathname, getResourceURLsForPathname);\n if (\"serviceWorker\" in navigator && navigator.serviceWorker.controller !== null) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: \"enableOfflineShell\"\n });\n }\n};\nexports.onPostPrefetchPathname = function (_ref3) {\n var pathname = _ref3.pathname,\n getResourceURLsForPathname = _ref3.getResourceURLsForPathname;\n setPathResources(pathname, getResourceURLsForPathname);\n};","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","function _assertThisInitialized(e) {\n if (void 0 === e) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return e;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nmodule.exports = _inheritsLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(e) {\n return e && e.__esModule ? e : {\n \"default\": e\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(t, e) {\n return module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports, _setPrototypeOf(t, e);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nconst PartytownSnippet = \"/* Partytown 0.7.6 - MIT builder.io */\\n!function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,\\\"/\\\"==(a=(o.lib||\\\"/~partytown/\\\")+(o.debug?\\\"debug/\\\":\\\"\\\"))[0]&&(s=e.querySelectorAll('script[type=\\\"text/partytown\\\"]'),i!=t?i.dispatchEvent(new CustomEvent(\\\"pt1\\\",{detail:t})):(d=setTimeout(f,1e4),e.addEventListener(\\\"pt0\\\",w),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||\\\"partytown-sw.js\\\"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener(\\\"statechange\\\",(function(t){\\\"activated\\\"==t.target.state&&h()}))}),console.error):f())))}function h(t){c=e.createElement(t?\\\"script\\\":\\\"iframe\\\"),t||(c.setAttribute(\\\"style\\\",\\\"display:block;width:0;height:0;border:0;visibility:hidden\\\"),c.setAttribute(\\\"aria-hidden\\\",!0)),c.src=a+\\\"partytown-\\\"+(t?\\\"atomics.js?v=0.7.6\\\":\\\"sandbox-sw.html?\\\"+Date.now()),e.body.appendChild(c)}function f(n,r){for(w(),i==t&&(o.forward||[]).map((function(e){delete t[e.split(\\\".\\\")[0]]})),n=0;n {\n const { forward = [], ...filteredConfig } = config || {};\n const configStr = JSON.stringify(filteredConfig, (k, v) => {\n if (typeof v === 'function') {\n v = String(v);\n if (v.startsWith(k + '(')) {\n v = 'function ' + v;\n }\n }\n return v;\n });\n return [\n `!(function(w,p,f,c){`,\n Object.keys(filteredConfig).length > 0\n ? `c=w[p]=Object.assign(w[p]||{},${configStr});`\n : `c=w[p]=w[p]||{};`,\n `c[f]=(c[f]||[])`,\n forward.length > 0 ? `.concat(${JSON.stringify(forward)})` : ``,\n `})(window,'partytown','forward');`,\n snippetCode,\n ].join('');\n};\n\n/**\n * The `type` attribute for Partytown scripts, which does two things:\n *\n * 1. Prevents the `