zudoku 0.36.0 → 0.37.0

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 (110) hide show
  1. package/README.md +1 -1
  2. package/dist/config/validators/common.d.ts +252 -252
  3. package/dist/config/validators/common.js +4 -1
  4. package/dist/config/validators/common.js.map +1 -1
  5. package/dist/config/validators/validate.d.ts +95 -95
  6. package/dist/lib/components/InlineCode.d.ts +2 -1
  7. package/dist/lib/components/InlineCode.js +1 -1
  8. package/dist/lib/components/InlineCode.js.map +1 -1
  9. package/dist/lib/components/MobileTopNavigation.js +1 -1
  10. package/dist/lib/components/MobileTopNavigation.js.map +1 -1
  11. package/dist/lib/components/TopNavigation.d.ts +2 -2
  12. package/dist/lib/components/TopNavigation.js +9 -12
  13. package/dist/lib/components/TopNavigation.js.map +1 -1
  14. package/dist/lib/components/context/ZudokuContext.d.ts +1 -1
  15. package/dist/lib/components/context/ZudokuContext.js +9 -4
  16. package/dist/lib/components/context/ZudokuContext.js.map +1 -1
  17. package/dist/lib/components/navigation/SidebarCategory.d.ts +2 -2
  18. package/dist/lib/components/navigation/SidebarCategory.js +10 -6
  19. package/dist/lib/components/navigation/SidebarCategory.js.map +1 -1
  20. package/dist/lib/components/navigation/SidebarItem.js +2 -2
  21. package/dist/lib/components/navigation/SidebarItem.js.map +1 -1
  22. package/dist/lib/components/navigation/SidebarWrapper.js +1 -1
  23. package/dist/lib/components/navigation/SidebarWrapper.js.map +1 -1
  24. package/dist/lib/plugins/openapi/ParamInfos.js +12 -4
  25. package/dist/lib/plugins/openapi/ParamInfos.js.map +1 -1
  26. package/dist/lib/plugins/openapi/ParameterListItem.js +1 -1
  27. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  28. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +3 -3
  29. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
  30. package/dist/lib/plugins/openapi/schema/SchemaView.js +13 -6
  31. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  32. package/dist/lib/ui/Badge.d.ts +1 -1
  33. package/dist/lib/ui/Button.d.ts +1 -1
  34. package/dist/lib/ui/Button.js +1 -1
  35. package/dist/lib/ui/Button.js.map +1 -1
  36. package/dist/lib/ui/Command.d.ts +6 -6
  37. package/dist/lib/util/joinPath.d.ts +3 -0
  38. package/dist/lib/util/joinPath.js +3 -0
  39. package/dist/lib/util/joinPath.js.map +1 -1
  40. package/dist/vite/config.js +1 -1
  41. package/dist/vite/config.js.map +1 -1
  42. package/dist/vite/plugin-api.js +2 -2
  43. package/dist/vite/plugin-api.js.map +1 -1
  44. package/dist/vite/plugin-docs.d.ts +1 -1
  45. package/dist/vite/plugin-docs.js +18 -1
  46. package/dist/vite/plugin-docs.js.map +1 -1
  47. package/lib/{AuthenticationPlugin-Cr6xjOJD.js → AuthenticationPlugin-Cij2tPWa.js} +2 -2
  48. package/lib/{AuthenticationPlugin-Cr6xjOJD.js.map → AuthenticationPlugin-Cij2tPWa.js.map} +1 -1
  49. package/lib/{Spinner-C6n4eOvh.js → Button-Fp19CMUr.js} +15 -18
  50. package/lib/Button-Fp19CMUr.js.map +1 -0
  51. package/lib/{Markdown-BlioIqkZ.js → Markdown-DT5Rrq8_.js} +3520 -3260
  52. package/lib/Markdown-DT5Rrq8_.js.map +1 -0
  53. package/lib/{MdxPage-7XnN9J9R.js → MdxPage-D2rD1vC4.js} +3 -3
  54. package/lib/{MdxPage-7XnN9J9R.js.map → MdxPage-D2rD1vC4.js.map} +1 -1
  55. package/lib/{OasProvider-BaRRMSsD.js → OasProvider-DdEBf2qS.js} +3 -3
  56. package/lib/{OasProvider-BaRRMSsD.js.map → OasProvider-DdEBf2qS.js.map} +1 -1
  57. package/lib/{OperationList-BjL1hzSx.js → OperationList-DT4-gm_S.js} +880 -878
  58. package/lib/OperationList-DT4-gm_S.js.map +1 -0
  59. package/lib/{Select-FAYHOYTy.js → Select-z1Lwl0-J.js} +3 -3
  60. package/lib/{Select-FAYHOYTy.js.map → Select-z1Lwl0-J.js.map} +1 -1
  61. package/lib/{SlotletProvider-CXb3wQiR.js → SlotletProvider-D8OBnr77.js} +2 -2
  62. package/lib/{SlotletProvider-CXb3wQiR.js.map → SlotletProvider-D8OBnr77.js.map} +1 -1
  63. package/lib/Spinner-CE68iCm0.js +7 -0
  64. package/lib/Spinner-CE68iCm0.js.map +1 -0
  65. package/lib/{hook-Bo80UX00.js → hook-DzQC8PzJ.js} +78 -74
  66. package/lib/hook-DzQC8PzJ.js.map +1 -0
  67. package/lib/{index-D5m8_oyY.js → index-DdQSV2RF.js} +31 -31
  68. package/lib/{index-D5m8_oyY.js.map → index-DdQSV2RF.js.map} +1 -1
  69. package/lib/{useQuery-CQUwWR9i.js → joinUrl-BjDooT-T.js} +240 -223
  70. package/lib/joinUrl-BjDooT-T.js.map +1 -0
  71. package/lib/{mutation-B81DztCT.js → mutation-_Z5C2wFZ.js} +2 -2
  72. package/lib/{mutation-B81DztCT.js.map → mutation-_Z5C2wFZ.js.map} +1 -1
  73. package/lib/ui/ActionButton.js +11 -10
  74. package/lib/ui/ActionButton.js.map +1 -1
  75. package/lib/ui/Button.js +1 -1
  76. package/lib/ui/Button.js.map +1 -1
  77. package/lib/zudoku.auth-auth0.js +1 -1
  78. package/lib/zudoku.auth-clerk.js +2 -2
  79. package/lib/zudoku.auth-openid.js +3 -3
  80. package/lib/zudoku.components.js +188 -192
  81. package/lib/zudoku.components.js.map +1 -1
  82. package/lib/zudoku.hooks.js +1 -1
  83. package/lib/zudoku.plugin-api-catalog.js +3 -3
  84. package/lib/zudoku.plugin-api-keys.js +4 -4
  85. package/lib/zudoku.plugin-custom-pages.js +1 -1
  86. package/lib/zudoku.plugin-markdown.js +1 -1
  87. package/lib/zudoku.plugin-openapi.js +3 -3
  88. package/lib/zudoku.plugin-search-pagefind.js +15 -16
  89. package/lib/zudoku.plugin-search-pagefind.js.map +1 -1
  90. package/package.json +3 -1
  91. package/src/lib/components/InlineCode.tsx +3 -1
  92. package/src/lib/components/MobileTopNavigation.tsx +1 -1
  93. package/src/lib/components/TopNavigation.tsx +12 -16
  94. package/src/lib/components/context/ZudokuContext.ts +12 -4
  95. package/src/lib/components/navigation/SidebarCategory.tsx +15 -12
  96. package/src/lib/components/navigation/SidebarItem.tsx +2 -2
  97. package/src/lib/components/navigation/SidebarWrapper.tsx +2 -2
  98. package/src/lib/plugins/openapi/ParamInfos.tsx +27 -4
  99. package/src/lib/plugins/openapi/ParameterListItem.tsx +5 -1
  100. package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +5 -2
  101. package/src/lib/plugins/openapi/schema/SchemaView.tsx +48 -35
  102. package/src/lib/ui/Button.tsx +1 -1
  103. package/src/lib/util/joinPath.tsx +3 -0
  104. package/lib/Markdown-BlioIqkZ.js.map +0 -1
  105. package/lib/OperationList-BjL1hzSx.js.map +0 -1
  106. package/lib/Spinner-C6n4eOvh.js.map +0 -1
  107. package/lib/hook-Bo80UX00.js.map +0 -1
  108. package/lib/joinUrl-10po2Jdj.js +0 -20
  109. package/lib/joinUrl-10po2Jdj.js.map +0 -1
  110. package/lib/useQuery-CQUwWR9i.js.map +0 -1
@@ -4,8 +4,8 @@ var M = (s) => {
4
4
  var j = (s, t, e) => t.has(s) || M("Cannot " + e);
5
5
  var r = (s, t, e) => (j(s, t, "read from private field"), e ? e.call(s) : t.get(s)), x = (s, t, e) => t.has(s) ? M("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(s) : t.set(s, e), y = (s, t, e, a) => (j(s, t, "write to private field"), a ? a.call(s, e) : t.set(s, e), e), g = (s, t, e) => (j(s, t, "access private method"), e);
6
6
  import * as l from "react";
7
- import { g as K } from "./mutation-B81DztCT.js";
8
- import { S as L, s as T, h as E, n as U, u as z, a as P, b as V } from "./useQuery-CQUwWR9i.js";
7
+ import { g as K } from "./mutation-_Z5C2wFZ.js";
8
+ import { S as L, s as T, h as E, n as U, u as z, a as P, b as V } from "./joinUrl-BjDooT-T.js";
9
9
  import { j as o } from "./jsx-runtime-CYK1ROHF.js";
10
10
  import * as i from "@radix-ui/react-select";
11
11
  import { ChevronDown as k, ChevronUp as G, Check as q } from "lucide-react";
@@ -220,4 +220,4 @@ export {
220
220
  J as e,
221
221
  et as u
222
222
  };
223
- //# sourceMappingURL=Select-FAYHOYTy.js.map
223
+ //# sourceMappingURL=Select-z1Lwl0-J.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select-FAYHOYTy.js","sources":["../../../node_modules/.pnpm/@tanstack+query-core@5.66.4/node_modules/@tanstack/query-core/build/modern/mutationObserver.js","../../../node_modules/.pnpm/@tanstack+react-query@5.66.6_react@19.0.0/node_modules/@tanstack/react-query/build/modern/useMutation.js","../src/lib/ui/Select.tsx"],"sourcesContent":["// src/mutationObserver.ts\nimport { getDefaultState } from \"./mutation.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { hashKey, shallowEqualObjects } from \"./utils.js\";\nvar MutationObserver = class extends Subscribable {\n #client;\n #currentResult = void 0;\n #currentMutation;\n #mutateOptions;\n constructor(client, options) {\n super();\n this.#client = client;\n this.setOptions(options);\n this.bindMethods();\n this.#updateResult();\n }\n bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n this.options = this.#client.defaultMutationOptions(options);\n if (!shallowEqualObjects(this.options, prevOptions)) {\n this.#client.getMutationCache().notify({\n type: \"observerOptionsUpdated\",\n mutation: this.#currentMutation,\n observer: this\n });\n }\n if (prevOptions?.mutationKey && this.options.mutationKey && hashKey(prevOptions.mutationKey) !== hashKey(this.options.mutationKey)) {\n this.reset();\n } else if (this.#currentMutation?.state.status === \"pending\") {\n this.#currentMutation.setOptions(this.options);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#currentMutation?.removeObserver(this);\n }\n }\n onMutationUpdate(action) {\n this.#updateResult();\n this.#notify(action);\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n reset() {\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = void 0;\n this.#updateResult();\n this.#notify();\n }\n mutate(variables, options) {\n this.#mutateOptions = options;\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = this.#client.getMutationCache().build(this.#client, this.options);\n this.#currentMutation.addObserver(this);\n return this.#currentMutation.execute(variables);\n }\n #updateResult() {\n const state = this.#currentMutation?.state ?? getDefaultState();\n this.#currentResult = {\n ...state,\n isPending: state.status === \"pending\",\n isSuccess: state.status === \"success\",\n isError: state.status === \"error\",\n isIdle: state.status === \"idle\",\n mutate: this.mutate,\n reset: this.reset\n };\n }\n #notify(action) {\n notifyManager.batch(() => {\n if (this.#mutateOptions && this.hasListeners()) {\n const variables = this.#currentResult.variables;\n const context = this.#currentResult.context;\n if (action?.type === \"success\") {\n this.#mutateOptions.onSuccess?.(action.data, variables, context);\n this.#mutateOptions.onSettled?.(action.data, null, variables, context);\n } else if (action?.type === \"error\") {\n this.#mutateOptions.onError?.(action.error, variables, context);\n this.#mutateOptions.onSettled?.(\n void 0,\n action.error,\n variables,\n context\n );\n }\n }\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n });\n }\n};\nexport {\n MutationObserver\n};\n//# sourceMappingURL=mutationObserver.js.map","\"use client\";\n\n// src/useMutation.ts\nimport * as React from \"react\";\nimport { MutationObserver, notifyManager } from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nimport { noop, shouldThrowError } from \"./utils.js\";\nfunction useMutation(options, queryClient) {\n const client = useQueryClient(queryClient);\n const [observer] = React.useState(\n () => new MutationObserver(\n client,\n options\n )\n );\n React.useEffect(() => {\n observer.setOptions(options);\n }, [observer, options]);\n const result = React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => observer.subscribe(notifyManager.batchCalls(onStoreChange)),\n [observer]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n const mutate = React.useCallback(\n (variables, mutateOptions) => {\n observer.mutate(variables, mutateOptions).catch(noop);\n },\n [observer]\n );\n if (result.error && shouldThrowError(observer.options.throwOnError, [result.error])) {\n throw result.error;\n }\n return { ...result, mutate, mutateAsync: result.mutate };\n}\nexport {\n useMutation\n};\n//# sourceMappingURL=useMutation.js.map","import * as SelectPrimitive from \"@radix-ui/react-select\";\nimport { Check, ChevronDown, ChevronUp } from \"lucide-react\";\nimport * as React from \"react\";\nimport { cn } from \"../util/cn.js\";\n\nconst Select = SelectPrimitive.Root;\n\nconst SelectGroup = SelectPrimitive.Group;\n\nconst SelectValue = SelectPrimitive.Value;\n\nconst SelectTrigger = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n \"flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n >\n <span className=\"truncate\">{children}</span>\n <SelectPrimitive.Icon asChild>\n <ChevronDown className=\"flex-shrink-0 h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n));\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName;\n\nconst SelectScrollUpButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollUpButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollUpButton\n ref={ref}\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronUp className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollUpButton>\n));\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;\n\nconst SelectScrollDownButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollDownButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollDownButton\n ref={ref}\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronDown className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollDownButton>\n));\nSelectScrollDownButton.displayName =\n SelectPrimitive.ScrollDownButton.displayName;\n\nconst SelectContent = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\n>(({ className, children, position = \"popper\", ...props }, ref) => (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n \"relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n position === \"popper\" &&\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]\",\n \"divide-y\",\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n));\nSelectContent.displayName = SelectPrimitive.Content.displayName;\n\nconst SelectLabel = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label\n ref={ref}\n className={cn(\"py-1.5 pl-8 pr-2 text-sm font-semibold\", className)}\n {...props}\n />\n));\nSelectLabel.displayName = SelectPrimitive.Label.displayName;\n\nconst SelectItem = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex w-full cursor-default select-none items-center py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n));\nSelectItem.displayName = SelectPrimitive.Item.displayName;\n\nconst SelectSeparator = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\n {...props}\n />\n));\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName;\n\nexport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n};\n"],"names":["MutationObserver","_a","Subscribable","client","options","__privateAdd","_MutationObserver_instances","_client","_currentResult","_currentMutation","_mutateOptions","__privateSet","__privateMethod","updateResult_fn","prevOptions","__privateGet","shallowEqualObjects","hashKey","action","notify_fn","variables","state","getDefaultState","notifyManager","context","_b","_d","_c","_f","_e","_h","_g","listener","useMutation","queryClient","useQueryClient","observer","React","result","onStoreChange","mutate","mutateOptions","noop","shouldThrowError","Select","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","className","children","props","ref","jsxs","cn","jsx","ChevronDown","SelectScrollUpButton","ChevronUp","SelectScrollDownButton","SelectContent","position","SelectLabel","SelectItem","Check","SelectSeparator"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"Select-z1Lwl0-J.js","sources":["../../../node_modules/.pnpm/@tanstack+query-core@5.66.4/node_modules/@tanstack/query-core/build/modern/mutationObserver.js","../../../node_modules/.pnpm/@tanstack+react-query@5.66.6_react@19.0.0/node_modules/@tanstack/react-query/build/modern/useMutation.js","../src/lib/ui/Select.tsx"],"sourcesContent":["// src/mutationObserver.ts\nimport { getDefaultState } from \"./mutation.js\";\nimport { notifyManager } from \"./notifyManager.js\";\nimport { Subscribable } from \"./subscribable.js\";\nimport { hashKey, shallowEqualObjects } from \"./utils.js\";\nvar MutationObserver = class extends Subscribable {\n #client;\n #currentResult = void 0;\n #currentMutation;\n #mutateOptions;\n constructor(client, options) {\n super();\n this.#client = client;\n this.setOptions(options);\n this.bindMethods();\n this.#updateResult();\n }\n bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n }\n setOptions(options) {\n const prevOptions = this.options;\n this.options = this.#client.defaultMutationOptions(options);\n if (!shallowEqualObjects(this.options, prevOptions)) {\n this.#client.getMutationCache().notify({\n type: \"observerOptionsUpdated\",\n mutation: this.#currentMutation,\n observer: this\n });\n }\n if (prevOptions?.mutationKey && this.options.mutationKey && hashKey(prevOptions.mutationKey) !== hashKey(this.options.mutationKey)) {\n this.reset();\n } else if (this.#currentMutation?.state.status === \"pending\") {\n this.#currentMutation.setOptions(this.options);\n }\n }\n onUnsubscribe() {\n if (!this.hasListeners()) {\n this.#currentMutation?.removeObserver(this);\n }\n }\n onMutationUpdate(action) {\n this.#updateResult();\n this.#notify(action);\n }\n getCurrentResult() {\n return this.#currentResult;\n }\n reset() {\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = void 0;\n this.#updateResult();\n this.#notify();\n }\n mutate(variables, options) {\n this.#mutateOptions = options;\n this.#currentMutation?.removeObserver(this);\n this.#currentMutation = this.#client.getMutationCache().build(this.#client, this.options);\n this.#currentMutation.addObserver(this);\n return this.#currentMutation.execute(variables);\n }\n #updateResult() {\n const state = this.#currentMutation?.state ?? getDefaultState();\n this.#currentResult = {\n ...state,\n isPending: state.status === \"pending\",\n isSuccess: state.status === \"success\",\n isError: state.status === \"error\",\n isIdle: state.status === \"idle\",\n mutate: this.mutate,\n reset: this.reset\n };\n }\n #notify(action) {\n notifyManager.batch(() => {\n if (this.#mutateOptions && this.hasListeners()) {\n const variables = this.#currentResult.variables;\n const context = this.#currentResult.context;\n if (action?.type === \"success\") {\n this.#mutateOptions.onSuccess?.(action.data, variables, context);\n this.#mutateOptions.onSettled?.(action.data, null, variables, context);\n } else if (action?.type === \"error\") {\n this.#mutateOptions.onError?.(action.error, variables, context);\n this.#mutateOptions.onSettled?.(\n void 0,\n action.error,\n variables,\n context\n );\n }\n }\n this.listeners.forEach((listener) => {\n listener(this.#currentResult);\n });\n });\n }\n};\nexport {\n MutationObserver\n};\n//# sourceMappingURL=mutationObserver.js.map","\"use client\";\n\n// src/useMutation.ts\nimport * as React from \"react\";\nimport { MutationObserver, notifyManager } from \"@tanstack/query-core\";\nimport { useQueryClient } from \"./QueryClientProvider.js\";\nimport { noop, shouldThrowError } from \"./utils.js\";\nfunction useMutation(options, queryClient) {\n const client = useQueryClient(queryClient);\n const [observer] = React.useState(\n () => new MutationObserver(\n client,\n options\n )\n );\n React.useEffect(() => {\n observer.setOptions(options);\n }, [observer, options]);\n const result = React.useSyncExternalStore(\n React.useCallback(\n (onStoreChange) => observer.subscribe(notifyManager.batchCalls(onStoreChange)),\n [observer]\n ),\n () => observer.getCurrentResult(),\n () => observer.getCurrentResult()\n );\n const mutate = React.useCallback(\n (variables, mutateOptions) => {\n observer.mutate(variables, mutateOptions).catch(noop);\n },\n [observer]\n );\n if (result.error && shouldThrowError(observer.options.throwOnError, [result.error])) {\n throw result.error;\n }\n return { ...result, mutate, mutateAsync: result.mutate };\n}\nexport {\n useMutation\n};\n//# sourceMappingURL=useMutation.js.map","import * as SelectPrimitive from \"@radix-ui/react-select\";\nimport { Check, ChevronDown, ChevronUp } from \"lucide-react\";\nimport * as React from \"react\";\nimport { cn } from \"../util/cn.js\";\n\nconst Select = SelectPrimitive.Root;\n\nconst SelectGroup = SelectPrimitive.Group;\n\nconst SelectValue = SelectPrimitive.Value;\n\nconst SelectTrigger = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n \"flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n >\n <span className=\"truncate\">{children}</span>\n <SelectPrimitive.Icon asChild>\n <ChevronDown className=\"flex-shrink-0 h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n));\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName;\n\nconst SelectScrollUpButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollUpButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollUpButton\n ref={ref}\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronUp className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollUpButton>\n));\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;\n\nconst SelectScrollDownButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollDownButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollDownButton\n ref={ref}\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronDown className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollDownButton>\n));\nSelectScrollDownButton.displayName =\n SelectPrimitive.ScrollDownButton.displayName;\n\nconst SelectContent = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\n>(({ className, children, position = \"popper\", ...props }, ref) => (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n \"relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n position === \"popper\" &&\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]\",\n \"divide-y\",\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n));\nSelectContent.displayName = SelectPrimitive.Content.displayName;\n\nconst SelectLabel = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label\n ref={ref}\n className={cn(\"py-1.5 pl-8 pr-2 text-sm font-semibold\", className)}\n {...props}\n />\n));\nSelectLabel.displayName = SelectPrimitive.Label.displayName;\n\nconst SelectItem = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex w-full cursor-default select-none items-center py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n));\nSelectItem.displayName = SelectPrimitive.Item.displayName;\n\nconst SelectSeparator = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\n {...props}\n />\n));\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName;\n\nexport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n};\n"],"names":["MutationObserver","_a","Subscribable","client","options","__privateAdd","_MutationObserver_instances","_client","_currentResult","_currentMutation","_mutateOptions","__privateSet","__privateMethod","updateResult_fn","prevOptions","__privateGet","shallowEqualObjects","hashKey","action","notify_fn","variables","state","getDefaultState","notifyManager","context","_b","_d","_c","_f","_e","_h","_g","listener","useMutation","queryClient","useQueryClient","observer","React","result","onStoreChange","mutate","mutateOptions","noop","shouldThrowError","Select","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","className","children","props","ref","jsxs","cn","jsx","ChevronDown","SelectScrollUpButton","ChevronUp","SelectScrollDownButton","SelectContent","position","SelectLabel","SelectItem","Check","SelectSeparator"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -3,7 +3,7 @@ import { c as z, L as D, f as H, i as U } from "./chunk-HA7DTUK3-ZGg2W6yV.js";
3
3
  import { UnlinkIcon as q, CheckIcon as V, CopyIcon as W } from "lucide-react";
4
4
  import { C as Z } from "./CategoryHeading-DpB47wvk.js";
5
5
  import { Callout as G } from "./ui/Callout.js";
6
- import { M as X, H as A, P as O } from "./Markdown-BlioIqkZ.js";
6
+ import { M as X, H as A, P as O } from "./Markdown-DT5Rrq8_.js";
7
7
  import { P as B, t as g, H as J } from "./SyntaxHighlight-BEoSoPEo.js";
8
8
  import { z as K } from "./index-DwT-v3zK.js";
9
9
  import Y, { memo as Q, useState as ee, useContext as re } from "react";
@@ -335,4 +335,4 @@ export {
335
335
  ye as S,
336
336
  Pe as a
337
337
  };
338
- //# sourceMappingURL=SlotletProvider-CXb3wQiR.js.map
338
+ //# sourceMappingURL=SlotletProvider-D8OBnr77.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlotletProvider-CXb3wQiR.js","sources":["../src/lib/components/DeveloperHint.tsx","../src/lib/components/NotFoundPage.tsx","../src/lib/ui/SyntaxHighlight.tsx","../src/lib/errors/ErrorAlert.tsx","../src/lib/errors/RouterError.tsx","../../../node_modules/.pnpm/react-is@19.0.0/node_modules/react-is/cjs/react-is.production.js","../../../node_modules/.pnpm/react-is@19.0.0/node_modules/react-is/cjs/react-is.development.js","../../../node_modules/.pnpm/react-is@19.0.0/node_modules/react-is/index.js","../src/lib/components/SlotletProvider.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Callout } from \"../ui/Callout.js\";\nimport { Markdown } from \"./Markdown.js\";\n\nexport const DeveloperHint = ({\n children,\n className,\n}: {\n children: ReactNode;\n className?: string;\n}) => {\n if (process.env.NODE_ENV !== \"development\") return;\n\n return (\n <Callout type=\"caution\" title=\"Developer hint\" className={className}>\n <div className=\"flex flex-col gap-2\">\n {typeof children === \"string\" ? (\n <Markdown content={children} />\n ) : (\n <div>{children}</div>\n )}\n <small className=\"italic\">\n Note: This hint is only shown in development mode.\n </small>\n </div>\n </Callout>\n );\n};\n","import { UnlinkIcon } from \"lucide-react\";\nimport { Link, useParams } from \"react-router\";\nimport { CategoryHeading } from \"./CategoryHeading.js\";\nimport { DeveloperHint } from \"./DeveloperHint.js\";\nimport { Heading } from \"./Heading.js\";\nimport { ProseClasses } from \"./Markdown.js\";\n\nexport const NotFoundPage = () => {\n const params = useParams();\n\n return (\n <div className={ProseClasses + \" h-full pt-[--padding-content-top]\"}>\n <CategoryHeading>404</CategoryHeading>\n <Heading level={1} className=\"flex gap-3.5 items-center\">\n Page not found\n <UnlinkIcon size={24} />\n </Heading>\n <DeveloperHint>\n Start by adding a file at{\" \"}\n <code>\n {\"{PROJECT_ROOT}\"}/{params[\"*\"]}.mdx\n </code>{\" \"}\n and add some content to make this error go away.\n </DeveloperHint>\n <p>\n It seems that the page you are looking for does not exist or may have\n been moved. Please check the URL for any typos or use the navigation\n menu to find the correct page.\n </p>\n <Link to=\"/\">Go back home</Link>\n </div>\n );\n};\n","import {\n Highlight,\n Prism,\n themes,\n type HighlightProps,\n} from \"prism-react-renderer\";\n\nimport { CheckIcon, CopyIcon } from \"lucide-react\";\n\nglobalThis.Prism = Prism;\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-bash.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-ruby.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-markup.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-json.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-java.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-csharp.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-objectivec.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-markdown.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-javascript.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-typescript.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-jsstacktrace.min.js\");\n\nimport { useTheme } from \"next-themes\";\nimport { memo, useState } from \"react\";\nimport { ClientOnly } from \"../components/ClientOnly.js\";\nimport { cn } from \"../util/cn.js\";\n\nexport type SyntaxHighlightProps = {\n className?: string;\n noBackground?: boolean;\n wrapLines?: boolean;\n showLanguageIndicator?: boolean;\n language?: string;\n title?: string;\n children?: string;\n code?: string;\n showCopy?: \"hover\" | \"always\" | \"never\";\n showCopyText?: boolean;\n disabled?: boolean;\n} & Omit<HighlightProps, \"children\" | \"language\">;\n\nconst remapLang = {\n mdx: \"md\",\n} as Record<string, string>;\n\nconst SyntaxHighlightInner = ({\n language = \"plain\",\n showCopy = \"hover\",\n showCopyText,\n title,\n children,\n disabled,\n ...props\n}: SyntaxHighlightProps) => {\n const { resolvedTheme } = useTheme();\n const [isCopied, setIsCopied] = useState(false);\n\n const code = children ?? props.code;\n\n if (!code) {\n return null;\n }\n\n const highlightTheme =\n resolvedTheme === \"dark\" ? themes.vsDark : themes.github;\n\n // hardcoded values from the themes to avoid color flash in SSR\n const themeColorClasses =\n \"bg-[#f6f8fa] text-[#393a34] dark:bg-[#1e1e1e] dark:text-[#9cdcfe]\";\n\n const Wrapper = ({\n children,\n className,\n style,\n }: {\n children: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n }) => (\n <div className=\"relative group\">\n {title && (\n <div className=\"text-xs text-muted-foreground absolute top-2 font-mono border-b w-full pb-2 px-4 \">\n {title}\n </div>\n )}\n <pre\n className={cn(\n \"relative scrollbar overflow-x-auto\",\n props.className,\n props.noBackground ? \"!bg-transparent\" : themeColorClasses,\n props.wrapLines && \"whitespace-pre-wrap break-words\",\n title && \"pt-10\",\n className,\n )}\n style={style}\n >\n {children}\n </pre>\n {props.showLanguageIndicator && (\n <span className=\"absolute top-1.5 right-3 text-[11px] font-mono text-muted-foreground transition group-hover:opacity-0\">\n {language}\n </span>\n )}\n {showCopy !== \"never\" && (\n <button\n type=\"button\"\n aria-label=\"Copy code\"\n title=\"Copy code\"\n className={cn(\n \"absolute top-2 right-2 p-2 hover:outline hover:outline-border/75 dark:hover:outline-border rounded-md text-sm text-muted-foreground transition\",\n showCopy === \"hover\"\n ? \"opacity-0 group-hover:opacity-100 group-hover:bg-zinc-100 group-hover:dark:bg-zinc-700\"\n : \"bg-zinc-100 dark:bg-zinc-700\",\n showCopyText && \"flex gap-2 items-center font-medium\",\n )}\n disabled={isCopied}\n onClick={() => {\n setIsCopied(true);\n void navigator.clipboard.writeText(code);\n setTimeout(() => setIsCopied(false), 2000);\n }}\n >\n {isCopied ? (\n <CheckIcon\n className=\"text-emerald-600\"\n size={16}\n strokeWidth={2.5}\n absoluteStrokeWidth\n />\n ) : (\n <CopyIcon size={16} />\n )}\n {showCopyText && \"Copy\"}\n </button>\n )}\n </div>\n );\n\n if (disabled) {\n return (\n <ClientOnly fallback={<Wrapper>{code}</Wrapper>}>\n <Wrapper>{code}</Wrapper>\n </ClientOnly>\n );\n }\n\n return (\n <ClientOnly fallback={<Wrapper>{code}</Wrapper>}>\n <Highlight\n theme={highlightTheme}\n language={remapLang[language] ?? language}\n {...props}\n code={code}\n >\n {({ className, style, tokens, getLineProps, getTokenProps }) => (\n <Wrapper className={className} style={style}>\n {tokens.map((line, i) => (\n // eslint-disable-next-line react/no-array-index-key\n <div key={i} {...getLineProps({ line })}>\n {line.map((token, key) => (\n // eslint-disable-next-line react/no-array-index-key\n <span key={key} {...getTokenProps({ token })} />\n ))}\n </div>\n ))}\n </Wrapper>\n )}\n </Highlight>\n </ClientOnly>\n );\n};\n\nexport const SyntaxHighlight = memo(SyntaxHighlightInner);\n\nSyntaxHighlight.displayName = \"SyntaxHighlight\";\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\nimport { SyntaxHighlight } from \"zudoku/ui/SyntaxHighlight.js\";\nimport { DeveloperHint } from \"../components/DeveloperHint.js\";\nimport { Heading } from \"../components/Heading.js\";\nimport { ProseClasses } from \"../components/Markdown.js\";\nimport { cn } from \"../util/cn.js\";\nimport { ZudokuError } from \"../util/invariant.js\";\n\nexport function ErrorAlert({ error }: { error: unknown }) {\n const message =\n error instanceof Error ? error.message : \"Something went wrong\";\n\n const hint = error instanceof ZudokuError ? error.developerHint : undefined;\n const title =\n error instanceof ZudokuError ? error.title : \"Something went wrong\";\n const stack = error instanceof Error ? error.stack : undefined;\n const cause = error instanceof Error ? error.cause : undefined;\n\n const stringError = cause instanceof Error ? String(cause.stack) : stack;\n\n return (\n <div\n className={cn(\n ProseClasses,\n \"grid grid-cols-1 !max-w-none pt-[--padding-content-top]\",\n )}\n >\n <Heading level={1}>{title}</Heading>\n Error: {message}\n {hint && <DeveloperHint className=\"mb-4\">{hint}</DeveloperHint>}\n {stringError && (\n <div>\n <SyntaxHighlight\n className=\"max-h-[400px] border mt-2\"\n language=\"jsstacktrace\"\n code={stringError}\n />\n </div>\n )}\n </div>\n );\n}\n","import { isRouteErrorResponse, useRouteError } from \"react-router\";\nimport { NotFoundPage } from \"../components/NotFoundPage.js\";\nimport { ErrorAlert } from \"./ErrorAlert.js\";\n\nexport function RouterError() {\n const error = useRouteError();\n\n if (isRouteErrorResponse(error) && error.status === 404) {\n return <NotFoundPage />;\n }\n\n return <ErrorAlert error={error} />;\n}\n","/**\n * @license React\n * react-is.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\nSymbol.for(\"react.provider\");\nvar REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_OFFSCREEN_TYPE = Symbol.for(\"react.offscreen\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\nfunction typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n}\nexports.ContextConsumer = REACT_CONSUMER_TYPE;\nexports.ContextProvider = REACT_CONTEXT_TYPE;\nexports.Element = REACT_ELEMENT_TYPE;\nexports.ForwardRef = REACT_FORWARD_REF_TYPE;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Lazy = REACT_LAZY_TYPE;\nexports.Memo = REACT_MEMO_TYPE;\nexports.Portal = REACT_PORTAL_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\nexports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n};\nexports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n};\nexports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n};\nexports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n};\nexports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n};\nexports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n};\nexports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n};\nexports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n};\nexports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n};\nexports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n};\nexports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n};\nexports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n};\nexports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n type === REACT_OFFSCREEN_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n};\nexports.typeOf = typeOf;\n","/**\n * @license React\n * react-is.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n }\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_OFFSCREEN_TYPE = Symbol.for(\"react.offscreen\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\n exports.ContextConsumer = REACT_CONSUMER_TYPE;\n exports.ContextProvider = REACT_CONTEXT_TYPE;\n exports.Element = REACT_ELEMENT_TYPE;\n exports.ForwardRef = REACT_FORWARD_REF_TYPE;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Lazy = REACT_LAZY_TYPE;\n exports.Memo = REACT_MEMO_TYPE;\n exports.Portal = REACT_PORTAL_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\n exports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n };\n exports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n };\n exports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n };\n exports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n };\n exports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n };\n exports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n };\n exports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n };\n exports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n };\n exports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n };\n exports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n };\n exports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n };\n exports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n };\n exports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n type === REACT_OFFSCREEN_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n };\n exports.typeOf = typeOf;\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","import React, {\n type ComponentType,\n type ReactElement,\n ReactNode,\n useContext,\n} from \"react\";\nimport { isValidElementType } from \"react-is\";\nimport {\n type Location,\n type NavigateFunction,\n type Params,\n type SetURLSearchParams,\n} from \"react-router\";\nimport { useExposedProps } from \"../util/useExposedProps.js\";\n\nexport type Slotlets = Record<\n string,\n ReactNode | ReactElement | ComponentType<ExposedComponentProps>\n>;\n\nconst SlotletContext = React.createContext<Slotlets | undefined>({});\n\nexport const SlotletProvider = ({\n slotlets,\n children,\n}: {\n children: ReactNode;\n slotlets?: Slotlets;\n}) => {\n return (\n <SlotletContext.Provider value={slotlets}>\n {children}\n </SlotletContext.Provider>\n );\n};\n\nexport type ExposedComponentProps = {\n location: Location;\n navigate: NavigateFunction;\n searchParams: URLSearchParams;\n setSearchParams: SetURLSearchParams;\n params: Params;\n};\n\nexport const Slotlet = ({ name }: { name: string }) => {\n const context = useContext(SlotletContext);\n const componentOrElement = context?.[name];\n const slotletProps = useExposedProps();\n\n if (isValidElementType(componentOrElement)) {\n return React.createElement(componentOrElement, slotletProps);\n }\n\n return componentOrElement as ReactNode;\n};\n"],"names":["DeveloperHint","children","className","jsx","Callout","jsxs","Markdown","NotFoundPage","params","useParams","ProseClasses","CategoryHeading","Heading","UnlinkIcon","Link","Prism","n","remapLang","SyntaxHighlightInner","language","showCopy","showCopyText","title","disabled","props","resolvedTheme","useTheme","isCopied","setIsCopied","useState","code","highlightTheme","themes","themeColorClasses","Wrapper","style","cn","CheckIcon","CopyIcon","ClientOnly","Highlight","tokens","getLineProps","getTokenProps","line","i","token","key","SyntaxHighlight","memo","ErrorAlert","error","message","hint","ZudokuError","stack","cause","stringError","RouterError","useRouteError","isRouteErrorResponse","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_CONSUMER_TYPE","REACT_CONTEXT_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_OFFSCREEN_TYPE","REACT_CLIENT_REFERENCE","typeOf","object","$$typeof","reactIs_production","type","reactIs_development","reactIsModule","require$$0","require$$1","SlotletContext","React","SlotletProvider","slotlets","Slotlet","name","context","useContext","componentOrElement","slotletProps","useExposedProps","isValidElementType"],"mappings":"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","x_google_ignoreList":[5,6,7]}
1
+ {"version":3,"file":"SlotletProvider-D8OBnr77.js","sources":["../src/lib/components/DeveloperHint.tsx","../src/lib/components/NotFoundPage.tsx","../src/lib/ui/SyntaxHighlight.tsx","../src/lib/errors/ErrorAlert.tsx","../src/lib/errors/RouterError.tsx","../../../node_modules/.pnpm/react-is@19.0.0/node_modules/react-is/cjs/react-is.production.js","../../../node_modules/.pnpm/react-is@19.0.0/node_modules/react-is/cjs/react-is.development.js","../../../node_modules/.pnpm/react-is@19.0.0/node_modules/react-is/index.js","../src/lib/components/SlotletProvider.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Callout } from \"../ui/Callout.js\";\nimport { Markdown } from \"./Markdown.js\";\n\nexport const DeveloperHint = ({\n children,\n className,\n}: {\n children: ReactNode;\n className?: string;\n}) => {\n if (process.env.NODE_ENV !== \"development\") return;\n\n return (\n <Callout type=\"caution\" title=\"Developer hint\" className={className}>\n <div className=\"flex flex-col gap-2\">\n {typeof children === \"string\" ? (\n <Markdown content={children} />\n ) : (\n <div>{children}</div>\n )}\n <small className=\"italic\">\n Note: This hint is only shown in development mode.\n </small>\n </div>\n </Callout>\n );\n};\n","import { UnlinkIcon } from \"lucide-react\";\nimport { Link, useParams } from \"react-router\";\nimport { CategoryHeading } from \"./CategoryHeading.js\";\nimport { DeveloperHint } from \"./DeveloperHint.js\";\nimport { Heading } from \"./Heading.js\";\nimport { ProseClasses } from \"./Markdown.js\";\n\nexport const NotFoundPage = () => {\n const params = useParams();\n\n return (\n <div className={ProseClasses + \" h-full pt-[--padding-content-top]\"}>\n <CategoryHeading>404</CategoryHeading>\n <Heading level={1} className=\"flex gap-3.5 items-center\">\n Page not found\n <UnlinkIcon size={24} />\n </Heading>\n <DeveloperHint>\n Start by adding a file at{\" \"}\n <code>\n {\"{PROJECT_ROOT}\"}/{params[\"*\"]}.mdx\n </code>{\" \"}\n and add some content to make this error go away.\n </DeveloperHint>\n <p>\n It seems that the page you are looking for does not exist or may have\n been moved. Please check the URL for any typos or use the navigation\n menu to find the correct page.\n </p>\n <Link to=\"/\">Go back home</Link>\n </div>\n );\n};\n","import {\n Highlight,\n Prism,\n themes,\n type HighlightProps,\n} from \"prism-react-renderer\";\n\nimport { CheckIcon, CopyIcon } from \"lucide-react\";\n\nglobalThis.Prism = Prism;\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-bash.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-ruby.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-markup.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-json.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-java.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-csharp.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-objectivec.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-markdown.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-javascript.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-typescript.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-jsstacktrace.min.js\");\n\nimport { useTheme } from \"next-themes\";\nimport { memo, useState } from \"react\";\nimport { ClientOnly } from \"../components/ClientOnly.js\";\nimport { cn } from \"../util/cn.js\";\n\nexport type SyntaxHighlightProps = {\n className?: string;\n noBackground?: boolean;\n wrapLines?: boolean;\n showLanguageIndicator?: boolean;\n language?: string;\n title?: string;\n children?: string;\n code?: string;\n showCopy?: \"hover\" | \"always\" | \"never\";\n showCopyText?: boolean;\n disabled?: boolean;\n} & Omit<HighlightProps, \"children\" | \"language\">;\n\nconst remapLang = {\n mdx: \"md\",\n} as Record<string, string>;\n\nconst SyntaxHighlightInner = ({\n language = \"plain\",\n showCopy = \"hover\",\n showCopyText,\n title,\n children,\n disabled,\n ...props\n}: SyntaxHighlightProps) => {\n const { resolvedTheme } = useTheme();\n const [isCopied, setIsCopied] = useState(false);\n\n const code = children ?? props.code;\n\n if (!code) {\n return null;\n }\n\n const highlightTheme =\n resolvedTheme === \"dark\" ? themes.vsDark : themes.github;\n\n // hardcoded values from the themes to avoid color flash in SSR\n const themeColorClasses =\n \"bg-[#f6f8fa] text-[#393a34] dark:bg-[#1e1e1e] dark:text-[#9cdcfe]\";\n\n const Wrapper = ({\n children,\n className,\n style,\n }: {\n children: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n }) => (\n <div className=\"relative group\">\n {title && (\n <div className=\"text-xs text-muted-foreground absolute top-2 font-mono border-b w-full pb-2 px-4 \">\n {title}\n </div>\n )}\n <pre\n className={cn(\n \"relative scrollbar overflow-x-auto\",\n props.className,\n props.noBackground ? \"!bg-transparent\" : themeColorClasses,\n props.wrapLines && \"whitespace-pre-wrap break-words\",\n title && \"pt-10\",\n className,\n )}\n style={style}\n >\n {children}\n </pre>\n {props.showLanguageIndicator && (\n <span className=\"absolute top-1.5 right-3 text-[11px] font-mono text-muted-foreground transition group-hover:opacity-0\">\n {language}\n </span>\n )}\n {showCopy !== \"never\" && (\n <button\n type=\"button\"\n aria-label=\"Copy code\"\n title=\"Copy code\"\n className={cn(\n \"absolute top-2 right-2 p-2 hover:outline hover:outline-border/75 dark:hover:outline-border rounded-md text-sm text-muted-foreground transition\",\n showCopy === \"hover\"\n ? \"opacity-0 group-hover:opacity-100 group-hover:bg-zinc-100 group-hover:dark:bg-zinc-700\"\n : \"bg-zinc-100 dark:bg-zinc-700\",\n showCopyText && \"flex gap-2 items-center font-medium\",\n )}\n disabled={isCopied}\n onClick={() => {\n setIsCopied(true);\n void navigator.clipboard.writeText(code);\n setTimeout(() => setIsCopied(false), 2000);\n }}\n >\n {isCopied ? (\n <CheckIcon\n className=\"text-emerald-600\"\n size={16}\n strokeWidth={2.5}\n absoluteStrokeWidth\n />\n ) : (\n <CopyIcon size={16} />\n )}\n {showCopyText && \"Copy\"}\n </button>\n )}\n </div>\n );\n\n if (disabled) {\n return (\n <ClientOnly fallback={<Wrapper>{code}</Wrapper>}>\n <Wrapper>{code}</Wrapper>\n </ClientOnly>\n );\n }\n\n return (\n <ClientOnly fallback={<Wrapper>{code}</Wrapper>}>\n <Highlight\n theme={highlightTheme}\n language={remapLang[language] ?? language}\n {...props}\n code={code}\n >\n {({ className, style, tokens, getLineProps, getTokenProps }) => (\n <Wrapper className={className} style={style}>\n {tokens.map((line, i) => (\n // eslint-disable-next-line react/no-array-index-key\n <div key={i} {...getLineProps({ line })}>\n {line.map((token, key) => (\n // eslint-disable-next-line react/no-array-index-key\n <span key={key} {...getTokenProps({ token })} />\n ))}\n </div>\n ))}\n </Wrapper>\n )}\n </Highlight>\n </ClientOnly>\n );\n};\n\nexport const SyntaxHighlight = memo(SyntaxHighlightInner);\n\nSyntaxHighlight.displayName = \"SyntaxHighlight\";\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\nimport { SyntaxHighlight } from \"zudoku/ui/SyntaxHighlight.js\";\nimport { DeveloperHint } from \"../components/DeveloperHint.js\";\nimport { Heading } from \"../components/Heading.js\";\nimport { ProseClasses } from \"../components/Markdown.js\";\nimport { cn } from \"../util/cn.js\";\nimport { ZudokuError } from \"../util/invariant.js\";\n\nexport function ErrorAlert({ error }: { error: unknown }) {\n const message =\n error instanceof Error ? error.message : \"Something went wrong\";\n\n const hint = error instanceof ZudokuError ? error.developerHint : undefined;\n const title =\n error instanceof ZudokuError ? error.title : \"Something went wrong\";\n const stack = error instanceof Error ? error.stack : undefined;\n const cause = error instanceof Error ? error.cause : undefined;\n\n const stringError = cause instanceof Error ? String(cause.stack) : stack;\n\n return (\n <div\n className={cn(\n ProseClasses,\n \"grid grid-cols-1 !max-w-none pt-[--padding-content-top]\",\n )}\n >\n <Heading level={1}>{title}</Heading>\n Error: {message}\n {hint && <DeveloperHint className=\"mb-4\">{hint}</DeveloperHint>}\n {stringError && (\n <div>\n <SyntaxHighlight\n className=\"max-h-[400px] border mt-2\"\n language=\"jsstacktrace\"\n code={stringError}\n />\n </div>\n )}\n </div>\n );\n}\n","import { isRouteErrorResponse, useRouteError } from \"react-router\";\nimport { NotFoundPage } from \"../components/NotFoundPage.js\";\nimport { ErrorAlert } from \"./ErrorAlert.js\";\n\nexport function RouterError() {\n const error = useRouteError();\n\n if (isRouteErrorResponse(error) && error.status === 404) {\n return <NotFoundPage />;\n }\n\n return <ErrorAlert error={error} />;\n}\n","/**\n * @license React\n * react-is.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\nSymbol.for(\"react.provider\");\nvar REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_OFFSCREEN_TYPE = Symbol.for(\"react.offscreen\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\nfunction typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n}\nexports.ContextConsumer = REACT_CONSUMER_TYPE;\nexports.ContextProvider = REACT_CONTEXT_TYPE;\nexports.Element = REACT_ELEMENT_TYPE;\nexports.ForwardRef = REACT_FORWARD_REF_TYPE;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Lazy = REACT_LAZY_TYPE;\nexports.Memo = REACT_MEMO_TYPE;\nexports.Portal = REACT_PORTAL_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\nexports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n};\nexports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n};\nexports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n};\nexports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n};\nexports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n};\nexports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n};\nexports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n};\nexports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n};\nexports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n};\nexports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n};\nexports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n};\nexports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n};\nexports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n type === REACT_OFFSCREEN_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n};\nexports.typeOf = typeOf;\n","/**\n * @license React\n * react-is.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n }\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_OFFSCREEN_TYPE = Symbol.for(\"react.offscreen\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\n exports.ContextConsumer = REACT_CONSUMER_TYPE;\n exports.ContextProvider = REACT_CONTEXT_TYPE;\n exports.Element = REACT_ELEMENT_TYPE;\n exports.ForwardRef = REACT_FORWARD_REF_TYPE;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Lazy = REACT_LAZY_TYPE;\n exports.Memo = REACT_MEMO_TYPE;\n exports.Portal = REACT_PORTAL_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\n exports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n };\n exports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n };\n exports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n };\n exports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n };\n exports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n };\n exports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n };\n exports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n };\n exports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n };\n exports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n };\n exports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n };\n exports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n };\n exports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n };\n exports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n type === REACT_OFFSCREEN_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n };\n exports.typeOf = typeOf;\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","import React, {\n type ComponentType,\n type ReactElement,\n ReactNode,\n useContext,\n} from \"react\";\nimport { isValidElementType } from \"react-is\";\nimport {\n type Location,\n type NavigateFunction,\n type Params,\n type SetURLSearchParams,\n} from \"react-router\";\nimport { useExposedProps } from \"../util/useExposedProps.js\";\n\nexport type Slotlets = Record<\n string,\n ReactNode | ReactElement | ComponentType<ExposedComponentProps>\n>;\n\nconst SlotletContext = React.createContext<Slotlets | undefined>({});\n\nexport const SlotletProvider = ({\n slotlets,\n children,\n}: {\n children: ReactNode;\n slotlets?: Slotlets;\n}) => {\n return (\n <SlotletContext.Provider value={slotlets}>\n {children}\n </SlotletContext.Provider>\n );\n};\n\nexport type ExposedComponentProps = {\n location: Location;\n navigate: NavigateFunction;\n searchParams: URLSearchParams;\n setSearchParams: SetURLSearchParams;\n params: Params;\n};\n\nexport const Slotlet = ({ name }: { name: string }) => {\n const context = useContext(SlotletContext);\n const componentOrElement = context?.[name];\n const slotletProps = useExposedProps();\n\n if (isValidElementType(componentOrElement)) {\n return React.createElement(componentOrElement, slotletProps);\n }\n\n return componentOrElement as ReactNode;\n};\n"],"names":["DeveloperHint","children","className","jsx","Callout","jsxs","Markdown","NotFoundPage","params","useParams","ProseClasses","CategoryHeading","Heading","UnlinkIcon","Link","Prism","n","remapLang","SyntaxHighlightInner","language","showCopy","showCopyText","title","disabled","props","resolvedTheme","useTheme","isCopied","setIsCopied","useState","code","highlightTheme","themes","themeColorClasses","Wrapper","style","cn","CheckIcon","CopyIcon","ClientOnly","Highlight","tokens","getLineProps","getTokenProps","line","i","token","key","SyntaxHighlight","memo","ErrorAlert","error","message","hint","ZudokuError","stack","cause","stringError","RouterError","useRouteError","isRouteErrorResponse","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_CONSUMER_TYPE","REACT_CONTEXT_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_OFFSCREEN_TYPE","REACT_CLIENT_REFERENCE","typeOf","object","$$typeof","reactIs_production","type","reactIs_development","reactIsModule","require$$0","require$$1","SlotletContext","React","SlotletProvider","slotlets","Slotlet","name","context","useContext","componentOrElement","slotletProps","useExposedProps","isValidElementType"],"mappings":"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","x_google_ignoreList":[5,6,7]}
@@ -0,0 +1,7 @@
1
+ import { j as s } from "./jsx-runtime-CYK1ROHF.js";
2
+ import { LoaderCircle as o } from "lucide-react";
3
+ const i = ({ size: r = 16 }) => /* @__PURE__ */ s.jsx(o, { size: r, className: "animate-spin" });
4
+ export {
5
+ i as S
6
+ };
7
+ //# sourceMappingURL=Spinner-CE68iCm0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spinner-CE68iCm0.js","sources":["../src/lib/components/Spinner.tsx"],"sourcesContent":["import { LoaderCircle } from \"lucide-react\";\n\nexport const Spinner = ({ size = 16 }: { size?: number }) => (\n <LoaderCircle size={size} className=\"animate-spin\" />\n);\n"],"names":["Spinner","size","jsx","LoaderCircle"],"mappings":";;AAEa,MAAAA,IAAU,CAAC,EAAE,MAAAC,IAAO,SAC9BC,gBAAAA,MAAAC,GAAA,EAAa,MAAAF,GAAY,WAAU,eAAe,CAAA;"}
@@ -1,32 +1,32 @@
1
- import { e as Q, f as q, Q as L, g as F, u as Z, d as K } from "./useQuery-CQUwWR9i.js";
2
- import A, { createContext as $, useContext as B, useMemo as J } from "react";
3
- import { u as b, m as C } from "./chunk-HA7DTUK3-ZGg2W6yV.js";
1
+ import { e as q, f as L, Q as F, g as Z, u as K, j as A, d as $ } from "./joinUrl-BjDooT-T.js";
2
+ import C, { createContext as B, useContext as J, useMemo as U } from "react";
3
+ import { u as b, m as _ } from "./chunk-HA7DTUK3-ZGg2W6yV.js";
4
4
  function M(e, n) {
5
- return process.env.NODE_ENV !== "production" && e.queryFn === Q && console.error("skipToken is not allowed for useSuspenseQuery"), q(
5
+ return process.env.NODE_ENV !== "production" && e.queryFn === q && console.error("skipToken is not allowed for useSuspenseQuery"), L(
6
6
  {
7
7
  ...e,
8
8
  enabled: !0,
9
9
  suspense: !0,
10
- throwOnError: F,
10
+ throwOnError: Z,
11
11
  placeholderData: void 0
12
12
  },
13
- L,
13
+ F,
14
14
  n
15
15
  );
16
16
  }
17
- const S = (...e) => {
18
- const n = e.filter((t) => !!t).map((t) => t.replace(/(^\/+|\/+$)/g, "")).join("/").replace(/(^\/+|\/+$)/g, "");
19
- return n ? `/${n}` : "/";
20
- }, N = Object.freeze({
17
+ const N = Object.freeze({
21
18
  API_IDENTITIES: ["api-identities"]
22
- }), ae = () => {
23
- const e = Z();
19
+ }), ie = () => {
20
+ const e = K();
24
21
  return {
25
22
  invalidateCache: async (n) => {
26
23
  await e.invalidateQueries({ queryKey: N[n] });
27
24
  }
28
25
  };
29
- }, U = "no-dehydrate", k = (e, n) => {
26
+ }, Y = "no-dehydrate", g = (...e) => {
27
+ const n = e.filter((t) => !!t).map((t) => t.replace(/(^\/+|\/+$)/g, "")).join("/").replace(/(^\/+|\/+$)/g, "");
28
+ return n ? `/${n}` : "/";
29
+ }, k = (e, n) => {
30
30
  for (const t of e) {
31
31
  const r = P(t, n);
32
32
  if (r !== void 0) return r;
@@ -42,59 +42,63 @@ const S = (...e) => {
42
42
  ]);
43
43
  if (o !== void 0) return o;
44
44
  }
45
- }, ie = () => {
45
+ }, ce = () => {
46
46
  const e = b(), t = T().sidebar;
47
47
  return k(t, (r) => {
48
- if (r.type === "doc" && S(r.id) === e.pathname)
48
+ if (r.type === "doc" && g(r.id) === e.pathname)
49
49
  return r;
50
50
  });
51
- }, ce = (e) => {
51
+ }, ue = (e) => {
52
52
  const n = b();
53
53
  return P(e, (t) => {
54
- if (t.type === "category" && t.link && S(t.link.id) === n.pathname || t.type === "doc" && S(t.id) === n.pathname)
54
+ if (t.type === "category" && t.link && g(t.link.id) === n.pathname || t.type === "doc" && g(t.id) === n.pathname)
55
55
  return !0;
56
56
  });
57
- }, ue = () => {
57
+ }, de = () => {
58
58
  const e = b().pathname, t = T().sidebar;
59
59
  let r, s, o = !1;
60
60
  return k(t, (c) => {
61
- const i = c.type === "doc" ? S(c.id) : c.type === "category" && c.link ? S(c.link.id) : void 0;
61
+ const i = c.type === "doc" ? g(c.id) : c.type === "category" && c.link ? g(c.link.id) : void 0;
62
62
  if (i) {
63
63
  if (o)
64
64
  return s = { label: c.label, id: i }, !0;
65
65
  e === i ? o = !0 : r = { label: c.label, id: i };
66
66
  }
67
67
  }), { prev: r, next: s };
68
- }, Y = $(
68
+ }, z = B(
69
69
  void 0
70
70
  ), O = () => {
71
- const e = B(Y);
71
+ const e = J(z);
72
72
  if (!e)
73
73
  throw new Error("useZudoku must be used within a ZudokuProvider.");
74
74
  return e;
75
- }, de = () => {
75
+ }, le = () => {
76
76
  const { getApiIdentities: e } = O();
77
- return K({
77
+ return $({
78
78
  queryFn: e,
79
79
  queryKey: N.API_IDENTITIES
80
80
  });
81
81
  }, T = () => {
82
82
  var v;
83
- const { getPluginSidebar: e, sidebars: n, topNavigation: t, options: r } = O(), s = b(), o = ne(), c = (v = r.protectedRoutes) == null ? void 0 : v.some(
84
- (d) => C(d, s.pathname)
85
- ), i = Object.entries(n).find(([, d]) => k(d, (l) => {
86
- if ((l.type === "doc" ? S(l.id) : l.type === "category" && l.link ? S(l.link.id) : void 0) === s.pathname)
83
+ const { getPluginSidebar: e, sidebars: n, topNavigation: t, options: r } = O(), s = b(), o = re(), c = (v = r.protectedRoutes) == null ? void 0 : v.some(
84
+ (d) => _(d, s.pathname)
85
+ );
86
+ let i = Object.entries(n).find(([, d]) => k(d, (l) => {
87
+ if ((l.type === "doc" ? A(l.id) : l.type === "category" && l.link ? A(l.link.id) : void 0) === s.pathname)
87
88
  return l;
88
- })), h = t.find((d) => d.id === (i == null ? void 0 : i[0])) ?? t.find((d) => C(d.id, s.pathname)), { data: u } = M({
89
+ }));
90
+ const h = t.find((d) => d.id === (i == null ? void 0 : i[0])) ?? t.find((d) => _(d.id, s.pathname));
91
+ h && !i && h.id in n && (i = ["", n[h.id]]);
92
+ const { data: u } = M({
89
93
  queryFn: () => e(s.pathname),
90
94
  // We just want to suspend here and don't store in SSR dehydrated state
91
- queryKey: ["plugin-sidebar", U, s.pathname]
95
+ queryKey: ["plugin-sidebar", Y, s.pathname]
92
96
  });
93
97
  return {
94
98
  sidebar: o.isAuthEnabled && !o.isAuthenticated && c ? [] : [...i ? i[1] : [], ...u],
95
99
  topNavItem: h
96
100
  };
97
- }, _ = (e) => {
101
+ }, j = (e) => {
98
102
  let n;
99
103
  const t = /* @__PURE__ */ new Set(), r = (u, y) => {
100
104
  const v = typeof u == "function" ? u(n) : u;
@@ -104,20 +108,20 @@ const S = (...e) => {
104
108
  }
105
109
  }, s = () => n, i = { setState: r, getState: s, getInitialState: () => h, subscribe: (u) => (t.add(u), () => t.delete(u)) }, h = n = e(r, s, i);
106
110
  return i;
107
- }, z = (e) => e ? _(e) : _, G = (e) => e;
108
- function W(e, n = G) {
109
- const t = A.useSyncExternalStore(
111
+ }, G = (e) => e ? j(e) : j, W = (e) => e;
112
+ function X(e, n = W) {
113
+ const t = C.useSyncExternalStore(
110
114
  e.subscribe,
111
115
  () => n(e.getState()),
112
116
  () => n(e.getInitialState())
113
117
  );
114
- return A.useDebugValue(t), t;
118
+ return C.useDebugValue(t), t;
115
119
  }
116
- const X = (e) => {
117
- const n = z(e), t = (r) => W(n, r);
120
+ const V = (e) => {
121
+ const n = G(e), t = (r) => X(n, r);
118
122
  return Object.assign(t, n), t;
119
- }, j = (e) => X;
120
- function R(e, n) {
123
+ }, R = (e) => V;
124
+ function x(e, n) {
121
125
  let t;
122
126
  try {
123
127
  t = e();
@@ -158,13 +162,13 @@ const E = (e) => (n) => {
158
162
  }
159
163
  };
160
164
  }
161
- }, V = (e, n) => (t, r, s) => {
165
+ }, ee = (e, n) => (t, r, s) => {
162
166
  let o = {
163
- storage: R(() => localStorage),
167
+ storage: x(() => localStorage),
164
168
  partialize: (a) => a,
165
169
  version: 0,
166
- merge: (a, g) => ({
167
- ...g,
170
+ merge: (a, S) => ({
171
+ ...S,
168
172
  ...a
169
173
  }),
170
174
  ...n
@@ -188,8 +192,8 @@ const E = (e) => (n) => {
188
192
  version: o.version
189
193
  });
190
194
  }, v = s.setState;
191
- s.setState = (a, g) => {
192
- v(a, g), y();
195
+ s.setState = (a, S) => {
196
+ v(a, S), y();
193
197
  };
194
198
  const d = e(
195
199
  (...a) => {
@@ -201,13 +205,13 @@ const E = (e) => (n) => {
201
205
  s.getInitialState = () => d;
202
206
  let l;
203
207
  const I = () => {
204
- var a, g;
208
+ var a, S;
205
209
  if (!u) return;
206
210
  c = !1, i.forEach((f) => {
207
211
  var p;
208
212
  return f((p = r()) != null ? p : d);
209
213
  });
210
- const m = ((g = o.onRehydrateStorage) == null ? void 0 : g.call(o, (a = r()) != null ? a : d)) || void 0;
214
+ const m = ((S = o.onRehydrateStorage) == null ? void 0 : S.call(o, (a = r()) != null ? a : d)) || void 0;
211
215
  return E(u.getItem.bind(u))(o.name).then((f) => {
212
216
  if (f)
213
217
  if (typeof f.version == "number" && f.version !== o.version) {
@@ -226,9 +230,9 @@ const E = (e) => (n) => {
226
230
  return [!1, void 0];
227
231
  }).then((f) => {
228
232
  var p;
229
- const [w, H] = f;
233
+ const [w, Q] = f;
230
234
  if (l = o.merge(
231
- H,
235
+ Q,
232
236
  (p = r()) != null ? p : d
233
237
  ), t(l, !0), w)
234
238
  return y();
@@ -258,15 +262,15 @@ const E = (e) => (n) => {
258
262
  h.delete(a);
259
263
  })
260
264
  }, o.skipHydration || I(), l || d;
261
- }, x = V, ee = (e) => {
265
+ }, D = ee, te = (e) => {
262
266
  const n = (t) => {
263
267
  t.key === e.persist.getOptions().name && t.newValue && e.persist.rehydrate();
264
268
  };
265
269
  return window.addEventListener("storage", n), () => {
266
270
  window.removeEventListener("storage", n);
267
271
  };
268
- }, D = j()(
269
- x(
272
+ }, H = R()(
273
+ D(
270
274
  (e) => ({
271
275
  isAuthenticated: !1,
272
276
  isPending: !0,
@@ -280,30 +284,30 @@ const E = (e) => (n) => {
280
284
  ...typeof e == "object" ? e : {}
281
285
  }),
282
286
  name: "auth-state",
283
- storage: R(() => localStorage)
287
+ storage: x(() => localStorage)
284
288
  }
285
289
  )
286
290
  );
287
- typeof window < "u" && ee(D);
288
- const te = j()(
289
- x(
291
+ typeof window < "u" && te(H);
292
+ const ne = R()(
293
+ D(
290
294
  (e) => ({
291
295
  selectedServer: void 0,
292
296
  setSelectedServer: (n) => e({ selectedServer: n })
293
297
  }),
294
298
  { name: "zudoku-selected-server" }
295
299
  )
296
- ), le = (e) => {
297
- const { selectedServer: n, setSelectedServer: t } = te();
298
- return { selectedServer: J(
300
+ ), fe = (e) => {
301
+ const { selectedServer: n, setSelectedServer: t } = ne();
302
+ return { selectedServer: U(
299
303
  () => {
300
304
  var s;
301
305
  return n && e.some((o) => o.url === n) ? n : ((s = e.at(0)) == null ? void 0 : s.url) ?? "";
302
306
  },
303
307
  [n, e]
304
308
  ), setSelectedServer: t };
305
- }, ne = () => {
306
- const { authentication: e } = O(), n = D(), t = typeof e < "u";
309
+ }, re = () => {
310
+ const { authentication: e } = O(), n = H(), t = typeof e < "u";
307
311
  return {
308
312
  isAuthEnabled: t,
309
313
  ...n,
@@ -330,22 +334,22 @@ const te = j()(
330
334
  };
331
335
  export {
332
336
  N as C,
333
- Y as Z,
337
+ z as Z,
334
338
  O as a,
335
339
  M as b,
336
- ie as c,
337
- ue as d,
338
- ne as e,
340
+ ce as c,
341
+ de as d,
342
+ re as e,
339
343
  T as f,
340
- ae as g,
341
- j as h,
342
- R as i,
343
- S as j,
344
- le as k,
345
- de as l,
346
- ce as m,
347
- x as p,
344
+ ie as g,
345
+ R as h,
346
+ x as i,
347
+ g as j,
348
+ fe as k,
349
+ le as l,
350
+ ue as m,
351
+ D as p,
348
352
  k as t,
349
- D as u
353
+ H as u
350
354
  };
351
- //# sourceMappingURL=hook-Bo80UX00.js.map
355
+ //# sourceMappingURL=hook-DzQC8PzJ.js.map