zudoku 0.0.0-eff6f9b → 0.0.0-f5761c9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/dist/config/config.d.ts +2 -1
  2. package/dist/config/validators/InputSidebarSchema.d.ts +1 -0
  3. package/dist/index.d.ts +1 -1
  4. package/dist/lib/oas/graphql/index.d.ts +2 -1
  5. package/dist/lib/oas/graphql/index.js +11 -9
  6. package/dist/lib/oas/graphql/index.js.map +1 -1
  7. package/dist/lib/plugins/markdown/MdxPage.js +2 -2
  8. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  9. package/dist/lib/plugins/openapi/index.js +2 -1
  10. package/dist/lib/plugins/openapi/index.js.map +1 -1
  11. package/dist/lib/plugins/openapi/playground/createUrl.js +3 -1
  12. package/dist/lib/plugins/openapi/playground/createUrl.js.map +1 -1
  13. package/dist/vite/config.d.ts +1 -1
  14. package/dist/vite/config.js +7 -3
  15. package/dist/vite/config.js.map +1 -1
  16. package/dist/vite/dev-server.js +1 -1
  17. package/dist/vite/dev-server.js.map +1 -1
  18. package/dist/vite/plugin-api.js +4 -7
  19. package/dist/vite/plugin-api.js.map +1 -1
  20. package/dist/vite/plugin-config-reload.js +9 -4
  21. package/dist/vite/plugin-config-reload.js.map +1 -1
  22. package/lib/{AuthenticationPlugin-gtf8JS3V.js → AuthenticationPlugin-Bx9FK124.js} +2 -2
  23. package/lib/{AuthenticationPlugin-gtf8JS3V.js.map → AuthenticationPlugin-Bx9FK124.js.map} +1 -1
  24. package/lib/{CategoryHeading-XnFqN2lJ.js → CategoryHeading-EN3W3xEN.js} +2 -2
  25. package/lib/{CategoryHeading-XnFqN2lJ.js.map → CategoryHeading-EN3W3xEN.js.map} +1 -1
  26. package/lib/{DeveloperHint-FBb2uXJe.js → DeveloperHint-CZ4VwuKw.js} +2 -2
  27. package/lib/{DeveloperHint-FBb2uXJe.js.map → DeveloperHint-CZ4VwuKw.js.map} +1 -1
  28. package/lib/{ErrorPage-knunPbKI.js → ErrorPage-C5Pnyfbg.js} +3 -3
  29. package/lib/{ErrorPage-knunPbKI.js.map → ErrorPage-C5Pnyfbg.js.map} +1 -1
  30. package/lib/{Input-B1kkVL1R.js → Input-DulGxZh-.js} +4 -4
  31. package/lib/{Input-B1kkVL1R.js.map → Input-DulGxZh-.js.map} +1 -1
  32. package/lib/{Markdown-B4aR03g6.js → Markdown-BUUIyZbc.js} +788 -792
  33. package/lib/Markdown-BUUIyZbc.js.map +1 -0
  34. package/lib/{MdxPage-BcftTg5g.js → MdxPage-COBmXj_4.js} +23 -23
  35. package/lib/MdxPage-COBmXj_4.js.map +1 -0
  36. package/lib/{OperationList-Da36LrGl.js → OperationList-BwJXexkA.js} +8 -8
  37. package/lib/{OperationList-Da36LrGl.js.map → OperationList-BwJXexkA.js.map} +1 -1
  38. package/lib/{Route-CWj1ECzh.js → Route-CX_-Q1HO.js} +2 -2
  39. package/lib/{Route-CWj1ECzh.js.map → Route-CX_-Q1HO.js.map} +1 -1
  40. package/lib/{SidebarBadge-DdvT2qep.js → SidebarBadge-gvlvsv3E.js} +3 -3
  41. package/lib/{SidebarBadge-DdvT2qep.js.map → SidebarBadge-gvlvsv3E.js.map} +1 -1
  42. package/lib/{SlotletProvider-DJMaOUDs.js → SlotletProvider-CULK8zmk.js} +4 -4
  43. package/lib/{SlotletProvider-DJMaOUDs.js.map → SlotletProvider-CULK8zmk.js.map} +1 -1
  44. package/lib/{ZudokuContext-em1gHkIY.js → ZudokuContext-cr-pTRY1.js} +4 -4
  45. package/lib/{ZudokuContext-em1gHkIY.js.map → ZudokuContext-cr-pTRY1.js.map} +1 -1
  46. package/lib/assets/{worker-TYRbYl6N.js → worker-DgVH8VJc.js} +3411 -1341
  47. package/lib/assets/worker-DgVH8VJc.js.map +1 -0
  48. package/lib/{index-BoXX7LeD.js → index-BfA1oLPP.js} +3 -3
  49. package/lib/{index-BoXX7LeD.js.map → index-BfA1oLPP.js.map} +1 -1
  50. package/lib/index-Bn6Lc9tq.js +9 -0
  51. package/lib/index-Bn6Lc9tq.js.map +1 -0
  52. package/lib/{index-DIkaYL-l.js → index-BuA1OA5H.js} +422 -418
  53. package/lib/index-BuA1OA5H.js.map +1 -0
  54. package/lib/index-LNp6rxyU.js +2094 -0
  55. package/lib/index-LNp6rxyU.js.map +1 -0
  56. package/lib/{index-B_9xr661.js → index-Q0TPJvr8.js} +3 -3
  57. package/lib/{index-B_9xr661.js.map → index-Q0TPJvr8.js.map} +1 -1
  58. package/lib/joinPath-B7kNnUX4.js +8 -0
  59. package/lib/joinPath-B7kNnUX4.js.map +1 -0
  60. package/lib/{utils-DtEHoAvg.js → utils-ByIc_KIM.js} +100 -103
  61. package/lib/utils-ByIc_KIM.js.map +1 -0
  62. package/lib/zudoku.auth-clerk.js +1 -1
  63. package/lib/zudoku.auth-openid.js +4 -4
  64. package/lib/zudoku.components.js +41 -40
  65. package/lib/zudoku.components.js.map +1 -1
  66. package/lib/zudoku.openapi-worker.js +282 -283
  67. package/lib/zudoku.openapi-worker.js.map +1 -1
  68. package/lib/zudoku.plugin-api-keys.js +6 -6
  69. package/lib/zudoku.plugin-custom-page.js +1 -1
  70. package/lib/zudoku.plugin-markdown.js +1 -1
  71. package/lib/zudoku.plugin-openapi.js +7 -6
  72. package/lib/zudoku.plugin-openapi.js.map +1 -1
  73. package/package.json +3 -3
  74. package/src/lib/oas/graphql/index.ts +20 -12
  75. package/src/lib/plugins/markdown/MdxPage.tsx +2 -2
  76. package/src/lib/plugins/openapi/index.tsx +2 -1
  77. package/src/lib/plugins/openapi/playground/createUrl.ts +6 -1
  78. package/dist/lib/util/slugify.d.ts +0 -2
  79. package/dist/lib/util/slugify.js +0 -3
  80. package/dist/lib/util/slugify.js.map +0 -1
  81. package/lib/Markdown-B4aR03g6.js.map +0 -1
  82. package/lib/MdxPage-BcftTg5g.js.map +0 -1
  83. package/lib/assets/worker-TYRbYl6N.js.map +0 -1
  84. package/lib/index-DIkaYL-l.js.map +0 -1
  85. package/lib/slugify-DbLhpSPt.js +0 -28
  86. package/lib/slugify-DbLhpSPt.js.map +0 -1
  87. package/lib/utils-DtEHoAvg.js.map +0 -1
  88. package/src/lib/util/slugify.ts +0 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-ByIc_KIM.js","sources":["../../../node_modules/.pnpm/@mdx-js+react@3.0.1_@types+react@18.3.3_react@18.3.1/node_modules/@mdx-js/react/lib/index.js","../../../node_modules/.pnpm/react-fast-compare@3.2.2/node_modules/react-fast-compare/index.js","../../../node_modules/.pnpm/invariant@2.2.4/node_modules/invariant/browser.js","../../../node_modules/.pnpm/shallowequal@1.1.0/node_modules/shallowequal/index.js","../../../node_modules/.pnpm/@zudoku+react-helmet-async@2.0.4_react@18.3.1/node_modules/@zudoku/react-helmet-async/lib/index.esm.js","../src/lib/components/AnchorLink.tsx","../src/lib/components/navigation/utils.ts"],"sourcesContent":["/**\n * @typedef {import('mdx/types.js').MDXComponents} MDXComponents\n * @typedef {import('react').Component<{}, {}, unknown>} Component\n * @typedef {import('react').ReactNode} ReactNode\n */\n\n/**\n * @callback MergeComponents\n * Custom merge function.\n * @param {Readonly<MDXComponents>} currentComponents\n * Current components from the context.\n * @returns {MDXComponents}\n * Additional components.\n *\n * @typedef Props\n * Configuration for `MDXProvider`.\n * @property {ReactNode | null | undefined} [children]\n * Children (optional).\n * @property {Readonly<MDXComponents> | MergeComponents | null | undefined} [components]\n * Additional components to use or a function that creates them (optional).\n * @property {boolean | null | undefined} [disableParentContext=false]\n * Turn off outer component context (default: `false`).\n */\n\nimport React from 'react'\n\n/** @type {Readonly<MDXComponents>} */\nconst emptyComponents = {}\n\nconst MDXContext = React.createContext(emptyComponents)\n\n/**\n * Get current components from the MDX Context.\n *\n * @param {Readonly<MDXComponents> | MergeComponents | null | undefined} [components]\n * Additional components to use or a function that creates them (optional).\n * @returns {MDXComponents}\n * Current components.\n */\nexport function useMDXComponents(components) {\n const contextComponents = React.useContext(MDXContext)\n\n // Memoize to avoid unnecessary top-level context changes\n return React.useMemo(\n function () {\n // Custom merge via a function prop\n if (typeof components === 'function') {\n return components(contextComponents)\n }\n\n return {...contextComponents, ...components}\n },\n [contextComponents, components]\n )\n}\n\n/**\n * Provider for MDX context.\n *\n * @param {Readonly<Props>} properties\n * Properties.\n * @returns {JSX.Element}\n * Element.\n * @satisfies {Component}\n */\nexport function MDXProvider(properties) {\n /** @type {Readonly<MDXComponents>} */\n let allComponents\n\n if (properties.disableParentContext) {\n allComponents =\n typeof properties.components === 'function'\n ? properties.components(emptyComponents)\n : properties.components || emptyComponents\n } else {\n allComponents = useMDXComponents(properties.components)\n }\n\n return React.createElement(\n MDXContext.Provider,\n {value: allComponents},\n properties.children\n )\n}\n","/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\n\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView;\n\n// Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.3\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n // START: Modifications:\n // 1. Extra `has<Type> &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n var it;\n if (hasMap && (a instanceof Map) && (b instanceof Map)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n return true;\n }\n\n if (hasSet && (a instanceof Set) && (b instanceof Set)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n return true;\n }\n // END: Modifications\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (a[i] !== b[i]) return false;\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n // START: Modifications:\n // Apply guards for `Object.create(null)` handling. See:\n // - https://github.com/FormidableLabs/react-fast-compare/issues/64\n // - https://github.com/epoberezkin/fast-deep-equal/issues/49\n if (a.valueOf !== Object.prototype.valueOf && typeof a.valueOf === 'function' && typeof b.valueOf === 'function') return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString && typeof a.toString === 'function' && typeof b.toString === 'function') return a.toString() === b.toString();\n // END: Modifications\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n // END: fast-deep-equal\n\n // START: react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element) return false;\n\n // custom handling for React/Preact\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n\n continue;\n }\n\n // all other properties should be traversed as usual\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n }\n // END: react-fast-compare\n\n // START: fast-deep-equal\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if (((error.message || '').match(/stack|recursion/i))) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\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","//\n\nmodule.exports = function shallowEqual(objA, objB, compare, compareContext) {\n var ret = compare ? compare.call(compareContext, objA, objB) : void 0;\n\n if (ret !== void 0) {\n return !!ret;\n }\n\n if (objA === objB) {\n return true;\n }\n\n if (typeof objA !== \"object\" || !objA || typeof objB !== \"object\" || !objB) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);\n\n // Test for A's keys different from B.\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n\n if (!bHasOwnProperty(key)) {\n return false;\n }\n\n var valueA = objA[key];\n var valueB = objB[key];\n\n ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n\n if (ret === false || (ret === void 0 && valueA !== valueB)) {\n return false;\n }\n }\n\n return true;\n};\n","// src/index.tsx\nimport React3, { Component as Component3 } from \"react\";\nimport fastCompare from \"react-fast-compare\";\nimport invariant from \"invariant\";\n\n// src/Provider.tsx\nimport React2, { Component } from \"react\";\n\n// src/server.ts\nimport React from \"react\";\n\n// src/constants.ts\nvar TAG_NAMES = /* @__PURE__ */ ((TAG_NAMES2) => {\n TAG_NAMES2[\"BASE\"] = \"base\";\n TAG_NAMES2[\"BODY\"] = \"body\";\n TAG_NAMES2[\"HEAD\"] = \"head\";\n TAG_NAMES2[\"HTML\"] = \"html\";\n TAG_NAMES2[\"LINK\"] = \"link\";\n TAG_NAMES2[\"META\"] = \"meta\";\n TAG_NAMES2[\"NOSCRIPT\"] = \"noscript\";\n TAG_NAMES2[\"SCRIPT\"] = \"script\";\n TAG_NAMES2[\"STYLE\"] = \"style\";\n TAG_NAMES2[\"TITLE\"] = \"title\";\n TAG_NAMES2[\"FRAGMENT\"] = \"Symbol(react.fragment)\";\n return TAG_NAMES2;\n})(TAG_NAMES || {});\nvar SEO_PRIORITY_TAGS = {\n link: { rel: [\"amphtml\", \"canonical\", \"alternate\"] },\n script: { type: [\"application/ld+json\"] },\n meta: {\n charset: \"\",\n name: [\"generator\", \"robots\", \"description\"],\n property: [\n \"og:type\",\n \"og:title\",\n \"og:url\",\n \"og:image\",\n \"og:image:alt\",\n \"og:description\",\n \"twitter:url\",\n \"twitter:title\",\n \"twitter:description\",\n \"twitter:image\",\n \"twitter:image:alt\",\n \"twitter:card\",\n \"twitter:site\"\n ]\n }\n};\nvar VALID_TAG_NAMES = Object.values(TAG_NAMES);\nvar REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\nvar HTML_TAG_MAP = Object.entries(REACT_TAG_MAP).reduce(\n (carry, [key, value]) => {\n carry[value] = key;\n return carry;\n },\n {}\n);\nvar HELMET_ATTRIBUTE = \"data-rh\";\n\n// src/utils.ts\nvar HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\",\n PRIORITIZE_SEO_TAGS: \"prioritizeSeoTags\"\n};\nvar getInnermostProperty = (propsList, property) => {\n for (let i = propsList.length - 1; i >= 0; i -= 1) {\n const props = propsList[i];\n if (Object.prototype.hasOwnProperty.call(props, property)) {\n return props[property];\n }\n }\n return null;\n};\nvar getTitleFromPropsList = (propsList) => {\n let innermostTitle = getInnermostProperty(propsList, \"title\" /* TITLE */);\n const innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n if (Array.isArray(innermostTitle)) {\n innermostTitle = innermostTitle.join(\"\");\n }\n if (innermostTemplate && innermostTitle) {\n return innermostTemplate.replace(/%s/g, () => innermostTitle);\n }\n const innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n return innermostTitle || innermostDefaultTitle || void 0;\n};\nvar getOnChangeClientState = (propsList) => getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || (() => {\n});\nvar getAttributesFromPropsList = (tagType, propsList) => propsList.filter((props) => typeof props[tagType] !== \"undefined\").map((props) => props[tagType]).reduce((tagAttrs, current) => ({ ...tagAttrs, ...current }), {});\nvar getBaseTagFromPropsList = (primaryAttributes, propsList) => propsList.filter((props) => typeof props[\"base\" /* BASE */] !== \"undefined\").map((props) => props[\"base\" /* BASE */]).reverse().reduce((innermostBaseTag, tag) => {\n if (!innermostBaseTag.length) {\n const keys = Object.keys(tag);\n for (let i = 0; i < keys.length; i += 1) {\n const attributeKey = keys[i];\n const lowerCaseAttributeKey = attributeKey.toLowerCase();\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n return innermostBaseTag;\n}, []);\nvar warn = (msg) => console && typeof console.warn === \"function\" && console.warn(msg);\nvar getTagsFromPropsList = (tagName, primaryAttributes, propsList) => {\n const approvedSeenTags = {};\n return propsList.filter((props) => {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n if (typeof props[tagName] !== \"undefined\") {\n warn(\n `Helmet: ${tagName} should be of type \"Array\". Instead found type \"${typeof props[tagName]}\"`\n );\n }\n return false;\n }).map((props) => props[tagName]).reverse().reduce((approvedTags, instanceTags) => {\n const instanceSeenTags = {};\n instanceTags.filter((tag) => {\n let primaryAttributeKey;\n const keys2 = Object.keys(tag);\n for (let i = 0; i < keys2.length; i += 1) {\n const attributeKey = keys2[i];\n const lowerCaseAttributeKey = attributeKey.toLowerCase();\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === \"rel\" /* REL */ && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === \"rel\" /* REL */ && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n }\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === \"innerHTML\" /* INNER_HTML */ || attributeKey === \"cssText\" /* CSS_TEXT */ || attributeKey === \"itemprop\" /* ITEM_PROP */)) {\n primaryAttributeKey = attributeKey;\n }\n }\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n const value = tag[primaryAttributeKey].toLowerCase();\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n return false;\n }).reverse().forEach((tag) => approvedTags.push(tag));\n const keys = Object.keys(instanceSeenTags);\n for (let i = 0; i < keys.length; i += 1) {\n const attributeKey = keys[i];\n const tagUnion = {\n ...approvedSeenTags[attributeKey],\n ...instanceSeenTags[attributeKey]\n };\n approvedSeenTags[attributeKey] = tagUnion;\n }\n return approvedTags;\n }, []).reverse();\n};\nvar getAnyTrueFromPropsList = (propsList, checkedTag) => {\n if (Array.isArray(propsList) && propsList.length) {\n for (let index = 0; index < propsList.length; index += 1) {\n const prop = propsList[index];\n if (prop[checkedTag]) {\n return true;\n }\n }\n }\n return false;\n};\nvar reducePropsToState = (propsList) => ({\n baseTag: getBaseTagFromPropsList([\"href\" /* HREF */], propsList),\n bodyAttributes: getAttributesFromPropsList(\"bodyAttributes\" /* BODY */, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(\"htmlAttributes\" /* HTML */, propsList),\n linkTags: getTagsFromPropsList(\n \"link\" /* LINK */,\n [\"rel\" /* REL */, \"href\" /* HREF */],\n propsList\n ),\n metaTags: getTagsFromPropsList(\n \"meta\" /* META */,\n [\n \"name\" /* NAME */,\n \"charset\" /* CHARSET */,\n \"http-equiv\" /* HTTPEQUIV */,\n \"property\" /* PROPERTY */,\n \"itemprop\" /* ITEM_PROP */\n ],\n propsList\n ),\n noscriptTags: getTagsFromPropsList(\"noscript\" /* NOSCRIPT */, [\"innerHTML\" /* INNER_HTML */], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(\n \"script\" /* SCRIPT */,\n [\"src\" /* SRC */, \"innerHTML\" /* INNER_HTML */],\n propsList\n ),\n styleTags: getTagsFromPropsList(\"style\" /* STYLE */, [\"cssText\" /* CSS_TEXT */], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(\"titleAttributes\" /* TITLE */, propsList),\n prioritizeSeoTags: getAnyTrueFromPropsList(propsList, HELMET_PROPS.PRIORITIZE_SEO_TAGS)\n});\nvar flattenArray = (possibleArray) => Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\nvar checkIfPropsMatch = (props, toMatch) => {\n const keys = Object.keys(props);\n for (let i = 0; i < keys.length; i += 1) {\n if (toMatch[keys[i]] && toMatch[keys[i]].includes(props[keys[i]])) {\n return true;\n }\n }\n return false;\n};\nvar prioritizer = (elementsList, propsToMatch) => {\n if (Array.isArray(elementsList)) {\n return elementsList.reduce(\n (acc, elementAttrs) => {\n if (checkIfPropsMatch(elementAttrs, propsToMatch)) {\n acc.priority.push(elementAttrs);\n } else {\n acc.default.push(elementAttrs);\n }\n return acc;\n },\n { priority: [], default: [] }\n );\n }\n return { default: elementsList, priority: [] };\n};\nvar without = (obj, key) => {\n return {\n ...obj,\n [key]: void 0\n };\n};\n\n// src/server.ts\nvar SELF_CLOSING_TAGS = [\"noscript\" /* NOSCRIPT */, \"script\" /* SCRIPT */, \"style\" /* STYLE */];\nvar encodeSpecialCharacters = (str, encode = true) => {\n if (encode === false) {\n return String(str);\n }\n return String(str).replace(/&/g, \"&amp;\").replace(/</g, \"&lt;\").replace(/>/g, \"&gt;\").replace(/\"/g, \"&quot;\").replace(/'/g, \"&#x27;\");\n};\nvar generateElementAttributesAsString = (attributes) => Object.keys(attributes).reduce((str, key) => {\n const attr = typeof attributes[key] !== \"undefined\" ? `${key}=\"${attributes[key]}\"` : `${key}`;\n return str ? `${str} ${attr}` : attr;\n}, \"\");\nvar generateTitleAsString = (type, title, attributes, encode) => {\n const attributeString = generateElementAttributesAsString(attributes);\n const flattenedTitle = flattenArray(title);\n return attributeString ? `<${type} ${HELMET_ATTRIBUTE}=\"true\" ${attributeString}>${encodeSpecialCharacters(\n flattenedTitle,\n encode\n )}</${type}>` : `<${type} ${HELMET_ATTRIBUTE}=\"true\">${encodeSpecialCharacters(\n flattenedTitle,\n encode\n )}</${type}>`;\n};\nvar generateTagsAsString = (type, tags, encode = true) => tags.reduce((str, t) => {\n const tag = t;\n const attributeHtml = Object.keys(tag).filter(\n (attribute) => !(attribute === \"innerHTML\" /* INNER_HTML */ || attribute === \"cssText\" /* CSS_TEXT */)\n ).reduce((string, attribute) => {\n const attr = typeof tag[attribute] === \"undefined\" ? attribute : `${attribute}=\"${encodeSpecialCharacters(tag[attribute], encode)}\"`;\n return string ? `${string} ${attr}` : attr;\n }, \"\");\n const tagContent = tag.innerHTML || tag.cssText || \"\";\n const isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n return `${str}<${type} ${HELMET_ATTRIBUTE}=\"true\" ${attributeHtml}${isSelfClosing ? `/>` : `>${tagContent}</${type}>`}`;\n}, \"\");\nvar convertElementAttributesToReactProps = (attributes, initProps = {}) => Object.keys(attributes).reduce((obj, key) => {\n const mapped = REACT_TAG_MAP[key];\n obj[mapped || key] = attributes[key];\n return obj;\n}, initProps);\nvar generateTitleAsReactComponent = (_type, title, attributes) => {\n const initProps = {\n key: title,\n [HELMET_ATTRIBUTE]: true\n };\n const props = convertElementAttributesToReactProps(attributes, initProps);\n return [React.createElement(\"title\" /* TITLE */, props, title)];\n};\nvar generateTagsAsReactComponent = (type, tags) => tags.map((tag, i) => {\n const mappedTag = {\n key: i,\n [HELMET_ATTRIBUTE]: true\n };\n Object.keys(tag).forEach((attribute) => {\n const mapped = REACT_TAG_MAP[attribute];\n const mappedAttribute = mapped || attribute;\n if (mappedAttribute === \"innerHTML\" /* INNER_HTML */ || mappedAttribute === \"cssText\" /* CSS_TEXT */) {\n const content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = { __html: content };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n return React.createElement(type, mappedTag);\n});\nvar getMethodsForTag = (type, tags, encode = true) => {\n switch (type) {\n case \"title\" /* TITLE */:\n return {\n toComponent: () => generateTitleAsReactComponent(type, tags.title, tags.titleAttributes),\n toString: () => generateTitleAsString(type, tags.title, tags.titleAttributes, encode)\n };\n case \"bodyAttributes\" /* BODY */:\n case \"htmlAttributes\" /* HTML */:\n return {\n toComponent: () => convertElementAttributesToReactProps(tags),\n toString: () => generateElementAttributesAsString(tags)\n };\n default:\n return {\n toComponent: () => generateTagsAsReactComponent(type, tags),\n toString: () => generateTagsAsString(type, tags, encode)\n };\n }\n};\nvar getPriorityMethods = ({ metaTags, linkTags, scriptTags, encode }) => {\n const meta = prioritizer(metaTags, SEO_PRIORITY_TAGS.meta);\n const link = prioritizer(linkTags, SEO_PRIORITY_TAGS.link);\n const script = prioritizer(scriptTags, SEO_PRIORITY_TAGS.script);\n const priorityMethods = {\n toComponent: () => [\n ...generateTagsAsReactComponent(\"meta\" /* META */, meta.priority),\n ...generateTagsAsReactComponent(\"link\" /* LINK */, link.priority),\n ...generateTagsAsReactComponent(\"script\" /* SCRIPT */, script.priority)\n ],\n toString: () => (\n // generate all the tags as strings and concatenate them\n `${getMethodsForTag(\"meta\" /* META */, meta.priority, encode)} ${getMethodsForTag(\n \"link\" /* LINK */,\n link.priority,\n encode\n )} ${getMethodsForTag(\"script\" /* SCRIPT */, script.priority, encode)}`\n )\n };\n return {\n priorityMethods,\n metaTags: meta.default,\n linkTags: link.default,\n scriptTags: script.default\n };\n};\nvar mapStateOnServer = (props) => {\n const {\n baseTag,\n bodyAttributes,\n encode = true,\n htmlAttributes,\n noscriptTags,\n styleTags,\n title = \"\",\n titleAttributes,\n prioritizeSeoTags\n } = props;\n let { linkTags, metaTags, scriptTags } = props;\n let priorityMethods = {\n toComponent: () => {\n },\n toString: () => \"\"\n };\n if (prioritizeSeoTags) {\n ({ priorityMethods, linkTags, metaTags, scriptTags } = getPriorityMethods(props));\n }\n return {\n priority: priorityMethods,\n base: getMethodsForTag(\"base\" /* BASE */, baseTag, encode),\n bodyAttributes: getMethodsForTag(\"bodyAttributes\" /* BODY */, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(\"htmlAttributes\" /* HTML */, htmlAttributes, encode),\n link: getMethodsForTag(\"link\" /* LINK */, linkTags, encode),\n meta: getMethodsForTag(\"meta\" /* META */, metaTags, encode),\n noscript: getMethodsForTag(\"noscript\" /* NOSCRIPT */, noscriptTags, encode),\n script: getMethodsForTag(\"script\" /* SCRIPT */, scriptTags, encode),\n style: getMethodsForTag(\"style\" /* STYLE */, styleTags, encode),\n title: getMethodsForTag(\"title\" /* TITLE */, { title, titleAttributes }, encode)\n };\n};\nvar server_default = mapStateOnServer;\n\n// src/HelmetData.ts\nvar instances = [];\nvar isDocument = !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\nvar HelmetData = class {\n instances = [];\n canUseDOM = isDocument;\n context;\n value = {\n setHelmet: (serverState) => {\n this.context.helmet = serverState;\n },\n helmetInstances: {\n get: () => this.canUseDOM ? instances : this.instances,\n add: (instance) => {\n (this.canUseDOM ? instances : this.instances).push(instance);\n },\n remove: (instance) => {\n const index = (this.canUseDOM ? instances : this.instances).indexOf(instance);\n (this.canUseDOM ? instances : this.instances).splice(index, 1);\n }\n }\n };\n constructor(context, canUseDOM) {\n this.context = context;\n this.canUseDOM = canUseDOM || false;\n if (!canUseDOM) {\n context.helmet = server_default({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n }\n};\n\n// src/Provider.tsx\nvar defaultValue = {};\nvar Context = React2.createContext(defaultValue);\nvar HelmetProvider = class _HelmetProvider extends Component {\n static canUseDOM = isDocument;\n helmetData;\n constructor(props) {\n super(props);\n this.helmetData = new HelmetData(this.props.context || {}, _HelmetProvider.canUseDOM);\n }\n render() {\n return /* @__PURE__ */ React2.createElement(Context.Provider, { value: this.helmetData.value }, this.props.children);\n }\n};\n\n// src/Dispatcher.tsx\nimport { Component as Component2 } from \"react\";\nimport shallowEqual from \"shallowequal\";\n\n// src/client.ts\nvar updateTags = (type, tags) => {\n const headElement = document.head || document.querySelector(\"head\" /* HEAD */);\n const tagNodes = headElement.querySelectorAll(`${type}[${HELMET_ATTRIBUTE}]`);\n const oldTags = [].slice.call(tagNodes);\n const newTags = [];\n let indexToDelete;\n if (tags && tags.length) {\n tags.forEach((tag) => {\n const newElement = document.createElement(type);\n for (const attribute in tag) {\n if (Object.prototype.hasOwnProperty.call(tag, attribute)) {\n if (attribute === \"innerHTML\" /* INNER_HTML */) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === \"cssText\" /* CSS_TEXT */) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n const attr = attribute;\n const value = typeof tag[attr] === \"undefined\" ? \"\" : tag[attr];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n newElement.setAttribute(HELMET_ATTRIBUTE, \"true\");\n if (oldTags.some((existingTag, index) => {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n oldTags.forEach((tag) => tag.parentNode?.removeChild(tag));\n newTags.forEach((tag) => headElement.appendChild(tag));\n return {\n oldTags,\n newTags\n };\n};\nvar updateAttributes = (tagName, attributes) => {\n const elementTag = document.getElementsByTagName(tagName)[0];\n if (!elementTag) {\n return;\n }\n const helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n const helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n const attributesToRemove = [...helmetAttributes];\n const attributeKeys = Object.keys(attributes);\n for (const attribute of attributeKeys) {\n const value = attributes[attribute] || \"\";\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n const indexToSave = attributesToRemove.indexOf(attribute);\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n for (let i = attributesToRemove.length - 1; i >= 0; i -= 1) {\n elementTag.removeAttribute(attributesToRemove[i]);\n }\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\nvar updateTitle = (title, attributes) => {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n updateAttributes(\"title\" /* TITLE */, attributes);\n};\nvar commitTagChanges = (newState, cb) => {\n const {\n baseTag,\n bodyAttributes,\n htmlAttributes,\n linkTags,\n metaTags,\n noscriptTags,\n onChangeClientState,\n scriptTags,\n styleTags,\n title,\n titleAttributes\n } = newState;\n updateAttributes(\"body\" /* BODY */, bodyAttributes);\n updateAttributes(\"html\" /* HTML */, htmlAttributes);\n updateTitle(title, titleAttributes);\n const tagUpdates = {\n baseTag: updateTags(\"base\" /* BASE */, baseTag),\n linkTags: updateTags(\"link\" /* LINK */, linkTags),\n metaTags: updateTags(\"meta\" /* META */, metaTags),\n noscriptTags: updateTags(\"noscript\" /* NOSCRIPT */, noscriptTags),\n scriptTags: updateTags(\"script\" /* SCRIPT */, scriptTags),\n styleTags: updateTags(\"style\" /* STYLE */, styleTags)\n };\n const addedTags = {};\n const removedTags = {};\n Object.keys(tagUpdates).forEach((tagType) => {\n const { newTags, oldTags } = tagUpdates[tagType];\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n if (cb) {\n cb();\n }\n onChangeClientState(newState, addedTags, removedTags);\n};\nvar _helmetCallback = null;\nvar handleStateChangeOnClient = (newState) => {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(() => {\n commitTagChanges(newState, () => {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\nvar client_default = handleStateChangeOnClient;\n\n// src/Dispatcher.tsx\nvar HelmetDispatcher = class extends Component2 {\n rendered = false;\n shouldComponentUpdate(nextProps) {\n return !shallowEqual(nextProps, this.props);\n }\n componentDidUpdate() {\n this.emitChange();\n }\n componentWillUnmount() {\n const { helmetInstances } = this.props.context;\n helmetInstances.remove(this);\n this.emitChange();\n }\n emitChange() {\n const { helmetInstances, setHelmet } = this.props.context;\n let serverState = null;\n const state = reducePropsToState(\n helmetInstances.get().map((instance) => {\n const props = { ...instance.props };\n delete props.context;\n return props;\n })\n );\n if (HelmetProvider.canUseDOM) {\n client_default(state);\n } else if (server_default) {\n serverState = server_default(state);\n }\n setHelmet(serverState);\n }\n // componentWillMount will be deprecated\n // for SSR, initialize on first render\n // constructor is also unsafe in StrictMode\n init() {\n if (this.rendered) {\n return;\n }\n this.rendered = true;\n const { helmetInstances } = this.props.context;\n helmetInstances.add(this);\n this.emitChange();\n }\n render() {\n this.init();\n return null;\n }\n};\n\n// src/index.tsx\nvar Helmet = class extends Component3 {\n static defaultProps = {\n defer: true,\n encodeSpecialCharacters: true,\n prioritizeSeoTags: false\n };\n shouldComponentUpdate(nextProps) {\n return !fastCompare(without(this.props, \"helmetData\"), without(nextProps, \"helmetData\"));\n }\n mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n switch (child.type) {\n case \"script\" /* SCRIPT */:\n case \"noscript\" /* NOSCRIPT */:\n return {\n innerHTML: nestedChildren\n };\n case \"style\" /* STYLE */:\n return {\n cssText: nestedChildren\n };\n default:\n throw new Error(\n `<${child.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`\n );\n }\n }\n flattenArrayTypeChildren(child, arrayTypeChildren, newChildProps, nestedChildren) {\n return {\n ...arrayTypeChildren,\n [child.type]: [\n ...arrayTypeChildren[child.type] || [],\n {\n ...newChildProps,\n ...this.mapNestedChildrenToProps(child, nestedChildren)\n }\n ]\n };\n }\n mapObjectTypeChildren(child, newProps, newChildProps, nestedChildren) {\n switch (child.type) {\n case \"title\" /* TITLE */:\n return {\n ...newProps,\n [child.type]: nestedChildren,\n titleAttributes: { ...newChildProps }\n };\n case \"body\" /* BODY */:\n return {\n ...newProps,\n bodyAttributes: { ...newChildProps }\n };\n case \"html\" /* HTML */:\n return {\n ...newProps,\n htmlAttributes: { ...newChildProps }\n };\n default:\n return {\n ...newProps,\n [child.type]: { ...newChildProps }\n };\n }\n }\n mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n let newFlattenedProps = { ...newProps };\n Object.keys(arrayTypeChildren).forEach((arrayChildName) => {\n newFlattenedProps = {\n ...newFlattenedProps,\n [arrayChildName]: arrayTypeChildren[arrayChildName]\n };\n });\n return newFlattenedProps;\n }\n warnOnInvalidChildren(child, nestedChildren) {\n invariant(\n VALID_TAG_NAMES.some((name) => child.type === name),\n typeof child.type === \"function\" ? `You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.` : `Only elements types ${VALID_TAG_NAMES.join(\n \", \"\n )} are allowed. Helmet does not support rendering <${child.type}> elements. Refer to our API for more information.`\n );\n invariant(\n !nestedChildren || typeof nestedChildren === \"string\" || Array.isArray(nestedChildren) && !nestedChildren.some((nestedChild) => typeof nestedChild !== \"string\"),\n `Helmet expects a string as a child of <${child.type}>. Did you forget to wrap your children in braces? ( <${child.type}>{\\`\\`}</${child.type}> ) Refer to our API for more information.`\n );\n return true;\n }\n mapChildrenToProps(children, newProps) {\n let arrayTypeChildren = {};\n React3.Children.forEach(children, (child) => {\n if (!child || !child.props) {\n return;\n }\n const { children: nestedChildren, ...childProps } = child.props;\n const newChildProps = Object.keys(childProps).reduce((obj, key) => {\n obj[HTML_TAG_MAP[key] || key] = childProps[key];\n return obj;\n }, {});\n let { type } = child;\n if (typeof type === \"symbol\") {\n type = type.toString();\n } else {\n this.warnOnInvalidChildren(child, nestedChildren);\n }\n switch (type) {\n case \"Symbol(react.fragment)\" /* FRAGMENT */:\n newProps = this.mapChildrenToProps(nestedChildren, newProps);\n break;\n case \"link\" /* LINK */:\n case \"meta\" /* META */:\n case \"noscript\" /* NOSCRIPT */:\n case \"script\" /* SCRIPT */:\n case \"style\" /* STYLE */:\n arrayTypeChildren = this.flattenArrayTypeChildren(\n child,\n arrayTypeChildren,\n newChildProps,\n nestedChildren\n );\n break;\n default:\n newProps = this.mapObjectTypeChildren(child, newProps, newChildProps, nestedChildren);\n break;\n }\n });\n return this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n }\n render() {\n const { children, ...props } = this.props;\n let newProps = { ...props };\n let { helmetData } = props;\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n if (helmetData && !(helmetData instanceof HelmetData)) {\n const data = helmetData;\n helmetData = new HelmetData(data.context, true);\n delete newProps.helmetData;\n }\n return helmetData ? /* @__PURE__ */ React3.createElement(HelmetDispatcher, { ...newProps, context: helmetData.value }) : /* @__PURE__ */ React3.createElement(Context.Consumer, null, (context) => /* @__PURE__ */ React3.createElement(HelmetDispatcher, { ...newProps, context }));\n }\n};\nexport {\n Helmet,\n HelmetData,\n HelmetProvider\n};\n","import React from \"react\";\nimport { Link, type LinkProps, useLocation } from \"react-router-dom\";\n\n/**\n * Link that scrolls to anchor even if the hash is already set in the URL.\n */\nexport const AnchorLink = (props: LinkProps) => {\n const location = useLocation();\n const hash = typeof props.to === \"string\" ? props.to : props.to.hash;\n\n const handleClick = (event: React.MouseEvent<HTMLAnchorElement>) => {\n if (!hash?.startsWith(\"#\") || hash !== location.hash) return;\n\n event.preventDefault();\n document.getElementById(hash.slice(1))?.scrollIntoView();\n };\n\n return <Link onClick={handleClick} {...props} />;\n};\n","import { useLocation } from \"react-router-dom\";\nimport type {\n SidebarItem,\n SidebarItemCategory,\n} from \"../../../config/validators/SidebarSchema.js\";\nimport { joinPath } from \"../../util/joinPath.js\";\nimport { useTopNavigationItem, useZudoku } from \"../context/ZudokuContext.js\";\n\nexport type TraverseCallback<T> = (\n item: SidebarItem,\n parentCategories: SidebarItem[],\n) => T | void;\n\nexport const traverseSidebar = <T>(\n sidebar: SidebarItem[],\n callback: TraverseCallback<T>,\n): T | undefined => {\n for (const item of sidebar) {\n const result = traverseSidebarItem(item, callback);\n if (result !== undefined) return result;\n }\n};\n\nexport const traverseSidebarItem = <T>(\n item: SidebarItem,\n callback: TraverseCallback<T>,\n parentCategories: SidebarItem[] = [],\n): T | undefined => {\n const result = callback(item, parentCategories);\n if (result !== undefined) return result;\n\n if (item.type === \"category\") {\n for (const child of item.items) {\n const childResult = traverseSidebarItem(child, callback, [\n ...parentCategories,\n item,\n ]);\n if (childResult !== undefined) return childResult;\n }\n }\n};\n\nexport const useCurrentItem = () => {\n const location = useLocation();\n const topNavItem = useTopNavigationItem();\n const { sidebars } = useZudoku();\n const currentSidebar = topNavItem?.id ? sidebars[topNavItem.id] : [];\n\n return traverseSidebar(currentSidebar, (item) => {\n if (\n item.type === \"doc\" &&\n joinPath(topNavItem?.id, item.id) === location.pathname\n ) {\n return item;\n }\n });\n};\n\nexport const useIsCategoryOpen = (category: SidebarItemCategory) => {\n const location = useLocation();\n const topNavItem = useTopNavigationItem();\n\n return traverseSidebarItem(category, (item) => {\n if (item.type === \"category\" && item.link) {\n const categoryLinkPath = joinPath(topNavItem?.id, item.link.id);\n if (categoryLinkPath === location.pathname) {\n return true;\n }\n }\n\n if (item.type === \"doc\") {\n const docPath = joinPath(topNavItem?.id, item.id);\n if (docPath === location.pathname) {\n return true;\n }\n }\n });\n};\n\nexport const usePrevNext = (): {\n prev?: { label: string; id: string };\n next?: { label: string; id: string };\n} => {\n const currentId = useLocation().pathname;\n const { sidebars } = useZudoku();\n const topNavItem = useTopNavigationItem();\n const currentSidebar = topNavItem?.id ? sidebars[topNavItem.id] : [];\n\n let prev;\n let next;\n\n let foundCurrent = false;\n\n traverseSidebar(currentSidebar, (item) => {\n const itemId =\n item.type === \"doc\"\n ? joinPath(topNavItem?.id, item.id)\n : item.type === \"category\" && item.link\n ? joinPath(topNavItem?.id, item.link.id)\n : undefined;\n\n if (!itemId) return;\n\n if (foundCurrent) {\n next = { label: item.label, id: itemId };\n return true;\n }\n\n if (currentId === itemId) {\n foundCurrent = true;\n } else {\n prev = { label: item.label, id: itemId };\n }\n });\n\n return { prev, next };\n};\n"],"names":["emptyComponents","MDXContext","React","useMDXComponents","components","contextComponents","MDXProvider","properties","allComponents","hasElementType","hasMap","hasSet","hasArrayBuffer","equal","a","b","length","i","keys","it","reactFastCompare","error","invariant","condition","format","c","d","e","f","args","argIndex","browser","shallowequal","objA","objB","compare","compareContext","ret","keysA","keysB","bHasOwnProperty","idx","key","valueA","valueB","TAG_NAMES","TAG_NAMES2","SEO_PRIORITY_TAGS","VALID_TAG_NAMES","REACT_TAG_MAP","HTML_TAG_MAP","carry","value","HELMET_ATTRIBUTE","HELMET_PROPS","getInnermostProperty","propsList","property","props","getTitleFromPropsList","innermostTitle","innermostTemplate","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","tagAttrs","current","getBaseTagFromPropsList","primaryAttributes","innermostBaseTag","tag","lowerCaseAttributeKey","warn","msg","getTagsFromPropsList","tagName","approvedSeenTags","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","keys2","attributeKey","tagUnion","getAnyTrueFromPropsList","checkedTag","index","reducePropsToState","flattenArray","possibleArray","checkIfPropsMatch","toMatch","prioritizer","elementsList","propsToMatch","acc","elementAttrs","without","obj","SELF_CLOSING_TAGS","encodeSpecialCharacters","str","encode","generateElementAttributesAsString","attributes","attr","generateTitleAsString","type","title","attributeString","flattenedTitle","generateTagsAsString","tags","t","attributeHtml","attribute","string","tagContent","isSelfClosing","convertElementAttributesToReactProps","initProps","mapped","generateTitleAsReactComponent","_type","generateTagsAsReactComponent","mappedTag","mappedAttribute","content","getMethodsForTag","getPriorityMethods","metaTags","linkTags","scriptTags","meta","link","script","mapStateOnServer","baseTag","bodyAttributes","htmlAttributes","noscriptTags","styleTags","titleAttributes","prioritizeSeoTags","priorityMethods","server_default","instances","isDocument","HelmetData","context","canUseDOM","__publicField","serverState","instance","defaultValue","Context","React2","HelmetProvider","_a","Component","updateTags","headElement","tagNodes","oldTags","newTags","indexToDelete","newElement","existingTag","updateAttributes","elementTag","helmetAttributeString","helmetAttributes","attributesToRemove","attributeKeys","indexToSave","updateTitle","commitTagChanges","newState","cb","onChangeClientState","tagUpdates","addedTags","removedTags","_helmetCallback","handleStateChangeOnClient","client_default","HelmetDispatcher","Component2","nextProps","shallowEqual","helmetInstances","setHelmet","state","Helmet","Component3","fastCompare","child","nestedChildren","arrayTypeChildren","newChildProps","newProps","newFlattenedProps","arrayChildName","name","nestedChild","children","React3","childProps","helmetData","data","AnchorLink","location","useLocation","hash","handleClick","event","jsx","Link","traverseSidebar","sidebar","callback","item","result","traverseSidebarItem","parentCategories","childResult","useCurrentItem","topNavItem","useTopNavigationItem","sidebars","useZudoku","currentSidebar","joinPath","useIsCategoryOpen","category","usePrevNext","currentId","prev","next","foundCurrent","itemId"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4]}
@@ -1,7 +1,7 @@
1
1
  var u = Object.defineProperty;
2
2
  var d = (n, i, e) => i in n ? u(n, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[i] = e;
3
3
  var a = (n, i, e) => d(n, typeof i != "symbol" ? i + "" : i, e);
4
- import { A as w } from "./AuthenticationPlugin-gtf8JS3V.js";
4
+ import { A as w } from "./AuthenticationPlugin-Bx9FK124.js";
5
5
  import { u as l } from "./state-BUM4jc0J.js";
6
6
  class g extends w {
7
7
  constructor(e) {
@@ -3,12 +3,12 @@ var Le = (t, e, r) => e in t ? Ue(t, e, { enumerable: !0, configurable: !0, writ
3
3
  var _ = (t, e, r) => Le(t, typeof e != "symbol" ? e + "" : e, r);
4
4
  import { j as E } from "./jsx-runtime-B6kdoens.js";
5
5
  import { c as Ce, g as Ie } from "./_commonjsHelpers-BkfeUUK-.js";
6
- import { A as je } from "./AuthenticationPlugin-gtf8JS3V.js";
6
+ import { A as je } from "./AuthenticationPlugin-Bx9FK124.js";
7
7
  import { useState as Je, useRef as Oe, useEffect as Ne } from "react";
8
- import { D as ze } from "./DeveloperHint-FBb2uXJe.js";
9
- import { E as De } from "./ErrorPage-knunPbKI.js";
8
+ import { D as ze } from "./DeveloperHint-CZ4VwuKw.js";
9
+ import { E as De } from "./ErrorPage-C5Pnyfbg.js";
10
10
  import { S as Ke } from "./Spinner-3cQDBVGr.js";
11
- import { S as We } from "./Markdown-B4aR03g6.js";
11
+ import { S as We } from "./Markdown-BUUIyZbc.js";
12
12
  import { a as He } from "./index-BG0g4WW0.js";
13
13
  import { u as z } from "./state-BUM4jc0J.js";
14
14
  var fe = { exports: {} };
@@ -13,26 +13,27 @@ var it = (e, t, n, r) => ({
13
13
  return b(e, t, r);
14
14
  }
15
15
  });
16
- import { c as Rn, j as _t, H as Ot, M as Ao, d as ko, A as $o, b as Lo } from "./utils-DtEHoAvg.js";
17
- import { e as Fo, f as Ho, R as Uo, N as We, L as It, g as Bo, O as Dn, u as zo, b as At } from "./index-BG0g4WW0.js";
18
- import { E as jn, S as Pe, a as Ko, R as Vo } from "./SlotletProvider-DJMaOUDs.js";
16
+ import { c as Rn, H as _t, M as Ao, d as ko, A as $o, b as Lo } from "./utils-ByIc_KIM.js";
17
+ import { e as Fo, f as Ho, R as Uo, N as We, L as Ot, g as Bo, O as Dn, u as zo, b as It } from "./index-BG0g4WW0.js";
18
+ import { E as jn, S as Pe, a as Ko, R as Vo } from "./SlotletProvider-CULK8zmk.js";
19
19
  import { j as o } from "./jsx-runtime-B6kdoens.js";
20
- import { M as Qo, f as qo, c as Nn, o as Pn, A as Go, d as Ze, i as Wo, b as A, j as Yo, F as Xo, D as Jo, C as Zo, P as He, h as kt, p as ea, r as Tn, R as ta, S as na, s as ra, g as oa, q as _n, l as aa, a as ht, u as On, V as In, m as cn, B as Rt } from "./index-BoXX7LeD.js";
21
- import { a as O, c as An, b as sa, T as ia, d as la, V as ca, u as $t, e as ua, C as da } from "./Markdown-B4aR03g6.js";
20
+ import { M as Qo, f as qo, c as Nn, o as Pn, A as Go, d as Ze, i as Wo, b as A, j as Yo, F as Xo, D as Jo, C as Zo, P as He, h as At, p as ea, r as Tn, R as ta, S as na, s as ra, g as oa, q as _n, l as aa, a as ht, u as On, V as In, m as cn, B as Rt } from "./index-BfA1oLPP.js";
21
+ import { a as O, c as An, b as sa, T as ia, d as la, V as ca, u as kt, e as ua, C as da } from "./Markdown-BUUIyZbc.js";
22
22
  import * as h from "react";
23
- import g, { StrictMode as kn, createContext as $n, Component as fa, createElement as un, isValidElement as ha, useState as Te, useLayoutEffect as pa, useEffect as be, useCallback as Ln, Suspense as Fn, memo as Hn, useMemo as xt, useContext as ma, Fragment as ga, useRef as Lt, forwardRef as va } from "react";
24
- import { a as Ft } from "./_commonjsHelpers-BkfeUUK-.js";
23
+ import g, { StrictMode as kn, createContext as $n, Component as fa, createElement as un, isValidElement as ha, useState as Te, useLayoutEffect as pa, useEffect as be, useCallback as Ln, Suspense as Fn, memo as Hn, useMemo as xt, useContext as ma, Fragment as ga, useRef as $t, forwardRef as va } from "react";
24
+ import { a as Lt } from "./_commonjsHelpers-BkfeUUK-.js";
25
25
  import { z as wa } from "./router-D2p7Olpn.js";
26
- import { a as Dt, R as ba, T as xa, C as ya } from "./index-B_9xr661.js";
27
- import { S as Un, f as Bn, Q as Ma, n as ee, m as dn, g as fn, i as ve, j as Sa, k as Ea, l as Ca, o as Ra, p as hn, r as pn, q as Da, h as mn, t as gn, v as ja, u as Ue, b as Na, Z as Pa, w as Ta, e as zn, x as _a } from "./ZudokuContext-em1gHkIY.js";
26
+ import { a as Dt, R as ba, T as xa, C as ya } from "./index-Q0TPJvr8.js";
27
+ import { S as Un, f as Bn, Q as Ma, n as ee, m as dn, g as fn, i as ve, j as Sa, k as Ea, l as Ca, o as Ra, p as hn, r as pn, q as Da, h as mn, t as gn, v as ja, u as Ue, b as Na, Z as Pa, w as Ta, c as zn, x as _a } from "./ZudokuContext-cr-pTRY1.js";
28
+ import { j as Ft } from "./joinPath-B7kNnUX4.js";
28
29
  import { ChevronRightIcon as Kn, CheckIcon as Oa, DotIcon as Ia, CircleXIcon as Aa, MenuIcon as ka, SearchIcon as $a, MoonStarIcon as La, SunIcon as Fa, ExternalLinkIcon as Ha, PanelLeftIcon as Ua } from "lucide-react";
29
- import { c as Vn, P as gt, R as Ba, I as za, O as Ka, C as Va, T as Qa, a as qa, b as Ga, d as Wa, D as Ya, e as Xa, S as yt } from "./SidebarBadge-DdvT2qep.js";
30
+ import { c as Vn, P as gt, R as Ba, I as za, O as Ka, C as Va, T as Qa, a as qa, b as Ga, d as Wa, D as Ya, e as Xa, S as yt } from "./SidebarBadge-gvlvsv3E.js";
30
31
  import { S as Ja } from "./Spinner-3cQDBVGr.js";
31
32
  function Za({ error: e }) {
32
33
  return /* @__PURE__ */ o.jsx(jn, { error: e });
33
34
  }
34
35
  var et = {};
35
- const es = /* @__PURE__ */ Ft(wa), ts = /* @__PURE__ */ Ft(Fo), ns = /* @__PURE__ */ Ft(Ho);
36
+ const es = /* @__PURE__ */ Lt(wa), ts = /* @__PURE__ */ Lt(Fo), ns = /* @__PURE__ */ Lt(Ho);
36
37
  Object.defineProperty(et, "__esModule", { value: !0 });
37
38
  var rs = g, fe = es, Ht = ts, we = ns;
38
39
  function os(e) {
@@ -860,7 +861,7 @@ class Os {
860
861
  this.navigationPlugins.map(
861
862
  (r) => {
862
863
  var a;
863
- return (a = r.getSidebar) == null ? void 0 : a.call(r, _t(t));
864
+ return (a = r.getSidebar) == null ? void 0 : a.call(r, Ft(t));
864
865
  }
865
866
  )
866
867
  )).flatMap((r) => r ?? []));
@@ -889,7 +890,7 @@ var jt = ["Enter", " "], As = ["ArrowDown", "PageUp", "Home"], Yn = ["ArrowUp",
889
890
  Pn,
890
891
  Vn
891
892
  ]), nt = Pn(), Jn = Vn(), [Zn, Re] = _e(tt), [Us, rt] = _e(tt), er = (e) => {
892
- const { __scopeMenu: t, open: n = !1, children: r, dir: a, onOpenChange: s, modal: i = !0 } = e, l = nt(t), [u, v] = h.useState(null), m = h.useRef(!1), c = kt(s), d = oa(a);
893
+ const { __scopeMenu: t, open: n = !1, children: r, dir: a, onOpenChange: s, modal: i = !0 } = e, l = nt(t), [u, v] = h.useState(null), m = h.useRef(!1), c = At(s), d = oa(a);
893
894
  return h.useEffect(() => {
894
895
  const f = () => {
895
896
  m.current = !0, document.addEventListener("pointerdown", y, { capture: !0, once: !0 }), document.addEventListener("pointermove", y, { capture: !0, once: !0 });
@@ -1225,7 +1226,7 @@ var ir = "MenuRadioGroup", [Ys, Xs] = _e(
1225
1226
  } }
1226
1227
  ), lr = h.forwardRef(
1227
1228
  (e, t) => {
1228
- const { value: n, onValueChange: r, ...a } = e, s = kt(r);
1229
+ const { value: n, onValueChange: r, ...a } = e, s = At(r);
1229
1230
  return /* @__PURE__ */ o.jsx(Ys, { scope: e.__scopeMenu, value: n, onValueChange: s, children: /* @__PURE__ */ o.jsx(Vt, { ...a, ref: t }) });
1230
1231
  }
1231
1232
  );
@@ -1300,7 +1301,7 @@ var ei = "MenuArrow", pr = h.forwardRef(
1300
1301
  );
1301
1302
  pr.displayName = ei;
1302
1303
  var qt = "MenuSub", [ti, mr] = _e(qt), gr = (e) => {
1303
- const { __scopeMenu: t, children: n, open: r = !1, onOpenChange: a } = e, s = Re(qt, t), i = nt(t), [l, u] = h.useState(null), [v, m] = h.useState(null), c = kt(a);
1304
+ const { __scopeMenu: t, children: n, open: r = !1, onOpenChange: a } = e, s = Re(qt, t), i = nt(t), [l, u] = h.useState(null), [v, m] = h.useState(null), c = At(a);
1304
1305
  return h.useEffect(() => (s.open === !1 && c(!1), () => c(!1)), [s.open, c]), /* @__PURE__ */ o.jsx(_n, { ...i, children: /* @__PURE__ */ o.jsx(
1305
1306
  Zn,
1306
1307
  {
@@ -1474,7 +1475,7 @@ function si(e, t) {
1474
1475
  function Xe(e) {
1475
1476
  return (t) => t.pointerType === "mouse" ? e(t) : void 0;
1476
1477
  }
1477
- var ii = er, li = Ut, ci = nr, ui = rr, di = Vt, fi = or, hi = vt, pi = sr, mi = lr, gi = ur, vi = fr, wi = hr, bi = pr, xi = gr, yi = vr, Mi = br, Wt = "DropdownMenu", [Si, Xl] = Nn(
1478
+ var ii = er, li = Ut, ci = nr, ui = rr, di = Vt, fi = or, hi = vt, pi = sr, mi = lr, gi = ur, vi = fr, wi = hr, bi = pr, xi = gr, yi = vr, Mi = br, Wt = "DropdownMenu", [Si, Jl] = Nn(
1478
1479
  Wt,
1479
1480
  [Xn]
1480
1481
  ), W = Xn(), [Ei, yr] = Si(Wt), Mr = (e) => {
@@ -2920,13 +2921,13 @@ const yl = () => {
2920
2921
  // eslint-disable-next-line react/no-array-index-key
2921
2922
  /* @__PURE__ */ o.jsx(po, { item: t }, n)
2922
2923
  )) }) })
2923
- ] }, e.label) : /* @__PURE__ */ o.jsx(It, { to: e.path ?? "", children: /* @__PURE__ */ o.jsx(Wr, { children: e.label }, e.label) }), mo = Hn(function() {
2924
+ ] }, e.label) : /* @__PURE__ */ o.jsx(Ot, { to: e.path ?? "", children: /* @__PURE__ */ o.jsx(Wr, { children: e.label }, e.label) }), mo = Hn(function() {
2924
2925
  const t = cn(), [n, r] = sa(), { isAuthenticated: a, profile: s, isAuthEnabled: i } = cn(), l = Ue(), { page: u, plugins: v } = l, m = v.filter((d) => Rs(d)).flatMap((d) => d.getProfileMenuItems(l)).map((d) => /* @__PURE__ */ o.jsx(po, { item: d }, d.label)), c = n ? La : Fa;
2925
2926
  return /* @__PURE__ */ o.jsxs("header", { className: "sticky lg:top-0 z-10 bg-background/80 backdrop-blur w-full", children: [
2926
2927
  /* @__PURE__ */ o.jsx(Xi, {}),
2927
2928
  /* @__PURE__ */ o.jsxs("div", { className: "max-w-screen-2xl mx-auto", children: [
2928
2929
  /* @__PURE__ */ o.jsxs("div", { className: "grid grid-cols-2 lg:grid-cols-[calc(var(--side-nav-width))_1fr] lg:gap-12 items-center border-b px-10 lg:px-12 h-[--top-header-height]", children: [
2929
- /* @__PURE__ */ o.jsx("div", { className: "flex", children: /* @__PURE__ */ o.jsx(It, { to: "/", children: /* @__PURE__ */ o.jsxs("div", { className: "flex items-center gap-3.5", children: [
2930
+ /* @__PURE__ */ o.jsx("div", { className: "flex", children: /* @__PURE__ */ o.jsx(Ot, { to: "/", children: /* @__PURE__ */ o.jsxs("div", { className: "flex items-center gap-3.5", children: [
2930
2931
  (u == null ? void 0 : u.logo) && /* @__PURE__ */ o.jsxs(o.Fragment, { children: [
2931
2932
  /* @__PURE__ */ o.jsx(
2932
2933
  "img",
@@ -3029,7 +3030,7 @@ const yl = () => {
3029
3030
  return /* @__PURE__ */ o.jsx(ga, { children: (R = f.getHead) == null ? void 0 : R.call(f) }, y);
3030
3031
  });
3031
3032
  return /* @__PURE__ */ o.jsxs(Ta, { client: Wn, children: [
3032
- /* @__PURE__ */ o.jsx(Ot, { children: m }),
3033
+ /* @__PURE__ */ o.jsx(_t, { children: m }),
3033
3034
  /* @__PURE__ */ o.jsx(Dt.Provider, { value: l, children: /* @__PURE__ */ o.jsx(Dl, { context: v, children: /* @__PURE__ */ o.jsx(Ao, { components: r, children: /* @__PURE__ */ o.jsx(Rl, { children: /* @__PURE__ */ o.jsx(Cl, { value: n, children: /* @__PURE__ */ o.jsx(Ko, { slotlets: t.slotlets, children: /* @__PURE__ */ o.jsx(ca, { children: e ?? /* @__PURE__ */ o.jsx(Dn, {}) }) }) }) }) }) }) })
3034
3035
  ] });
3035
3036
  }, Nl = Hn(jl), vo = (e) => /* @__PURE__ */ o.jsx(Es, { FallbackComponent: Is, children: /* @__PURE__ */ o.jsx(Nl, { ...e }) });
@@ -3089,7 +3090,7 @@ const Pl = ({
3089
3090
  ((d = e.link) == null ? void 0 : d.type) === "doc" ? /* @__PURE__ */ o.jsx(
3090
3091
  We,
3091
3092
  {
3092
- to: _t(n == null ? void 0 : n.id, e.link.id),
3093
+ to: Ft(n == null ? void 0 : n.id, e.link.id),
3093
3094
  className: "flex-1",
3094
3095
  onClick: () => s(!0),
3095
3096
  children: ({ isActive: f }) => /* @__PURE__ */ o.jsxs(
@@ -3155,7 +3156,7 @@ const Pl = ({
3155
3156
  item: e,
3156
3157
  level: t = 0
3157
3158
  }) => {
3158
- const n = zn(), { activeAnchor: r } = $t(), [a] = zo();
3159
+ const n = zn(), { activeAnchor: r } = kt(), [a] = zo();
3159
3160
  switch (e.type) {
3160
3161
  case "category":
3161
3162
  return /* @__PURE__ */ o.jsx(Pl, { category: e, level: t });
@@ -3164,7 +3165,7 @@ const Pl = ({
3164
3165
  We,
3165
3166
  {
3166
3167
  className: ({ isActive: s }) => Ge({ isActive: s, isTopLevel: t === 0 }),
3167
- to: _t(n == null ? void 0 : n.id, e.id),
3168
+ to: Ft(n == null ? void 0 : n.id, e.id),
3168
3169
  children: [
3169
3170
  e.icon && /* @__PURE__ */ o.jsx(e.icon, { size: 16, className: "align-[-0.125em]" }),
3170
3171
  e.badge ? /* @__PURE__ */ o.jsxs(o.Fragment, { children: [
@@ -3227,7 +3228,7 @@ const Pl = ({
3227
3228
  const n = e.getBoundingClientRect();
3228
3229
  n.top >= 0 && n.left >= 0 && n.bottom <= (window.innerHeight || document.documentElement.clientHeight) && n.right <= (window.innerWidth || document.documentElement.clientWidth) || e.scrollIntoView(t);
3229
3230
  }, _l = () => {
3230
- const e = At(), { setActiveAnchor: t } = $t();
3231
+ const e = It(), { setActiveAnchor: t } = kt();
3231
3232
  be(() => {
3232
3233
  if (!e.hash) return;
3233
3234
  const n = decodeURIComponent(e.hash.split("/")[0].slice(1)), r = () => {
@@ -3242,7 +3243,7 @@ const Pl = ({
3242
3243
  }
3243
3244
  }, [e.hash, t]);
3244
3245
  }, Ol = () => {
3245
- const e = At(), t = Lt(e.pathname);
3246
+ const e = It(), t = $t(e.pathname);
3246
3247
  be(() => {
3247
3248
  t.current !== e.pathname && (window.scrollTo(0, 0), t.current = e.pathname);
3248
3249
  }, [e.pathname]);
@@ -3262,7 +3263,7 @@ const Pl = ({
3262
3263
  ));
3263
3264
  bo.displayName = "SidebarWrapper";
3264
3265
  const Il = () => {
3265
- const e = Lt(null), t = _a();
3266
+ const e = $t(null), t = _a();
3266
3267
  return /* @__PURE__ */ o.jsxs(o.Fragment, { children: [
3267
3268
  /* @__PURE__ */ o.jsxs(
3268
3269
  bo,
@@ -3289,9 +3290,9 @@ const Il = () => {
3289
3290
  )
3290
3291
  ] });
3291
3292
  }, Al = ({ children: e }) => {
3292
- const t = At(), { setActiveAnchor: n } = $t(), { meta: r, authentication: a } = Ue();
3293
+ const t = It(), { setActiveAnchor: n } = kt(), { meta: r, authentication: a } = Ue();
3293
3294
  _l(), Ol();
3294
- const s = Lt(t.pathname);
3295
+ const s = $t(t.pathname);
3295
3296
  return be(() => {
3296
3297
  var i;
3297
3298
  (i = a == null ? void 0 : a.pageLoad) == null || i.call(a);
@@ -3299,7 +3300,7 @@ const Il = () => {
3299
3300
  t.pathname !== s.current && n(""), s.current = t.pathname;
3300
3301
  }, [t.pathname, n]), /* @__PURE__ */ o.jsxs(o.Fragment, { children: [
3301
3302
  !1,
3302
- /* @__PURE__ */ o.jsxs(Ot, { titleTemplate: r == null ? void 0 : r.title, children: [
3303
+ /* @__PURE__ */ o.jsxs(_t, { titleTemplate: r == null ? void 0 : r.title, children: [
3303
3304
  (r == null ? void 0 : r.description) && /* @__PURE__ */ o.jsx("meta", { name: "description", content: r.description }),
3304
3305
  (r == null ? void 0 : r.favicon) && /* @__PURE__ */ o.jsx("link", { rel: "icon", href: r.favicon })
3305
3306
  ] }),
@@ -3345,18 +3346,18 @@ const Il = () => {
3345
3346
  }
3346
3347
  ) })
3347
3348
  ] });
3348
- }, Jl = Lo, Zl = da, ec = vo, tc = Al, nc = It, rc = Vo, oc = Za, ac = gs, sc = vs, ic = Rt, lc = Ot;
3349
+ }, Zl = Lo, ec = da, tc = vo, nc = Al, rc = Ot, oc = Vo, ac = Za, sc = gs, ic = vs, lc = Rt, cc = _t;
3349
3350
  export {
3350
- ac as Bootstrap,
3351
- sc as BootstrapStatic,
3352
- ic as Button,
3353
- Zl as Callout,
3354
- ec as DevPortal,
3355
- lc as Head,
3356
- tc as Layout,
3357
- nc as Link,
3358
- rc as RouterError,
3359
- oc as ServerError,
3360
- Jl as useMDXComponents
3351
+ sc as Bootstrap,
3352
+ ic as BootstrapStatic,
3353
+ lc as Button,
3354
+ ec as Callout,
3355
+ tc as DevPortal,
3356
+ cc as Head,
3357
+ nc as Layout,
3358
+ rc as Link,
3359
+ oc as RouterError,
3360
+ ac as ServerError,
3361
+ Zl as useMDXComponents
3361
3362
  };
3362
3363
  //# sourceMappingURL=zudoku.components.js.map