zudoku 0.0.0-fix-downgrade-openapi-parser.aac00796 → 0.0.0-fix-prevent-full-deref-allof.b02efbe5

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 (548) hide show
  1. package/dist/app/main.d.ts +91 -1
  2. package/dist/app/main.js +5 -1
  3. package/dist/app/main.js.map +1 -1
  4. package/dist/config/config.d.ts +15 -46
  5. package/dist/config/validators/BuildSchema.js +18 -3
  6. package/dist/config/validators/BuildSchema.js.map +1 -1
  7. package/dist/config/validators/InputNavigationSchema.d.ts +61 -61
  8. package/dist/config/validators/NavigationSchema.js +2 -4
  9. package/dist/config/validators/NavigationSchema.js.map +1 -1
  10. package/dist/config/validators/ProtectedRoutesSchema.d.ts +1 -1
  11. package/dist/config/validators/validate.d.ts +203 -5
  12. package/dist/config/validators/validate.js +44 -1
  13. package/dist/config/validators/validate.js.map +1 -1
  14. package/dist/config/validators/validate.test.js +43 -0
  15. package/dist/config/validators/validate.test.js.map +1 -1
  16. package/dist/flat-config.d.ts +31 -2
  17. package/dist/lib/auth/issuer.js +3 -0
  18. package/dist/lib/auth/issuer.js.map +1 -1
  19. package/dist/lib/authentication/authentication.d.ts +1 -1
  20. package/dist/lib/authentication/providers/auth0.js +6 -1
  21. package/dist/lib/authentication/providers/auth0.js.map +1 -1
  22. package/dist/lib/authentication/providers/firebase.d.ts +4 -0
  23. package/dist/lib/authentication/providers/firebase.js +215 -0
  24. package/dist/lib/authentication/providers/firebase.js.map +1 -0
  25. package/dist/lib/authentication/providers/supabase.js +1 -6
  26. package/dist/lib/authentication/providers/supabase.js.map +1 -1
  27. package/dist/lib/authentication/ui/ZudokuAuthUi.d.ts +24 -0
  28. package/dist/lib/authentication/ui/ZudokuAuthUi.js +124 -0
  29. package/dist/lib/authentication/ui/ZudokuAuthUi.js.map +1 -0
  30. package/dist/lib/authentication/ui/icons/Apple.d.ts +3 -0
  31. package/dist/lib/authentication/ui/icons/Apple.js +4 -0
  32. package/dist/lib/authentication/ui/icons/Apple.js.map +1 -0
  33. package/dist/lib/authentication/ui/icons/Facebook.d.ts +3 -0
  34. package/dist/lib/authentication/ui/icons/Facebook.js +4 -0
  35. package/dist/lib/authentication/ui/icons/Facebook.js.map +1 -0
  36. package/dist/lib/authentication/ui/icons/Github.d.ts +3 -0
  37. package/dist/lib/authentication/ui/icons/Github.js +4 -0
  38. package/dist/lib/authentication/ui/icons/Github.js.map +1 -0
  39. package/dist/lib/authentication/ui/icons/Google.d.ts +3 -0
  40. package/dist/lib/authentication/ui/icons/Google.js +4 -0
  41. package/dist/lib/authentication/ui/icons/Google.js.map +1 -0
  42. package/dist/lib/authentication/ui/icons/Microsoft.d.ts +3 -0
  43. package/dist/lib/authentication/ui/icons/Microsoft.js +4 -0
  44. package/dist/lib/authentication/ui/icons/Microsoft.js.map +1 -0
  45. package/dist/lib/authentication/ui/icons/X.d.ts +3 -0
  46. package/dist/lib/authentication/ui/icons/X.js +4 -0
  47. package/dist/lib/authentication/ui/icons/X.js.map +1 -0
  48. package/dist/lib/components/Autocomplete.d.ts +3 -1
  49. package/dist/lib/components/Autocomplete.js +6 -2
  50. package/dist/lib/components/Autocomplete.js.map +1 -1
  51. package/dist/lib/components/Heading.d.ts +1 -1
  52. package/dist/lib/components/Layout.js +3 -2
  53. package/dist/lib/components/Layout.js.map +1 -1
  54. package/dist/lib/components/Mermaid.d.ts +7 -0
  55. package/dist/lib/components/Mermaid.js +42 -0
  56. package/dist/lib/components/Mermaid.js.map +1 -0
  57. package/dist/lib/components/PagefindSearchMeta.d.ts +8 -0
  58. package/dist/lib/components/PagefindSearchMeta.js +7 -0
  59. package/dist/lib/components/PagefindSearchMeta.js.map +1 -0
  60. package/dist/lib/components/Zudoku.js +2 -5
  61. package/dist/lib/components/Zudoku.js.map +1 -1
  62. package/dist/lib/components/navigation/NavigationItem.js +2 -2
  63. package/dist/lib/components/navigation/NavigationItem.js.map +1 -1
  64. package/dist/lib/core/RouteGuard.js +7 -7
  65. package/dist/lib/core/RouteGuard.js.map +1 -1
  66. package/dist/lib/core/plugins.d.ts +3 -3
  67. package/dist/lib/errors/ErrorAlert.js +1 -1
  68. package/dist/lib/errors/RouterError.d.ts +3 -1
  69. package/dist/lib/errors/RouterError.js +3 -2
  70. package/dist/lib/errors/RouterError.js.map +1 -1
  71. package/dist/lib/oas/parser/index.d.ts +1 -0
  72. package/dist/lib/oas/parser/index.js +7 -3
  73. package/dist/lib/oas/parser/index.js.map +1 -1
  74. package/dist/lib/plugins/api-keys/ProtectedRoute.js +4 -1
  75. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -1
  76. package/dist/lib/plugins/openapi/CollapsibleCode.d.ts +1 -0
  77. package/dist/lib/plugins/openapi/CollapsibleCode.js +2 -1
  78. package/dist/lib/plugins/openapi/CollapsibleCode.js.map +1 -1
  79. package/dist/lib/plugins/openapi/DownloadSchemaButton.d.ts +3 -0
  80. package/dist/lib/plugins/openapi/DownloadSchemaButton.js +47 -0
  81. package/dist/lib/plugins/openapi/DownloadSchemaButton.js.map +1 -0
  82. package/dist/lib/plugins/openapi/Endpoint.js +3 -6
  83. package/dist/lib/plugins/openapi/Endpoint.js.map +1 -1
  84. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.d.ts +5 -0
  85. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js +10 -0
  86. package/dist/lib/plugins/openapi/GeneratedExampleSidecarBox.js.map +1 -0
  87. package/dist/lib/plugins/openapi/OasProvider.js +22 -13
  88. package/dist/lib/plugins/openapi/OasProvider.js.map +1 -1
  89. package/dist/lib/plugins/openapi/OperationList.js +16 -6
  90. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  91. package/dist/lib/plugins/openapi/OperationListItem.d.ts +2 -1
  92. package/dist/lib/plugins/openapi/OperationListItem.js +4 -3
  93. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  94. package/dist/lib/plugins/openapi/ParameterList.js +7 -4
  95. package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
  96. package/dist/lib/plugins/openapi/ParameterListItem.js +17 -6
  97. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  98. package/dist/lib/plugins/openapi/RequestBodySidecarBox.d.ts +9 -2
  99. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js +5 -2
  100. package/dist/lib/plugins/openapi/RequestBodySidecarBox.js.map +1 -1
  101. package/dist/lib/plugins/openapi/ResponsesSidecarBox.d.ts +4 -2
  102. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js +26 -4
  103. package/dist/lib/plugins/openapi/ResponsesSidecarBox.js.map +1 -1
  104. package/dist/lib/plugins/openapi/SchemaList.js +2 -1
  105. package/dist/lib/plugins/openapi/SchemaList.js.map +1 -1
  106. package/dist/lib/plugins/openapi/Sidecar.d.ts +2 -2
  107. package/dist/lib/plugins/openapi/Sidecar.js +61 -26
  108. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  109. package/dist/lib/plugins/openapi/SidecarBox.js +4 -4
  110. package/dist/lib/plugins/openapi/SidecarBox.js.map +1 -1
  111. package/dist/lib/plugins/openapi/SidecarExamples.d.ts +9 -2
  112. package/dist/lib/plugins/openapi/SidecarExamples.js +24 -43
  113. package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -1
  114. package/dist/lib/plugins/openapi/components/ConstValue.js +1 -1
  115. package/dist/lib/plugins/openapi/components/ConstValue.js.map +1 -1
  116. package/dist/lib/plugins/openapi/components/EnumValues.js +1 -1
  117. package/dist/lib/plugins/openapi/components/EnumValues.js.map +1 -1
  118. package/dist/lib/plugins/openapi/components/NonHighlightedCode.d.ts +4 -0
  119. package/dist/lib/plugins/openapi/components/NonHighlightedCode.js +5 -0
  120. package/dist/lib/plugins/openapi/components/NonHighlightedCode.js.map +1 -0
  121. package/dist/lib/plugins/openapi/components/ResponseContent.js +5 -6
  122. package/dist/lib/plugins/openapi/components/ResponseContent.js.map +1 -1
  123. package/dist/lib/plugins/openapi/index.js +11 -5
  124. package/dist/lib/plugins/openapi/index.js.map +1 -1
  125. package/dist/lib/plugins/openapi/interfaces.d.ts +29 -13
  126. package/dist/lib/plugins/openapi/playground/BodyPanel.js +67 -15
  127. package/dist/lib/plugins/openapi/playground/BodyPanel.js.map +1 -1
  128. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js +2 -2
  129. package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js.map +1 -1
  130. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +1 -1
  131. package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -1
  132. package/dist/lib/plugins/openapi/playground/Headers.js +23 -83
  133. package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
  134. package/dist/lib/plugins/openapi/playground/ParamsGrid.d.ts +10 -2
  135. package/dist/lib/plugins/openapi/playground/ParamsGrid.js +8 -1
  136. package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -1
  137. package/dist/lib/plugins/openapi/playground/PathParams.js +2 -3
  138. package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
  139. package/dist/lib/plugins/openapi/playground/Playground.d.ts +7 -0
  140. package/dist/lib/plugins/openapi/playground/Playground.js +57 -25
  141. package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
  142. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +3 -2
  143. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
  144. package/dist/lib/plugins/openapi/playground/QueryParams.js +16 -40
  145. package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
  146. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.d.ts +8 -0
  147. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js +19 -0
  148. package/dist/lib/plugins/openapi/playground/request-panel/MultipartField.js.map +1 -0
  149. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js +1 -1
  150. package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js.map +1 -1
  151. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.d.ts +1 -0
  152. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js +540 -0
  153. package/dist/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.js.map +1 -0
  154. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.d.ts +40 -0
  155. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js +205 -0
  156. package/dist/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.js.map +1 -0
  157. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +2 -2
  158. package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -1
  159. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js +1 -1
  160. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js.map +1 -1
  161. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +17 -8
  162. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
  163. package/dist/lib/plugins/openapi/schema/SchemaView.d.ts +1 -1
  164. package/dist/lib/plugins/openapi/schema/SchemaView.js +31 -16
  165. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  166. package/dist/lib/plugins/openapi/schema/UnionView.js +2 -5
  167. package/dist/lib/plugins/openapi/schema/UnionView.js.map +1 -1
  168. package/dist/lib/plugins/openapi/schema/union-helpers.js +0 -1
  169. package/dist/lib/plugins/openapi/schema/union-helpers.js.map +1 -1
  170. package/dist/lib/plugins/openapi/schema/utils.d.ts +2 -2
  171. package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
  172. package/dist/lib/plugins/openapi/util/generateSchemaExample.js +9 -11
  173. package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
  174. package/dist/lib/plugins/openapi/util/getRoutes.d.ts +6 -1
  175. package/dist/lib/plugins/openapi/util/getRoutes.js +29 -2
  176. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
  177. package/dist/lib/plugins/search-pagefind/IndexingDialog.d.ts +3 -0
  178. package/dist/lib/plugins/search-pagefind/IndexingDialog.js +64 -0
  179. package/dist/lib/plugins/search-pagefind/IndexingDialog.js.map +1 -0
  180. package/dist/lib/plugins/search-pagefind/PagefindSearch.js +22 -5
  181. package/dist/lib/plugins/search-pagefind/PagefindSearch.js.map +1 -1
  182. package/dist/lib/plugins/search-pagefind/ResultList.js +5 -4
  183. package/dist/lib/plugins/search-pagefind/ResultList.js.map +1 -1
  184. package/dist/lib/shiki.d.ts +1 -1
  185. package/dist/lib/shiki.js +18 -12
  186. package/dist/lib/shiki.js.map +1 -1
  187. package/dist/lib/ui/Badge.d.ts +3 -3
  188. package/dist/lib/ui/Badge.js +9 -7
  189. package/dist/lib/ui/Badge.js.map +1 -1
  190. package/dist/lib/ui/Button.d.ts +2 -2
  191. package/dist/lib/ui/Button.js +9 -7
  192. package/dist/lib/ui/Button.js.map +1 -1
  193. package/dist/lib/ui/ButtonGroup.d.ts +11 -0
  194. package/dist/lib/ui/ButtonGroup.js +28 -0
  195. package/dist/lib/ui/ButtonGroup.js.map +1 -0
  196. package/dist/lib/ui/Checkbox.d.ts +2 -2
  197. package/dist/lib/ui/Checkbox.js +4 -4
  198. package/dist/lib/ui/Checkbox.js.map +1 -1
  199. package/dist/lib/ui/CodeBlock.d.ts +0 -1
  200. package/dist/lib/ui/CodeBlock.js +1 -1
  201. package/dist/lib/ui/CodeBlock.js.map +1 -1
  202. package/dist/lib/ui/Collapsible.d.ts +4 -4
  203. package/dist/lib/ui/Collapsible.js +11 -4
  204. package/dist/lib/ui/Collapsible.js.map +1 -1
  205. package/dist/lib/ui/Command.d.ts +3 -3
  206. package/dist/lib/ui/Command.js +2 -2
  207. package/dist/lib/ui/Command.js.map +1 -1
  208. package/dist/lib/ui/DropdownMenu.d.ts +21 -23
  209. package/dist/lib/ui/DropdownMenu.js +47 -32
  210. package/dist/lib/ui/DropdownMenu.js.map +1 -1
  211. package/dist/lib/ui/EmbeddedCodeBlock.d.ts +0 -1
  212. package/dist/lib/ui/EmbeddedCodeBlock.js +3 -2
  213. package/dist/lib/ui/EmbeddedCodeBlock.js.map +1 -1
  214. package/dist/lib/ui/Frame.d.ts +8 -0
  215. package/dist/lib/ui/Frame.js +22 -0
  216. package/dist/lib/ui/Frame.js.map +1 -0
  217. package/dist/lib/ui/Item.d.ts +23 -0
  218. package/dist/lib/ui/Item.js +67 -0
  219. package/dist/lib/ui/Item.js.map +1 -0
  220. package/dist/lib/ui/Kbd.d.ts +3 -0
  221. package/dist/lib/ui/Kbd.js +10 -0
  222. package/dist/lib/ui/Kbd.js.map +1 -0
  223. package/dist/lib/ui/NativeSelect.d.ts +5 -0
  224. package/dist/lib/ui/NativeSelect.js +14 -0
  225. package/dist/lib/ui/NativeSelect.js.map +1 -0
  226. package/dist/lib/ui/Select.d.ts +13 -11
  227. package/dist/lib/ui/Select.js +34 -23
  228. package/dist/lib/ui/Select.js.map +1 -1
  229. package/dist/lib/ui/Separator.d.ts +4 -0
  230. package/dist/lib/ui/Separator.js +8 -0
  231. package/dist/lib/ui/Separator.js.map +1 -0
  232. package/dist/lib/ui/Tooltip.d.ts +7 -7
  233. package/dist/lib/ui/Tooltip.js +16 -10
  234. package/dist/lib/ui/Tooltip.js.map +1 -1
  235. package/dist/lib/util/MdxComponents.d.ts +1 -0
  236. package/dist/lib/util/MdxComponents.js +2 -0
  237. package/dist/lib/util/MdxComponents.js.map +1 -1
  238. package/dist/lib/util/createVariantComponent.d.ts +5 -2
  239. package/dist/lib/util/createVariantComponent.js +5 -2
  240. package/dist/lib/util/createVariantComponent.js.map +1 -1
  241. package/dist/lib/util/flattenAllOf.d.ts +4 -0
  242. package/dist/lib/util/flattenAllOf.js +88 -0
  243. package/dist/lib/util/flattenAllOf.js.map +1 -0
  244. package/dist/lib/util/flattenAllOf.test.d.ts +1 -0
  245. package/dist/lib/util/flattenAllOf.test.js +532 -0
  246. package/dist/lib/util/flattenAllOf.test.js.map +1 -0
  247. package/dist/lib/util/readFrontmatter.d.ts +6 -0
  248. package/dist/lib/util/readFrontmatter.js +12 -0
  249. package/dist/lib/util/readFrontmatter.js.map +1 -0
  250. package/dist/vite/api/SchemaManager.d.ts +5 -0
  251. package/dist/vite/api/SchemaManager.js +30 -18
  252. package/dist/vite/api/SchemaManager.js.map +1 -1
  253. package/dist/vite/config.js +7 -1
  254. package/dist/vite/config.js.map +1 -1
  255. package/dist/vite/dev-server.js +25 -0
  256. package/dist/vite/dev-server.js.map +1 -1
  257. package/dist/vite/mdx/remark-last-modified.js +57 -3
  258. package/dist/vite/mdx/remark-last-modified.js.map +1 -1
  259. package/dist/vite/pagefind-dev-index.d.ts +16 -0
  260. package/dist/vite/pagefind-dev-index.js +68 -0
  261. package/dist/vite/pagefind-dev-index.js.map +1 -0
  262. package/dist/vite/plugin-api.js +41 -3
  263. package/dist/vite/plugin-api.js.map +1 -1
  264. package/dist/vite/plugin-frontmatter.js +3 -5
  265. package/dist/vite/plugin-frontmatter.js.map +1 -1
  266. package/dist/vite/plugin-markdown-export.js +3 -4
  267. package/dist/vite/plugin-markdown-export.js.map +1 -1
  268. package/dist/vite/plugin-theme.js +10 -1
  269. package/dist/vite/plugin-theme.js.map +1 -1
  270. package/dist/vite/prerender/prerender.js +1 -19
  271. package/dist/vite/prerender/prerender.js.map +1 -1
  272. package/dist/vite/prerender/utils.d.ts +2 -0
  273. package/dist/vite/prerender/utils.js +24 -0
  274. package/dist/vite/prerender/utils.js.map +1 -0
  275. package/lib/Button-CynVW1JV.js +53 -0
  276. package/lib/Button-CynVW1JV.js.map +1 -0
  277. package/lib/ClaudeLogo-PxFjou9w.js +69 -0
  278. package/lib/ClaudeLogo-PxFjou9w.js.map +1 -0
  279. package/lib/{Command-CUcrW3qs.js → Command-BpT1iBE6.js} +25 -25
  280. package/lib/Command-BpT1iBE6.js.map +1 -0
  281. package/lib/Drawer-Ci7XwhqT.js.map +1 -1
  282. package/lib/DropdownMenu-C8SX_-S_.js +104 -0
  283. package/lib/DropdownMenu-C8SX_-S_.js.map +1 -0
  284. package/lib/{ErrorAlert-DE3Sf66a.js → ErrorAlert-BqjbNHIn.js} +475 -456
  285. package/lib/ErrorAlert-BqjbNHIn.js.map +1 -0
  286. package/lib/IndexingDialog-B5zCiUKr.js +100 -0
  287. package/lib/IndexingDialog-B5zCiUKr.js.map +1 -0
  288. package/lib/MdxPage-CVFatbHw.js +210 -0
  289. package/lib/MdxPage-CVFatbHw.js.map +1 -0
  290. package/lib/Mermaid-CIFixY6C.js +102 -0
  291. package/lib/Mermaid-CIFixY6C.js.map +1 -0
  292. package/lib/{OAuthErrorPage-BycMozgn.js → OAuthErrorPage-Dup79DJk.js} +7 -7
  293. package/lib/{OAuthErrorPage-BycMozgn.js.map → OAuthErrorPage-Dup79DJk.js.map} +1 -1
  294. package/lib/OasProvider-C10RPbY8.js +40 -0
  295. package/lib/OasProvider-C10RPbY8.js.map +1 -0
  296. package/lib/OperationList--zX7OAlH.js +5824 -0
  297. package/lib/OperationList--zX7OAlH.js.map +1 -0
  298. package/lib/RouteGuard-BXy13JSz.js +77 -0
  299. package/lib/RouteGuard-BXy13JSz.js.map +1 -0
  300. package/lib/RouterError-CKOZTsDD.js +42 -0
  301. package/lib/RouterError-CKOZTsDD.js.map +1 -0
  302. package/lib/{SchemaList-xZSf3IMh.js → SchemaList-CxafJA_P.js} +28 -27
  303. package/lib/SchemaList-CxafJA_P.js.map +1 -0
  304. package/lib/SchemaView-j0PtjY8U.js +597 -0
  305. package/lib/SchemaView-j0PtjY8U.js.map +1 -0
  306. package/lib/Select-VmDZ-nKe.js +337 -0
  307. package/lib/Select-VmDZ-nKe.js.map +1 -0
  308. package/lib/{SignUp-6SGx9Yyq.js → SignUp-Pm_LGm6T.js} +13 -13
  309. package/lib/{SignUp-6SGx9Yyq.js.map → SignUp-Pm_LGm6T.js.map} +1 -1
  310. package/lib/{SyntaxHighlight-zvlnSnHB.js → SyntaxHighlight-bkmst3oV.js} +710 -662
  311. package/lib/{SyntaxHighlight-zvlnSnHB.js.map → SyntaxHighlight-bkmst3oV.js.map} +1 -1
  312. package/lib/{Toc-Da9yp7lo.js → Toc-TUXNFbKl.js} +2 -2
  313. package/lib/{Toc-Da9yp7lo.js.map → Toc-TUXNFbKl.js.map} +1 -1
  314. package/lib/{ZudokuContext-BUZ5hkWB.js → ZudokuContext-np1wheDl.js} +8 -8
  315. package/lib/{ZudokuContext-BUZ5hkWB.js.map → ZudokuContext-np1wheDl.js.map} +1 -1
  316. package/lib/___vite-browser-external_commonjs-proxy-Cga3HsWk.js +9 -0
  317. package/lib/___vite-browser-external_commonjs-proxy-Cga3HsWk.js.map +1 -0
  318. package/lib/{chunk-PVWAREVJ-BMhpCH5D.js → chunk-PVWAREVJ-dLIqswPy.js} +5 -5
  319. package/lib/{chunk-PVWAREVJ-BMhpCH5D.js.map → chunk-PVWAREVJ-dLIqswPy.js.map} +1 -1
  320. package/lib/{circular-DvuimBGQ.js → circular-GQ_uaom2.js} +6360 -5953
  321. package/lib/circular-GQ_uaom2.js.map +1 -0
  322. package/lib/createServer-sU0O9wfJ.js +16693 -0
  323. package/lib/createServer-sU0O9wfJ.js.map +1 -0
  324. package/lib/{errors-CuGgh3hf.js → errors-B0hNTPFO.js} +3 -3
  325. package/lib/{errors-CuGgh3hf.js.map → errors-B0hNTPFO.js.map} +1 -1
  326. package/lib/{hook-CMeoxziF.js → hook-CvSwcbk6.js} +3 -3
  327. package/lib/{hook-CMeoxziF.js.map → hook-CvSwcbk6.js.map} +1 -1
  328. package/lib/index-B6SRNBIt.js +3700 -0
  329. package/lib/index-B6SRNBIt.js.map +1 -0
  330. package/lib/index-CrcNWbel.js.map +1 -1
  331. package/lib/index-DnMgJWrI.js +133 -0
  332. package/lib/index-DnMgJWrI.js.map +1 -0
  333. package/lib/{index-rYHsvtTo.js → index-DscsS121.js} +2 -2
  334. package/lib/{index-rYHsvtTo.js.map → index-DscsS121.js.map} +1 -1
  335. package/lib/{index-B1rmok4X.js → index-mfkNWYG-.js} +10 -10
  336. package/lib/{index-B1rmok4X.js.map → index-mfkNWYG-.js.map} +1 -1
  337. package/lib/{index.esm-BnYHxCYC.js → index.esm-DtzT_KoE.js} +20 -20
  338. package/lib/{index.esm-BnYHxCYC.js.map → index.esm-DtzT_KoE.js.map} +1 -1
  339. package/lib/{invariant-Bm-FVUQE.js → invariant-CGOLuIIz.js} +3 -3
  340. package/lib/{invariant-Bm-FVUQE.js.map → invariant-CGOLuIIz.js.map} +1 -1
  341. package/lib/{mutation-BSU0xu4m.js → mutation-BlmnL5qL.js} +2 -2
  342. package/lib/{mutation-BSU0xu4m.js.map → mutation-BlmnL5qL.js.map} +1 -1
  343. package/lib/ui/ActionButton.js +1 -1
  344. package/lib/ui/Badge.js +27 -13
  345. package/lib/ui/Badge.js.map +1 -1
  346. package/lib/ui/Button.js +26 -24
  347. package/lib/ui/Button.js.map +1 -1
  348. package/lib/ui/ButtonGroup.js +77 -0
  349. package/lib/ui/ButtonGroup.js.map +1 -0
  350. package/lib/ui/Checkbox.js +29 -26
  351. package/lib/ui/Checkbox.js.map +1 -1
  352. package/lib/ui/CodeBlock.js +7 -7
  353. package/lib/ui/CodeBlock.js.map +1 -1
  354. package/lib/ui/Collapsible.js +32 -5
  355. package/lib/ui/Collapsible.js.map +1 -1
  356. package/lib/ui/Command.js +3 -3
  357. package/lib/ui/Command.js.map +1 -1
  358. package/lib/ui/DropdownMenu.js +227 -140
  359. package/lib/ui/DropdownMenu.js.map +1 -1
  360. package/lib/ui/EmbeddedCodeBlock.js +26 -25
  361. package/lib/ui/EmbeddedCodeBlock.js.map +1 -1
  362. package/lib/ui/Frame.js +81 -0
  363. package/lib/ui/Frame.js.map +1 -0
  364. package/lib/ui/Item.js +188 -0
  365. package/lib/ui/Item.js.map +1 -0
  366. package/lib/ui/Kbd.js +32 -0
  367. package/lib/ui/Kbd.js.map +1 -0
  368. package/lib/ui/NativeSelect.js +57 -0
  369. package/lib/ui/NativeSelect.js.map +1 -0
  370. package/lib/ui/Select.js +166 -116
  371. package/lib/ui/Select.js.map +1 -1
  372. package/lib/ui/Separator.js +27 -0
  373. package/lib/ui/Separator.js.map +1 -0
  374. package/lib/ui/SyntaxHighlight.js +3 -3
  375. package/lib/ui/Tabs.js +10 -10
  376. package/lib/ui/Tooltip.js +55 -28
  377. package/lib/ui/Tooltip.js.map +1 -1
  378. package/lib/zudoku.__internal.js +349 -349
  379. package/lib/zudoku.__internal.js.map +1 -1
  380. package/lib/zudoku.auth-auth0.js +7 -7
  381. package/lib/zudoku.auth-auth0.js.map +1 -1
  382. package/lib/zudoku.auth-azureb2c.js +4 -4
  383. package/lib/zudoku.auth-clerk.js +2 -2
  384. package/lib/zudoku.auth-openid.js +5 -5
  385. package/lib/zudoku.auth-supabase.js +31 -34
  386. package/lib/zudoku.auth-supabase.js.map +1 -1
  387. package/lib/zudoku.components.js +7 -7
  388. package/lib/zudoku.hooks.js +11 -24
  389. package/lib/zudoku.hooks.js.map +1 -1
  390. package/lib/zudoku.mermaid.js +10 -0
  391. package/lib/zudoku.mermaid.js.map +1 -0
  392. package/lib/zudoku.plugin-api-catalog.js +6 -6
  393. package/lib/zudoku.plugin-api-keys.js +223 -198
  394. package/lib/zudoku.plugin-api-keys.js.map +1 -1
  395. package/lib/zudoku.plugin-custom-pages.js +1 -1
  396. package/lib/zudoku.plugin-markdown.js +1 -1
  397. package/lib/zudoku.plugin-openapi.js +3 -3
  398. package/lib/zudoku.plugin-redirect.js +1 -1
  399. package/lib/zudoku.plugin-search-pagefind.js +184 -226
  400. package/lib/zudoku.plugin-search-pagefind.js.map +1 -1
  401. package/lib/zudoku.plugins.js.map +1 -1
  402. package/lib/zudoku.router.js +2 -2
  403. package/package.json +36 -23
  404. package/src/app/main.css +1 -1
  405. package/src/app/main.tsx +5 -1
  406. package/src/lib/auth/issuer.ts +3 -0
  407. package/src/lib/authentication/authentication.ts +1 -1
  408. package/src/lib/authentication/providers/auth0.tsx +6 -1
  409. package/src/lib/authentication/providers/firebase.tsx +284 -0
  410. package/src/lib/authentication/providers/supabase.tsx +2 -7
  411. package/src/lib/authentication/ui/ZudokuAuthUi.tsx +335 -0
  412. package/src/lib/authentication/ui/icons/Apple.tsx +10 -0
  413. package/src/lib/authentication/ui/icons/Facebook.tsx +15 -0
  414. package/src/lib/authentication/ui/icons/Github.tsx +16 -0
  415. package/src/lib/authentication/ui/icons/Google.tsx +16 -0
  416. package/src/lib/authentication/ui/icons/Microsoft.tsx +12 -0
  417. package/src/lib/authentication/ui/icons/X.tsx +10 -0
  418. package/src/lib/components/Autocomplete.tsx +11 -2
  419. package/src/lib/components/Layout.tsx +3 -2
  420. package/src/lib/components/Mermaid.tsx +68 -0
  421. package/src/lib/components/PagefindSearchMeta.tsx +14 -0
  422. package/src/lib/components/Zudoku.tsx +4 -7
  423. package/src/lib/components/navigation/NavigationItem.tsx +7 -20
  424. package/src/lib/core/RouteGuard.tsx +9 -9
  425. package/src/lib/core/plugins.ts +2 -2
  426. package/src/lib/errors/ErrorAlert.tsx +1 -1
  427. package/src/lib/errors/RouterError.tsx +7 -2
  428. package/src/lib/oas/parser/index.ts +10 -3
  429. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +11 -7
  430. package/src/lib/plugins/openapi/CollapsibleCode.tsx +5 -3
  431. package/src/lib/plugins/openapi/DownloadSchemaButton.tsx +115 -0
  432. package/src/lib/plugins/openapi/Endpoint.tsx +20 -27
  433. package/src/lib/plugins/openapi/GeneratedExampleSidecarBox.tsx +52 -0
  434. package/src/lib/plugins/openapi/OasProvider.tsx +30 -17
  435. package/src/lib/plugins/openapi/OperationList.tsx +46 -21
  436. package/src/lib/plugins/openapi/OperationListItem.tsx +15 -12
  437. package/src/lib/plugins/openapi/ParameterList.tsx +37 -23
  438. package/src/lib/plugins/openapi/ParameterListItem.tsx +105 -54
  439. package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +48 -7
  440. package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +101 -33
  441. package/src/lib/plugins/openapi/SchemaList.tsx +4 -0
  442. package/src/lib/plugins/openapi/Sidecar.tsx +145 -65
  443. package/src/lib/plugins/openapi/SidecarBox.tsx +26 -4
  444. package/src/lib/plugins/openapi/SidecarExamples.tsx +91 -79
  445. package/src/lib/plugins/openapi/components/ConstValue.tsx +1 -1
  446. package/src/lib/plugins/openapi/components/EnumValues.tsx +2 -2
  447. package/src/lib/plugins/openapi/components/NonHighlightedCode.tsx +22 -0
  448. package/src/lib/plugins/openapi/components/ResponseContent.tsx +63 -53
  449. package/src/lib/plugins/openapi/index.tsx +16 -7
  450. package/src/lib/plugins/openapi/interfaces.ts +28 -7
  451. package/src/lib/plugins/openapi/playground/BodyPanel.tsx +246 -30
  452. package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +10 -6
  453. package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +3 -2
  454. package/src/lib/plugins/openapi/playground/Headers.tsx +103 -219
  455. package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +33 -1
  456. package/src/lib/plugins/openapi/playground/PathParams.tsx +26 -34
  457. package/src/lib/plugins/openapi/playground/Playground.tsx +74 -32
  458. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +9 -30
  459. package/src/lib/plugins/openapi/playground/QueryParams.tsx +82 -136
  460. package/src/lib/plugins/openapi/playground/request-panel/MultipartField.tsx +91 -0
  461. package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +1 -1
  462. package/src/lib/plugins/openapi/playground/request-panel/fieldManager/useKeyValueFieldManager.test.tsx +872 -0
  463. package/src/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.ts +349 -0
  464. package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +2 -6
  465. package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +1 -1
  466. package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +89 -55
  467. package/src/lib/plugins/openapi/schema/SchemaView.tsx +98 -60
  468. package/src/lib/plugins/openapi/schema/UnionView.tsx +6 -17
  469. package/src/lib/plugins/openapi/schema/union-helpers.ts +0 -1
  470. package/src/lib/plugins/openapi/schema/utils.ts +5 -2
  471. package/src/lib/plugins/openapi/util/generateSchemaExample.ts +11 -11
  472. package/src/lib/plugins/openapi/util/getRoutes.tsx +35 -3
  473. package/src/lib/plugins/search-pagefind/IndexingDialog.tsx +163 -0
  474. package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +61 -22
  475. package/src/lib/plugins/search-pagefind/ResultList.tsx +8 -3
  476. package/src/lib/shiki.ts +21 -12
  477. package/src/lib/ui/Badge.tsx +21 -12
  478. package/src/lib/ui/Button.tsx +10 -9
  479. package/src/lib/ui/ButtonGroup.tsx +82 -0
  480. package/src/lib/ui/Checkbox.tsx +23 -24
  481. package/src/lib/ui/CodeBlock.tsx +3 -4
  482. package/src/lib/ui/Collapsible.tsx +26 -4
  483. package/src/lib/ui/Command.tsx +3 -3
  484. package/src/lib/ui/DropdownMenu.tsx +226 -170
  485. package/src/lib/ui/EmbeddedCodeBlock.tsx +21 -19
  486. package/src/lib/ui/Frame.tsx +81 -0
  487. package/src/lib/ui/Item.tsx +192 -0
  488. package/src/lib/ui/Kbd.tsx +28 -0
  489. package/src/lib/ui/NativeSelect.tsx +47 -0
  490. package/src/lib/ui/Select.tsx +153 -126
  491. package/src/lib/ui/Separator.tsx +25 -0
  492. package/src/lib/ui/Tooltip.tsx +54 -32
  493. package/src/lib/util/MdxComponents.tsx +2 -0
  494. package/src/lib/util/createVariantComponent.tsx +31 -5
  495. package/src/lib/util/flattenAllOf.test.ts +637 -0
  496. package/src/lib/util/flattenAllOf.ts +122 -0
  497. package/src/lib/util/readFrontmatter.ts +13 -0
  498. package/src/shiki/langs/markdown-nix.js +1 -0
  499. package/src/shiki/langs/openscad.js +1 -0
  500. package/dist/lib/plugins/openapi/playground/InlineInput.d.ts +0 -4
  501. package/dist/lib/plugins/openapi/playground/InlineInput.js +0 -3
  502. package/dist/lib/plugins/openapi/playground/InlineInput.js.map +0 -1
  503. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.d.ts +0 -5
  504. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.js +0 -7
  505. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.js.map +0 -1
  506. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.d.ts +0 -4
  507. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.js +0 -10
  508. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.js.map +0 -1
  509. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.d.ts +0 -5
  510. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.js +0 -16
  511. package/dist/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.js.map +0 -1
  512. package/dist/vite/create-pagefind-index.d.ts +0 -4
  513. package/dist/vite/create-pagefind-index.js +0 -12
  514. package/dist/vite/create-pagefind-index.js.map +0 -1
  515. package/lib/Button-DmS4u8Lj.js +0 -51
  516. package/lib/Button-DmS4u8Lj.js.map +0 -1
  517. package/lib/Command-CUcrW3qs.js.map +0 -1
  518. package/lib/DropdownMenu-BZ2NKQ3K.js +0 -126
  519. package/lib/DropdownMenu-BZ2NKQ3K.js.map +0 -1
  520. package/lib/ErrorAlert-DE3Sf66a.js.map +0 -1
  521. package/lib/MdxPage-DZfeC0QY.js +0 -240
  522. package/lib/MdxPage-DZfeC0QY.js.map +0 -1
  523. package/lib/OasProvider-Bf5zBDBY.js +0 -36
  524. package/lib/OasProvider-Bf5zBDBY.js.map +0 -1
  525. package/lib/OperationList-Cmiw1xm2.js +0 -5446
  526. package/lib/OperationList-Cmiw1xm2.js.map +0 -1
  527. package/lib/Pagination-CJszmeSA.js +0 -37
  528. package/lib/Pagination-CJszmeSA.js.map +0 -1
  529. package/lib/RouteGuard-DhU3LRr1.js +0 -81
  530. package/lib/RouteGuard-DhU3LRr1.js.map +0 -1
  531. package/lib/RouterError-VDLnrFqF.js +0 -41
  532. package/lib/RouterError-VDLnrFqF.js.map +0 -1
  533. package/lib/SchemaList-xZSf3IMh.js.map +0 -1
  534. package/lib/SchemaView-tHXTm5oM.js +0 -458
  535. package/lib/SchemaView-tHXTm5oM.js.map +0 -1
  536. package/lib/Select-C1DeCqKv.js +0 -372
  537. package/lib/Select-C1DeCqKv.js.map +0 -1
  538. package/lib/circular-DvuimBGQ.js.map +0 -1
  539. package/lib/createServer-D9UvCoDf.js +0 -12559
  540. package/lib/createServer-D9UvCoDf.js.map +0 -1
  541. package/lib/index-Cr9_YzOZ.js +0 -3364
  542. package/lib/index-Cr9_YzOZ.js.map +0 -1
  543. package/lib/useExposedProps-U3pmsHaG.js +0 -113
  544. package/lib/useExposedProps-U3pmsHaG.js.map +0 -1
  545. package/src/lib/plugins/openapi/playground/InlineInput.tsx +0 -6
  546. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupConnector.tsx +0 -36
  547. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupItem.tsx +0 -25
  548. package/src/lib/plugins/openapi/schema/AllOfGroup/AllOfGroupView.tsx +0 -42
@@ -1,6 +1,6 @@
1
- import { u as a } from "./ZudokuContext-BUZ5hkWB.js";
2
- import { OpenIDAuthenticationProvider as r } from "./zudoku.auth-openid.js";
3
- class c extends r {
1
+ import { u as r } from "./ZudokuContext-np1wheDl.js";
2
+ import { OpenIDAuthenticationProvider as a } from "./zudoku.auth-openid.js";
3
+ class p extends a {
4
4
  options;
5
5
  constructor(t) {
6
6
  super({
@@ -13,11 +13,11 @@ class c extends r {
13
13
  }), this.options = t.options;
14
14
  }
15
15
  onAuthorizationUrl = async (t, { isSignUp: e }) => {
16
- this.options?.alwaysPromptLogin !== !1 && t.searchParams.set("prompt", "login"), e && t.searchParams.set("screen_hint", "signup");
16
+ this.options?.prompt !== void 0 ? this.options.prompt !== "" && t.searchParams.set("prompt", this.options.prompt) : this.options?.alwaysPromptLogin !== !1 && t.searchParams.set("prompt", "login"), e && t.searchParams.set("screen_hint", "signup");
17
17
  };
18
18
  signOut = async (t) => {
19
19
  const e = await this.getAuthServer(), i = await this.getAccessToken();
20
- a.setState({
20
+ r.setState({
21
21
  isAuthenticated: !1,
22
22
  isPending: !1,
23
23
  profile: void 0,
@@ -36,8 +36,8 @@ class c extends r {
36
36
  );
37
37
  };
38
38
  }
39
- const u = (s) => new c(s);
39
+ const h = (s) => new p(s);
40
40
  export {
41
- u as default
41
+ h as default
42
42
  };
43
43
  //# sourceMappingURL=zudoku.auth-auth0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zudoku.auth-auth0.js","sources":["../src/lib/authentication/providers/auth0.tsx"],"sourcesContent":["import type { Auth0AuthenticationConfig } from \"../../../config/config.js\";\nimport type {\n AuthActionContext,\n AuthenticationPlugin,\n AuthenticationProviderInitializer,\n} from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\nimport { OpenIDAuthenticationProvider } from \"./openid.js\";\n\nclass Auth0AuthenticationProvider\n extends OpenIDAuthenticationProvider\n implements AuthenticationPlugin\n{\n private readonly options: Auth0AuthenticationConfig[\"options\"];\n constructor(config: Auth0AuthenticationConfig) {\n super({\n ...config,\n type: \"openid\",\n issuer: `https://${config.domain}/`,\n clientId: config.clientId,\n audience: config.audience,\n scopes: config.scopes,\n });\n this.options = config.options;\n }\n\n onAuthorizationUrl = async (\n url: URL,\n { isSignUp }: { isSignUp: boolean },\n ) => {\n if (this.options?.alwaysPromptLogin !== false) {\n url.searchParams.set(\"prompt\", \"login\");\n }\n if (isSignUp) {\n url.searchParams.set(\"screen_hint\", \"signup\");\n }\n };\n\n signOut = async (_: AuthActionContext): Promise<void> => {\n const as = await this.getAuthServer();\n const idToken = await this.getAccessToken();\n\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n providerData: undefined,\n });\n\n const redirectUrl = new URL(window.location.origin);\n redirectUrl.pathname = this.redirectToAfterSignOut;\n\n // SEE: https://auth0.com/docs/authenticate/login/logout/log-users-out-of-auth0\n // For Auth0 tenants created on or after 14 November 2023, RP-Initiated\n // Logout End Session Endpoint Discovery is enabled by default.\n // Otherwise we fallback to the old non-compliant logout\n\n // The endSessionEndpoint is set, the IdP supports some form of logout,\n // so we use the IdP logout. Otherwise, just redirect the user to home\n if (as.end_session_endpoint) {\n const logoutUrl = new URL(as.end_session_endpoint);\n if (idToken) {\n logoutUrl.searchParams.set(\"id_token_hint\", idToken);\n }\n logoutUrl.searchParams.set(\n \"post_logout_redirect_uri\",\n redirectUrl.toString(),\n );\n\n // window.location.href = logoutUrl.toString();\n } else {\n const _logoutUrl = new URL(\n `${this.issuer.replace(/\\/$/, \"\")}/oidc/logout`,\n );\n // window.location.href = logoutUrl.toString();\n }\n };\n}\n\nconst auth0Auth: AuthenticationProviderInitializer<\n Auth0AuthenticationConfig\n> = (options) => new Auth0AuthenticationProvider(options);\n\nexport default auth0Auth;\n"],"names":["Auth0AuthenticationProvider","OpenIDAuthenticationProvider","config","url","isSignUp","_","as","idToken","useAuthState","redirectUrl","logoutUrl","auth0Auth","options"],"mappings":";;AASA,MAAMA,UACIC,EAEV;AAAA,EACmB;AAAA,EACjB,YAAYC,GAAmC;AAC7C,UAAM;AAAA,MACJ,GAAGA;AAAA,MACH,MAAM;AAAA,MACN,QAAQ,WAAWA,EAAO,MAAM;AAAA,MAChC,UAAUA,EAAO;AAAA,MACjB,UAAUA,EAAO;AAAA,MACjB,QAAQA,EAAO;AAAA,IAAA,CAChB,GACD,KAAK,UAAUA,EAAO;AAAA,EACxB;AAAA,EAEA,qBAAqB,OACnBC,GACA,EAAE,UAAAC,QACC;AACH,IAAI,KAAK,SAAS,sBAAsB,MACtCD,EAAI,aAAa,IAAI,UAAU,OAAO,GAEpCC,KACFD,EAAI,aAAa,IAAI,eAAe,QAAQ;AAAA,EAEhD;AAAA,EAEA,UAAU,OAAOE,MAAwC;AACvD,UAAMC,IAAK,MAAM,KAAK,cAAA,GAChBC,IAAU,MAAM,KAAK,eAAA;AAE3B,IAAAC,EAAa,SAAS;AAAA,MACpB,iBAAiB;AAAA,MACjB,WAAW;AAAA,MACX,SAAS;AAAA,MACT,cAAc;AAAA,IAAA,CACf;AAED,UAAMC,IAAc,IAAI,IAAI,OAAO,SAAS,MAAM;AAUlD,QATAA,EAAY,WAAW,KAAK,wBASxBH,EAAG,sBAAsB;AAC3B,YAAMI,IAAY,IAAI,IAAIJ,EAAG,oBAAoB;AACjD,MAAIC,KACFG,EAAU,aAAa,IAAI,iBAAiBH,CAAO,GAErDG,EAAU,aAAa;AAAA,QACrB;AAAA,QACAD,EAAY,SAAA;AAAA,MAAS;AAAA,IAIzB;AACqB,UAAI;AAAA,QACrB,GAAG,KAAK,OAAO,QAAQ,OAAO,EAAE,CAAC;AAAA,MAAA;AAAA,EAIvC;AACF;AAEA,MAAME,IAEF,CAACC,MAAY,IAAIZ,EAA4BY,CAAO;"}
1
+ {"version":3,"file":"zudoku.auth-auth0.js","sources":["../src/lib/authentication/providers/auth0.tsx"],"sourcesContent":["import type { Auth0AuthenticationConfig } from \"../../../config/config.js\";\nimport type {\n AuthActionContext,\n AuthenticationPlugin,\n AuthenticationProviderInitializer,\n} from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\nimport { OpenIDAuthenticationProvider } from \"./openid.js\";\n\nclass Auth0AuthenticationProvider\n extends OpenIDAuthenticationProvider\n implements AuthenticationPlugin\n{\n private readonly options: Auth0AuthenticationConfig[\"options\"];\n constructor(config: Auth0AuthenticationConfig) {\n super({\n ...config,\n type: \"openid\",\n issuer: `https://${config.domain}/`,\n clientId: config.clientId,\n audience: config.audience,\n scopes: config.scopes,\n });\n this.options = config.options;\n }\n\n onAuthorizationUrl = async (\n url: URL,\n { isSignUp }: { isSignUp: boolean },\n ) => {\n if (this.options?.prompt !== undefined) {\n if (this.options.prompt !== \"\") {\n url.searchParams.set(\"prompt\", this.options.prompt);\n }\n } else if (this.options?.alwaysPromptLogin !== false) {\n url.searchParams.set(\"prompt\", \"login\");\n }\n\n if (isSignUp) {\n url.searchParams.set(\"screen_hint\", \"signup\");\n }\n };\n\n signOut = async (_: AuthActionContext): Promise<void> => {\n const as = await this.getAuthServer();\n const idToken = await this.getAccessToken();\n\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n providerData: undefined,\n });\n\n const redirectUrl = new URL(window.location.origin);\n redirectUrl.pathname = this.redirectToAfterSignOut;\n\n // SEE: https://auth0.com/docs/authenticate/login/logout/log-users-out-of-auth0\n // For Auth0 tenants created on or after 14 November 2023, RP-Initiated\n // Logout End Session Endpoint Discovery is enabled by default.\n // Otherwise we fallback to the old non-compliant logout\n\n // The endSessionEndpoint is set, the IdP supports some form of logout,\n // so we use the IdP logout. Otherwise, just redirect the user to home\n if (as.end_session_endpoint) {\n const logoutUrl = new URL(as.end_session_endpoint);\n if (idToken) {\n logoutUrl.searchParams.set(\"id_token_hint\", idToken);\n }\n logoutUrl.searchParams.set(\n \"post_logout_redirect_uri\",\n redirectUrl.toString(),\n );\n\n // window.location.href = logoutUrl.toString();\n } else {\n const _logoutUrl = new URL(\n `${this.issuer.replace(/\\/$/, \"\")}/oidc/logout`,\n );\n // window.location.href = logoutUrl.toString();\n }\n };\n}\n\nconst auth0Auth: AuthenticationProviderInitializer<\n Auth0AuthenticationConfig\n> = (options) => new Auth0AuthenticationProvider(options);\n\nexport default auth0Auth;\n"],"names":["Auth0AuthenticationProvider","OpenIDAuthenticationProvider","config","url","isSignUp","_","as","idToken","useAuthState","redirectUrl","logoutUrl","auth0Auth","options"],"mappings":";;AASA,MAAMA,UACIC,EAEV;AAAA,EACmB;AAAA,EACjB,YAAYC,GAAmC;AAC7C,UAAM;AAAA,MACJ,GAAGA;AAAA,MACH,MAAM;AAAA,MACN,QAAQ,WAAWA,EAAO,MAAM;AAAA,MAChC,UAAUA,EAAO;AAAA,MACjB,UAAUA,EAAO;AAAA,MACjB,QAAQA,EAAO;AAAA,IAAA,CAChB,GACD,KAAK,UAAUA,EAAO;AAAA,EACxB;AAAA,EAEA,qBAAqB,OACnBC,GACA,EAAE,UAAAC,QACC;AACH,IAAI,KAAK,SAAS,WAAW,SACvB,KAAK,QAAQ,WAAW,MAC1BD,EAAI,aAAa,IAAI,UAAU,KAAK,QAAQ,MAAM,IAE3C,KAAK,SAAS,sBAAsB,MAC7CA,EAAI,aAAa,IAAI,UAAU,OAAO,GAGpCC,KACFD,EAAI,aAAa,IAAI,eAAe,QAAQ;AAAA,EAEhD;AAAA,EAEA,UAAU,OAAOE,MAAwC;AACvD,UAAMC,IAAK,MAAM,KAAK,cAAA,GAChBC,IAAU,MAAM,KAAK,eAAA;AAE3B,IAAAC,EAAa,SAAS;AAAA,MACpB,iBAAiB;AAAA,MACjB,WAAW;AAAA,MACX,SAAS;AAAA,MACT,cAAc;AAAA,IAAA,CACf;AAED,UAAMC,IAAc,IAAI,IAAI,OAAO,SAAS,MAAM;AAUlD,QATAA,EAAY,WAAW,KAAK,wBASxBH,EAAG,sBAAsB;AAC3B,YAAMI,IAAY,IAAI,IAAIJ,EAAG,oBAAoB;AACjD,MAAIC,KACFG,EAAU,aAAa,IAAI,iBAAiBH,CAAO,GAErDG,EAAU,aAAa;AAAA,QACrB;AAAA,QACAD,EAAY,SAAA;AAAA,MAAS;AAAA,IAIzB;AACqB,UAAI;AAAA,QACrB,GAAG,KAAK,OAAO,QAAQ,OAAO,EAAE,CAAC;AAAA,MAAA;AAAA,EAIvC;AACF;AAEA,MAAME,IAEF,CAACC,MAAY,IAAIZ,EAA4BY,CAAO;"}
@@ -1,10 +1,10 @@
1
1
  import { j as n } from "./jsx-runtime-BzflLqGi.js";
2
2
  import { PublicClientApplication as A, EventType as f } from "@azure/msal-browser";
3
- import { E as I } from "./index-B1rmok4X.js";
3
+ import { E as I } from "./index-mfkNWYG-.js";
4
4
  import { C as T } from "./ClientOnly-E7hGysn1.js";
5
- import { j as S, u as h } from "./ZudokuContext-BUZ5hkWB.js";
6
- import { C, A as c } from "./errors-CuGgh3hf.js";
7
- import { C as k, O as w } from "./OAuthErrorPage-BycMozgn.js";
5
+ import { j as S, u as h } from "./ZudokuContext-np1wheDl.js";
6
+ import { C, A as c } from "./errors-B0hNTPFO.js";
7
+ import { C as k, O as w } from "./OAuthErrorPage-Dup79DJk.js";
8
8
  const u = "/oauth/callback";
9
9
  class y extends C {
10
10
  msalInstance;
@@ -1,7 +1,7 @@
1
1
  import { j as l } from "./jsx-runtime-BzflLqGi.js";
2
2
  import { LogOutIcon as f } from "lucide-react";
3
- import { S as w, a as p, b as v } from "./SignUp-6SGx9Yyq.js";
4
- import { u as n } from "./ZudokuContext-BUZ5hkWB.js";
3
+ import { S as w, a as p, b as v } from "./SignUp-Pm_LGm6T.js";
4
+ import { u as n } from "./ZudokuContext-np1wheDl.js";
5
5
  const b = ({
6
6
  clerkPubKey: d,
7
7
  jwtTemplateName: m,
@@ -1,10 +1,10 @@
1
1
  import { j as D } from "./jsx-runtime-BzflLqGi.js";
2
- import { g as Le } from "./invariant-Bm-FVUQE.js";
3
- import { E as Ue } from "./index-B1rmok4X.js";
2
+ import { a as Le } from "./invariant-CGOLuIIz.js";
3
+ import { E as Ue } from "./index-mfkNWYG-.js";
4
4
  import { C as xe } from "./ClientOnly-E7hGysn1.js";
5
- import { j as Ce, u as S } from "./ZudokuContext-BUZ5hkWB.js";
6
- import { C as Ie, O as re, A as R } from "./errors-CuGgh3hf.js";
7
- import { C as je, O as Oe } from "./OAuthErrorPage-BycMozgn.js";
5
+ import { j as Ce, u as S } from "./ZudokuContext-np1wheDl.js";
6
+ import { C as Ie, O as re, A as R } from "./errors-B0hNTPFO.js";
7
+ import { C as je, O as Oe } from "./OAuthErrorPage-Dup79DJk.js";
8
8
  var J = { exports: {} }, De = J.exports, oe;
9
9
  function Je() {
10
10
  return oe || (oe = 1, (function(t) {
@@ -1,28 +1,28 @@
1
- import { j as a } from "./jsx-runtime-BzflLqGi.js";
1
+ import { j as i } from "./jsx-runtime-BzflLqGi.js";
2
2
  import { createClient as h } from "@supabase/supabase-js";
3
- import { C as m, A as g } from "./errors-CuGgh3hf.js";
4
- import { S as v } from "./SignUp-6SGx9Yyq.js";
5
- import { u as d } from "./ZudokuContext-BUZ5hkWB.js";
6
- import { Auth as f } from "@supabase/auth-ui-react";
3
+ import { C as m, A as g } from "./errors-B0hNTPFO.js";
4
+ import { S as f } from "./SignUp-Pm_LGm6T.js";
5
+ import { u } from "./ZudokuContext-np1wheDl.js";
6
+ import { Auth as v } from "@supabase/auth-ui-react";
7
7
  import { ThemeSupa as S } from "@supabase/auth-ui-shared";
8
- import { a as A } from "./chunk-PVWAREVJ-BMhpCH5D.js";
9
- import { H as T } from "./ErrorAlert-DE3Sf66a.js";
10
- const c = ({
11
- client: n,
8
+ import { b as A } from "./chunk-PVWAREVJ-dLIqswPy.js";
9
+ import { H as T } from "./ErrorAlert-BqjbNHIn.js";
10
+ const d = ({
11
+ client: s,
12
12
  config: e,
13
13
  view: t = "sign_in"
14
14
  }) => {
15
- const [r] = A(), s = r.get("redirectTo"), u = e.provider ? [e.provider] : e.providers, i = e.basePath ?? "/", o = s ?? e.redirectToAfterSignUp ?? i, p = s ?? e.redirectToAfterSignIn ?? i, l = s ?? e.redirectToAfterSignOut ?? i;
16
- return /* @__PURE__ */ a.jsx("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ a.jsxs("div", { className: "max-w-md w-full mt-10", children: [
17
- /* @__PURE__ */ a.jsx(T, { level: 1, children: t === "sign_in" ? "Sign in" : "Sign up" }),
18
- /* @__PURE__ */ a.jsx(
19
- f,
15
+ const [r] = A(), a = r.get("redirectTo"), n = e.provider ? [e.provider] : e.providers, o = e.basePath ?? "/", c = a ?? e.redirectToAfterSignUp ?? o, l = a ?? e.redirectToAfterSignIn ?? o, p = a ?? e.redirectToAfterSignOut ?? o;
16
+ return /* @__PURE__ */ i.jsx("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ i.jsxs("div", { className: "max-w-md w-full mt-10", children: [
17
+ /* @__PURE__ */ i.jsx(T, { level: 1, children: t === "sign_in" ? "Sign in" : "Sign up" }),
18
+ /* @__PURE__ */ i.jsx(
19
+ v,
20
20
  {
21
21
  view: t,
22
- redirectToAfterSignIn: p,
23
- redirectToAfterSignUp: o,
24
- redirectToAfterSignOut: l,
25
- supabaseClient: n,
22
+ redirectToAfterSignIn: l,
23
+ redirectToAfterSignUp: c,
24
+ redirectToAfterSignOut: p,
25
+ supabaseClient: s,
26
26
  onlyThirdPartyProviders: e.onlyThirdPartyProviders,
27
27
  appearance: {
28
28
  theme: S,
@@ -48,7 +48,7 @@ const c = ({
48
48
  }
49
49
  }
50
50
  },
51
- providers: u,
51
+ providers: n,
52
52
  redirectTo: e.redirectToAfterSignIn ?? "/"
53
53
  }
54
54
  )
@@ -56,19 +56,16 @@ const c = ({
56
56
  };
57
57
  class b extends m {
58
58
  client;
59
- providers;
60
59
  config;
61
60
  constructor(e) {
62
- const { provider: t, providers: r, supabaseUrl: s, supabaseKey: u } = e;
63
- if (super(), this.providers = r ?? (t ? [t] : []), this.providers.length === 0)
64
- throw new Error("At least one provider must be provided");
65
- this.client = h(s, u, {
61
+ const { supabaseUrl: t, supabaseKey: r } = e;
62
+ super(), this.client = h(t, r, {
66
63
  auth: {
67
64
  autoRefreshToken: !0,
68
65
  persistSession: !0
69
66
  }
70
- }), this.config = e, this.client.auth.onAuthStateChange(async (i, o) => {
71
- o && (i === "SIGNED_IN" || i === "TOKEN_REFRESHED") ? await this.updateUserState(o) : i === "SIGNED_OUT" && d.getState().setLoggedOut();
67
+ }), this.config = e, this.client.auth.onAuthStateChange(async (a, n) => {
68
+ n && (a === "SIGNED_IN" || a === "TOKEN_REFRESHED") ? await this.updateUserState(n) : a === "SIGNED_OUT" && u.getState().setLoggedOut();
72
69
  });
73
70
  }
74
71
  async updateUserState(e) {
@@ -79,7 +76,7 @@ class b extends m {
79
76
  emailVerified: t.email_confirmed_at != null,
80
77
  pictureUrl: t.user_metadata.avatar_url
81
78
  };
82
- d.getState().setLoggedIn({
79
+ u.getState().setLoggedIn({
83
80
  profile: r,
84
81
  providerData: { session: e }
85
82
  });
@@ -107,8 +104,8 @@ class b extends m {
107
104
  getRoutes = () => [
108
105
  {
109
106
  path: "/signin",
110
- element: /* @__PURE__ */ a.jsx(
111
- c,
107
+ element: /* @__PURE__ */ i.jsx(
108
+ d,
112
109
  {
113
110
  view: "sign_in",
114
111
  client: this.client,
@@ -118,8 +115,8 @@ class b extends m {
118
115
  },
119
116
  {
120
117
  path: "/signup",
121
- element: /* @__PURE__ */ a.jsx(
122
- c,
118
+ element: /* @__PURE__ */ i.jsx(
119
+ d,
123
120
  {
124
121
  view: "sign_up",
125
122
  client: this.client,
@@ -129,7 +126,7 @@ class b extends m {
129
126
  },
130
127
  {
131
128
  path: "/signout",
132
- element: /* @__PURE__ */ a.jsx(v, {})
129
+ element: /* @__PURE__ */ i.jsx(f, {})
133
130
  }
134
131
  ];
135
132
  signOut = async () => {
@@ -138,7 +135,7 @@ class b extends m {
138
135
  r === "SIGNED_OUT" && (t.subscription.unsubscribe(), e());
139
136
  });
140
137
  this.client.auth.signOut();
141
- }), d.setState({
138
+ }), u.setState({
142
139
  isAuthenticated: !1,
143
140
  isPending: !1,
144
141
  profile: void 0,
@@ -150,7 +147,7 @@ class b extends m {
150
147
  !t && e.session && await this.updateUserState(e.session);
151
148
  };
152
149
  }
153
- const j = (n) => new b(n);
150
+ const j = (s) => new b(s);
154
151
  export {
155
152
  j as default
156
153
  };
@@ -1 +1 @@
1
- {"version":3,"file":"zudoku.auth-supabase.js","sources":["../src/lib/authentication/providers/supabase/SupabaseAuthUI.tsx","../src/lib/authentication/providers/supabase.tsx"],"sourcesContent":["import { Auth } from \"@supabase/auth-ui-react\";\nimport {\n ThemeSupa,\n type ThemeVariables,\n type ViewType,\n} from \"@supabase/auth-ui-shared\";\nimport type { SupabaseClient } from \"@supabase/supabase-js\";\nimport { useSearchParams } from \"react-router\";\nimport type { SupabaseAuthenticationConfig } from \"../../../../config/config.js\";\nimport { Heading } from \"../../../components/Heading.js\";\n\nexport const SupabaseAuthUI = ({\n client,\n config,\n view = \"sign_in\",\n}: {\n client: SupabaseClient;\n config: SupabaseAuthenticationConfig;\n view: ViewType;\n}) => {\n const [searchParams] = useSearchParams();\n const redirectTo = searchParams.get(\"redirectTo\");\n const providers = config.provider ? [config.provider] : config.providers;\n const root = config.basePath ?? \"/\";\n const redirectToAfterSignUp =\n redirectTo ?? config.redirectToAfterSignUp ?? root;\n const redirectToAfterSignIn =\n redirectTo ?? config.redirectToAfterSignIn ?? root;\n const redirectToAfterSignOut =\n redirectTo ?? config.redirectToAfterSignOut ?? root;\n\n return (\n <div className=\"flex items-center justify-center\">\n <div className=\"max-w-md w-full mt-10\">\n <Heading level={1}>\n {view === \"sign_in\" ? \"Sign in\" : \"Sign up\"}\n </Heading>\n <Auth\n view={view}\n redirectToAfterSignIn={redirectToAfterSignIn}\n redirectToAfterSignUp={redirectToAfterSignUp}\n redirectToAfterSignOut={redirectToAfterSignOut}\n supabaseClient={client}\n onlyThirdPartyProviders={config.onlyThirdPartyProviders}\n appearance={{\n theme: ThemeSupa,\n variables: {\n default: {\n colors: {\n dividerBackground: \"var(--border)\",\n brand: \"var(--primary)\",\n brandAccent: \"hsla(from var(--primary) h s l / 0.8)\",\n brandButtonText: \"var(--primary-foreground)\",\n defaultButtonBorder: \"var(--border)\",\n inputBorder: \"var(--border)\",\n inputText: \"var(--foreground)\",\n inputBorderHover: \"var(--accent)\",\n defaultButtonBackground: \"var(--secondary)\",\n defaultButtonBackgroundHover: \"var(--accent)\",\n },\n radii: {\n borderRadiusButton: \"var(--radius)\",\n buttonBorderRadius: \"var(--radius)\",\n inputBorderRadius: \"var(--radius)\",\n },\n } satisfies ThemeVariables,\n },\n }}\n providers={providers}\n redirectTo={config.redirectToAfterSignIn ?? \"/\"}\n />\n </div>\n </div>\n );\n};\n","import {\n createClient,\n type Provider,\n type Session,\n type SupabaseClient,\n} from \"@supabase/supabase-js\";\nimport type { SupabaseAuthenticationConfig } from \"../../../config/config.js\";\nimport { CoreAuthenticationPlugin } from \"../AuthenticationPlugin.js\";\nimport type {\n AuthActionContext,\n AuthActionOptions,\n AuthenticationPlugin,\n AuthenticationProviderInitializer,\n} from \"../authentication.js\";\nimport { SignOut } from \"../components/SignOut.js\";\nimport { AuthorizationError } from \"../errors.js\";\nimport { type UserProfile, useAuthState } from \"../state.js\";\nimport { SupabaseAuthUI } from \"./supabase/SupabaseAuthUI.js\";\n\nclass SupabaseAuthenticationProvider\n extends CoreAuthenticationPlugin\n implements AuthenticationPlugin\n{\n private readonly client: SupabaseClient;\n private readonly providers: Provider[];\n private readonly config: SupabaseAuthenticationConfig;\n\n constructor(config: SupabaseAuthenticationConfig) {\n const { provider, providers, supabaseUrl, supabaseKey } = config;\n super();\n this.providers = providers ?? (provider ? [provider] : []);\n if (this.providers.length === 0) {\n throw new Error(\"At least one provider must be provided\");\n }\n this.client = createClient(supabaseUrl, supabaseKey, {\n auth: {\n autoRefreshToken: true,\n persistSession: true,\n },\n });\n this.config = config;\n\n this.client.auth.onAuthStateChange(async (event, session) => {\n if (session && (event === \"SIGNED_IN\" || event === \"TOKEN_REFRESHED\")) {\n await this.updateUserState(session);\n } else if (event === \"SIGNED_OUT\") {\n useAuthState.getState().setLoggedOut();\n }\n });\n }\n\n private async updateUserState(session: Session) {\n const { user } = session;\n\n const profile: UserProfile = {\n sub: user.id,\n email: user.email,\n name: user.user_metadata.full_name || user.user_metadata.name,\n emailVerified: user.email_confirmed_at != null,\n pictureUrl: user.user_metadata.avatar_url,\n };\n\n useAuthState.getState().setLoggedIn({\n profile,\n providerData: { session },\n });\n }\n\n async getAccessToken(): Promise<string> {\n const { data, error } = await this.client.auth.getSession();\n\n if (error || !data.session) {\n throw new AuthorizationError(\"User is not authenticated\");\n }\n\n return data.session.access_token;\n }\n\n async signRequest(request: Request): Promise<Request> {\n const accessToken = await this.getAccessToken();\n request.headers.set(\"Authorization\", `Bearer ${accessToken}`);\n return request;\n }\n\n signUp = async (\n { navigate }: AuthActionContext,\n { redirectTo }: AuthActionOptions,\n ) => {\n void navigate(\n redirectTo\n ? `/signup?redirectTo=${encodeURIComponent(redirectTo)}`\n : `/signup`,\n );\n };\n\n signIn = async (\n { navigate }: AuthActionContext,\n { redirectTo }: AuthActionOptions,\n ) => {\n void navigate(\n redirectTo\n ? `/signin?redirectTo=${encodeURIComponent(redirectTo)}`\n : `/signin`,\n );\n };\n\n getRoutes = () => {\n return [\n {\n path: \"/signin\",\n element: (\n <SupabaseAuthUI\n view=\"sign_in\"\n client={this.client}\n config={this.config}\n />\n ),\n },\n {\n path: \"/signup\",\n element: (\n <SupabaseAuthUI\n view=\"sign_up\"\n client={this.client}\n config={this.config}\n />\n ),\n },\n {\n path: \"/signout\",\n element: <SignOut />,\n },\n ];\n };\n\n signOut = async () => {\n await new Promise<void>((resolve) => {\n const { data } = this.client.auth.onAuthStateChange(async (event) => {\n if (event !== \"SIGNED_OUT\") return;\n data.subscription.unsubscribe();\n resolve();\n });\n void this.client.auth.signOut();\n });\n\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n providerData: undefined,\n });\n };\n\n onPageLoad = async () => {\n const { data, error } = await this.client.auth.getSession();\n\n if (!error && data.session) {\n await this.updateUserState(data.session);\n }\n };\n}\n\nconst supabaseAuth: AuthenticationProviderInitializer<\n SupabaseAuthenticationConfig\n> = (options) => new SupabaseAuthenticationProvider(options);\n\nexport default supabaseAuth;\n"],"names":["SupabaseAuthUI","client","config","view","searchParams","useSearchParams","redirectTo","providers","root","redirectToAfterSignUp","redirectToAfterSignIn","redirectToAfterSignOut","jsxs","jsx","Heading","Auth","ThemeSupa","SupabaseAuthenticationProvider","CoreAuthenticationPlugin","provider","supabaseUrl","supabaseKey","createClient","event","session","useAuthState","user","profile","data","error","AuthorizationError","request","accessToken","navigate","SignOut","resolve","supabaseAuth","options"],"mappings":"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"}
1
+ {"version":3,"file":"zudoku.auth-supabase.js","sources":["../src/lib/authentication/providers/supabase/SupabaseAuthUI.tsx","../src/lib/authentication/providers/supabase.tsx"],"sourcesContent":["import { Auth } from \"@supabase/auth-ui-react\";\nimport {\n ThemeSupa,\n type ThemeVariables,\n type ViewType,\n} from \"@supabase/auth-ui-shared\";\nimport type { SupabaseClient } from \"@supabase/supabase-js\";\nimport { useSearchParams } from \"react-router\";\nimport type { SupabaseAuthenticationConfig } from \"../../../../config/config.js\";\nimport { Heading } from \"../../../components/Heading.js\";\n\nexport const SupabaseAuthUI = ({\n client,\n config,\n view = \"sign_in\",\n}: {\n client: SupabaseClient;\n config: SupabaseAuthenticationConfig;\n view: ViewType;\n}) => {\n const [searchParams] = useSearchParams();\n const redirectTo = searchParams.get(\"redirectTo\");\n const providers = config.provider ? [config.provider] : config.providers;\n const root = config.basePath ?? \"/\";\n const redirectToAfterSignUp =\n redirectTo ?? config.redirectToAfterSignUp ?? root;\n const redirectToAfterSignIn =\n redirectTo ?? config.redirectToAfterSignIn ?? root;\n const redirectToAfterSignOut =\n redirectTo ?? config.redirectToAfterSignOut ?? root;\n\n return (\n <div className=\"flex items-center justify-center\">\n <div className=\"max-w-md w-full mt-10\">\n <Heading level={1}>\n {view === \"sign_in\" ? \"Sign in\" : \"Sign up\"}\n </Heading>\n <Auth\n view={view}\n redirectToAfterSignIn={redirectToAfterSignIn}\n redirectToAfterSignUp={redirectToAfterSignUp}\n redirectToAfterSignOut={redirectToAfterSignOut}\n supabaseClient={client}\n onlyThirdPartyProviders={config.onlyThirdPartyProviders}\n appearance={{\n theme: ThemeSupa,\n variables: {\n default: {\n colors: {\n dividerBackground: \"var(--border)\",\n brand: \"var(--primary)\",\n brandAccent: \"hsla(from var(--primary) h s l / 0.8)\",\n brandButtonText: \"var(--primary-foreground)\",\n defaultButtonBorder: \"var(--border)\",\n inputBorder: \"var(--border)\",\n inputText: \"var(--foreground)\",\n inputBorderHover: \"var(--accent)\",\n defaultButtonBackground: \"var(--secondary)\",\n defaultButtonBackgroundHover: \"var(--accent)\",\n },\n radii: {\n borderRadiusButton: \"var(--radius)\",\n buttonBorderRadius: \"var(--radius)\",\n inputBorderRadius: \"var(--radius)\",\n },\n } satisfies ThemeVariables,\n },\n }}\n providers={providers}\n redirectTo={config.redirectToAfterSignIn ?? \"/\"}\n />\n </div>\n </div>\n );\n};\n","import {\n createClient,\n type Session,\n type SupabaseClient,\n} from \"@supabase/supabase-js\";\nimport type { SupabaseAuthenticationConfig } from \"../../../config/config.js\";\nimport { CoreAuthenticationPlugin } from \"../AuthenticationPlugin.js\";\nimport type {\n AuthActionContext,\n AuthActionOptions,\n AuthenticationPlugin,\n AuthenticationProviderInitializer,\n} from \"../authentication.js\";\nimport { SignOut } from \"../components/SignOut.js\";\nimport { AuthorizationError } from \"../errors.js\";\nimport { type UserProfile, useAuthState } from \"../state.js\";\nimport { SupabaseAuthUI } from \"./supabase/SupabaseAuthUI.js\";\n\nclass SupabaseAuthenticationProvider\n extends CoreAuthenticationPlugin\n implements AuthenticationPlugin\n{\n private readonly client: SupabaseClient;\n private readonly config: SupabaseAuthenticationConfig;\n\n constructor(config: SupabaseAuthenticationConfig) {\n const { supabaseUrl, supabaseKey } = config;\n super();\n\n this.client = createClient(supabaseUrl, supabaseKey, {\n auth: {\n autoRefreshToken: true,\n persistSession: true,\n },\n });\n this.config = config;\n\n this.client.auth.onAuthStateChange(async (event, session) => {\n if (session && (event === \"SIGNED_IN\" || event === \"TOKEN_REFRESHED\")) {\n await this.updateUserState(session);\n } else if (event === \"SIGNED_OUT\") {\n useAuthState.getState().setLoggedOut();\n }\n });\n }\n\n private async updateUserState(session: Session) {\n const { user } = session;\n\n const profile: UserProfile = {\n sub: user.id,\n email: user.email,\n name: user.user_metadata.full_name || user.user_metadata.name,\n emailVerified: user.email_confirmed_at != null,\n pictureUrl: user.user_metadata.avatar_url,\n };\n\n useAuthState.getState().setLoggedIn({\n profile,\n providerData: { session },\n });\n }\n\n async getAccessToken(): Promise<string> {\n const { data, error } = await this.client.auth.getSession();\n\n if (error || !data.session) {\n throw new AuthorizationError(\"User is not authenticated\");\n }\n\n return data.session.access_token;\n }\n\n async signRequest(request: Request): Promise<Request> {\n const accessToken = await this.getAccessToken();\n request.headers.set(\"Authorization\", `Bearer ${accessToken}`);\n return request;\n }\n\n signUp = async (\n { navigate }: AuthActionContext,\n { redirectTo }: AuthActionOptions,\n ) => {\n void navigate(\n redirectTo\n ? `/signup?redirectTo=${encodeURIComponent(redirectTo)}`\n : `/signup`,\n );\n };\n\n signIn = async (\n { navigate }: AuthActionContext,\n { redirectTo }: AuthActionOptions,\n ) => {\n void navigate(\n redirectTo\n ? `/signin?redirectTo=${encodeURIComponent(redirectTo)}`\n : `/signin`,\n );\n };\n\n getRoutes = () => {\n return [\n {\n path: \"/signin\",\n element: (\n <SupabaseAuthUI\n view=\"sign_in\"\n client={this.client}\n config={this.config}\n />\n ),\n },\n {\n path: \"/signup\",\n element: (\n <SupabaseAuthUI\n view=\"sign_up\"\n client={this.client}\n config={this.config}\n />\n ),\n },\n {\n path: \"/signout\",\n element: <SignOut />,\n },\n ];\n };\n\n signOut = async () => {\n await new Promise<void>((resolve) => {\n const { data } = this.client.auth.onAuthStateChange(async (event) => {\n if (event !== \"SIGNED_OUT\") return;\n data.subscription.unsubscribe();\n resolve();\n });\n void this.client.auth.signOut();\n });\n\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n providerData: undefined,\n });\n };\n\n onPageLoad = async () => {\n const { data, error } = await this.client.auth.getSession();\n\n if (!error && data.session) {\n await this.updateUserState(data.session);\n }\n };\n}\n\nconst supabaseAuth: AuthenticationProviderInitializer<\n SupabaseAuthenticationConfig\n> = (options) => new SupabaseAuthenticationProvider(options);\n\nexport default supabaseAuth;\n"],"names":["SupabaseAuthUI","client","config","view","searchParams","useSearchParams","redirectTo","providers","root","redirectToAfterSignUp","redirectToAfterSignIn","redirectToAfterSignOut","jsxs","jsx","Heading","Auth","ThemeSupa","SupabaseAuthenticationProvider","CoreAuthenticationPlugin","supabaseUrl","supabaseKey","createClient","event","session","useAuthState","user","profile","data","error","AuthorizationError","request","accessToken","navigate","SignOut","resolve","supabaseAuth","options"],"mappings":"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"}
@@ -1,14 +1,14 @@
1
- import "./index.esm-BnYHxCYC.js";
2
- import "./useExposedProps-U3pmsHaG.js";
3
- import "./chunk-PVWAREVJ-BMhpCH5D.js";
4
- import "./hook-CMeoxziF.js";
1
+ import "./index.esm-DtzT_KoE.js";
2
+ import "./index-DnMgJWrI.js";
3
+ import "./chunk-PVWAREVJ-dLIqswPy.js";
4
+ import "./hook-CvSwcbk6.js";
5
5
  import "./ui/Button.js";
6
6
  import "./ui/Callout.js";
7
7
  import "./ClientOnly-E7hGysn1.js";
8
- import "./ZudokuContext-BUZ5hkWB.js";
9
- import "./ErrorAlert-DE3Sf66a.js";
8
+ import "./ZudokuContext-np1wheDl.js";
9
+ import "./ErrorAlert-BqjbNHIn.js";
10
10
  import "./Spinner-CI6bRyZw.js";
11
- import { B as d, i as h, C as l, d as k, c as S, L as y, M, e as T, S as Z, T as c, Z as f, g, h as A, f as B, j as E, u as H } from "./index-B1rmok4X.js";
11
+ import { B as d, i as h, C as l, d as k, c as S, L as y, M, e as T, S as Z, T as c, Z as f, g, h as A, f as B, j as E, u as H } from "./index-mfkNWYG-.js";
12
12
  export {
13
13
  d as Button,
14
14
  h as CACHE_KEYS,
@@ -1,27 +1,14 @@
1
- import { z as m, u as p, a as c } from "./useExposedProps-U3pmsHaG.js";
2
- import { u as f } from "./hook-CMeoxziF.js";
3
- import { a as n, d } from "./ZudokuContext-BUZ5hkWB.js";
4
- import { C as k } from "./ZudokuContext-BUZ5hkWB.js";
5
- import { useState as E, useEffect as i } from "react";
6
- function C(e, s) {
7
- const t = n(), [r, o] = E();
8
- return i(() => t.addEventListener(e, ((...u) => {
9
- if (s) {
10
- const a = s(...u);
11
- o(a);
12
- } else
13
- o(u);
14
- })), [t, e, s]), r;
15
- }
16
- const A = C, v = m, z = p, L = c, M = f, P = n, S = d;
1
+ import { b as o, h as u, e as p, f as r, g as t, a as m, c as C } from "./index-DnMgJWrI.js";
2
+ import "./hook-CvSwcbk6.js";
3
+ import { C as E } from "./ZudokuContext-np1wheDl.js";
17
4
  export {
18
- k as CACHE_KEYS,
19
- M as useAuth,
20
- S as useCache,
21
- A as useEvent,
22
- z as useExposedProps,
23
- L as useMDXComponents,
24
- v as useTheme,
25
- P as useZudoku
5
+ E as CACHE_KEYS,
6
+ o as useAuth,
7
+ u as useCache,
8
+ p as useEvent,
9
+ r as useExposedProps,
10
+ t as useMDXComponents,
11
+ m as useTheme,
12
+ C as useZudoku
26
13
  };
27
14
  //# sourceMappingURL=zudoku.hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zudoku.hooks.js","sources":["../src/lib/hooks/useEvent.ts","../src/lib/hooks/index.ts"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { useZudoku } from \"../components/context/ZudokuContext.js\";\nimport type { ZudokuEvents } from \"../core/ZudokuContext.js\";\n\ntype EventParameters<Event extends keyof ZudokuEvents> = Parameters<\n ZudokuEvents[Event]\n>;\n\n/**\n * Hook to subscribe to Zudoku events with automatic cleanup\n * @param event The event to subscribe to\n * @param callback Optional callback to be called when the event is emitted\n * @returns The latest event data if no callback is provided, or the callback's return value if it returns something\n */\nexport function useEvent<E extends keyof ZudokuEvents>(\n event: E,\n): EventParameters<E>;\nexport function useEvent<E extends keyof ZudokuEvents, R>(\n event: E,\n callback: (...args: EventParameters<E>) => R,\n): R;\nexport function useEvent<E extends keyof ZudokuEvents, R>(\n event: E,\n callback?: (...args: EventParameters<E>) => R,\n) {\n const zudoku = useZudoku();\n const [latestData, setLatestData] = useState<R | EventParameters<E>>();\n\n useEffect(() => {\n return zudoku.addEventListener(event, ((...args: EventParameters<E>) => {\n if (callback) {\n const result = callback(...args);\n setLatestData(result);\n } else {\n setLatestData(args);\n }\n }) as ZudokuEvents[E]);\n }, [zudoku, event, callback]);\n\n return latestData;\n}\n","import { useMDXComponents as useMDXComponentsImport } from \"@mdx-js/react\";\nimport { useTheme as useThemeImport } from \"next-themes\";\nimport { useAuth as useAuthImport } from \"../authentication/hook.js\";\nimport { CACHE_KEYS, useCache as useCacheImport } from \"../components/cache.js\";\nimport { useZudoku as useZudokuImport } from \"../components/context/ZudokuContext.js\";\nimport { useExposedProps as useExposedPropsImport } from \"../util/useExposedProps.js\";\nimport { useEvent as useEventImport } from \"./useEvent.js\";\n\nexport const useEvent = /*@__PURE__*/ useEventImport;\nexport const useTheme = /*@__PURE__*/ useThemeImport;\nexport const useExposedProps = /*@__PURE__*/ useExposedPropsImport;\nexport const useMDXComponents = /*@__PURE__*/ useMDXComponentsImport;\nexport const useAuth = /*@__PURE__*/ useAuthImport;\nexport const useZudoku = /*@__PURE__*/ useZudokuImport;\nexport const useCache = /*@__PURE__*/ useCacheImport;\nexport { CACHE_KEYS };\n"],"names":["useEvent","event","callback","zudoku","useZudoku","latestData","setLatestData","useState","useEffect","args","result","useEventImport","useTheme","useThemeImport","useExposedProps","useExposedPropsImport","useMDXComponents","useMDXComponentsImport","useAuth","useAuthImport","useZudokuImport","useCache","useCacheImport"],"mappings":";;;;;AAqBO,SAASA,EACdC,GACAC,GACA;AACA,QAAMC,IAASC,EAAA,GACT,CAACC,GAAYC,CAAa,IAAIC,EAAA;AAEpC,SAAAC,EAAU,MACDL,EAAO,iBAAiBF,IAAQ,IAAIQ,MAA6B;AACtE,QAAIP,GAAU;AACZ,YAAMQ,IAASR,EAAS,GAAGO,CAAI;AAC/B,MAAAH,EAAcI,CAAM;AAAA,IACtB;AACE,MAAAJ,EAAcG,CAAI;AAAA,EAEtB,EAAA,GACC,CAACN,GAAQF,GAAOC,CAAQ,CAAC,GAErBG;AACT;AChCO,MAAML,IAAyBW,GACzBC,IAAyBC,GACzBC,IAAgCC,GAChCC,IAAiCC,GACjCC,IAAwBC,GACxBf,IAA0BgB,GAC1BC,IAAyBC;"}
1
+ {"version":3,"file":"zudoku.hooks.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -0,0 +1,10 @@
1
+ import "./jsx-runtime-BzflLqGi.js";
2
+ import "./ZudokuContext-np1wheDl.js";
3
+ import "react";
4
+ import { M as e } from "./Mermaid-CIFixY6C.js";
5
+ import "./index-DnMgJWrI.js";
6
+ import "./Spinner-CI6bRyZw.js";
7
+ export {
8
+ e as Mermaid
9
+ };
10
+ //# sourceMappingURL=zudoku.mermaid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zudoku.mermaid.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -1,10 +1,10 @@
1
1
  import { j as t } from "./jsx-runtime-BzflLqGi.js";
2
- import { s as f } from "./index-rYHsvtTo.js";
3
- import { e as b, m as j } from "./chunk-PVWAREVJ-BMhpCH5D.js";
4
- import { u as x, b as v, j as d } from "./ZudokuContext-BUZ5hkWB.js";
5
- import { H as y } from "./index.esm-BnYHxCYC.js";
6
- import { L as N } from "./index-B1rmok4X.js";
7
- import { H as k, M as S } from "./ErrorAlert-DE3Sf66a.js";
2
+ import { s as f } from "./index-DscsS121.js";
3
+ import { e as b, m as j } from "./chunk-PVWAREVJ-dLIqswPy.js";
4
+ import { u as x, e as v, j as d } from "./ZudokuContext-np1wheDl.js";
5
+ import { H as y } from "./index.esm-DtzT_KoE.js";
6
+ import { L as N } from "./index-mfkNWYG-.js";
7
+ import { H as k, M as S } from "./ErrorAlert-BqjbNHIn.js";
8
8
  const w = ({
9
9
  items: o,
10
10
  filterCatalogItems: r = (i) => i,