zudoku 0.3.0-dev.55 → 0.3.0-dev.56

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 (143) hide show
  1. package/dist/config/validators/validate.d.ts +12 -12
  2. package/dist/lib/components/DeveloperHint.d.ts +5 -0
  3. package/dist/lib/components/DeveloperHint.js +10 -0
  4. package/dist/lib/components/DeveloperHint.js.map +1 -0
  5. package/dist/lib/components/NotFoundPage.js +2 -2
  6. package/dist/lib/components/NotFoundPage.js.map +1 -1
  7. package/dist/lib/plugins/api-keys/ProtectedRoute.d.ts +1 -0
  8. package/dist/lib/plugins/api-keys/ProtectedRoute.js +14 -0
  9. package/dist/lib/plugins/api-keys/ProtectedRoute.js.map +1 -0
  10. package/dist/lib/plugins/api-keys/index.js +2 -12
  11. package/dist/lib/plugins/api-keys/index.js.map +1 -1
  12. package/dist/lib/plugins/openapi/OperationList.js +2 -2
  13. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  14. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +3 -3
  15. package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
  16. package/lib/AnchorLink-GNsUeGSX.js +705 -0
  17. package/lib/{AnchorLink-BaXHjhF-.js.map → AnchorLink-GNsUeGSX.js.map} +1 -1
  18. package/lib/Button-DpHMZvVs.js +4571 -0
  19. package/lib/Button-DpHMZvVs.js.map +1 -0
  20. package/lib/DevPortalProvider-Do9oJqme.js +1081 -0
  21. package/lib/{DevPortalProvider-GjdO0Xr-.js.map → DevPortalProvider-Do9oJqme.js.map} +1 -1
  22. package/lib/Markdown-DtLFdxD1.js +15031 -0
  23. package/lib/Markdown-DtLFdxD1.js.map +1 -0
  24. package/lib/MdxPage-CbwYRKf5.js +190 -0
  25. package/lib/{MdxPage-Dlujuj-J.js.map → MdxPage-CbwYRKf5.js.map} +1 -1
  26. package/lib/OperationList-DpR4KzIJ.js +5570 -0
  27. package/lib/OperationList-DpR4KzIJ.js.map +1 -0
  28. package/lib/Route-C1LyvITr.js +13 -0
  29. package/lib/{Route-CR6TEwVC.js.map → Route-C1LyvITr.js.map} +1 -1
  30. package/lib/Spinner-Bhbs5aPI.js +182 -0
  31. package/lib/Spinner-Bhbs5aPI.js.map +1 -0
  32. package/lib/_commonjsHelpers-BVfed4GL.js +29 -0
  33. package/lib/_commonjsHelpers-BVfed4GL.js.map +1 -0
  34. package/lib/assets/index-BPdJm2ty.js +4765 -0
  35. package/lib/assets/{index-CpIig0AX.js.map → index-BPdJm2ty.js.map} +1 -1
  36. package/lib/assets/worker-BjPv-hjP.js +14897 -0
  37. package/lib/assets/{worker-B5k2aBV9.js.map → worker-BjPv-hjP.js.map} +1 -1
  38. package/lib/context-_fYfJFgk.js +14 -0
  39. package/lib/{context-BoN_3uxi.js.map → context-_fYfJFgk.js.map} +1 -1
  40. package/lib/hook-Biq3zYel.js +92 -0
  41. package/lib/hook-Biq3zYel.js.map +1 -0
  42. package/lib/{index-Dih8IAqw.js → index-DZ910ttL.js} +83 -103
  43. package/lib/{index-Dih8IAqw.js.map → index-DZ910ttL.js.map} +1 -1
  44. package/lib/index-gsAuUwQh.js +418 -0
  45. package/lib/index-gsAuUwQh.js.map +1 -0
  46. package/lib/index-pI9JkN46.js +4765 -0
  47. package/lib/{index-Bn03IPZt.js.map → index-pI9JkN46.js.map} +1 -1
  48. package/lib/jsx-runtime-CJZJivg2.js +1526 -0
  49. package/lib/{jsx-runtime-DvZ6OKMM.js.map → jsx-runtime-CJZJivg2.js.map} +1 -1
  50. package/lib/prism-bash.min-DadFsM4Z.js +7 -0
  51. package/lib/{prism-bash.min-BtBk0onv.js.map → prism-bash.min-DadFsM4Z.js.map} +1 -1
  52. package/lib/prism-csharp.min-Yizuc34Y.js +35 -0
  53. package/lib/{prism-csharp.min-Cv7D49bv.js.map → prism-csharp.min-Yizuc34Y.js.map} +1 -1
  54. package/lib/prism-java.min-d5iT_mOd.js +7 -0
  55. package/lib/{prism-java.min-tNK-JX6x.js.map → prism-java.min-d5iT_mOd.js.map} +1 -1
  56. package/lib/prism-json.min-B1GJqK1k.js +2 -0
  57. package/lib/{prism-json.min-Cdtv-CME.js.map → prism-json.min-B1GJqK1k.js.map} +1 -1
  58. package/lib/prism-markup-templating-DZrrEs0A.js +62 -0
  59. package/lib/{prism-markup-templating-iotg2sCU.js.map → prism-markup-templating-DZrrEs0A.js.map} +1 -1
  60. package/lib/prism-objectivec.min-BXSWqpJJ.js +2 -0
  61. package/lib/{prism-objectivec.min-CY4WGixz.js.map → prism-objectivec.min-BXSWqpJJ.js.map} +1 -1
  62. package/lib/prism-php.min-o7FpoMP_.js +11 -0
  63. package/lib/{prism-php.min-T6sIVgED.js.map → prism-php.min-o7FpoMP_.js.map} +1 -1
  64. package/lib/prism-ruby.min-C7LwcKyz.js +10 -0
  65. package/lib/{prism-ruby.min-B-2KAa4y.js.map → prism-ruby.min-C7LwcKyz.js.map} +1 -1
  66. package/lib/router-CBw2vqJE.js +2973 -0
  67. package/lib/{router-ButO1QyY.js.map → router-CBw2vqJE.js.map} +1 -1
  68. package/lib/slugify-CiPVjteN.js +28 -0
  69. package/lib/{slugify-CmS97Vy8.js.map → slugify-CiPVjteN.js.map} +1 -1
  70. package/lib/state-DKdaQzvh.js +288 -0
  71. package/lib/{state-CmGfNKhR.js.map → state-DKdaQzvh.js.map} +1 -1
  72. package/lib/urql-DMlBWUKL.js +1592 -0
  73. package/lib/{urql-DtVKPBx_.js.map → urql-DMlBWUKL.js.map} +1 -1
  74. package/lib/util-_jwUlTBU.js +41 -0
  75. package/lib/{util-B5KX4h4M.js.map → util-_jwUlTBU.js.map} +1 -1
  76. package/lib/zudoku.auth-auth0.js +18 -24
  77. package/lib/zudoku.auth-auth0.js.map +1 -1
  78. package/lib/zudoku.auth-clerk.js +34 -43
  79. package/lib/zudoku.auth-clerk.js.map +1 -1
  80. package/lib/zudoku.auth-openid.js +734 -1121
  81. package/lib/zudoku.auth-openid.js.map +1 -1
  82. package/lib/zudoku.components.js +822 -1076
  83. package/lib/zudoku.components.js.map +1 -1
  84. package/lib/zudoku.openapi-worker.js +9691 -13786
  85. package/lib/zudoku.openapi-worker.js.map +1 -1
  86. package/lib/zudoku.plugin-api-keys.js +171 -208
  87. package/lib/zudoku.plugin-api-keys.js.map +1 -1
  88. package/lib/zudoku.plugin-markdown.js +33 -41
  89. package/lib/zudoku.plugin-markdown.js.map +1 -1
  90. package/lib/zudoku.plugin-openapi.js +6 -6
  91. package/lib/zudoku.plugin-redirect.js +8 -10
  92. package/lib/zudoku.plugin-redirect.js.map +1 -1
  93. package/package.json +1 -1
  94. package/src/lib/components/DeveloperHint.tsx +25 -0
  95. package/src/lib/components/NotFoundPage.tsx +8 -14
  96. package/src/lib/plugins/api-keys/ProtectedRoute.tsx +29 -0
  97. package/src/lib/plugins/api-keys/index.tsx +2 -21
  98. package/src/lib/plugins/openapi/OperationList.tsx +5 -8
  99. package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +3 -5
  100. package/lib/AnchorLink-BaXHjhF-.js +0 -989
  101. package/lib/Combination-BfufJFkX.js +0 -1365
  102. package/lib/Combination-BfufJFkX.js.map +0 -1
  103. package/lib/DevPortalProvider-GjdO0Xr-.js +0 -1610
  104. package/lib/Markdown-B8nPVql1.js +0 -19708
  105. package/lib/Markdown-B8nPVql1.js.map +0 -1
  106. package/lib/MdxPage-Dlujuj-J.js +0 -223
  107. package/lib/OperationList-krPgt6sE.js +0 -8041
  108. package/lib/OperationList-krPgt6sE.js.map +0 -1
  109. package/lib/Playground-DOHxca0P.js +0 -539
  110. package/lib/Playground-DOHxca0P.js.map +0 -1
  111. package/lib/Route-CR6TEwVC.js +0 -13
  112. package/lib/Select-Boi_pe3L.js +0 -5298
  113. package/lib/Select-Boi_pe3L.js.map +0 -1
  114. package/lib/Spinner-oU0QJmi_.js +0 -16
  115. package/lib/Spinner-oU0QJmi_.js.map +0 -1
  116. package/lib/_commonjsHelpers-BxmBWJD2.js +0 -34
  117. package/lib/_commonjsHelpers-BxmBWJD2.js.map +0 -1
  118. package/lib/assets/index-CpIig0AX.js +0 -6341
  119. package/lib/assets/worker-B5k2aBV9.js +0 -18921
  120. package/lib/context-BoN_3uxi.js +0 -17
  121. package/lib/hook-CIuFuyBT.js +0 -90
  122. package/lib/hook-CIuFuyBT.js.map +0 -1
  123. package/lib/index-BL1P4Gqq.js +0 -280
  124. package/lib/index-BL1P4Gqq.js.map +0 -1
  125. package/lib/index-Bn03IPZt.js +0 -6341
  126. package/lib/index-FprhHF51.js +0 -253
  127. package/lib/index-FprhHF51.js.map +0 -1
  128. package/lib/jsx-runtime-DvZ6OKMM.js +0 -2110
  129. package/lib/mutation-DWY9x2Uc.js +0 -250
  130. package/lib/mutation-DWY9x2Uc.js.map +0 -1
  131. package/lib/prism-bash.min-BtBk0onv.js +0 -7
  132. package/lib/prism-csharp.min-Cv7D49bv.js +0 -30
  133. package/lib/prism-java.min-tNK-JX6x.js +0 -7
  134. package/lib/prism-json.min-Cdtv-CME.js +0 -2
  135. package/lib/prism-markup-templating-iotg2sCU.js +0 -94
  136. package/lib/prism-objectivec.min-CY4WGixz.js +0 -2
  137. package/lib/prism-php.min-T6sIVgED.js +0 -11
  138. package/lib/prism-ruby.min-B-2KAa4y.js +0 -8
  139. package/lib/router-ButO1QyY.js +0 -4062
  140. package/lib/slugify-CmS97Vy8.js +0 -50
  141. package/lib/state-CmGfNKhR.js +0 -436
  142. package/lib/urql-DtVKPBx_.js +0 -2567
  143. package/lib/util-B5KX4h4M.js +0 -55
@@ -0,0 +1,41 @@
1
+ import { m as u } from "./router-CBw2vqJE.js";
2
+ const l = (...t) => {
3
+ const i = t.filter((r) => !!r).map((r) => r.replace(/(^\/+|\/+$)/g, "")).join("/");
4
+ return i ? `/${i}` : "";
5
+ }, s = (t, i, r, o = []) => {
6
+ const e = a(t) ? l(r, t.path) : r, n = i(t, e, o);
7
+ if (n !== void 0) return n;
8
+ if ("children" in t && t.children) {
9
+ const h = [...o, t];
10
+ for (const f of t.children) {
11
+ const c = s(
12
+ f,
13
+ i,
14
+ e,
15
+ h
16
+ );
17
+ if (c !== void 0) return c;
18
+ }
19
+ }
20
+ }, g = (t, i) => {
21
+ if (t.categories)
22
+ for (const r of t.categories) {
23
+ const o = s(r, i, t.path);
24
+ if (o !== void 0) return o;
25
+ }
26
+ }, a = (t) => "path" in t, m = (t) => "href" in t, d = (t, i, r) => !!s(
27
+ t,
28
+ (o, e) => {
29
+ if (a(o) && u(e, i))
30
+ return !0;
31
+ },
32
+ r
33
+ );
34
+ export {
35
+ m as a,
36
+ d as c,
37
+ a as i,
38
+ l as j,
39
+ g as t
40
+ };
41
+ //# sourceMappingURL=util-_jwUlTBU.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util-B5KX4h4M.js","sources":["../src/lib/util/joinPath.tsx","../src/lib/util/traverseNavigation.ts","../src/lib/components/navigation/util.ts"],"sourcesContent":["export const joinPath = (\n ...parts: Array<string | null | undefined | boolean>\n) => {\n const cleanPath = parts\n .filter((part): part is string => Boolean(part))\n .map((part) => part.replace(/(^\\/+|\\/+$)/g, \"\")) // Strip leading and trailing slashes\n .join(\"/\");\n\n return cleanPath ? `/${cleanPath}` : \"\";\n};\n","import { isPathItem } from \"../components/navigation/util.js\";\nimport type {\n NavigationCategory,\n NavigationCategoryItem,\n NavigationItem,\n} from \"../core/DevPortalContext.js\";\nimport { joinPath } from \"./joinPath.js\";\n\nexport type NavigationNode = NavigationCategoryItem | NavigationCategory;\ntype Callback<T> = (\n node: NavigationNode,\n fullPath: string,\n parentNodes: NavigationNode[],\n) => T | undefined;\n\nexport const traverseNavigationNode = <T>(\n node: NavigationNode,\n callback: Callback<T>,\n parentPath: string,\n parentNodes: NavigationNode[] = [],\n): T | undefined => {\n const newPath = isPathItem(node)\n ? joinPath(parentPath, node.path)\n : parentPath;\n const result = callback(node, newPath, parentNodes);\n\n if (result !== undefined) return result;\n\n if (\"children\" in node && node.children) {\n const newParentNodes = [...parentNodes, node];\n for (const child of node.children) {\n const childResult = traverseNavigationNode(\n child,\n callback,\n newPath,\n newParentNodes,\n );\n if (childResult !== undefined) return childResult;\n }\n }\n return undefined;\n};\n\nexport const traverseNavigation = <T>(\n navItem: NavigationItem,\n callback: Callback<T>,\n): T | undefined => {\n if (navItem.categories) {\n for (const category of navItem.categories) {\n const result = traverseNavigationNode(category, callback, navItem.path);\n if (result !== undefined) return result;\n }\n }\n return undefined;\n};\n","import { matchPath } from \"react-router-dom\";\nimport type {\n HrefNavigationCategoryItem,\n PathNavigationCategoryItem,\n} from \"../../core/DevPortalContext.js\";\nimport {\n traverseNavigationNode,\n type NavigationNode,\n} from \"../../util/traverseNavigation.js\";\n\nexport const isPathItem = (\n item: NavigationNode,\n): item is PathNavigationCategoryItem => \"path\" in item;\n\nexport const isLinkItem = (\n item: NavigationNode,\n): item is HrefNavigationCategoryItem => \"href\" in item;\n\n/**\n * Recursively checks if the current item or any of its children are active.\n */\nexport const checkHasActiveItem = (\n item: NavigationNode,\n locationPath: string,\n basePath: string,\n) => {\n return Boolean(\n traverseNavigationNode(\n item,\n (node, fullPath) => {\n if (isPathItem(node) && matchPath(fullPath, locationPath)) {\n return true;\n }\n },\n basePath,\n ),\n );\n};\n"],"names":[],"mappings":";AAAa,MAAA,WAAW,IACnB,UACA;AACH,QAAM,YAAY,MACf,OAAO,CAAC,SAAyB,QAAQ,IAAI,CAAC,EAC9C,IAAI,CAAC,SAAS,KAAK,QAAQ,gBAAgB,EAAE,CAAC,EAC9C,KAAK,GAAG;AAEJ,SAAA,YAAY,IAAI,SAAS,KAAK;AACvC;ACMO,MAAM,yBAAyB,CACpC,MACA,UACA,YACA,cAAgC,CAAA,MACd;AACZ,QAAA,UAAU,WAAW,IAAI,IAC3B,SAAS,YAAY,KAAK,IAAI,IAC9B;AACJ,QAAM,SAAS,SAAS,MAAM,SAAS,WAAW;AAE9C,MAAA,WAAW,OAAkB,QAAA;AAE7B,MAAA,cAAc,QAAQ,KAAK,UAAU;AACvC,UAAM,iBAAiB,CAAC,GAAG,aAAa,IAAI;AACjC,eAAA,SAAS,KAAK,UAAU;AACjC,YAAM,cAAc;AAAA,QAClB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAEE,UAAA,gBAAgB,OAAkB,QAAA;AAAA,IACxC;AAAA,EACF;AACO,SAAA;AACT;AAEa,MAAA,qBAAqB,CAChC,SACA,aACkB;AAClB,MAAI,QAAQ,YAAY;AACX,eAAA,YAAY,QAAQ,YAAY;AACzC,YAAM,SAAS,uBAAuB,UAAU,UAAU,QAAQ,IAAI;AAClE,UAAA,WAAW,OAAkB,QAAA;AAAA,IACnC;AAAA,EACF;AACO,SAAA;AACT;AC5Ca,MAAA,aAAa,CACxB,SACuC,UAAU;AAEtC,MAAA,aAAa,CACxB,SACuC,UAAU;AAK5C,MAAM,qBAAqB,CAChC,MACA,cACA,aACG;AACI,SAAA;AAAA,IACL;AAAA,MACE;AAAA,MACA,CAAC,MAAM,aAAa;AAClB,YAAI,WAAW,IAAI,KAAK,UAAU,UAAU,YAAY,GAAG;AAClD,iBAAA;AAAA,QACT;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"util-_jwUlTBU.js","sources":["../src/lib/util/joinPath.tsx","../src/lib/util/traverseNavigation.ts","../src/lib/components/navigation/util.ts"],"sourcesContent":["export const joinPath = (\n ...parts: Array<string | null | undefined | boolean>\n) => {\n const cleanPath = parts\n .filter((part): part is string => Boolean(part))\n .map((part) => part.replace(/(^\\/+|\\/+$)/g, \"\")) // Strip leading and trailing slashes\n .join(\"/\");\n\n return cleanPath ? `/${cleanPath}` : \"\";\n};\n","import { isPathItem } from \"../components/navigation/util.js\";\nimport type {\n NavigationCategory,\n NavigationCategoryItem,\n NavigationItem,\n} from \"../core/DevPortalContext.js\";\nimport { joinPath } from \"./joinPath.js\";\n\nexport type NavigationNode = NavigationCategoryItem | NavigationCategory;\ntype Callback<T> = (\n node: NavigationNode,\n fullPath: string,\n parentNodes: NavigationNode[],\n) => T | undefined;\n\nexport const traverseNavigationNode = <T>(\n node: NavigationNode,\n callback: Callback<T>,\n parentPath: string,\n parentNodes: NavigationNode[] = [],\n): T | undefined => {\n const newPath = isPathItem(node)\n ? joinPath(parentPath, node.path)\n : parentPath;\n const result = callback(node, newPath, parentNodes);\n\n if (result !== undefined) return result;\n\n if (\"children\" in node && node.children) {\n const newParentNodes = [...parentNodes, node];\n for (const child of node.children) {\n const childResult = traverseNavigationNode(\n child,\n callback,\n newPath,\n newParentNodes,\n );\n if (childResult !== undefined) return childResult;\n }\n }\n return undefined;\n};\n\nexport const traverseNavigation = <T>(\n navItem: NavigationItem,\n callback: Callback<T>,\n): T | undefined => {\n if (navItem.categories) {\n for (const category of navItem.categories) {\n const result = traverseNavigationNode(category, callback, navItem.path);\n if (result !== undefined) return result;\n }\n }\n return undefined;\n};\n","import { matchPath } from \"react-router-dom\";\nimport type {\n HrefNavigationCategoryItem,\n PathNavigationCategoryItem,\n} from \"../../core/DevPortalContext.js\";\nimport {\n traverseNavigationNode,\n type NavigationNode,\n} from \"../../util/traverseNavigation.js\";\n\nexport const isPathItem = (\n item: NavigationNode,\n): item is PathNavigationCategoryItem => \"path\" in item;\n\nexport const isLinkItem = (\n item: NavigationNode,\n): item is HrefNavigationCategoryItem => \"href\" in item;\n\n/**\n * Recursively checks if the current item or any of its children are active.\n */\nexport const checkHasActiveItem = (\n item: NavigationNode,\n locationPath: string,\n basePath: string,\n) => {\n return Boolean(\n traverseNavigationNode(\n item,\n (node, fullPath) => {\n if (isPathItem(node) && matchPath(fullPath, locationPath)) {\n return true;\n }\n },\n basePath,\n ),\n );\n};\n"],"names":["joinPath","parts","cleanPath","part","traverseNavigationNode","node","callback","parentPath","parentNodes","newPath","isPathItem","result","newParentNodes","child","childResult","traverseNavigation","navItem","category","item","isLinkItem","checkHasActiveItem","locationPath","basePath","fullPath","matchPath"],"mappings":";AAAa,MAAAA,IAAW,IACnBC,MACA;AACH,QAAMC,IAAYD,EACf,OAAO,CAACE,MAAyB,EAAQA,CAAK,EAC9C,IAAI,CAACA,MAASA,EAAK,QAAQ,gBAAgB,EAAE,CAAC,EAC9C,KAAK,GAAG;AAEJ,SAAAD,IAAY,IAAIA,CAAS,KAAK;AACvC,GCMaE,IAAyB,CACpCC,GACAC,GACAC,GACAC,IAAgC,CAAA,MACd;AACZ,QAAAC,IAAUC,EAAWL,CAAI,IAC3BL,EAASO,GAAYF,EAAK,IAAI,IAC9BE,GACEI,IAASL,EAASD,GAAMI,GAASD,CAAW;AAE9C,MAAAG,MAAW,OAAkB,QAAAA;AAE7B,MAAA,cAAcN,KAAQA,EAAK,UAAU;AACvC,UAAMO,IAAiB,CAAC,GAAGJ,GAAaH,CAAI;AACjC,eAAAQ,KAASR,EAAK,UAAU;AACjC,YAAMS,IAAcV;AAAA,QAClBS;AAAA,QACAP;AAAA,QACAG;AAAA,QACAG;AAAA,MAAA;AAEE,UAAAE,MAAgB,OAAkB,QAAAA;AAAA,IACxC;AAAA,EACF;AAEF,GAEaC,IAAqB,CAChCC,GACAV,MACkB;AAClB,MAAIU,EAAQ;AACC,eAAAC,KAAYD,EAAQ,YAAY;AACzC,YAAML,IAASP,EAAuBa,GAAUX,GAAUU,EAAQ,IAAI;AAClE,UAAAL,MAAW,OAAkB,QAAAA;AAAA,IACnC;AAGJ,GC5CaD,IAAa,CACxBQ,MACuC,UAAUA,GAEtCC,IAAa,CACxBD,MACuC,UAAUA,GAKtCE,IAAqB,CAChCF,GACAG,GACAC,MAEO,EACLlB;AAAA,EACEc;AAAA,EACA,CAACb,GAAMkB,MAAa;AAClB,QAAIb,EAAWL,CAAI,KAAKmB,EAAUD,GAAUF,CAAY;AAC/C,aAAA;AAAA,EAEX;AAAA,EACAC;AACF;"}
@@ -1,34 +1,28 @@
1
- import { u as useAuthState } from "./state-CmGfNKhR.js";
2
- import { OpenIDAuthenticationProvider } from "./zudoku.auth-openid.js";
3
- class Auth0AuthenticationProvider extends OpenIDAuthenticationProvider {
1
+ import { u as i } from "./state-DKdaQzvh.js";
2
+ import { OpenIDAuthenticationProvider as n } from "./zudoku.auth-openid.js";
3
+ class r extends n {
4
4
  async logout() {
5
- useAuthState.setState({
6
- isAuthenticated: false,
7
- isPending: false,
5
+ i.setState({
6
+ isAuthenticated: !1,
7
+ isPending: !1,
8
8
  profile: void 0
9
9
  });
10
- const as = await this.getAuthServer();
11
- const redirectUrl = new URL(window.location.href);
12
- redirectUrl.pathname = this.logoutRedirectUrlPath;
13
- let logoutUrl;
14
- if (as.end_session_endpoint) {
15
- logoutUrl = new URL(as.end_session_endpoint);
16
- logoutUrl.searchParams.set(
17
- "post_logout_redirect_uri",
18
- redirectUrl.toString()
19
- );
20
- } else {
21
- logoutUrl = new URL(`${this.issuer}oidc/logout`);
22
- }
10
+ const t = await this.getAuthServer(), e = new URL(window.location.href);
11
+ e.pathname = this.logoutRedirectUrlPath;
12
+ let o;
13
+ t.end_session_endpoint ? (o = new URL(t.end_session_endpoint), o.searchParams.set(
14
+ "post_logout_redirect_uri",
15
+ e.toString()
16
+ )) : o = new URL(`${this.issuer}oidc/logout`);
23
17
  }
24
18
  }
25
- const auth0Auth = ({ domain, clientId, audience }) => new Auth0AuthenticationProvider({
19
+ const d = ({ domain: s, clientId: t, audience: e }) => new r({
26
20
  type: "openid",
27
- issuer: `https://${domain}`,
28
- clientId,
29
- audience
21
+ issuer: `https://${s}`,
22
+ clientId: t,
23
+ audience: e
30
24
  });
31
25
  export {
32
- auth0Auth as default
26
+ d as default
33
27
  };
34
28
  //# 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 { Auth0AuthenticationConfig } from \"../../../config/config.js\";\nimport { AuthenticationProviderInitializer } from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\nimport { OpenIDAuthenticationProvider } from \"./openid.js\";\n\nclass Auth0AuthenticationProvider extends OpenIDAuthenticationProvider {\n override async logout(): Promise<void> {\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n });\n const as = await this.getAuthServer();\n\n const redirectUrl = new URL(window.location.href);\n redirectUrl.pathname = this.logoutRedirectUrlPath;\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 let logoutUrl: URL;\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 logoutUrl = new URL(as.end_session_endpoint);\n // TODO: get id_token and set hint\n // const { id_token } = session;\n // if (id_token) {\n // logoutUrl.searchParams.set(\"id_token_hint\", id_token);\n // }\n logoutUrl.searchParams.set(\n \"post_logout_redirect_uri\",\n redirectUrl.toString(),\n );\n } else {\n logoutUrl = new URL(`${this.issuer}oidc/logout`);\n }\n }\n}\n\nconst auth0Auth: AuthenticationProviderInitializer<\n Auth0AuthenticationConfig\n> = ({ domain, clientId, audience }) =>\n new Auth0AuthenticationProvider({\n type: \"openid\",\n issuer: `https://${domain}`,\n clientId: clientId,\n audience: audience,\n });\n\nexport default auth0Auth;\n"],"names":[],"mappings":";;AAKA,MAAM,oCAAoC,6BAA6B;AAAA,EACrE,MAAe,SAAwB;AACrC,iBAAa,SAAS;AAAA,MACpB,iBAAiB;AAAA,MACjB,WAAW;AAAA,MACX,SAAS;AAAA,IAAA,CACV;AACK,UAAA,KAAK,MAAM,KAAK;AAEtB,UAAM,cAAc,IAAI,IAAI,OAAO,SAAS,IAAI;AAChD,gBAAY,WAAW,KAAK;AAOxB,QAAA;AAGJ,QAAI,GAAG,sBAAsB;AACf,kBAAA,IAAI,IAAI,GAAG,oBAAoB;AAM3C,gBAAU,aAAa;AAAA,QACrB;AAAA,QACA,YAAY,SAAS;AAAA,MAAA;AAAA,IACvB,OACK;AACL,kBAAY,IAAI,IAAI,GAAG,KAAK,MAAM,aAAa;AAAA,IACjD;AAAA,EACF;AACF;AAEM,MAAA,YAEF,CAAC,EAAE,QAAQ,UAAU,SAAS,MAChC,IAAI,4BAA4B;AAAA,EAC9B,MAAM;AAAA,EACN,QAAQ,WAAW,MAAM;AAAA,EACzB;AAAA,EACA;AACF,CAAC;"}
1
+ {"version":3,"file":"zudoku.auth-auth0.js","sources":["../src/lib/authentication/providers/auth0.tsx"],"sourcesContent":["import { Auth0AuthenticationConfig } from \"../../../config/config.js\";\nimport { AuthenticationProviderInitializer } from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\nimport { OpenIDAuthenticationProvider } from \"./openid.js\";\n\nclass Auth0AuthenticationProvider extends OpenIDAuthenticationProvider {\n override async logout(): Promise<void> {\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n });\n const as = await this.getAuthServer();\n\n const redirectUrl = new URL(window.location.href);\n redirectUrl.pathname = this.logoutRedirectUrlPath;\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 let logoutUrl: URL;\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 logoutUrl = new URL(as.end_session_endpoint);\n // TODO: get id_token and set hint\n // const { id_token } = session;\n // if (id_token) {\n // logoutUrl.searchParams.set(\"id_token_hint\", id_token);\n // }\n logoutUrl.searchParams.set(\n \"post_logout_redirect_uri\",\n redirectUrl.toString(),\n );\n } else {\n logoutUrl = new URL(`${this.issuer}oidc/logout`);\n }\n }\n}\n\nconst auth0Auth: AuthenticationProviderInitializer<\n Auth0AuthenticationConfig\n> = ({ domain, clientId, audience }) =>\n new Auth0AuthenticationProvider({\n type: \"openid\",\n issuer: `https://${domain}`,\n clientId: clientId,\n audience: audience,\n });\n\nexport default auth0Auth;\n"],"names":["Auth0AuthenticationProvider","OpenIDAuthenticationProvider","useAuthState","as","redirectUrl","logoutUrl","auth0Auth","domain","clientId","audience"],"mappings":";;AAKA,MAAMA,UAAoCC,EAA6B;AAAA,EACrE,MAAe,SAAwB;AACrC,IAAAC,EAAa,SAAS;AAAA,MACpB,iBAAiB;AAAA,MACjB,WAAW;AAAA,MACX,SAAS;AAAA,IAAA,CACV;AACK,UAAAC,IAAK,MAAM,KAAK,iBAEhBC,IAAc,IAAI,IAAI,OAAO,SAAS,IAAI;AAChD,IAAAA,EAAY,WAAW,KAAK;AAOxB,QAAAC;AAGJ,IAAIF,EAAG,wBACOE,IAAA,IAAI,IAAIF,EAAG,oBAAoB,GAM3CE,EAAU,aAAa;AAAA,MACrB;AAAA,MACAD,EAAY,SAAS;AAAA,IAAA,KAGvBC,IAAY,IAAI,IAAI,GAAG,KAAK,MAAM,aAAa;AAAA,EAEnD;AACF;AAEM,MAAAC,IAEF,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,UAAAC,EAAS,MAChC,IAAIT,EAA4B;AAAA,EAC9B,MAAM;AAAA,EACN,QAAQ,WAAWO,CAAM;AAAA,EACzB,UAAAC;AAAA,EACA,UAAAC;AACF,CAAC;"}
@@ -1,60 +1,51 @@
1
- import { u as useAuthState } from "./state-CmGfNKhR.js";
2
- const clerkAuth = ({ clerkPubKey }) => {
3
- let clerkApi;
4
- const ensureLoaded = (async () => {
5
- if (typeof window === "undefined") return;
6
- const { Clerk } = await import("@clerk/clerk-js");
7
- clerkApi = new Clerk(clerkPubKey);
8
- await clerkApi.load({});
1
+ import { u as t } from "./state-DKdaQzvh.js";
2
+ const r = ({ clerkPubKey: n }) => {
3
+ let e;
4
+ const i = (async () => {
5
+ if (typeof window > "u") return;
6
+ const { Clerk: s } = await import("@clerk/clerk-js");
7
+ e = new s(n), await e.load({});
9
8
  })();
10
- async function getAccessToken() {
11
- await ensureLoaded;
12
- if (!clerkApi.session) {
9
+ async function a() {
10
+ if (await i, !e.session)
13
11
  throw new Error("No session available");
14
- }
15
- const response = await clerkApi.session.getToken();
16
- if (!response) {
12
+ const s = await e.session.getToken();
13
+ if (!s)
17
14
  throw new Error("Could not get access token from Clerk");
18
- }
19
- return response;
15
+ return s;
20
16
  }
21
17
  return {
22
18
  initialize: async () => {
23
- var _a;
24
- await ensureLoaded;
25
- if (clerkApi.session) {
26
- useAuthState.setState({
27
- isAuthenticated: true,
28
- isPending: false,
29
- profile: {
30
- sub: clerkApi.session.user.id,
31
- name: clerkApi.session.user.fullName ?? void 0,
32
- email: (_a = clerkApi.session.user.emailAddresses[0]) == null ? void 0 : _a.emailAddress,
33
- emailVerified: false,
34
- // TODO: Check this
35
- // emailVerified: clerkApi.session.user.hasVerifiedEmailAddress,
36
- pictureUrl: clerkApi.session.user.imageUrl
37
- }
38
- });
39
- } else {
40
- useAuthState.setState({
41
- isAuthenticated: false,
42
- isPending: false,
43
- profile: void 0
44
- });
45
- }
19
+ var s;
20
+ await i, e.session ? t.setState({
21
+ isAuthenticated: !0,
22
+ isPending: !1,
23
+ profile: {
24
+ sub: e.session.user.id,
25
+ name: e.session.user.fullName ?? void 0,
26
+ email: (s = e.session.user.emailAddresses[0]) == null ? void 0 : s.emailAddress,
27
+ emailVerified: !1,
28
+ // TODO: Check this
29
+ // emailVerified: clerkApi.session.user.hasVerifiedEmailAddress,
30
+ pictureUrl: e.session.user.imageUrl
31
+ }
32
+ }) : t.setState({
33
+ isAuthenticated: !1,
34
+ isPending: !1,
35
+ profile: void 0
36
+ });
46
37
  },
47
- getAccessToken,
38
+ getAccessToken: a,
48
39
  logout: async () => {
49
- await clerkApi.signOut();
40
+ await e.signOut();
50
41
  },
51
42
  login: async () => {
52
- await clerkApi.redirectToSignIn();
43
+ await e.redirectToSignIn();
53
44
  },
54
45
  getRoutes: () => []
55
46
  };
56
47
  };
57
48
  export {
58
- clerkAuth as default
49
+ r as default
59
50
  };
60
51
  //# sourceMappingURL=zudoku.auth-clerk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zudoku.auth-clerk.js","sources":["../src/lib/authentication/providers/clerk.tsx"],"sourcesContent":["import type { Clerk } from \"@clerk/clerk-js\";\nimport { ClerkAuthenticationConfig } from \"../../../config/config.js\";\nimport { AuthenticationProviderInitializer } from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\n\nconst clerkAuth: AuthenticationProviderInitializer<\n ClerkAuthenticationConfig\n> = ({ clerkPubKey }) => {\n let clerkApi: Clerk;\n\n const ensureLoaded = (async () => {\n if (typeof window === \"undefined\") return;\n const { Clerk } = await import(\"@clerk/clerk-js\");\n clerkApi = new Clerk(clerkPubKey);\n\n await clerkApi.load({});\n })();\n\n async function getAccessToken() {\n await ensureLoaded;\n if (!clerkApi.session) {\n throw new Error(\"No session available\");\n }\n const response = await clerkApi.session.getToken();\n if (!response) {\n throw new Error(\"Could not get access token from Clerk\");\n }\n return response;\n }\n\n return {\n initialize: async () => {\n await ensureLoaded;\n\n if (clerkApi.session) {\n useAuthState.setState({\n isAuthenticated: true,\n isPending: false,\n profile: {\n sub: clerkApi.session.user.id,\n name: clerkApi.session.user.fullName ?? undefined,\n email: clerkApi.session.user.emailAddresses[0]?.emailAddress,\n emailVerified: false, // TODO: Check this\n // emailVerified: clerkApi.session.user.hasVerifiedEmailAddress,\n pictureUrl: clerkApi.session.user.imageUrl,\n },\n });\n } else {\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n });\n }\n },\n getAccessToken,\n logout: async () => {\n await clerkApi.signOut();\n },\n login: async () => {\n await clerkApi.redirectToSignIn();\n },\n getRoutes: () => [],\n };\n};\n\nexport default clerkAuth;\n"],"names":[],"mappings":";AAKA,MAAM,YAEF,CAAC,EAAE,kBAAkB;AACnB,MAAA;AAEJ,QAAM,gBAAgB,YAAY;AAC5B,QAAA,OAAO,WAAW,YAAa;AACnC,UAAM,EAAE,MAAA,IAAU,MAAM,OAAO,iBAAiB;AACrC,eAAA,IAAI,MAAM,WAAW;AAE1B,UAAA,SAAS,KAAK,CAAA,CAAE;AAAA,EAAA;AAGxB,iBAAe,iBAAiB;AACxB,UAAA;AACF,QAAA,CAAC,SAAS,SAAS;AACf,YAAA,IAAI,MAAM,sBAAsB;AAAA,IACxC;AACA,UAAM,WAAW,MAAM,SAAS,QAAQ,SAAS;AACjD,QAAI,CAAC,UAAU;AACP,YAAA,IAAI,MAAM,uCAAuC;AAAA,IACzD;AACO,WAAA;AAAA,EACT;AAEO,SAAA;AAAA,IACL,YAAY,YAAY;;AAChB,YAAA;AAEN,UAAI,SAAS,SAAS;AACpB,qBAAa,SAAS;AAAA,UACpB,iBAAiB;AAAA,UACjB,WAAW;AAAA,UACX,SAAS;AAAA,YACP,KAAK,SAAS,QAAQ,KAAK;AAAA,YAC3B,MAAM,SAAS,QAAQ,KAAK,YAAY;AAAA,YACxC,QAAO,cAAS,QAAQ,KAAK,eAAe,CAAC,MAAtC,mBAAyC;AAAA,YAChD,eAAe;AAAA;AAAA;AAAA,YAEf,YAAY,SAAS,QAAQ,KAAK;AAAA,UACpC;AAAA,QAAA,CACD;AAAA,MAAA,OACI;AACL,qBAAa,SAAS;AAAA,UACpB,iBAAiB;AAAA,UACjB,WAAW;AAAA,UACX,SAAS;AAAA,QAAA,CACV;AAAA,MACH;AAAA,IACF;AAAA,IACA;AAAA,IACA,QAAQ,YAAY;AAClB,YAAM,SAAS;IACjB;AAAA,IACA,OAAO,YAAY;AACjB,YAAM,SAAS;IACjB;AAAA,IACA,WAAW,MAAM,CAAC;AAAA,EAAA;AAEtB;"}
1
+ {"version":3,"file":"zudoku.auth-clerk.js","sources":["../src/lib/authentication/providers/clerk.tsx"],"sourcesContent":["import type { Clerk } from \"@clerk/clerk-js\";\nimport { ClerkAuthenticationConfig } from \"../../../config/config.js\";\nimport { AuthenticationProviderInitializer } from \"../authentication.js\";\nimport { useAuthState } from \"../state.js\";\n\nconst clerkAuth: AuthenticationProviderInitializer<\n ClerkAuthenticationConfig\n> = ({ clerkPubKey }) => {\n let clerkApi: Clerk;\n\n const ensureLoaded = (async () => {\n if (typeof window === \"undefined\") return;\n const { Clerk } = await import(\"@clerk/clerk-js\");\n clerkApi = new Clerk(clerkPubKey);\n\n await clerkApi.load({});\n })();\n\n async function getAccessToken() {\n await ensureLoaded;\n if (!clerkApi.session) {\n throw new Error(\"No session available\");\n }\n const response = await clerkApi.session.getToken();\n if (!response) {\n throw new Error(\"Could not get access token from Clerk\");\n }\n return response;\n }\n\n return {\n initialize: async () => {\n await ensureLoaded;\n\n if (clerkApi.session) {\n useAuthState.setState({\n isAuthenticated: true,\n isPending: false,\n profile: {\n sub: clerkApi.session.user.id,\n name: clerkApi.session.user.fullName ?? undefined,\n email: clerkApi.session.user.emailAddresses[0]?.emailAddress,\n emailVerified: false, // TODO: Check this\n // emailVerified: clerkApi.session.user.hasVerifiedEmailAddress,\n pictureUrl: clerkApi.session.user.imageUrl,\n },\n });\n } else {\n useAuthState.setState({\n isAuthenticated: false,\n isPending: false,\n profile: undefined,\n });\n }\n },\n getAccessToken,\n logout: async () => {\n await clerkApi.signOut();\n },\n login: async () => {\n await clerkApi.redirectToSignIn();\n },\n getRoutes: () => [],\n };\n};\n\nexport default clerkAuth;\n"],"names":["clerkAuth","clerkPubKey","clerkApi","ensureLoaded","Clerk","getAccessToken","response","useAuthState","_a"],"mappings":";AAKA,MAAMA,IAEF,CAAC,EAAE,aAAAC,QAAkB;AACnB,MAAAC;AAEJ,QAAMC,KAAgB,YAAY;AAC5B,QAAA,OAAO,SAAW,IAAa;AACnC,UAAM,EAAE,OAAAC,EAAA,IAAU,MAAM,OAAO,iBAAiB;AACrC,IAAAF,IAAA,IAAIE,EAAMH,CAAW,GAE1B,MAAAC,EAAS,KAAK,CAAA,CAAE;AAAA,EAAA;AAGxB,iBAAeG,IAAiB;AAE1B,QADE,MAAAF,GACF,CAACD,EAAS;AACN,YAAA,IAAI,MAAM,sBAAsB;AAExC,UAAMI,IAAW,MAAMJ,EAAS,QAAQ,SAAS;AACjD,QAAI,CAACI;AACG,YAAA,IAAI,MAAM,uCAAuC;AAElD,WAAAA;AAAA,EACT;AAEO,SAAA;AAAA,IACL,YAAY,YAAY;;AAChB,YAAAH,GAEFD,EAAS,UACXK,EAAa,SAAS;AAAA,QACpB,iBAAiB;AAAA,QACjB,WAAW;AAAA,QACX,SAAS;AAAA,UACP,KAAKL,EAAS,QAAQ,KAAK;AAAA,UAC3B,MAAMA,EAAS,QAAQ,KAAK,YAAY;AAAA,UACxC,QAAOM,IAAAN,EAAS,QAAQ,KAAK,eAAe,CAAC,MAAtC,gBAAAM,EAAyC;AAAA,UAChD,eAAe;AAAA;AAAA;AAAA,UAEf,YAAYN,EAAS,QAAQ,KAAK;AAAA,QACpC;AAAA,MAAA,CACD,IAEDK,EAAa,SAAS;AAAA,QACpB,iBAAiB;AAAA,QACjB,WAAW;AAAA,QACX,SAAS;AAAA,MAAA,CACV;AAAA,IAEL;AAAA,IACA,gBAAAF;AAAA,IACA,QAAQ,YAAY;AAClB,YAAMH,EAAS;IACjB;AAAA,IACA,OAAO,YAAY;AACjB,YAAMA,EAAS;IACjB;AAAA,IACA,WAAW,MAAM,CAAC;AAAA,EAAA;AAEtB;"}