zudoku 0.3.0-dev.83 → 0.3.0-dev.84

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 (185) hide show
  1. package/cli.js +5 -1
  2. package/dist/app/demo.js +5 -4
  3. package/dist/app/demo.js.map +1 -1
  4. package/dist/app/main.js +3 -1
  5. package/dist/app/main.js.map +1 -1
  6. package/dist/app/standalone.js +5 -4
  7. package/dist/app/standalone.js.map +1 -1
  8. package/dist/config/validators/ResolvedSidebarSchema.d.ts +18 -0
  9. package/dist/config/validators/ResolvedSidebarSchema.js +76 -0
  10. package/dist/config/validators/ResolvedSidebarSchema.js.map +1 -0
  11. package/dist/config/validators/SidebarSchema.d.ts +177 -0
  12. package/dist/config/validators/SidebarSchema.js +71 -0
  13. package/dist/config/validators/SidebarSchema.js.map +1 -0
  14. package/dist/config/validators/validate.d.ts +411 -59
  15. package/dist/config/validators/validate.js +22 -4
  16. package/dist/config/validators/validate.js.map +1 -1
  17. package/dist/index.d.ts +1 -1
  18. package/dist/lib/components/DevPortal.js +1 -1
  19. package/dist/lib/components/DevPortal.js.map +1 -1
  20. package/dist/lib/components/Header.js.map +1 -1
  21. package/dist/lib/components/Heading.d.ts +1 -1
  22. package/dist/lib/components/Layout.js +2 -2
  23. package/dist/lib/components/Layout.js.map +1 -1
  24. package/dist/lib/components/TopNavigation.js +5 -5
  25. package/dist/lib/components/TopNavigation.js.map +1 -1
  26. package/dist/lib/components/context/DevPortalProvider.d.ts +9 -3
  27. package/dist/lib/components/context/DevPortalProvider.js +11 -23
  28. package/dist/lib/components/context/DevPortalProvider.js.map +1 -1
  29. package/dist/lib/components/context/ThemeContext.d.ts +1 -4
  30. package/dist/lib/components/context/ThemeContext.js +3 -29
  31. package/dist/lib/components/context/ThemeContext.js.map +1 -1
  32. package/dist/lib/components/context/ThemeProvider.d.ts +4 -0
  33. package/dist/lib/components/context/ThemeProvider.js +23 -0
  34. package/dist/lib/components/context/ThemeProvider.js.map +1 -0
  35. package/dist/lib/components/navigation/Sidebar.d.ts +1 -0
  36. package/dist/lib/components/navigation/Sidebar.js +12 -0
  37. package/dist/lib/components/navigation/Sidebar.js.map +1 -0
  38. package/dist/lib/components/navigation/SidebarBadge.d.ts +22 -0
  39. package/dist/lib/components/navigation/SidebarBadge.js +24 -0
  40. package/dist/lib/components/navigation/SidebarBadge.js.map +1 -0
  41. package/dist/lib/components/navigation/SidebarCategory.d.ts +5 -0
  42. package/dist/lib/components/navigation/SidebarCategory.js +33 -0
  43. package/dist/lib/components/navigation/SidebarCategory.js.map +1 -0
  44. package/dist/lib/components/navigation/SidebarItem.d.ts +12 -0
  45. package/dist/lib/components/navigation/SidebarItem.js +42 -0
  46. package/dist/lib/components/navigation/SidebarItem.js.map +1 -0
  47. package/dist/lib/components/navigation/{SideNavigationWrapper.d.ts → SidebarWrapper.d.ts} +1 -1
  48. package/dist/lib/components/navigation/{SideNavigationWrapper.js → SidebarWrapper.js} +2 -2
  49. package/dist/lib/components/navigation/SidebarWrapper.js.map +1 -0
  50. package/dist/lib/components/navigation/utils.d.ts +16 -0
  51. package/dist/lib/components/navigation/utils.js +85 -0
  52. package/dist/lib/components/navigation/utils.js.map +1 -0
  53. package/dist/lib/core/DevPortalContext.d.ts +9 -32
  54. package/dist/lib/core/DevPortalContext.js +8 -5
  55. package/dist/lib/core/DevPortalContext.js.map +1 -1
  56. package/dist/lib/core/plugins.d.ts +6 -8
  57. package/dist/lib/core/plugins.js.map +1 -1
  58. package/dist/lib/plugins/markdown/MdxPage.js +5 -36
  59. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  60. package/dist/lib/plugins/markdown/generateRoutes.js +20 -43
  61. package/dist/lib/plugins/markdown/generateRoutes.js.map +1 -1
  62. package/dist/lib/plugins/openapi/Sidecar.js +12 -2
  63. package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
  64. package/dist/lib/plugins/openapi/index.js +14 -11
  65. package/dist/lib/plugins/openapi/index.js.map +1 -1
  66. package/dist/lib/plugins/openapi/interfaces.d.ts +1 -1
  67. package/dist/lib/util/useScrollToAnchor.js +31 -17
  68. package/dist/lib/util/useScrollToAnchor.js.map +1 -1
  69. package/dist/vite/plugin-sidebar.d.ts +3 -0
  70. package/dist/vite/plugin-sidebar.js +23 -0
  71. package/dist/vite/plugin-sidebar.js.map +1 -0
  72. package/dist/vite/plugin.js +2 -0
  73. package/dist/vite/plugin.js.map +1 -1
  74. package/lib/{AuthenticationPlugin-XS0DoAhE.js → AuthenticationPlugin-DgwV0hVu.js} +7 -7
  75. package/lib/{AuthenticationPlugin-XS0DoAhE.js.map → AuthenticationPlugin-DgwV0hVu.js.map} +1 -1
  76. package/lib/{CategoryHeading-DCmchnA1.js → CategoryHeading-BWq12Bfa.js} +3 -3
  77. package/lib/{CategoryHeading-DCmchnA1.js.map → CategoryHeading-BWq12Bfa.js.map} +1 -1
  78. package/lib/{Combination-C442XfGG.js → Combination-DkycFHkm.js} +4 -4
  79. package/lib/{Combination-C442XfGG.js.map → Combination-DkycFHkm.js.map} +1 -1
  80. package/lib/{DevPortalProvider-BWeAysxF.js → DevPortalProvider-CTxoCHIT.js} +375 -417
  81. package/lib/DevPortalProvider-CTxoCHIT.js.map +1 -0
  82. package/lib/DeveloperHint-BQSFXH01.js +10 -0
  83. package/lib/{DeveloperHint-DQVwIery.js.map → DeveloperHint-BQSFXH01.js.map} +1 -1
  84. package/lib/{Input-3IEt27jb.js → Input-BclXSY0g.js} +5 -5
  85. package/lib/{Input-3IEt27jb.js.map → Input-BclXSY0g.js.map} +1 -1
  86. package/lib/{Markdown-QsZ-PHET.js → Markdown-B_Gax7at.js} +1136 -1152
  87. package/lib/{Markdown-QsZ-PHET.js.map → Markdown-B_Gax7at.js.map} +1 -1
  88. package/lib/{MdxPage-CA1WmW14.js → MdxPage-Crlr0GmN.js} +67 -81
  89. package/lib/MdxPage-Crlr0GmN.js.map +1 -0
  90. package/lib/{OperationList-CHK_erYP.js → OperationList-nQ0bd8TU.js} +8 -8
  91. package/lib/{OperationList-CHK_erYP.js.map → OperationList-nQ0bd8TU.js.map} +1 -1
  92. package/lib/Route-CNvxEBnR.js +14 -0
  93. package/lib/{Route-D70pGn9n.js.map → Route-CNvxEBnR.js.map} +1 -1
  94. package/lib/{SlotletProvider-B71hNEUL.js → SlotletProvider-CzMAO73_.js} +12 -12
  95. package/lib/{SlotletProvider-B71hNEUL.js.map → SlotletProvider-CzMAO73_.js.map} +1 -1
  96. package/lib/Spinner-fF-Xv-gw.js +274 -0
  97. package/lib/Spinner-fF-Xv-gw.js.map +1 -0
  98. package/lib/index-7kcHaXD6.js +1771 -0
  99. package/lib/index-7kcHaXD6.js.map +1 -0
  100. package/lib/{index-Bl6YeerK.js → index-CgCPw6Jn.js} +1026 -1043
  101. package/lib/index-CgCPw6Jn.js.map +1 -0
  102. package/lib/{index-BH-Ub36F.js → index-DkuZvRNP.js} +4 -4
  103. package/lib/{index-BH-Ub36F.js.map → index-DkuZvRNP.js.map} +1 -1
  104. package/lib/joinPath-VeNuJa7y.js +8 -0
  105. package/lib/joinPath-VeNuJa7y.js.map +1 -0
  106. package/lib/jsx-runtime-B6kdoens.js +635 -0
  107. package/lib/jsx-runtime-B6kdoens.js.map +1 -0
  108. package/lib/{AnchorLink-BZcpTwOs.js → utils-CzT_9Tsn.js} +258 -214
  109. package/lib/utils-CzT_9Tsn.js.map +1 -0
  110. package/lib/zudoku.auth-clerk.js +1 -1
  111. package/lib/zudoku.auth-openid.js +2 -2
  112. package/lib/zudoku.components.js +1229 -1227
  113. package/lib/zudoku.components.js.map +1 -1
  114. package/lib/zudoku.plugin-api-keys.js +19 -19
  115. package/lib/zudoku.plugin-custom-page.js +2 -2
  116. package/lib/zudoku.plugin-markdown.js +21 -38
  117. package/lib/zudoku.plugin-markdown.js.map +1 -1
  118. package/lib/zudoku.plugin-openapi.js +8 -6
  119. package/lib/zudoku.plugin-openapi.js.map +1 -1
  120. package/package.json +4 -1
  121. package/src/app/demo.tsx +5 -4
  122. package/src/app/main.css +2 -2
  123. package/src/app/main.tsx +3 -1
  124. package/src/app/standalone.tsx +5 -4
  125. package/src/lib/components/DevPortal.tsx +1 -1
  126. package/src/lib/components/Header.tsx +2 -2
  127. package/src/lib/components/Layout.tsx +2 -2
  128. package/src/lib/components/TopNavigation.tsx +5 -5
  129. package/src/lib/components/context/DevPortalProvider.ts +11 -28
  130. package/src/lib/components/context/ThemeContext.tsx +3 -41
  131. package/src/lib/components/context/ThemeProvider.tsx +27 -0
  132. package/src/lib/components/navigation/{SideNavigation.tsx → Sidebar.tsx} +7 -7
  133. package/src/lib/components/navigation/SidebarBadge.tsx +40 -0
  134. package/src/lib/components/navigation/SidebarCategory.tsx +105 -0
  135. package/src/lib/components/navigation/SidebarItem.tsx +96 -0
  136. package/src/lib/components/navigation/{SideNavigationWrapper.tsx → SidebarWrapper.tsx} +1 -1
  137. package/src/lib/components/navigation/utils.ts +120 -0
  138. package/src/lib/core/DevPortalContext.ts +12 -44
  139. package/src/lib/core/plugins.ts +6 -13
  140. package/src/lib/plugins/markdown/MdxPage.tsx +14 -50
  141. package/src/lib/plugins/markdown/generateRoutes.tsx +29 -57
  142. package/src/lib/plugins/openapi/Sidecar.tsx +15 -2
  143. package/src/lib/plugins/openapi/index.tsx +17 -23
  144. package/src/lib/plugins/openapi/interfaces.ts +1 -1
  145. package/src/lib/util/useScrollToAnchor.ts +39 -18
  146. package/dist/lib/components/navigation/SideNavigation.d.ts +0 -1
  147. package/dist/lib/components/navigation/SideNavigation.js +0 -12
  148. package/dist/lib/components/navigation/SideNavigation.js.map +0 -1
  149. package/dist/lib/components/navigation/SideNavigationCategory.d.ts +0 -4
  150. package/dist/lib/components/navigation/SideNavigationCategory.js +0 -26
  151. package/dist/lib/components/navigation/SideNavigationCategory.js.map +0 -1
  152. package/dist/lib/components/navigation/SideNavigationItem.d.ts +0 -9
  153. package/dist/lib/components/navigation/SideNavigationItem.js +0 -44
  154. package/dist/lib/components/navigation/SideNavigationItem.js.map +0 -1
  155. package/dist/lib/components/navigation/SideNavigationWrapper.js.map +0 -1
  156. package/dist/lib/components/navigation/useNavigationCollapsibleState.d.ts +0 -9
  157. package/dist/lib/components/navigation/useNavigationCollapsibleState.js +0 -28
  158. package/dist/lib/components/navigation/useNavigationCollapsibleState.js.map +0 -1
  159. package/dist/lib/components/navigation/util.d.ts +0 -8
  160. package/dist/lib/components/navigation/util.js +0 -15
  161. package/dist/lib/components/navigation/util.js.map +0 -1
  162. package/dist/lib/plugins/openapi/MethodBadge.d.ts +0 -13
  163. package/dist/lib/plugins/openapi/MethodBadge.js +0 -26
  164. package/dist/lib/plugins/openapi/MethodBadge.js.map +0 -1
  165. package/dist/lib/util/traverseNavigation.d.ts +0 -6
  166. package/dist/lib/util/traverseNavigation.js +0 -30
  167. package/dist/lib/util/traverseNavigation.js.map +0 -1
  168. package/lib/AnchorLink-BZcpTwOs.js.map +0 -1
  169. package/lib/DevPortalProvider-BWeAysxF.js.map +0 -1
  170. package/lib/DeveloperHint-DQVwIery.js +0 -10
  171. package/lib/MdxPage-CA1WmW14.js.map +0 -1
  172. package/lib/Route-D70pGn9n.js +0 -13
  173. package/lib/Spinner-Coi7ORUV.js +0 -244
  174. package/lib/Spinner-Coi7ORUV.js.map +0 -1
  175. package/lib/index-Bl6YeerK.js.map +0 -1
  176. package/lib/index-Dt-pU7Vu.js +0 -916
  177. package/lib/index-Dt-pU7Vu.js.map +0 -1
  178. package/lib/jsx-runtime-CJBdjYYx.js +0 -1526
  179. package/lib/jsx-runtime-CJBdjYYx.js.map +0 -1
  180. package/src/lib/components/navigation/SideNavigationCategory.tsx +0 -72
  181. package/src/lib/components/navigation/SideNavigationItem.tsx +0 -148
  182. package/src/lib/components/navigation/useNavigationCollapsibleState.ts +0 -42
  183. package/src/lib/components/navigation/util.ts +0 -38
  184. package/src/lib/plugins/openapi/MethodBadge.tsx +0 -36
  185. package/src/lib/util/traverseNavigation.ts +0 -55
package/cli.js CHANGED
@@ -1,3 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import "./dist/cli/cli.js";
3
+ if (process.env.ZUDOKU_INTERNAL_CLI) {
4
+ import("./scripts/cli-dev.js");
5
+ } else {
6
+ import("./dist/cli/cli.js");
7
+ }
package/dist/app/demo.js CHANGED
@@ -22,11 +22,12 @@ createRoot(document.getElementById("root")).render(_jsx(StrictMode, { children:
22
22
  },
23
23
  },
24
24
  pageTitle: "Developer Portal",
25
- }, navigation: [
25
+ }, topNavigation: [
26
26
  {
27
+ id: "demo",
27
28
  label: "API Reference",
28
- path: "/demo",
29
- categories: [],
30
29
  },
31
- ], plugins: [openApiPlugin({ type: "url", input: apiUrl, path: "/demo" })] }) }));
30
+ ], plugins: [
31
+ openApiPlugin({ type: "url", input: apiUrl, navigationId: "demo" }),
32
+ ] }) }));
32
33
  //# sourceMappingURL=demo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"demo.js","sourceRoot":"","sources":["../../src/app/demo.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,SAAS;AACT,OAAO,YAAY,CAAC;AAEpB,SAAS;AACT,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,wBAAwB,CAAC;AAEhC,uBAAuB;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,UAAU;AACV,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACzE,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC;AAElC,8DAA8D;AAC9D,yDAAyD;AAEzD,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAE,CAAC,CAAC,MAAM,CACjD,KAAC,UAAU,cACT,KAAC,SAAS,IACR,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,GAAG,EAAE;oBACH,KAAK,EAAE,uCAAuC;oBAC9C,IAAI,EAAE,uCAAuC;iBAC9C;aACF;YACD,SAAS,EAAE,kBAAkB;SAC9B,EACD,UAAU,EAAE;YACV;gBACE,KAAK,EAAE,eAAe;gBACtB,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE,EAAE;aACf;SACF,EACD,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,GACxE,GACS,CACd,CAAC"}
1
+ {"version":3,"file":"demo.js","sourceRoot":"","sources":["../../src/app/demo.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,SAAS;AACT,OAAO,YAAY,CAAC;AAEpB,SAAS;AACT,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,wBAAwB,CAAC;AAEhC,uBAAuB;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,UAAU;AACV,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACzE,MAAM,CAAC,IAAI,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC;AAElC,8DAA8D;AAC9D,yDAAyD;AAEzD,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAE,CAAC,CAAC,MAAM,CACjD,KAAC,UAAU,cACT,KAAC,SAAS,IACR,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,GAAG,EAAE;oBACH,KAAK,EAAE,uCAAuC;oBAC9C,IAAI,EAAE,uCAAuC;iBAC9C;aACF;YACD,SAAS,EAAE,kBAAkB;SAC9B,EACD,aAAa,EAAE;YACb;gBACE,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,eAAe;aACvB;SACF,EACD,OAAO,EAAE;YACP,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;SACrE,GACD,GACS,CACd,CAAC"}
package/dist/app/main.js CHANGED
@@ -4,6 +4,7 @@ import { configuredApiPlugins } from "virtual:zudoku-api-plugins";
4
4
  import { configuredAuthProvider } from "virtual:zudoku-auth";
5
5
  import { configuredDocsPlugins } from "virtual:zudoku-docs-plugins";
6
6
  import { configuredRedirectPlugin } from "virtual:zudoku-redirect-plugin";
7
+ import { configuredSidebar } from "virtual:zudoku-sidebar";
7
8
  import "virtual:zudoku-theme.css";
8
9
  import { DevPortal, Layout, RouterError } from "zudoku/components";
9
10
  import { isNavigationPlugin } from "zudoku/internal";
@@ -28,8 +29,9 @@ export const convertZudokuConfigToOptions = (config) => {
28
29
  title: "%s | Developer Portal",
29
30
  ...config.metadata,
30
31
  },
32
+ sidebars: configuredSidebar,
33
+ topNavigation: config.topNavigation,
31
34
  mdx: config.mdx,
32
- navigation: config.navigation ?? [],
33
35
  authentication: configuredAuthProvider,
34
36
  plugins: [
35
37
  ...configuredDocsPlugins,
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/app/main.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAI9D,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,MAAoB,EACE,EAAE;IACxB,MAAM,YAAY,GAChB,MAAM,CAAC,IAAI,EAAE,OAAO,IAAI,uCAAuC,CAAC;IAElE,OAAO;QACL,IAAI,EAAE;YACJ,SAAS,EAAE,kBAAkB;YAC7B,GAAG,MAAM,CAAC,IAAI;YACd,IAAI,EAAE;gBACJ,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI;gBACpB,GAAG,EAAE;oBACH,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,YAAY;oBACpD,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,YAAY;iBACnD;aACF;SACF;QACD,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ,EAAE;YACR,OAAO,EAAE,uCAAuC;YAChD,KAAK,EAAE,uBAAuB;YAC9B,GAAG,MAAM,CAAC,QAAQ;SACnB;QACD,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,EAAE;QACnC,cAAc,EAAE,sBAAsB;QACtC,OAAO,EAAE;YACP,GAAG,qBAAqB;YACxB,GAAG,oBAAoB;YACvB,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,sBAAsB,EAAE,uBAAuB;gBACjD,CAAC,CAAC,CAAC,sBAAsB,CAAC,uBAAuB,EAAE,CAAC;gBACpD,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAAoB,EAAiB,EAAE;IACvE,MAAM,OAAO,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IAErD,MAAM,UAAU,GAAG;QACjB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,uBAAuB;YACjD,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC;YACpD,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IAEF,MAAM,MAAM,GAAG,UAAU;SACtB,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAC3E,MAAM,CAAC;QACN,IAAI,EAAE,GAAG;QACT,MAAM,EAAE,GAAG,EAAE;YACX,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACnD,CAAC;KACF,CAAC,CAAC;IAEL,OAAO;QACL;YACE,OAAO,EAAE,CACP,KAAC,SAAS,OAAK,OAAO,YACpB,KAAC,MAAM,KAAG,GACA,CACb;YACD,QAAQ,EAAE;gBACR;oBACE,YAAY,EAAE,KAAC,WAAW,KAAG;oBAC7B,QAAQ,EAAE,MAAM;iBACjB;aACF;SACF;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/app/main.tsx"],"names":[],"mappings":"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"}
@@ -27,11 +27,12 @@ createRoot(root).render(_jsx(StrictMode, { children: _jsx(DevPortal, { page: {
27
27
  },
28
28
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
29
29
  pageTitle: pageTitle ?? "Developer Portal",
30
- }, navigation: [
30
+ }, topNavigation: [
31
31
  {
32
+ id: "demo",
32
33
  label: "API Reference",
33
- path: "/",
34
- categories: [],
35
34
  },
36
- ], plugins: [openApiPlugin({ type: "url", input: apiUrl, path: "/" })] }) }));
35
+ ], plugins: [
36
+ openApiPlugin({ type: "url", input: apiUrl, navigationId: "/" }),
37
+ ] }) }));
37
38
  //# sourceMappingURL=standalone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../src/app/standalone.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,SAAS;AACT,OAAO,YAAY,CAAC;AAEpB,SAAS;AACT,OAAO,wBAAwB,CAAC;AAEhC,uBAAuB;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,UAAU;AACV,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;AACtD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;IACpC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;AACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtE,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;AAEnD,8DAA8D;AAC9D,yDAAyD;AAEzD,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CACrB,KAAC,UAAU,cACT,KAAC,SAAS,IACR,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,GAAG,EAAE;oBACH,KAAK,EAAE,OAAO,IAAI,uCAAuC;oBACzD,IAAI,EAAE,OAAO,IAAI,uCAAuC;iBACzD;aACF;YACD,uEAAuE;YACvE,SAAS,EAAE,SAAS,IAAI,kBAAkB;SAC3C,EACD,UAAU,EAAE;YACV;gBACE,KAAK,EAAE,eAAe;gBACtB,IAAI,EAAE,GAAG;gBACT,UAAU,EAAE,EAAE;aACf;SACF,EACD,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GACpE,GACS,CACd,CAAC"}
1
+ {"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../src/app/standalone.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,SAAS;AACT,OAAO,YAAY,CAAC;AAEpB,SAAS;AACT,OAAO,wBAAwB,CAAC;AAEhC,uBAAuB;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,UAAU;AACV,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;AACtD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;IACpC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;AACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtE,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;AAEnD,8DAA8D;AAC9D,yDAAyD;AAEzD,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CACrB,KAAC,UAAU,cACT,KAAC,SAAS,IACR,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,GAAG,EAAE;oBACH,KAAK,EAAE,OAAO,IAAI,uCAAuC;oBACzD,IAAI,EAAE,OAAO,IAAI,uCAAuC;iBACzD;aACF;YACD,uEAAuE;YACvE,SAAS,EAAE,SAAS,IAAI,kBAAkB;SAC3C,EACD,aAAa,EAAE;YACb;gBACE,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,eAAe;aACvB;SACF,EACD,OAAO,EAAE;YACP,aAAa,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAO,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;SAClE,GACD,GACS,CACd,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { BaseSidebarItemCategoryLinkDoc, BaseSidebarItemDoc, SidebarItem, SidebarItemCategory, SidebarItemLink } from "./SidebarSchema.js";
2
+ export type ResolvedSidebarItemDoc = BaseSidebarItemDoc & {
3
+ label: string;
4
+ categoryLabel?: string;
5
+ };
6
+ type ResolvedSidebarItemLink = SidebarItemLink;
7
+ type ResolvedSidebarItemCategoryLinkDoc = BaseSidebarItemCategoryLinkDoc & {
8
+ label: string;
9
+ };
10
+ export type ResolvedSidebarItemCategory = Omit<SidebarItemCategory, "items" | "link"> & {
11
+ items: ResolvedSidebarItem[];
12
+ link?: ResolvedSidebarItemCategoryLinkDoc;
13
+ };
14
+ export type ResolvedSidebarItem = ResolvedSidebarItemDoc | ResolvedSidebarItemLink | ResolvedSidebarItemCategory;
15
+ export declare const resolveSidebar: (rootDir: string, parentId: string, sidebar: SidebarItem[]) => Promise<ResolvedSidebarItem[]>;
16
+ export type ResolvedSidebar = ResolvedSidebarItem[];
17
+ export type ResolvedSidebarConfig = Record<string, ResolvedSidebar>;
18
+ export {};
@@ -0,0 +1,76 @@
1
+ import { glob } from "glob";
2
+ import matter from "gray-matter";
3
+ import fs from "node:fs/promises";
4
+ const extractTitleFromContent = (content) => content.match(/^\s*#\s(.*)$/m)?.at(1);
5
+ export const resolveSidebar = async (rootDir, parentId, sidebar) => {
6
+ const resolveDoc = async (id, categoryLabel) => {
7
+ const foundMatches = await glob(`/**/${parentId}/${id}.{md,mdx}`, {
8
+ root: rootDir,
9
+ });
10
+ if (foundMatches.length === 0) {
11
+ throw new Error(`No file found for doc ${parentId}/${id}`);
12
+ }
13
+ if (foundMatches.length > 1) {
14
+ throw new Error(`Multiple files found for doc ${parentId}/${id}`);
15
+ }
16
+ const file = await fs.readFile(foundMatches.at(0));
17
+ const { data, content } = matter(file);
18
+ const label = data.sidebar_label ?? data.title ?? extractTitleFromContent(content);
19
+ if (typeof label !== "string") {
20
+ throw new Error(`No title found for doc ${id}`);
21
+ }
22
+ return {
23
+ type: "doc",
24
+ id,
25
+ label,
26
+ categoryLabel,
27
+ };
28
+ };
29
+ const resolveLink = async (id) => {
30
+ const doc = await resolveDoc(id);
31
+ return {
32
+ type: "doc",
33
+ id: id,
34
+ label: doc.label,
35
+ };
36
+ };
37
+ const resolveSidebarItemCategoryLinkDoc = async (item) => {
38
+ if (typeof item === "string") {
39
+ return resolveLink(item);
40
+ }
41
+ const label = item.label ?? (await resolveDoc(item.id)).label;
42
+ return { label, ...item };
43
+ };
44
+ const resolveSidebarItemDoc = async (item, categoryLabel) => {
45
+ if (typeof item === "string") {
46
+ return resolveDoc(item, categoryLabel);
47
+ }
48
+ const label = item.label ?? (await resolveDoc(item.id, categoryLabel)).label;
49
+ return { ...item, label, categoryLabel };
50
+ };
51
+ const resolveSidebarItem = async (item, categoryLabel) => {
52
+ if (typeof item === "string") {
53
+ return resolveDoc(item, categoryLabel);
54
+ }
55
+ switch (item.type) {
56
+ case "doc":
57
+ return resolveSidebarItemDoc(item, categoryLabel);
58
+ case "link":
59
+ return item;
60
+ case "category": {
61
+ const categoryItem = item;
62
+ const items = await Promise.all(categoryItem.items.map((subItem) => resolveSidebarItem(subItem, categoryItem.label)));
63
+ const resolvedLink = categoryItem.link
64
+ ? await resolveSidebarItemCategoryLinkDoc(categoryItem.link)
65
+ : undefined;
66
+ return {
67
+ ...categoryItem,
68
+ items,
69
+ link: resolvedLink,
70
+ };
71
+ }
72
+ }
73
+ };
74
+ return Promise.all(sidebar.map((item) => resolveSidebarItem(item)));
75
+ };
76
+ //# sourceMappingURL=ResolvedSidebarSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResolvedSidebarSchema.js","sourceRoot":"","sources":["../../../src/config/validators/ResolvedSidebarSchema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,177 @@
1
+ import { z } from "zod";
2
+ export declare const BaseSidebarItemCategoryLinkDocSchema: z.ZodObject<{
3
+ type: z.ZodLiteral<"doc">;
4
+ id: z.ZodString;
5
+ label: z.ZodOptional<z.ZodString>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ type: "doc";
8
+ id: string;
9
+ label?: string | undefined;
10
+ }, {
11
+ type: "doc";
12
+ id: string;
13
+ label?: string | undefined;
14
+ }>;
15
+ export type BaseSidebarItemCategoryLinkDoc = z.infer<typeof BaseSidebarItemCategoryLinkDocSchema>;
16
+ export declare const SidebarItemCategoryLinkDocSchema: z.ZodUnion<[z.ZodObject<{
17
+ type: z.ZodLiteral<"doc">;
18
+ id: z.ZodString;
19
+ label: z.ZodOptional<z.ZodString>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ type: "doc";
22
+ id: string;
23
+ label?: string | undefined;
24
+ }, {
25
+ type: "doc";
26
+ id: string;
27
+ label?: string | undefined;
28
+ }>, z.ZodString]>;
29
+ declare const BaseSidebarItemDocSchema: z.ZodObject<{
30
+ type: z.ZodLiteral<"doc">;
31
+ id: z.ZodString;
32
+ label: z.ZodOptional<z.ZodString>;
33
+ badge: z.ZodOptional<z.ZodObject<{
34
+ label: z.ZodString;
35
+ color: z.ZodEnum<["green", "blue", "yellow", "red", "purple", "indigo", "gray"]>;
36
+ }, "strip", z.ZodTypeAny, {
37
+ label: string;
38
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
39
+ }, {
40
+ label: string;
41
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
42
+ }>>;
43
+ }, "strip", z.ZodTypeAny, {
44
+ type: "doc";
45
+ id: string;
46
+ label?: string | undefined;
47
+ badge?: {
48
+ label: string;
49
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
50
+ } | undefined;
51
+ }, {
52
+ type: "doc";
53
+ id: string;
54
+ label?: string | undefined;
55
+ badge?: {
56
+ label: string;
57
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
58
+ } | undefined;
59
+ }>;
60
+ export type BaseSidebarItemDoc = z.infer<typeof BaseSidebarItemDocSchema>;
61
+ export declare const SidebarItemDocSchema: z.ZodUnion<[z.ZodObject<{
62
+ type: z.ZodLiteral<"doc">;
63
+ id: z.ZodString;
64
+ label: z.ZodOptional<z.ZodString>;
65
+ badge: z.ZodOptional<z.ZodObject<{
66
+ label: z.ZodString;
67
+ color: z.ZodEnum<["green", "blue", "yellow", "red", "purple", "indigo", "gray"]>;
68
+ }, "strip", z.ZodTypeAny, {
69
+ label: string;
70
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
71
+ }, {
72
+ label: string;
73
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
74
+ }>>;
75
+ }, "strip", z.ZodTypeAny, {
76
+ type: "doc";
77
+ id: string;
78
+ label?: string | undefined;
79
+ badge?: {
80
+ label: string;
81
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
82
+ } | undefined;
83
+ }, {
84
+ type: "doc";
85
+ id: string;
86
+ label?: string | undefined;
87
+ badge?: {
88
+ label: string;
89
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
90
+ } | undefined;
91
+ }>, z.ZodString]>;
92
+ export declare const SidebarItemLinkSchema: z.ZodObject<{
93
+ type: z.ZodLiteral<"link">;
94
+ label: z.ZodString;
95
+ href: z.ZodString;
96
+ description: z.ZodOptional<z.ZodString>;
97
+ badge: z.ZodOptional<z.ZodObject<{
98
+ label: z.ZodString;
99
+ color: z.ZodEnum<["green", "blue", "yellow", "red", "purple", "indigo", "gray"]>;
100
+ }, "strip", z.ZodTypeAny, {
101
+ label: string;
102
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
103
+ }, {
104
+ label: string;
105
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
106
+ }>>;
107
+ }, "strip", z.ZodTypeAny, {
108
+ type: "link";
109
+ label: string;
110
+ href: string;
111
+ badge?: {
112
+ label: string;
113
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
114
+ } | undefined;
115
+ description?: string | undefined;
116
+ }, {
117
+ type: "link";
118
+ label: string;
119
+ href: string;
120
+ badge?: {
121
+ label: string;
122
+ color: "green" | "blue" | "yellow" | "red" | "purple" | "indigo" | "gray";
123
+ } | undefined;
124
+ description?: string | undefined;
125
+ }>;
126
+ export type SidebarItemLink = z.infer<typeof SidebarItemLinkSchema>;
127
+ export declare const BaseSidebarItemCategorySchema: z.ZodObject<{
128
+ type: z.ZodLiteral<"category">;
129
+ label: z.ZodString;
130
+ description: z.ZodOptional<z.ZodString>;
131
+ collapsible: z.ZodOptional<z.ZodBoolean>;
132
+ collapsed: z.ZodOptional<z.ZodBoolean>;
133
+ link: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
134
+ type: z.ZodLiteral<"doc">;
135
+ id: z.ZodString;
136
+ label: z.ZodOptional<z.ZodString>;
137
+ }, "strip", z.ZodTypeAny, {
138
+ type: "doc";
139
+ id: string;
140
+ label?: string | undefined;
141
+ }, {
142
+ type: "doc";
143
+ id: string;
144
+ label?: string | undefined;
145
+ }>, z.ZodString]>>;
146
+ }, "strip", z.ZodTypeAny, {
147
+ type: "category";
148
+ label: string;
149
+ link?: string | {
150
+ type: "doc";
151
+ id: string;
152
+ label?: string | undefined;
153
+ } | undefined;
154
+ description?: string | undefined;
155
+ collapsible?: boolean | undefined;
156
+ collapsed?: boolean | undefined;
157
+ }, {
158
+ type: "category";
159
+ label: string;
160
+ link?: string | {
161
+ type: "doc";
162
+ id: string;
163
+ label?: string | undefined;
164
+ } | undefined;
165
+ description?: string | undefined;
166
+ collapsible?: boolean | undefined;
167
+ collapsed?: boolean | undefined;
168
+ }>;
169
+ export type SidebarItem = z.infer<typeof SidebarItemDocSchema> | z.infer<typeof SidebarItemLinkSchema> | z.infer<typeof SidebarItemCategorySchema>;
170
+ export declare const SidebarItemSchema: z.ZodType<SidebarItem>;
171
+ export type SidebarItemCategory = z.infer<typeof BaseSidebarItemCategorySchema> & {
172
+ items: SidebarItem[];
173
+ };
174
+ export declare const SidebarItemCategorySchema: z.ZodType<SidebarItemCategory>;
175
+ export declare const SidebarSchema: z.ZodArray<z.ZodType<SidebarItem, z.ZodTypeDef, SidebarItem>, "many">;
176
+ export type Sidebar = z.infer<typeof SidebarSchema>;
177
+ export {};
@@ -0,0 +1,71 @@
1
+ import { z } from "zod";
2
+ export const BaseSidebarItemCategoryLinkDocSchema = z.object({
3
+ type: z.literal("doc"),
4
+ id: z.string(),
5
+ label: z.string().optional(),
6
+ });
7
+ export const SidebarItemCategoryLinkDocSchema = z.union([
8
+ BaseSidebarItemCategoryLinkDocSchema,
9
+ z.string(),
10
+ ]);
11
+ const BaseSidebarItemDocSchema = z.object({
12
+ type: z.literal("doc"),
13
+ id: z.string(),
14
+ label: z.string().optional(),
15
+ badge: z
16
+ .object({
17
+ label: z.string(),
18
+ color: z.enum([
19
+ "green",
20
+ "blue",
21
+ "yellow",
22
+ "red",
23
+ "purple",
24
+ "indigo",
25
+ "gray",
26
+ ]),
27
+ })
28
+ .optional(),
29
+ });
30
+ export const SidebarItemDocSchema = z.union([
31
+ BaseSidebarItemDocSchema,
32
+ z.string(),
33
+ ]);
34
+ export const SidebarItemLinkSchema = z.object({
35
+ type: z.literal("link"),
36
+ label: z.string(),
37
+ href: z.string(),
38
+ description: z.string().optional(),
39
+ badge: z
40
+ .object({
41
+ label: z.string(),
42
+ color: z.enum([
43
+ "green",
44
+ "blue",
45
+ "yellow",
46
+ "red",
47
+ "purple",
48
+ "indigo",
49
+ "gray",
50
+ ]),
51
+ })
52
+ .optional(),
53
+ });
54
+ export const BaseSidebarItemCategorySchema = z.object({
55
+ type: z.literal("category"),
56
+ label: z.string(),
57
+ description: z.string().optional(),
58
+ collapsible: z.boolean().optional(),
59
+ collapsed: z.boolean().optional(),
60
+ link: SidebarItemCategoryLinkDocSchema.optional(),
61
+ });
62
+ export const SidebarItemSchema = z.lazy(() => z.union([
63
+ SidebarItemDocSchema,
64
+ SidebarItemLinkSchema,
65
+ SidebarItemCategorySchema,
66
+ ]));
67
+ export const SidebarItemCategorySchema = BaseSidebarItemCategorySchema.extend({
68
+ items: SidebarItemSchema.array(),
69
+ });
70
+ export const SidebarSchema = SidebarItemSchema.array();
71
+ //# sourceMappingURL=SidebarSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SidebarSchema.js","sourceRoot":"","sources":["../../../src/config/validators/SidebarSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3D,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAMH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC;IACtD,oCAAoC;IACpC,CAAC,CAAC,MAAM,EAAE;CACX,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,KAAK,EAAE,CAAC;SACL,MAAM,CAAC;QACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;YACZ,OAAO;YACP,MAAM;YACN,QAAQ;YACR,KAAK;YACL,QAAQ;YACR,QAAQ;YACR,MAAM;SACP,CAAC;KACH,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC1C,wBAAwB;IACxB,CAAC,CAAC,MAAM,EAAE;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,KAAK,EAAE,CAAC;SACL,MAAM,CAAC;QACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;YACZ,OAAO;YACP,MAAM;YACN,QAAQ;YACR,KAAK;YACL,QAAQ;YACR,QAAQ;YACR,MAAM;SACP,CAAC;KACH,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,IAAI,EAAE,gCAAgC,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC;AAOH,MAAM,CAAC,MAAM,iBAAiB,GAA2B,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACnE,CAAC,CAAC,KAAK,CAAC;IACN,oBAAoB;IACpB,qBAAqB;IACrB,yBAAyB;CAC1B,CAAC,CACH,CAAC;AAQF,MAAM,CAAC,MAAM,yBAAyB,GACpC,6BAA6B,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,iBAAiB,CAAC,KAAK,EAAE;CACjC,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,aAAa,GAAG,iBAAiB,CAAC,KAAK,EAAE,CAAC"}