zudoku 0.26.0 → 0.27.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 (300) hide show
  1. package/dist/app/main.d.ts +1 -1
  2. package/dist/app/main.js +19 -7
  3. package/dist/app/main.js.map +1 -1
  4. package/dist/config/config.d.ts +1 -0
  5. package/dist/config/validators/InputSidebarSchema.d.ts +2 -2
  6. package/dist/config/validators/common.d.ts +78 -0
  7. package/dist/config/validators/common.js +6 -0
  8. package/dist/config/validators/common.js.map +1 -1
  9. package/dist/config/validators/validate.d.ts +34 -0
  10. package/dist/lib/authentication/providers/auth0.js +1 -1
  11. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  12. package/dist/lib/authentication/providers/openid.d.ts +1 -1
  13. package/dist/lib/authentication/providers/openid.js +10 -6
  14. package/dist/lib/authentication/providers/openid.js.map +1 -1
  15. package/dist/lib/components/AnchorLink.js +5 -2
  16. package/dist/lib/components/AnchorLink.js.map +1 -1
  17. package/dist/lib/components/Autocomplete.d.ts +12 -0
  18. package/dist/lib/components/Autocomplete.js +47 -0
  19. package/dist/lib/components/Autocomplete.js.map +1 -0
  20. package/dist/lib/components/Header.js +4 -4
  21. package/dist/lib/components/Header.js.map +1 -1
  22. package/dist/lib/components/Heading.d.ts +1 -1
  23. package/dist/lib/components/Markdown.d.ts +2 -2
  24. package/dist/lib/components/Markdown.js +3 -1
  25. package/dist/lib/components/Markdown.js.map +1 -1
  26. package/dist/lib/components/StatusPage.d.ts +7 -0
  27. package/dist/lib/components/StatusPage.js +71 -0
  28. package/dist/lib/components/StatusPage.js.map +1 -0
  29. package/dist/lib/components/SyntaxHighlight.d.ts +2 -1
  30. package/dist/lib/components/SyntaxHighlight.js +2 -2
  31. package/dist/lib/components/SyntaxHighlight.js.map +1 -1
  32. package/dist/lib/components/ThemeSwitch.js +4 -4
  33. package/dist/lib/components/ThemeSwitch.js.map +1 -1
  34. package/dist/lib/components/cache.d.ts +6 -0
  35. package/dist/lib/components/cache.js +13 -0
  36. package/dist/lib/components/cache.js.map +1 -0
  37. package/dist/lib/components/context/ViewportAnchorContext.js +16 -4
  38. package/dist/lib/components/context/ViewportAnchorContext.js.map +1 -1
  39. package/dist/lib/components/context/ZudokuContext.js +2 -1
  40. package/dist/lib/components/context/ZudokuContext.js.map +1 -1
  41. package/dist/lib/components/index.d.ts +9 -2
  42. package/dist/lib/components/index.js +5 -2
  43. package/dist/lib/components/index.js.map +1 -1
  44. package/dist/lib/core/RouteGuard.d.ts +1 -0
  45. package/dist/lib/core/RouteGuard.js +28 -0
  46. package/dist/lib/core/RouteGuard.js.map +1 -0
  47. package/dist/lib/core/ZudokuContext.d.ts +4 -2
  48. package/dist/lib/core/ZudokuContext.js +9 -7
  49. package/dist/lib/core/ZudokuContext.js.map +1 -1
  50. package/dist/lib/oas/graphql/circular.d.ts +3 -0
  51. package/dist/lib/oas/graphql/circular.js +27 -0
  52. package/dist/lib/oas/graphql/circular.js.map +1 -0
  53. package/dist/lib/oas/graphql/index.js +5 -6
  54. package/dist/lib/oas/graphql/index.js.map +1 -1
  55. package/dist/lib/oas/parser/dereference/index.d.ts +0 -1
  56. package/dist/lib/oas/parser/dereference/index.js +1 -1
  57. package/dist/lib/oas/parser/dereference/index.js.map +1 -1
  58. package/dist/lib/plugins/markdown/MdxPage.js +8 -2
  59. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  60. package/dist/lib/plugins/openapi/OperationListItem.js +1 -1
  61. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  62. package/dist/lib/plugins/openapi/ParameterListItem.js +1 -1
  63. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  64. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.d.ts +3 -1
  65. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js +3 -2
  66. package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -1
  67. package/dist/lib/plugins/openapi/Sidecar.js +3 -3
  68. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  69. package/dist/lib/plugins/openapi/index.js +4 -11
  70. package/dist/lib/plugins/openapi/index.js.map +1 -1
  71. package/dist/lib/plugins/openapi/interfaces.d.ts +7 -2
  72. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.d.ts +6 -0
  73. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +12 -0
  74. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -0
  75. package/dist/lib/plugins/openapi/playground/Headers.js +67 -4
  76. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  77. package/dist/lib/plugins/openapi/playground/ParamsGrid.d.ts +5 -0
  78. package/dist/lib/plugins/openapi/playground/ParamsGrid.js +4 -0
  79. package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -0
  80. package/dist/lib/plugins/openapi/playground/PathParams.js +4 -12
  81. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  82. package/dist/lib/plugins/openapi/playground/Playground.d.ts +18 -1
  83. package/dist/lib/plugins/openapi/playground/Playground.js +53 -40
  84. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  85. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +1 -1
  86. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
  87. package/dist/lib/plugins/openapi/playground/QueryParams.js +21 -30
  88. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  89. package/dist/lib/plugins/openapi/playground/SubmitButton.d.ts +7 -0
  90. package/dist/lib/plugins/openapi/playground/SubmitButton.js +22 -0
  91. package/dist/lib/plugins/openapi/playground/SubmitButton.js.map +1 -0
  92. package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.d.ts +7 -0
  93. package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.js +11 -0
  94. package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.js.map +1 -0
  95. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.d.ts +8 -0
  96. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +95 -0
  97. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -0
  98. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.d.ts +7 -0
  99. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +16 -0
  100. package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js.map +1 -0
  101. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.d.ts +10 -0
  102. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.js +32 -0
  103. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.js.map +1 -0
  104. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.d.ts +1 -0
  105. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.js +56 -0
  106. package/dist/lib/plugins/openapi/playground/result-panel/convertToTypes.test.js.map +1 -0
  107. package/dist/lib/plugins/openapi/post-processors/removeExtensions.d.ts +2 -1
  108. package/dist/lib/plugins/openapi/post-processors/removeExtensions.js +5 -3
  109. package/dist/lib/plugins/openapi/post-processors/removeExtensions.js.map +1 -1
  110. package/dist/lib/plugins/openapi/post-processors/removeExtensions.test.js +49 -0
  111. package/dist/lib/plugins/openapi/post-processors/removeExtensions.test.js.map +1 -1
  112. package/dist/lib/plugins/openapi/post-processors/removeParameters.d.ts +10 -0
  113. package/dist/lib/plugins/openapi/post-processors/removeParameters.js +66 -0
  114. package/dist/lib/plugins/openapi/post-processors/removeParameters.js.map +1 -0
  115. package/dist/lib/plugins/openapi/post-processors/removeParameters.test.d.ts +1 -0
  116. package/dist/lib/plugins/openapi/post-processors/removeParameters.test.js +131 -0
  117. package/dist/lib/plugins/openapi/post-processors/removeParameters.test.js.map +1 -0
  118. package/dist/lib/plugins/openapi/schema/SchemaComponents.js +1 -1
  119. package/dist/lib/plugins/openapi/schema/SchemaComponents.js.map +1 -1
  120. package/dist/lib/ui/Command.d.ts +9 -1
  121. package/dist/lib/ui/Command.js +5 -1
  122. package/dist/lib/ui/Command.js.map +1 -1
  123. package/dist/lib/ui/Select.js +2 -2
  124. package/dist/lib/ui/Select.js.map +1 -1
  125. package/dist/lib/util/MdxComponents.js +2 -2
  126. package/dist/lib/util/MdxComponents.js.map +1 -1
  127. package/dist/lib/util/joinUrl.d.ts +1 -0
  128. package/dist/lib/util/joinUrl.js +40 -0
  129. package/dist/lib/util/joinUrl.js.map +1 -0
  130. package/dist/lib/util/useScrollToAnchor.d.ts +1 -0
  131. package/dist/lib/util/useScrollToAnchor.js +26 -15
  132. package/dist/lib/util/useScrollToAnchor.js.map +1 -1
  133. package/dist/vite/build.js +10 -10
  134. package/dist/vite/build.js.map +1 -1
  135. package/dist/vite/config.js +4 -1
  136. package/dist/vite/config.js.map +1 -1
  137. package/dist/vite/dev-server.js +4 -1
  138. package/dist/vite/dev-server.js.map +1 -1
  139. package/dist/vite/plugin-api.d.ts +1 -1
  140. package/dist/vite/plugin-api.js +31 -7
  141. package/dist/vite/plugin-api.js.map +1 -1
  142. package/dist/vite/plugin-auth.js +4 -1
  143. package/dist/vite/plugin-auth.js.map +1 -1
  144. package/dist/vite/plugin-mdx.js +9 -4
  145. package/dist/vite/plugin-mdx.js.map +1 -1
  146. package/dist/vite/prerender.d.ts +2 -2
  147. package/dist/vite/prerender.js +5 -4
  148. package/dist/vite/prerender.js.map +1 -1
  149. package/dist/zuplo/enrich-with-zuplo.d.ts +5 -0
  150. package/dist/zuplo/enrich-with-zuplo.js +184 -0
  151. package/dist/zuplo/enrich-with-zuplo.js.map +1 -0
  152. package/dist/zuplo/env.d.ts +1 -0
  153. package/dist/zuplo/env.js +3 -0
  154. package/dist/zuplo/env.js.map +1 -1
  155. package/dist/zuplo/policy-types.d.ts +33 -0
  156. package/dist/zuplo/policy-types.js +8 -0
  157. package/dist/zuplo/policy-types.js.map +1 -0
  158. package/dist/zuplo/with-zuplo-processors.d.ts +3 -0
  159. package/dist/zuplo/with-zuplo-processors.js +26 -0
  160. package/dist/zuplo/with-zuplo-processors.js.map +1 -0
  161. package/dist/zuplo/with-zuplo.d.ts +1 -1
  162. package/dist/zuplo/with-zuplo.js +7 -26
  163. package/dist/zuplo/with-zuplo.js.map +1 -1
  164. package/lib/{AuthenticationPlugin-DNXBcsVN.js → AuthenticationPlugin-CO_YCd2x.js} +3 -3
  165. package/lib/{AuthenticationPlugin-DNXBcsVN.js.map → AuthenticationPlugin-CO_YCd2x.js.map} +1 -1
  166. package/lib/{Markdown-BrfrjEk_.js → Markdown-B8o9Qz4q.js} +1197 -1186
  167. package/lib/{Markdown-BrfrjEk_.js.map → Markdown-B8o9Qz4q.js.map} +1 -1
  168. package/lib/{MdxPage-LNZLj_A5.js → MdxPage-BxRt3Ly7.js} +63 -58
  169. package/lib/MdxPage-BxRt3Ly7.js.map +1 -0
  170. package/lib/OperationList-DH-zIgtq.js +5160 -0
  171. package/lib/OperationList-DH-zIgtq.js.map +1 -0
  172. package/lib/{Route-Pzk6qwIk.js → Route-DJ0ZlVq1.js} +3 -3
  173. package/lib/{Route-Pzk6qwIk.js.map → Route-DJ0ZlVq1.js.map} +1 -1
  174. package/lib/{Select-DkOpAG0c.js → Select-B7UXR0SB.js} +61 -61
  175. package/lib/Select-B7UXR0SB.js.map +1 -0
  176. package/lib/{SlotletProvider-DPbx9KdU.js → SlotletProvider-CtIp8rP3.js} +4 -4
  177. package/lib/{SlotletProvider-DPbx9KdU.js.map → SlotletProvider-CtIp8rP3.js.map} +1 -1
  178. package/lib/{Button-oroWHXAy.js → Spinner-BlzrEEk1.js} +15 -12
  179. package/lib/Spinner-BlzrEEk1.js.map +1 -0
  180. package/lib/{SyntaxHighlight-CJCSPG1F.js → SyntaxHighlight-C1w1QPdY.js} +300 -295
  181. package/lib/{SyntaxHighlight-CJCSPG1F.js.map → SyntaxHighlight-C1w1QPdY.js.map} +1 -1
  182. package/lib/{ZudokuContext-D3ayHjP-.js → ZudokuContext-8jts0fF3.js} +259 -248
  183. package/lib/ZudokuContext-8jts0fF3.js.map +1 -0
  184. package/lib/{chunk-SYFQ2XB5-KWlHsT7t.js → chunk-SYFQ2XB5-BPvC-soB.js} +6 -5
  185. package/lib/{chunk-SYFQ2XB5-KWlHsT7t.js.map → chunk-SYFQ2XB5-BPvC-soB.js.map} +1 -1
  186. package/lib/circular-Dgpd6AN-.js +15397 -0
  187. package/lib/circular-Dgpd6AN-.js.map +1 -0
  188. package/lib/{createServer-BcaswoFO.js → createServer-BV0tHzLK.js} +3450 -5577
  189. package/lib/createServer-BV0tHzLK.js.map +1 -0
  190. package/lib/{hook-DUyACbIK.js → hook-BG02esyv.js} +2 -2
  191. package/lib/{hook-DUyACbIK.js.map → hook-BG02esyv.js.map} +1 -1
  192. package/lib/index-B7mqiOei.js +509 -0
  193. package/lib/index-B7mqiOei.js.map +1 -0
  194. package/lib/index-DmqsUPcm.js +1915 -0
  195. package/lib/index-DmqsUPcm.js.map +1 -0
  196. package/lib/joinUrl-BTy9bvoK.js +20 -0
  197. package/lib/joinUrl-BTy9bvoK.js.map +1 -0
  198. package/lib/post-processors/removeExtensions.js +7 -7
  199. package/lib/post-processors/removeExtensions.js.map +1 -1
  200. package/lib/post-processors/removeParameters.js +48 -0
  201. package/lib/post-processors/removeParameters.js.map +1 -0
  202. package/lib/ui/ActionButton.js +10 -11
  203. package/lib/ui/ActionButton.js.map +1 -1
  204. package/lib/ui/Command.js +125 -13
  205. package/lib/ui/Command.js.map +1 -1
  206. package/lib/ui/Select.js +2 -2
  207. package/lib/ui/Select.js.map +1 -1
  208. package/lib/{useExposedProps-BBHR7aLM.js → useExposedProps-BLKFBylA.js} +2 -2
  209. package/lib/{useExposedProps-BBHR7aLM.js.map → useExposedProps-BLKFBylA.js.map} +1 -1
  210. package/lib/useScrollToAnchor-Bl6mz9_x.js +288 -0
  211. package/lib/useScrollToAnchor-Bl6mz9_x.js.map +1 -0
  212. package/lib/zudoku.auth-auth0.js +7 -9
  213. package/lib/zudoku.auth-auth0.js.map +1 -1
  214. package/lib/zudoku.auth-clerk.js +1 -1
  215. package/lib/zudoku.auth-openid.js +223 -219
  216. package/lib/zudoku.auth-openid.js.map +1 -1
  217. package/lib/zudoku.components.js +754 -992
  218. package/lib/zudoku.components.js.map +1 -1
  219. package/lib/zudoku.plugin-api-catalog.js +3 -3
  220. package/lib/zudoku.plugin-api-keys.js +5 -5
  221. package/lib/zudoku.plugin-custom-pages.js +2 -2
  222. package/lib/zudoku.plugin-markdown.js +1 -1
  223. package/lib/zudoku.plugin-openapi.js +4 -4
  224. package/lib/zudoku.plugin-redirect.js +1 -1
  225. package/package.json +2 -2
  226. package/src/app/main.css +50 -50
  227. package/src/app/main.tsx +26 -7
  228. package/src/lib/authentication/providers/auth0.tsx +1 -4
  229. package/src/lib/authentication/providers/openid.tsx +12 -5
  230. package/src/lib/components/AnchorLink.tsx +5 -2
  231. package/src/lib/components/Autocomplete.tsx +111 -0
  232. package/src/lib/components/Header.tsx +4 -4
  233. package/src/lib/components/Markdown.tsx +14 -15
  234. package/src/lib/components/StatusPage.tsx +91 -0
  235. package/src/lib/components/SyntaxHighlight.tsx +14 -0
  236. package/src/lib/components/ThemeSwitch.tsx +14 -15
  237. package/src/lib/components/cache.ts +15 -0
  238. package/src/lib/components/context/ViewportAnchorContext.tsx +20 -6
  239. package/src/lib/components/context/ZudokuContext.ts +3 -1
  240. package/src/lib/components/index.ts +9 -2
  241. package/src/lib/core/RouteGuard.tsx +35 -0
  242. package/src/lib/core/ZudokuContext.ts +9 -8
  243. package/src/lib/oas/graphql/circular.ts +29 -0
  244. package/src/lib/oas/graphql/index.ts +9 -9
  245. package/src/lib/oas/parser/dereference/index.ts +1 -2
  246. package/src/lib/plugins/markdown/MdxPage.tsx +9 -1
  247. package/src/lib/plugins/openapi/OperationListItem.tsx +0 -2
  248. package/src/lib/plugins/openapi/ParameterListItem.tsx +1 -0
  249. package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +5 -0
  250. package/src/lib/plugins/openapi/Sidecar.tsx +4 -2
  251. package/src/lib/plugins/openapi/index.tsx +9 -15
  252. package/src/lib/plugins/openapi/interfaces.ts +10 -2
  253. package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +54 -0
  254. package/src/lib/plugins/openapi/playground/Headers.tsx +136 -39
  255. package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +8 -0
  256. package/src/lib/plugins/openapi/playground/PathParams.tsx +34 -74
  257. package/src/lib/plugins/openapi/playground/Playground.tsx +219 -177
  258. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +1 -1
  259. package/src/lib/plugins/openapi/playground/QueryParams.tsx +90 -122
  260. package/src/lib/plugins/openapi/playground/SubmitButton.tsx +75 -0
  261. package/src/lib/plugins/openapi/playground/result-panel/RequestTab.tsx +73 -0
  262. package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +210 -0
  263. package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +101 -0
  264. package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.test.ts +64 -0
  265. package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.ts +36 -0
  266. package/src/lib/plugins/openapi/post-processors/removeExtensions.test.ts +58 -0
  267. package/src/lib/plugins/openapi/post-processors/removeExtensions.ts +7 -4
  268. package/src/lib/plugins/openapi/post-processors/removeParameters.test.ts +148 -0
  269. package/src/lib/plugins/openapi/post-processors/removeParameters.ts +101 -0
  270. package/src/lib/plugins/openapi/schema/SchemaComponents.tsx +1 -1
  271. package/src/lib/ui/Command.tsx +20 -0
  272. package/src/lib/ui/Select.tsx +1 -1
  273. package/src/lib/util/MdxComponents.tsx +2 -1
  274. package/src/lib/util/joinUrl.ts +57 -0
  275. package/src/lib/util/useScrollToAnchor.ts +32 -15
  276. package/dist/lib/plugins/openapi/playground/EnumSelector.d.ts +0 -8
  277. package/dist/lib/plugins/openapi/playground/EnumSelector.js +0 -21
  278. package/dist/lib/plugins/openapi/playground/EnumSelector.js.map +0 -1
  279. package/dist/lib/plugins/openapi/playground/ResponseTab.d.ts +0 -4
  280. package/dist/lib/plugins/openapi/playground/ResponseTab.js +0 -42
  281. package/dist/lib/plugins/openapi/playground/ResponseTab.js.map +0 -1
  282. package/lib/AnchorLink-_Vu02ceN.js +0 -34
  283. package/lib/AnchorLink-_Vu02ceN.js.map +0 -1
  284. package/lib/Button-oroWHXAy.js.map +0 -1
  285. package/lib/Command-D5DE0DD7.js +0 -611
  286. package/lib/Command-D5DE0DD7.js.map +0 -1
  287. package/lib/MdxPage-LNZLj_A5.js.map +0 -1
  288. package/lib/OperationList-PCwzTp1r.js +0 -5144
  289. package/lib/OperationList-PCwzTp1r.js.map +0 -1
  290. package/lib/Select-DkOpAG0c.js.map +0 -1
  291. package/lib/Spinner-C5gHXrVz.js +0 -7
  292. package/lib/Spinner-C5gHXrVz.js.map +0 -1
  293. package/lib/ZudokuContext-D3ayHjP-.js.map +0 -1
  294. package/lib/createServer-BcaswoFO.js.map +0 -1
  295. package/lib/index-CaILD1AV.js +0 -1292
  296. package/lib/index-CaILD1AV.js.map +0 -1
  297. package/lib/index-TaRXY2w1.js +0 -43
  298. package/lib/index-TaRXY2w1.js.map +0 -1
  299. package/src/lib/plugins/openapi/playground/EnumSelector.tsx +0 -86
  300. package/src/lib/plugins/openapi/playground/ResponseTab.tsx +0 -76
@@ -1 +0,0 @@
1
- {"version":3,"file":"Command-D5DE0DD7.js","sources":["../src/lib/ui/Dialog.tsx","../../../node_modules/.pnpm/cmdk@1.0.4_@types+react-dom@19.0.3_@types+react@19.0.7__@types+react@19.0.7_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/cmdk/dist/chunk-NZJY6EH4.mjs","../../../node_modules/.pnpm/use-sync-external-store@1.2.2_react@19.0.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../../../node_modules/.pnpm/use-sync-external-store@1.2.2_react@19.0.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js","../../../node_modules/.pnpm/use-sync-external-store@1.2.2_react@19.0.0/node_modules/use-sync-external-store/shim/index.js","../../../node_modules/.pnpm/cmdk@1.0.4_@types+react-dom@19.0.3_@types+react@19.0.7__@types+react@19.0.7_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/cmdk/dist/index.mjs","../src/lib/ui/Command.tsx"],"sourcesContent":["import * as DialogPrimitive from \"@radix-ui/react-dialog\";\nimport { X } from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { cn } from \"../util/cn.js\";\n\nconst Dialog = DialogPrimitive.Root;\n\nconst DialogTrigger = DialogPrimitive.Trigger;\n\nconst DialogPortal = DialogPrimitive.Portal;\n\nconst DialogClose = DialogPrimitive.Close;\n\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Overlay\n ref={ref}\n className={cn(\n \"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n className,\n )}\n {...props}\n />\n));\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName;\n\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>\n>(({ className, children, ...props }, ref) => (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\n className={cn(\n \"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg\",\n className,\n )}\n {...props}\n >\n {children}\n <DialogPrimitive.Close className=\"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\">\n <X className=\"h-4 w-4\" />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n </DialogPrimitive.Content>\n </DialogPortal>\n));\nDialogContent.displayName = DialogPrimitive.Content.displayName;\n\nconst DialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"flex flex-col space-y-1.5 text-center sm:text-left\",\n className,\n )}\n {...props}\n />\n);\nDialogHeader.displayName = \"DialogHeader\";\n\nconst DialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2\",\n className,\n )}\n {...props}\n />\n);\nDialogFooter.displayName = \"DialogFooter\";\n\nconst DialogTitle = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Title\n ref={ref}\n className={cn(\n \"text-lg font-semibold leading-none tracking-tight\",\n className,\n )}\n {...props}\n />\n));\nDialogTitle.displayName = DialogPrimitive.Title.displayName;\n\nconst DialogDescription = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Description\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nDialogDescription.displayName = DialogPrimitive.Description.displayName;\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n","var U=1,Y=.9,H=.8,J=.17,p=.1,u=.999,$=.9999;var k=.99,m=/[\\\\\\/_+.#\"@\\[\\(\\{&]/,B=/[\\\\\\/_+.#\"@\\[\\(\\{&]/g,K=/[\\s-]/,X=/[\\s-]/g;function G(_,C,h,P,A,f,O){if(f===C.length)return A===_.length?U:k;var T=`${A},${f}`;if(O[T]!==void 0)return O[T];for(var L=P.charAt(f),c=h.indexOf(L,A),S=0,E,N,R,M;c>=0;)E=G(_,C,h,P,c+1,f+1,O),E>S&&(c===A?E*=U:m.test(_.charAt(c-1))?(E*=H,R=_.slice(A,c-1).match(B),R&&A>0&&(E*=Math.pow(u,R.length))):K.test(_.charAt(c-1))?(E*=Y,M=_.slice(A,c-1).match(X),M&&A>0&&(E*=Math.pow(u,M.length))):(E*=J,A>0&&(E*=Math.pow(u,c-A))),_.charAt(c)!==C.charAt(f)&&(E*=$)),(E<p&&h.charAt(c-1)===P.charAt(f+1)||P.charAt(f+1)===P.charAt(f)&&h.charAt(c-1)!==P.charAt(f))&&(N=G(_,C,h,P,c+1,f+2,O),N*p>E&&(E=N*p)),E>S&&(S=E),c=h.indexOf(L,c+1);return O[T]=S,S}function D(_){return _.toLowerCase().replace(X,\" \")}function W(_,C,h){return _=h&&h.length>0?`${_+\" \"+h.join(\" \")}`:_,G(_,C,D(_),D(C),0,0,{})}export{W as a};\n","/**\n * @license React\n * use-sync-external-store-shim.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var e=require(\"react\");function h(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var k=\"function\"===typeof Object.is?Object.is:h,l=e.useState,m=e.useEffect,n=e.useLayoutEffect,p=e.useDebugValue;function q(a,b){var d=b(),f=l({inst:{value:d,getSnapshot:b}}),c=f[0].inst,g=f[1];n(function(){c.value=d;c.getSnapshot=b;r(c)&&g({inst:c})},[a,d,b]);m(function(){r(c)&&g({inst:c});return a(function(){r(c)&&g({inst:c})})},[a]);p(d);return d}\nfunction r(a){var b=a.getSnapshot;a=a.value;try{var d=b();return!k(a,d)}catch(f){return!0}}function t(a,b){return b()}var u=\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement?t:q;exports.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:u;\n","/**\n * @license React\n * use-sync-external-store-shim.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n\n 'use strict';\n\n/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());\n}\n var React = require('react');\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n {\n {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n printWarning('error', format, args);\n }\n }\n}\n\nfunction printWarning(level, format, args) {\n // When changing this logic, you might want to also\n // update consoleWithStackDev.www.js as well.\n {\n var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n if (stack !== '') {\n format += '%s';\n args = args.concat([stack]);\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n var argsWithFormat = args.map(function (item) {\n return String(item);\n }); // Careful: RN currently depends on this prefix\n\n argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n // breaks IE9: https://github.com/facebook/react/issues/13610\n // eslint-disable-next-line react-internal/no-production-logging\n\n Function.prototype.apply.call(console[level], console, argsWithFormat);\n }\n}\n\n/**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\nfunction is(x, y) {\n return x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y // eslint-disable-line no-self-compare\n ;\n}\n\nvar objectIs = typeof Object.is === 'function' ? Object.is : is;\n\n// dispatch for CommonJS interop named imports.\n\nvar useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nvar didWarnOld18Alpha = false;\nvar didWarnUncachedGetSnapshot = false; // Disclaimer: This shim breaks many of the rules of React, and only works\n// because of a very particular set of implementation details and assumptions\n// -- change any one of them and it will break. The most important assumption\n// is that updates are always synchronous, because concurrent rendering is\n// only available in versions of React that also have a built-in\n// useSyncExternalStore API. And we only use this shim when the built-in API\n// does not exist.\n//\n// Do not assume that the clever hacks used by this hook also work in general.\n// The point of this shim is to replace the need for hacks by other libraries.\n\nfunction useSyncExternalStore(subscribe, getSnapshot, // Note: The shim does not use getServerSnapshot, because pre-18 versions of\n// React do not expose a way to check if we're hydrating. So users of the shim\n// will need to track that themselves and return the correct value\n// from `getSnapshot`.\ngetServerSnapshot) {\n {\n if (!didWarnOld18Alpha) {\n if (React.startTransition !== undefined) {\n didWarnOld18Alpha = true;\n\n error('You are using an outdated, pre-release alpha of React 18 that ' + 'does not support useSyncExternalStore. The ' + 'use-sync-external-store shim will not work correctly. Upgrade ' + 'to a newer pre-release.');\n }\n }\n } // Read the current snapshot from the store on every render. Again, this\n // breaks the rules of React, and only works here because of specific\n // implementation details, most importantly that updates are\n // always synchronous.\n\n\n var value = getSnapshot();\n\n {\n if (!didWarnUncachedGetSnapshot) {\n var cachedValue = getSnapshot();\n\n if (!objectIs(value, cachedValue)) {\n error('The result of getSnapshot should be cached to avoid an infinite loop');\n\n didWarnUncachedGetSnapshot = true;\n }\n }\n } // Because updates are synchronous, we don't queue them. Instead we force a\n // re-render whenever the subscribed state changes by updating an some\n // arbitrary useState hook. Then, during render, we call getSnapshot to read\n // the current value.\n //\n // Because we don't actually use the state returned by the useState hook, we\n // can save a bit of memory by storing other stuff in that slot.\n //\n // To implement the early bailout, we need to track some things on a mutable\n // object. Usually, we would put that in a useRef hook, but we can stash it in\n // our useState hook instead.\n //\n // To force a re-render, we call forceUpdate({inst}). That works because the\n // new object always fails an equality check.\n\n\n var _useState = useState({\n inst: {\n value: value,\n getSnapshot: getSnapshot\n }\n }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1]; // Track the latest getSnapshot function with a ref. This needs to be updated\n // in the layout phase so we can access it during the tearing check that\n // happens on subscribe.\n\n\n useLayoutEffect(function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot; // Whenever getSnapshot or subscribe changes, we need to check in the\n // commit phase if there was an interleaved mutation. In concurrent mode\n // this can happen all the time, but even in synchronous mode, an earlier\n // effect may have mutated the store.\n\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n }, [subscribe, value, getSnapshot]);\n useEffect(function () {\n // Check for changes right before subscribing. Subsequent changes will be\n // detected in the subscription handler.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n\n var handleStoreChange = function () {\n // TODO: Because there is no cross-renderer API for batching updates, it's\n // up to the consumer of this library to wrap their subscription event\n // with unstable_batchedUpdates. Should we try to detect when this isn't\n // the case and print a warning in development?\n // The store changed. Check if the snapshot changed since the last time we\n // read from the store.\n if (checkIfSnapshotChanged(inst)) {\n // Force a re-render.\n forceUpdate({\n inst: inst\n });\n }\n }; // Subscribe to the store and return a clean-up function.\n\n\n return subscribe(handleStoreChange);\n }, [subscribe]);\n useDebugValue(value);\n return value;\n}\n\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n var prevValue = inst.value;\n\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(prevValue, nextValue);\n } catch (error) {\n return true;\n }\n}\n\nfunction useSyncExternalStore$1(subscribe, getSnapshot, getServerSnapshot) {\n // Note: The shim does not use getServerSnapshot, because pre-18 versions of\n // React do not expose a way to check if we're hydrating. So users of the shim\n // will need to track that themselves and return the correct value\n // from `getSnapshot`.\n return getSnapshot();\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined');\n\nvar isServerEnvironment = !canUseDOM;\n\nvar shim = isServerEnvironment ? useSyncExternalStore$1 : useSyncExternalStore;\nvar useSyncExternalStore$2 = React.useSyncExternalStore !== undefined ? React.useSyncExternalStore : shim;\n\nexports.useSyncExternalStore = useSyncExternalStore$2;\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());\n}\n \n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.min.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","\"use client\";import{a as ce}from\"./chunk-NZJY6EH4.mjs\";import*as w from\"@radix-ui/react-dialog\";import*as n from\"react\";import{Primitive as D}from\"@radix-ui/react-primitive\";import{useId as L}from\"@radix-ui/react-id\";import{useSyncExternalStore as Re}from\"use-sync-external-store/shim/index.js\";var N='[cmdk-group=\"\"]',Q='[cmdk-group-items=\"\"]',be='[cmdk-group-heading=\"\"]',Z='[cmdk-item=\"\"]',le=`${Z}:not([aria-disabled=\"true\"])`,Y=\"cmdk-item-select\",I=\"data-value\",he=(r,o,t)=>ce(r,o,t),ue=n.createContext(void 0),K=()=>n.useContext(ue),de=n.createContext(void 0),ee=()=>n.useContext(de),fe=n.createContext(void 0);var me=n.forwardRef((r,o)=>{let t=k(()=>{var e,s;return{search:\"\",value:(s=(e=r.value)!=null?e:r.defaultValue)!=null?s:\"\",filtered:{count:0,items:new Map,groups:new Set}}}),u=k(()=>new Set),c=k(()=>new Map),d=k(()=>new Map),f=k(()=>new Set),p=pe(r),{label:v,children:b,value:l,onValueChange:y,filter:E,shouldFilter:C,loop:H,disablePointerSelection:ge=!1,vimBindings:$=!0,...O}=r,te=L(),B=L(),F=L(),x=n.useRef(null),R=Te();M(()=>{if(l!==void 0){let e=l.trim();t.current.value=e,h.emit()}},[l]),M(()=>{R(6,re)},[]);let h=n.useMemo(()=>({subscribe:e=>(f.current.add(e),()=>f.current.delete(e)),snapshot:()=>t.current,setState:(e,s,i)=>{var a,m,g;if(!Object.is(t.current[e],s)){if(t.current[e]=s,e===\"search\")W(),U(),R(1,z);else if(e===\"value\"&&(i||R(5,re),((a=p.current)==null?void 0:a.value)!==void 0)){let S=s!=null?s:\"\";(g=(m=p.current).onValueChange)==null||g.call(m,S);return}h.emit()}},emit:()=>{f.current.forEach(e=>e())}}),[]),q=n.useMemo(()=>({value:(e,s,i)=>{var a;s!==((a=d.current.get(e))==null?void 0:a.value)&&(d.current.set(e,{value:s,keywords:i}),t.current.filtered.items.set(e,ne(s,i)),R(2,()=>{U(),h.emit()}))},item:(e,s)=>(u.current.add(e),s&&(c.current.has(s)?c.current.get(s).add(e):c.current.set(s,new Set([e]))),R(3,()=>{W(),U(),t.current.value||z(),h.emit()}),()=>{d.current.delete(e),u.current.delete(e),t.current.filtered.items.delete(e);let i=A();R(4,()=>{W(),(i==null?void 0:i.getAttribute(\"id\"))===e&&z(),h.emit()})}),group:e=>(c.current.has(e)||c.current.set(e,new Set),()=>{d.current.delete(e),c.current.delete(e)}),filter:()=>p.current.shouldFilter,label:v||r[\"aria-label\"],getDisablePointerSelection:()=>p.current.disablePointerSelection,listId:te,inputId:F,labelId:B,listInnerRef:x}),[]);function ne(e,s){var a,m;let i=(m=(a=p.current)==null?void 0:a.filter)!=null?m:he;return e?i(e,t.current.search,s):0}function U(){if(!t.current.search||p.current.shouldFilter===!1)return;let e=t.current.filtered.items,s=[];t.current.filtered.groups.forEach(a=>{let m=c.current.get(a),g=0;m.forEach(S=>{let P=e.get(S);g=Math.max(P,g)}),s.push([a,g])});let i=x.current;_().sort((a,m)=>{var P,V;let g=a.getAttribute(\"id\"),S=m.getAttribute(\"id\");return((P=e.get(S))!=null?P:0)-((V=e.get(g))!=null?V:0)}).forEach(a=>{let m=a.closest(Q);m?m.appendChild(a.parentElement===m?a:a.closest(`${Q} > *`)):i.appendChild(a.parentElement===i?a:a.closest(`${Q} > *`))}),s.sort((a,m)=>m[1]-a[1]).forEach(a=>{var g;let m=(g=x.current)==null?void 0:g.querySelector(`${N}[${I}=\"${encodeURIComponent(a[0])}\"]`);m==null||m.parentElement.appendChild(m)})}function z(){let e=_().find(i=>i.getAttribute(\"aria-disabled\")!==\"true\"),s=e==null?void 0:e.getAttribute(I);h.setState(\"value\",s||void 0)}function W(){var s,i,a,m;if(!t.current.search||p.current.shouldFilter===!1){t.current.filtered.count=u.current.size;return}t.current.filtered.groups=new Set;let e=0;for(let g of u.current){let S=(i=(s=d.current.get(g))==null?void 0:s.value)!=null?i:\"\",P=(m=(a=d.current.get(g))==null?void 0:a.keywords)!=null?m:[],V=ne(S,P);t.current.filtered.items.set(g,V),V>0&&e++}for(let[g,S]of c.current)for(let P of S)if(t.current.filtered.items.get(P)>0){t.current.filtered.groups.add(g);break}t.current.filtered.count=e}function re(){var s,i,a;let e=A();e&&(((s=e.parentElement)==null?void 0:s.firstChild)===e&&((a=(i=e.closest(N))==null?void 0:i.querySelector(be))==null||a.scrollIntoView({block:\"nearest\"})),e.scrollIntoView({block:\"nearest\"}))}function A(){var e;return(e=x.current)==null?void 0:e.querySelector(`${Z}[aria-selected=\"true\"]`)}function _(){var e;return Array.from(((e=x.current)==null?void 0:e.querySelectorAll(le))||[])}function J(e){let i=_()[e];i&&h.setState(\"value\",i.getAttribute(I))}function X(e){var g;let s=A(),i=_(),a=i.findIndex(S=>S===s),m=i[a+e];(g=p.current)!=null&&g.loop&&(m=a+e<0?i[i.length-1]:a+e===i.length?i[0]:i[a+e]),m&&h.setState(\"value\",m.getAttribute(I))}function oe(e){let s=A(),i=s==null?void 0:s.closest(N),a;for(;i&&!a;)i=e>0?Ie(i,N):Me(i,N),a=i==null?void 0:i.querySelector(le);a?h.setState(\"value\",a.getAttribute(I)):X(e)}let ie=()=>J(_().length-1),ae=e=>{e.preventDefault(),e.metaKey?ie():e.altKey?oe(1):X(1)},se=e=>{e.preventDefault(),e.metaKey?J(0):e.altKey?oe(-1):X(-1)};return n.createElement(D.div,{ref:o,tabIndex:-1,...O,\"cmdk-root\":\"\",onKeyDown:e=>{var s;if((s=O.onKeyDown)==null||s.call(O,e),!e.defaultPrevented)switch(e.key){case\"n\":case\"j\":{$&&e.ctrlKey&&ae(e);break}case\"ArrowDown\":{ae(e);break}case\"p\":case\"k\":{$&&e.ctrlKey&&se(e);break}case\"ArrowUp\":{se(e);break}case\"Home\":{e.preventDefault(),J(0);break}case\"End\":{e.preventDefault(),ie();break}case\"Enter\":if(!e.nativeEvent.isComposing&&e.keyCode!==229){e.preventDefault();let i=A();if(i){let a=new Event(Y);i.dispatchEvent(a)}}}}},n.createElement(\"label\",{\"cmdk-label\":\"\",htmlFor:q.inputId,id:q.labelId,style:Le},v),j(r,e=>n.createElement(de.Provider,{value:h},n.createElement(ue.Provider,{value:q},e))))}),ye=n.forwardRef((r,o)=>{var F,x;let t=L(),u=n.useRef(null),c=n.useContext(fe),d=K(),f=pe(r),p=(x=(F=f.current)==null?void 0:F.forceMount)!=null?x:c==null?void 0:c.forceMount;M(()=>{if(!p)return d.item(t,c==null?void 0:c.id)},[p]);let v=ve(t,u,[r.value,r.children,u],r.keywords),b=ee(),l=T(R=>R.value&&R.value===v.current),y=T(R=>p||d.filter()===!1?!0:R.search?R.filtered.items.get(t)>0:!0);n.useEffect(()=>{let R=u.current;if(!(!R||r.disabled))return R.addEventListener(Y,E),()=>R.removeEventListener(Y,E)},[y,r.onSelect,r.disabled]);function E(){var R,h;C(),(h=(R=f.current).onSelect)==null||h.call(R,v.current)}function C(){b.setState(\"value\",v.current,!0)}if(!y)return null;let{disabled:H,value:ge,onSelect:$,forceMount:O,keywords:te,...B}=r;return n.createElement(D.div,{ref:G([u,o]),...B,id:t,\"cmdk-item\":\"\",role:\"option\",\"aria-disabled\":!!H,\"aria-selected\":!!l,\"data-disabled\":!!H,\"data-selected\":!!l,onPointerMove:H||d.getDisablePointerSelection()?void 0:C,onClick:H?void 0:E},r.children)}),Se=n.forwardRef((r,o)=>{let{heading:t,children:u,forceMount:c,...d}=r,f=L(),p=n.useRef(null),v=n.useRef(null),b=L(),l=K(),y=T(C=>c||l.filter()===!1?!0:C.search?C.filtered.groups.has(f):!0);M(()=>l.group(f),[]),ve(f,p,[r.value,r.heading,v]);let E=n.useMemo(()=>({id:f,forceMount:c}),[c]);return n.createElement(D.div,{ref:G([p,o]),...d,\"cmdk-group\":\"\",role:\"presentation\",hidden:y?void 0:!0},t&&n.createElement(\"div\",{ref:v,\"cmdk-group-heading\":\"\",\"aria-hidden\":!0,id:b},t),j(r,C=>n.createElement(\"div\",{\"cmdk-group-items\":\"\",role:\"group\",\"aria-labelledby\":t?b:void 0},n.createElement(fe.Provider,{value:E},C))))}),Ee=n.forwardRef((r,o)=>{let{alwaysRender:t,...u}=r,c=n.useRef(null),d=T(f=>!f.search);return!t&&!d?null:n.createElement(D.div,{ref:G([c,o]),...u,\"cmdk-separator\":\"\",role:\"separator\"})}),Ce=n.forwardRef((r,o)=>{let{onValueChange:t,...u}=r,c=r.value!=null,d=ee(),f=T(l=>l.search),p=T(l=>l.value),v=K(),b=n.useMemo(()=>{var y;let l=(y=v.listInnerRef.current)==null?void 0:y.querySelector(`${Z}[${I}=\"${encodeURIComponent(p)}\"]`);return l==null?void 0:l.getAttribute(\"id\")},[]);return n.useEffect(()=>{r.value!=null&&d.setState(\"search\",r.value)},[r.value]),n.createElement(D.input,{ref:o,...u,\"cmdk-input\":\"\",autoComplete:\"off\",autoCorrect:\"off\",spellCheck:!1,\"aria-autocomplete\":\"list\",role:\"combobox\",\"aria-expanded\":!0,\"aria-controls\":v.listId,\"aria-labelledby\":v.labelId,\"aria-activedescendant\":b,id:v.inputId,type:\"text\",value:c?r.value:f,onChange:l=>{c||d.setState(\"search\",l.target.value),t==null||t(l.target.value)}})}),xe=n.forwardRef((r,o)=>{let{children:t,label:u=\"Suggestions\",...c}=r,d=n.useRef(null),f=n.useRef(null),p=K();return n.useEffect(()=>{if(f.current&&d.current){let v=f.current,b=d.current,l,y=new ResizeObserver(()=>{l=requestAnimationFrame(()=>{let E=v.offsetHeight;b.style.setProperty(\"--cmdk-list-height\",E.toFixed(1)+\"px\")})});return y.observe(v),()=>{cancelAnimationFrame(l),y.unobserve(v)}}},[]),n.createElement(D.div,{ref:G([d,o]),...c,\"cmdk-list\":\"\",role:\"listbox\",\"aria-label\":u,id:p.listId},j(r,v=>n.createElement(\"div\",{ref:G([f,p.listInnerRef]),\"cmdk-list-sizer\":\"\"},v)))}),Pe=n.forwardRef((r,o)=>{let{open:t,onOpenChange:u,overlayClassName:c,contentClassName:d,container:f,...p}=r;return n.createElement(w.Root,{open:t,onOpenChange:u},n.createElement(w.Portal,{container:f},n.createElement(w.Overlay,{\"cmdk-overlay\":\"\",className:c}),n.createElement(w.Content,{\"aria-label\":r.label,\"cmdk-dialog\":\"\",className:d},n.createElement(me,{ref:o,...p}))))}),we=n.forwardRef((r,o)=>T(u=>u.filtered.count===0)?n.createElement(D.div,{ref:o,...r,\"cmdk-empty\":\"\",role:\"presentation\"}):null),De=n.forwardRef((r,o)=>{let{progress:t,children:u,label:c=\"Loading...\",...d}=r;return n.createElement(D.div,{ref:o,...d,\"cmdk-loading\":\"\",role:\"progressbar\",\"aria-valuenow\":t,\"aria-valuemin\":0,\"aria-valuemax\":100,\"aria-label\":c},j(r,f=>n.createElement(\"div\",{\"aria-hidden\":!0},f)))}),Ve=Object.assign(me,{List:xe,Item:ye,Input:Ce,Group:Se,Separator:Ee,Dialog:Pe,Empty:we,Loading:De});function Ie(r,o){let t=r.nextElementSibling;for(;t;){if(t.matches(o))return t;t=t.nextElementSibling}}function Me(r,o){let t=r.previousElementSibling;for(;t;){if(t.matches(o))return t;t=t.previousElementSibling}}function pe(r){let o=n.useRef(r);return M(()=>{o.current=r}),o}var M=typeof window==\"undefined\"?n.useEffect:n.useLayoutEffect;function k(r){let o=n.useRef();return o.current===void 0&&(o.current=r()),o}function G(r){return o=>{r.forEach(t=>{typeof t==\"function\"?t(o):t!=null&&(t.current=o)})}}function T(r){let o=ee(),t=()=>r(o.snapshot());return Re(o.subscribe,t,t)}function ve(r,o,t,u=[]){let c=n.useRef(),d=K();return M(()=>{var v;let f=(()=>{var b;for(let l of t){if(typeof l==\"string\")return l.trim();if(typeof l==\"object\"&&\"current\"in l)return l.current?(b=l.current.textContent)==null?void 0:b.trim():c.current}})(),p=u.map(b=>b.trim());d.value(r,f,p),(v=o.current)==null||v.setAttribute(I,f),c.current=f}),c}var Te=()=>{let[r,o]=n.useState(),t=k(()=>new Map);return M(()=>{t.current.forEach(u=>u()),t.current=new Map},[r]),(u,c)=>{t.current.set(u,c),o({})}};function ke(r){let o=r.type;return typeof o==\"function\"?o(r.props):\"render\"in o?o.render(r.props):r}function j({asChild:r,children:o},t){return r&&n.isValidElement(o)?n.cloneElement(ke(o),{ref:o.ref},t(o.props.children)):t(o)}var Le={position:\"absolute\",width:\"1px\",height:\"1px\",padding:\"0\",margin:\"-1px\",overflow:\"hidden\",clip:\"rect(0, 0, 0, 0)\",whiteSpace:\"nowrap\",borderWidth:\"0\"};export{Ve as Command,Pe as CommandDialog,we as CommandEmpty,Se as CommandGroup,Ce as CommandInput,ye as CommandItem,xe as CommandList,De as CommandLoading,me as CommandRoot,Ee as CommandSeparator,he as defaultFilter,T as useCommandState};\n","import { type DialogProps } from \"@radix-ui/react-dialog\";\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { Search } from \"lucide-react\";\nimport * as React from \"react\";\nimport { Dialog, DialogContent } from \"zudoku/ui/Dialog.js\";\nimport { cn } from \"../util/cn.js\";\n\nconst Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive\n ref={ref}\n className={cn(\n \"flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground\",\n className,\n )}\n {...props}\n />\n));\nCommand.displayName = CommandPrimitive.displayName;\n\nconst CommandDialog = ({ children, ...props }: DialogProps) => {\n return (\n <Dialog {...props}>\n <DialogContent className=\"overflow-hidden p-0 shadow-lg\">\n <Command className=\"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n};\n\nconst CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => (\n // eslint-disable-next-line react/no-unknown-property\n <div className=\"flex items-center border-b px-3\" cmdk-input-wrapper=\"\">\n <Search className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n ref={ref}\n className={cn(\n \"flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n </div>\n));\n\nCommandInput.displayName = CommandPrimitive.Input.displayName;\n\nconst CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={cn(\"max-h-[300px] overflow-y-auto overflow-x-hidden\", className)}\n {...props}\n />\n));\n\nCommandList.displayName = CommandPrimitive.List.displayName;\n\nconst CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>((props, ref) => (\n <CommandPrimitive.Empty\n ref={ref}\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n));\n\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName;\n\nconst CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n className={cn(\n \"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground\",\n className,\n )}\n {...props}\n />\n));\n\nCommandGroup.displayName = CommandPrimitive.Group.displayName;\n\nconst CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 h-px bg-border\", className)}\n {...props}\n />\n));\nCommandSeparator.displayName = CommandPrimitive.Separator.displayName;\n\nconst CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected='true']:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n className,\n )}\n {...props}\n />\n));\n\nCommandItem.displayName = CommandPrimitive.Item.displayName;\n\nconst CommandShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n className,\n )}\n {...props}\n />\n );\n};\nCommandShortcut.displayName = \"CommandShortcut\";\n\nexport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n CommandShortcut,\n};\n"],"names":["Dialog","DialogPrimitive","DialogTrigger","DialogPortal","DialogOverlay","React","className","props","ref","jsx","cn","DialogContent","children","jsxs","X","DialogTitle","DialogDescription","U","Y","H","J","p","u","$","k","m","B","K","G","_","C","h","P","A","f","O","T","L","c","S","E","N","R","M","D","W","require$$0","a","b","l","n","q","d","g","r","t","useSyncExternalStoreShim_production_min","ReactSharedInternals","error","format","_len2","args","_key2","printWarning","level","ReactDebugCurrentFrame","stack","argsWithFormat","item","is","x","y","objectIs","useState","useEffect","useLayoutEffect","useDebugValue","didWarnOld18Alpha","didWarnUncachedGetSnapshot","useSyncExternalStore","subscribe","getSnapshot","getServerSnapshot","value","cachedValue","_useState","inst","forceUpdate","checkIfSnapshotChanged","handleStoreChange","latestGetSnapshot","prevValue","nextValue","useSyncExternalStore$1","canUseDOM","isServerEnvironment","shim","useSyncExternalStore$2","useSyncExternalStoreShim_development","shimModule","require$$1","Q","be","Z","le","I","he","o","ce","ue","de","ee","fe","me","e","pe","v","ge","te","F","Te","re","i","z","ne","V","s","oe","Ie","Me","ie","ae","se","Le","j","ye","ve","Se","Ee","Ce","xe","Pe","w","we","De","Ve","Re","ke","Command","CommandPrimitive","CommandDialog","CommandInput","Search","CommandList","CommandEmpty","CommandGroup","CommandSeparator","CommandItem","CommandShortcut"],"mappings":"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","x_google_ignoreList":[1,2,3,4,5]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"MdxPage-LNZLj_A5.js","sources":["../src/lib/plugins/markdown/Toc.tsx","../src/lib/plugins/markdown/MdxPage.tsx"],"sourcesContent":["import type { TocEntry } from \"@stefanprobst/rehype-extract-toc\";\nimport { ListTreeIcon } from \"lucide-react\";\nimport {\n useEffect,\n useRef,\n useState,\n type CSSProperties,\n type PropsWithChildren,\n} from \"react\";\nimport { AnchorLink } from \"../../components/AnchorLink.js\";\nimport { useViewportAnchor } from \"../../components/context/ViewportAnchorContext.js\";\nimport { cn } from \"../../util/cn.js\";\n\nconst DATA_ANCHOR_ATTR = \"data-active\";\n\nconst TocItem = ({\n item,\n children,\n className,\n isActive,\n}: PropsWithChildren<{\n item: TocEntry;\n isActive: boolean;\n className?: string;\n}>) => {\n return (\n <li\n className={cn(\n \"truncate\",\n isActive\n ? \"text-primary\"\n : \"text-foreground/65 dark:text-foreground/75\",\n className,\n )}\n title={item.value}\n >\n <AnchorLink\n to={`#${item.id}`}\n {...{ [DATA_ANCHOR_ATTR]: item.id }}\n className={cn(\n isActive\n ? \"text-primary\"\n : \"text-foreground/65 dark:text-foreground/75 hover:text-foreground\",\n )}\n >\n {item.value}\n </AnchorLink>\n {children}\n </li>\n );\n};\n\nexport const Toc = ({ entries }: { entries: TocEntry[] }) => {\n const { activeAnchor } = useViewportAnchor();\n const listWrapperRef = useRef<HTMLUListElement>(null);\n const paintedOnce = useRef(false);\n const [indicatorStyle, setIndicatorStyles] = useState<CSSProperties>({\n top: 0,\n opacity: 0,\n });\n\n // synchronize active anchor indicator with the scroll position\n useEffect(() => {\n if (!listWrapperRef.current) return;\n\n const activeElement = listWrapperRef.current.querySelector(\n `[${DATA_ANCHOR_ATTR}='${activeAnchor}']`,\n );\n\n if (!activeElement) {\n setIndicatorStyles({ top: 0, opacity: 0 });\n return;\n }\n\n const topParent = listWrapperRef.current.getBoundingClientRect().top;\n const topElement = activeElement.getBoundingClientRect().top;\n\n setIndicatorStyles({\n opacity: 1,\n top: `${topElement - topParent}px`,\n });\n\n if (paintedOnce.current) return;\n\n // after all is painted, the indicator should animate\n requestIdleCallback(() => {\n paintedOnce.current = true;\n });\n }, [activeAnchor]);\n\n return (\n <aside className=\"sticky scrollbar top-[--header-height] h-[calc(100vh-var(--header-height))] pt-[--padding-content-top] pb-[--padding-content-bottom] overflow-y-auto ps-1 text-sm\">\n <div className=\"flex items-center gap-2 font-medium mb-2\">\n <ListTreeIcon size={16} />\n On this page\n </div>\n <div className=\"relative ms-2 ps-4\">\n <div className=\"absolute inset-0 right-auto bg-border w-[2px]\" />\n <div\n className={cn(\n \"absolute -left-px -translate-y-1 h-6 w-[4px] rounded bg-primary\",\n paintedOnce.current &&\n \"ease-out [transition:top_150ms,opacity_325ms]\",\n )}\n style={indicatorStyle}\n />\n <ul\n ref={listWrapperRef}\n className=\"relative font-medium list-none space-y-2\"\n >\n {entries.map((item) => (\n <TocItem\n isActive={item.id === activeAnchor}\n key={item.id}\n item={item}\n className=\"pl-0\"\n >\n {item.children && (\n <ul className=\"list-none pl-4 pt-2 space-y-2\">\n {item.children.map((child) => (\n <TocItem\n item={child}\n isActive={child.id === activeAnchor}\n key={child.id}\n />\n ))}\n </ul>\n )}\n </TocItem>\n ))}\n </ul>\n </div>\n </aside>\n );\n};\n","import { useMDXComponents } from \"@mdx-js/react\";\nimport slugify from \"@sindresorhus/slugify\";\nimport { Helmet } from \"@zudoku/react-helmet-async\";\nimport { type PropsWithChildren, useEffect } from \"react\";\nimport { Link } from \"react-router\";\nimport { CategoryHeading } from \"../../components/CategoryHeading.js\";\nimport { Heading } from \"../../components/Heading.js\";\nimport { ProseClasses } from \"../../components/Markdown.js\";\nimport {\n useCurrentItem,\n usePrevNext,\n} from \"../../components/navigation/utils.js\";\nimport type { MdxComponentsType } from \"../../util/MdxComponents.js\";\nimport { cn } from \"../../util/cn.js\";\nimport { Toc } from \"./Toc.js\";\nimport { MarkdownPluginDefaultOptions, MDXImport } from \"./index.js\";\n\ndeclare global {\n interface Window {\n __getReactRefreshIgnoredExports?: (args: {\n id: string;\n }) => string[] | undefined;\n }\n}\n\nconst MarkdownHeadings = {\n h2: ({ children, id }) => (\n <Heading level={2} id={id} registerSidebarAnchor>\n {children}\n </Heading>\n ),\n h3: ({ children, id }) => (\n <Heading level={3} id={id} registerSidebarAnchor>\n {children}\n </Heading>\n ),\n} satisfies MdxComponentsType;\n\nexport const MdxPage = ({\n mdxComponent: MdxComponent,\n file,\n frontmatter = {},\n defaultOptions,\n tableOfContents,\n excerpt,\n}: PropsWithChildren<\n Omit<MDXImport, \"default\"> & {\n file: string;\n mdxComponent: MDXImport[\"default\"];\n defaultOptions?: MarkdownPluginDefaultOptions;\n }\n>) => {\n const categoryTitle = useCurrentItem()?.categoryLabel;\n const title = frontmatter.title;\n const category = frontmatter.category ?? categoryTitle;\n const hideToc = frontmatter.toc === false || defaultOptions?.toc === false;\n const pageTitle =\n tableOfContents.find((item) => item.depth === 1)?.value ?? title;\n const hidePager =\n frontmatter.disablePager ?? defaultOptions?.disablePager ?? false;\n\n const tocEntries =\n tableOfContents.find((item) => item.depth === 1)?.children ??\n // if `title` is provided by frontmatter it does not appear in the table of contents\n tableOfContents.filter((item) => item.depth === 2);\n\n const showToc = !hideToc && tocEntries.length > 0;\n\n const { prev, next } = usePrevNext();\n\n useEffect(() => {\n if (process.env.NODE_ENV === \"development\") {\n window.__getReactRefreshIgnoredExports = ({ id }) => {\n if (!id.endsWith(file)) return;\n\n return [\"frontmatter\", \"tableOfContents\"];\n };\n\n return () => {\n window.__getReactRefreshIgnoredExports = undefined;\n };\n }\n }, [file]);\n\n return (\n <div className=\"xl:grid grid-cols-[--sidecar-grid-cols] gap-8 justify-between\">\n <Helmet>\n <title>{pageTitle}</title>\n {excerpt && <meta name=\"description\" content={excerpt} />}\n </Helmet>\n <div\n className={cn(\n ProseClasses,\n \"max-w-full xl:w-full xl:max-w-prose flex-1 flex-shrink pt-[--padding-content-top] pb-[--padding-content-bottom]\",\n )}\n >\n {(category || title) && (\n <header>\n {category && <CategoryHeading>{category}</CategoryHeading>}\n {title && (\n <Heading level={1} id={slugify(title)}>\n {title}\n </Heading>\n )}\n </header>\n )}\n <MdxComponent\n components={{ ...useMDXComponents(), ...MarkdownHeadings }}\n />\n {!hidePager && (\n <>\n <hr />\n <div className=\"not-prose flex flex-wrap items-center justify-between gap-2 lg:gap-8\">\n {prev ? (\n <Link\n to={prev.id}\n className=\"flex flex-col items-stretch gap-2 flex-1 min-w-max border rounded px-6 py-4 text-start hover:border-primary/85 transition shadow-sm hover:shadow-md\"\n title={prev.label}\n >\n <div className=\"text-sm text-muted-foreground\">\n ← Previous page\n </div>\n <div className=\"text-lg text-primary truncate\">\n {prev.label}\n </div>\n </Link>\n ) : (\n <div className=\"flex-1\" />\n )}\n {next ? (\n <Link\n to={next.id}\n className=\"flex flex-col items-stretch gap-2 flex-1 min-w-max border rounded px-6 py-4 text-end hover:border-primary/85 transition shadow-sm hover:shadow-md\"\n title={next.label}\n >\n <div className=\"text-sm text-muted-foreground\">\n Next page →\n </div>\n <div className=\"text-lg text-primary truncate\">\n {next.label}\n </div>\n </Link>\n ) : (\n <div className=\"flex-1\" />\n )}\n </div>\n </>\n )}\n </div>\n <div className=\"hidden xl:block\">\n {showToc && <Toc entries={tocEntries} />}\n </div>\n </div>\n );\n};\n"],"names":["DATA_ANCHOR_ATTR","TocItem","item","children","className","isActive","jsxs","cn","jsx","AnchorLink","Toc","entries","activeAnchor","useViewportAnchor","listWrapperRef","useRef","paintedOnce","indicatorStyle","setIndicatorStyles","useState","useEffect","activeElement","topParent","topElement","ListTreeIcon","child","MarkdownHeadings","id","Heading","MdxPage","MdxComponent","file","frontmatter","defaultOptions","tableOfContents","excerpt","categoryTitle","_a","useCurrentItem","title","category","hideToc","pageTitle","_b","hidePager","tocEntries","_c","showToc","prev","next","usePrevNext","Helmet","ProseClasses","CategoryHeading","slugify","useMDXComponents","Fragment","Link"],"mappings":"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"}