{"version":3,"file":"app-7cc85308a36cf2ceca72.js","mappings":"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","sources":["webpack://www.distributeddynamic.com/./node_modules/gatsby-page-utils/dist/apply-trailing-slash-option.js","webpack://www.distributeddynamic.com/./node_modules/gatsby-react-router-scroll/index.js","webpack://www.distributeddynamic.com/./node_modules/gatsby-react-router-scroll/scroll-handler.js","webpack://www.distributeddynamic.com/./node_modules/gatsby-react-router-scroll/session-storage.js","webpack://www.distributeddynamic.com/./node_modules/gatsby-react-router-scroll/use-scroll-restoration.js","webpack://www.distributeddynamic.com/./node_modules/gatsby/dist/internal-plugins/partytown/gatsby-browser.js","webpack://www.distributeddynamic.com/./node_modules/gatsby/dist/internal-plugins/partytown/utils/get-forwards.js","webpack://www.distributeddynamic.com/./node_modules/gatsby/dist/internal-plugins/partytown/utils/inject-partytown-snippet.js","webpack://www.distributeddynamic.com/./.cache/_this_is_virtual_fs_path_/$virtual/async-requires.js","webpack://www.distributeddynamic.com/./.cache/api-runner-browser-plugins.js","webpack://www.distributeddynamic.com/./.cache/api-runner-browser.js","webpack://www.distributeddynamic.com/./.cache/emitter.js","webpack://www.distributeddynamic.com/./node_modules/mitt/dist/mitt.es.js","webpack://www.distributeddynamic.com/./.cache/normalize-page-path.js","webpack://www.distributeddynamic.com/./.cache/find-path.js","webpack://www.distributeddynamic.com/./.cache/prefetch.js","webpack://www.distributeddynamic.com/./.cache/loader.js","webpack://www.distributeddynamic.com/./.cache/gatsby-browser-entry.js","webpack://www.distributeddynamic.com/./.cache/head/components/fire-callback-in-effect.js","webpack://www.distributeddynamic.com/./.cache/head/constants.js","webpack://www.distributeddynamic.com/./.cache/head/utils.js","webpack://www.distributeddynamic.com/./.cache/head/head-export-handler-for-browser.js","webpack://www.distributeddynamic.com/./.cache/page-renderer.js","webpack://www.distributeddynamic.com/./.cache/route-announcer-props.js","webpack://www.distributeddynamic.com/./node_modules/gatsby-link/dist/index.modern.mjs","webpack://www.distributeddynamic.com/./.cache/navigation.js","webpack://www.distributeddynamic.com/./node_modules/shallow-compare/es/index.js","webpack://www.distributeddynamic.com/./.cache/ensure-resources.js","webpack://www.distributeddynamic.com/./.cache/production-app.js","webpack://www.distributeddynamic.com/./.cache/public-page-renderer-prod.js","webpack://www.distributeddynamic.com/./.cache/public-page-renderer.js","webpack://www.distributeddynamic.com/./.cache/react-dom-utils.js","webpack://www.distributeddynamic.com/./.cache/redirect-utils.js","webpack://www.distributeddynamic.com/./.cache/register-service-worker.js","webpack://www.distributeddynamic.com/./.cache/slice/context.js","webpack://www.distributeddynamic.com/./.cache/static-query.js","webpack://www.distributeddynamic.com/./.cache/context-utils.js","webpack://www.distributeddynamic.com/./.cache/strip-prefix.js","webpack://www.distributeddynamic.com/./node_modules/invariant/browser.js","webpack://www.distributeddynamic.com/./node_modules/react-server-dom-webpack/cjs/react-server-dom-webpack.production.min.js","webpack://www.distributeddynamic.com/./node_modules/react-server-dom-webpack/index.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack://www.distributeddynamic.com/./node_modules/@builder.io/partytown/integration/index.cjs","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/a-callable.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/an-object.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/array-includes.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/classof-raw.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/create-property-descriptor.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/define-built-in.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/define-global-property.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/descriptors.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/document-create-element.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/enum-bug-keys.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/environment-user-agent.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/environment-v8-version.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/export.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/fails.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/function-bind-native.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/function-call.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/function-name.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/function-uncurry-this.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/get-built-in.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/get-method.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/global-this.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/has-own-property.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/hidden-keys.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/ie8-dom-define.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/indexed-object.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/inspect-source.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/internal-state.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/is-callable.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/is-forced.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/is-null-or-undefined.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/is-object.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/is-pure.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/is-symbol.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/length-of-array-like.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/make-built-in.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/math-trunc.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/object-define-property.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/object-keys-internal.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/own-keys.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/require-object-coercible.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/shared-key.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/shared-store.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/shared.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/symbol-constructor-detection.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/to-absolute-index.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/to-indexed-object.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/to-length.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/to-object.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/to-primitive.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/to-property-key.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/try-to-string.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/uid.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/weak-map-basic-detection.js","webpack://www.distributeddynamic.com/./node_modules/core-js/internals/well-known-symbol.js","webpack://www.distributeddynamic.com/./node_modules/core-js/modules/es.global-this.js","webpack://www.distributeddynamic.com/./node_modules/core-js/modules/esnext.global-this.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack://www.distributeddynamic.com/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://www.distributeddynamic.com/./node_modules/@gatsbyjs/reach-router/dist/index.modern.mjs","webpack://www.distributeddynamic.com/./node_modules/gatsby-script/dist/index.modern.mjs"],"sourcesContent":["\"use strict\";\n\nexports.__esModule = true;\nexports.applyTrailingSlashOption = void 0;\nconst endsWithSuffixes = (suffixes, input) => {\n for (const suffix of suffixes) {\n if (input.endsWith(suffix)) return true;\n }\n return false;\n};\nconst suffixes = [`.html`, `.json`, `.js`, `.map`, `.txt`, `.xml`, `.pdf`];\nconst applyTrailingSlashOption = (input, option = `always`) => {\n if (input === `/`) return input;\n const hasTrailingSlash = input.endsWith(`/`);\n if (endsWithSuffixes(suffixes, input)) {\n return input;\n }\n if (option === `always`) {\n return hasTrailingSlash ? input : `${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.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}","\"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`\nconst 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;\n//# sourceMappingURL=gatsby-browser.js.map","\"use strict\";\n\nexports.__esModule = true;\nexports.getForwards = getForwards;\nfunction getForwards(collectedScripts) {\n return collectedScripts === null || collectedScripts === void 0 ? void 0 : collectedScripts.flatMap(script => (script === null || script === void 0 ? void 0 : script.forward) || []);\n}\n//# sourceMappingURL=get-forwards.js.map","\"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 const existingSnippet = document.querySelector(`script[data-partytown]`);\n const existingSandbox = document.querySelector(`iframe[src*=\"~partytown/partytown-sandbox-sw\"]`);\n if (existingSnippet) {\n existingSnippet.remove();\n }\n if (existingSandbox) {\n existingSandbox.remove();\n }\n const forwards = (0, _getForwards.getForwards)(collectedScripts);\n const 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//# sourceMappingURL=inject-partytown-snippet.js.map","exports.components = {\n \"component---src-pages-404-tsx\": () => import(\"./../../../src/pages/404.tsx\" /* webpackChunkName: \"component---src-pages-404-tsx\" */),\n \"component---src-pages-index-tsx\": () => import(\"./../../../src/pages/index.tsx\" /* webpackChunkName: \"component---src-pages-index-tsx\" */),\n \"component---src-pages-privacy-policy-index-tsx\": () => import(\"./../../../src/pages/privacy-policy/index.tsx\" /* webpackChunkName: \"component---src-pages-privacy-policy-index-tsx\" */)\n}\n\n","module.exports = [{\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","import mitt from \"mitt\"\n\nconst emitter = mitt()\nexport default emitter\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","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","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 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","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