zudoku 0.38.0 → 0.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/dist/app/tailwind.js +14 -0
  2. package/dist/app/tailwind.js.map +1 -1
  3. package/dist/lib/components/Heading.d.ts +1 -1
  4. package/dist/lib/components/Layout.js +2 -9
  5. package/dist/lib/components/Layout.js.map +1 -1
  6. package/dist/lib/components/Main.js +3 -1
  7. package/dist/lib/components/Main.js.map +1 -1
  8. package/dist/lib/components/Pagination.d.ts +10 -0
  9. package/dist/lib/components/Pagination.js +10 -0
  10. package/dist/lib/components/Pagination.js.map +1 -0
  11. package/dist/lib/components/TopNavigation.js +18 -2
  12. package/dist/lib/components/TopNavigation.js.map +1 -1
  13. package/dist/lib/components/navigation/SidebarItem.d.ts +1 -0
  14. package/dist/lib/components/navigation/SidebarItem.js +7 -3
  15. package/dist/lib/components/navigation/SidebarItem.js.map +1 -1
  16. package/dist/lib/{plugins/markdown → components/navigation}/Toc.js +5 -7
  17. package/dist/lib/components/navigation/Toc.js.map +1 -0
  18. package/dist/lib/oas/graphql/index.d.ts +2 -1
  19. package/dist/lib/oas/graphql/index.js +74 -14
  20. package/dist/lib/oas/graphql/index.js.map +1 -1
  21. package/dist/lib/oas/parser/dereference/index.js +2 -0
  22. package/dist/lib/oas/parser/dereference/index.js.map +1 -1
  23. package/dist/lib/oas/parser/index.d.ts +5 -3
  24. package/dist/lib/oas/parser/index.js +0 -22
  25. package/dist/lib/oas/parser/index.js.map +1 -1
  26. package/dist/lib/plugins/api-catalog/index.js +19 -17
  27. package/dist/lib/plugins/api-catalog/index.js.map +1 -1
  28. package/dist/lib/plugins/markdown/MdxPage.js +3 -3
  29. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  30. package/dist/lib/plugins/openapi/ColorizedParam.js +1 -1
  31. package/dist/lib/plugins/openapi/ColorizedParam.js.map +1 -1
  32. package/dist/lib/plugins/openapi/OperationList.d.ts +1 -1
  33. package/dist/lib/plugins/openapi/OperationList.js +28 -8
  34. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  35. package/dist/lib/plugins/openapi/OperationListItem.js +1 -1
  36. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  37. package/dist/lib/plugins/openapi/ParameterListItem.js +2 -1
  38. package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
  39. package/dist/lib/plugins/openapi/SchemaList.d.ts +1 -0
  40. package/dist/lib/plugins/openapi/SchemaList.js +52 -0
  41. package/dist/lib/plugins/openapi/SchemaList.js.map +1 -0
  42. package/dist/lib/plugins/openapi/client/GraphQLClient.d.ts +1 -1
  43. package/dist/lib/plugins/openapi/client/GraphQLClient.js +1 -1
  44. package/dist/lib/plugins/openapi/client/GraphQLClient.js.map +1 -1
  45. package/dist/lib/plugins/openapi/client/useCreateQuery.d.ts +6 -2
  46. package/dist/lib/plugins/openapi/client/useCreateQuery.js +5 -5
  47. package/dist/lib/plugins/openapi/client/useCreateQuery.js.map +1 -1
  48. package/dist/lib/plugins/openapi/components/EnumValues.js +1 -1
  49. package/dist/lib/plugins/openapi/components/EnumValues.js.map +1 -1
  50. package/dist/lib/plugins/openapi/graphql/gql.d.ts +6 -2
  51. package/dist/lib/plugins/openapi/graphql/gql.js +3 -2
  52. package/dist/lib/plugins/openapi/graphql/gql.js.map +1 -1
  53. package/dist/lib/plugins/openapi/graphql/graphql.d.ts +67 -11
  54. package/dist/lib/plugins/openapi/graphql/graphql.js +34 -5
  55. package/dist/lib/plugins/openapi/graphql/graphql.js.map +1 -1
  56. package/dist/lib/plugins/openapi/index.js +12 -0
  57. package/dist/lib/plugins/openapi/index.js.map +1 -1
  58. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.d.ts +1 -2
  59. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.js +2 -2
  60. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.js.map +1 -1
  61. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.d.ts +0 -1
  62. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.js +1 -1
  63. package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.js.map +1 -1
  64. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.d.ts +4 -0
  65. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js +12 -0
  66. package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js.map +1 -0
  67. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.d.ts +2 -4
  68. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +12 -9
  69. package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
  70. package/dist/lib/plugins/openapi/schema/SchemaView.d.ts +1 -2
  71. package/dist/lib/plugins/openapi/schema/SchemaView.js +30 -52
  72. package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
  73. package/dist/lib/plugins/openapi/schema/utils.d.ts +1 -0
  74. package/dist/lib/plugins/openapi/schema/utils.js +3 -1
  75. package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
  76. package/dist/lib/plugins/openapi/util/getRoutes.js +9 -3
  77. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
  78. package/dist/lib/util/useOnScreen.d.ts +3 -2
  79. package/dist/lib/util/useOnScreen.js +3 -3
  80. package/dist/lib/util/useOnScreen.js.map +1 -1
  81. package/dist/vite/api/schema-codegen.js +2 -2
  82. package/dist/vite/api/schema-codegen.js.map +1 -1
  83. package/dist/vite/api/schema-codegen.test.js +5 -0
  84. package/dist/vite/api/schema-codegen.test.js.map +1 -1
  85. package/dist/vite/plugin-api.js +8 -7
  86. package/dist/vite/plugin-api.js.map +1 -1
  87. package/lib/{AuthenticationPlugin-Duy_R1TU.js → AuthenticationPlugin-foqdvvkf.js} +2 -2
  88. package/lib/{AuthenticationPlugin-Duy_R1TU.js.map → AuthenticationPlugin-foqdvvkf.js.map} +1 -1
  89. package/lib/{Callout-B2vsR09t.js → Callout-D5frCCJ0.js} +2 -2
  90. package/lib/{Callout-B2vsR09t.js.map → Callout-D5frCCJ0.js.map} +1 -1
  91. package/lib/{Dialog-sbgekbjb.js → Dialog-Dv6WG8RN.js} +5 -5
  92. package/lib/{Dialog-sbgekbjb.js.map → Dialog-Dv6WG8RN.js.map} +1 -1
  93. package/lib/{Markdown-DIZ8nBVC.js → Markdown-aF5FdsNi.js} +1339 -1335
  94. package/lib/{Markdown-DIZ8nBVC.js.map → Markdown-aF5FdsNi.js.map} +1 -1
  95. package/lib/MdxPage-ZW1StNhp.js +83 -0
  96. package/lib/MdxPage-ZW1StNhp.js.map +1 -0
  97. package/lib/{OasProvider-D1A10JeA.js → OasProvider-Cld9RAMQ.js} +3 -3
  98. package/lib/{OasProvider-D1A10JeA.js.map → OasProvider-Cld9RAMQ.js.map} +1 -1
  99. package/lib/OperationList-D-OfzJm6.js +5065 -0
  100. package/lib/OperationList-D-OfzJm6.js.map +1 -0
  101. package/lib/Pagination-CYB3nVYx.js +46 -0
  102. package/lib/Pagination-CYB3nVYx.js.map +1 -0
  103. package/lib/SchemaList-Ci1WxRh0.js +148 -0
  104. package/lib/SchemaList-Ci1WxRh0.js.map +1 -0
  105. package/lib/SchemaView-Brn-YxHY.js +345 -0
  106. package/lib/SchemaView-Brn-YxHY.js.map +1 -0
  107. package/lib/{Select-fAYcJ0OU.js → Select-DVFRKf1R.js} +3 -3
  108. package/lib/{Select-fAYcJ0OU.js.map → Select-DVFRKf1R.js.map} +1 -1
  109. package/lib/{SlotletProvider-BEwNY8q0.js → SlotletProvider-DXvc0aY6.js} +2 -2
  110. package/lib/{SlotletProvider-BEwNY8q0.js.map → SlotletProvider-DXvc0aY6.js.map} +1 -1
  111. package/lib/Toc-YBsgI72s.js +92 -0
  112. package/lib/Toc-YBsgI72s.js.map +1 -0
  113. package/lib/{createServer-DjgKDpGV.js → createServer-mMau3eV_.js} +1732 -1664
  114. package/lib/{createServer-DjgKDpGV.js.map → createServer-mMau3eV_.js.map} +1 -1
  115. package/lib/{hook-Cge6LiTK.js → hook-CqpVYDqN.js} +28 -28
  116. package/lib/{hook-Cge6LiTK.js.map → hook-CqpVYDqN.js.map} +1 -1
  117. package/lib/index-Bt7MKhZq.js +2514 -0
  118. package/lib/index-Bt7MKhZq.js.map +1 -0
  119. package/lib/{index-B0y3fTg-.js → index-CjPMxpOV.js} +771 -730
  120. package/lib/index-CjPMxpOV.js.map +1 -0
  121. package/lib/{mutation-EChriCeF.js → mutation-8LjrN7uz.js} +2 -2
  122. package/lib/{mutation-EChriCeF.js.map → mutation-8LjrN7uz.js.map} +1 -1
  123. package/lib/ui/Command.js +1 -1
  124. package/lib/zudoku.auth-auth0.js +1 -1
  125. package/lib/zudoku.auth-clerk.js +2 -2
  126. package/lib/zudoku.auth-openid.js +2 -2
  127. package/lib/zudoku.components.js +31 -1454
  128. package/lib/zudoku.components.js.map +1 -1
  129. package/lib/zudoku.hooks.js +1 -1
  130. package/lib/zudoku.plugin-api-catalog.js +80 -77
  131. package/lib/zudoku.plugin-api-catalog.js.map +1 -1
  132. package/lib/zudoku.plugin-api-keys.js +3 -3
  133. package/lib/zudoku.plugin-custom-pages.js +1 -1
  134. package/lib/zudoku.plugin-markdown.js +1 -1
  135. package/lib/zudoku.plugin-openapi.js +2 -2
  136. package/lib/zudoku.plugin-search-pagefind.js +3 -3
  137. package/package.json +4 -3
  138. package/src/app/tailwind.ts +14 -0
  139. package/src/lib/components/Layout.tsx +4 -16
  140. package/src/lib/components/Main.tsx +3 -1
  141. package/src/lib/components/Pagination.tsx +47 -0
  142. package/src/lib/components/TopNavigation.tsx +29 -2
  143. package/src/lib/components/navigation/SidebarItem.tsx +10 -4
  144. package/src/lib/{plugins/markdown → components/navigation}/Toc.tsx +5 -14
  145. package/src/lib/oas/graphql/index.ts +118 -45
  146. package/src/lib/oas/parser/dereference/index.ts +2 -0
  147. package/src/lib/oas/parser/index.ts +7 -29
  148. package/src/lib/plugins/api-catalog/index.tsx +40 -35
  149. package/src/lib/plugins/markdown/MdxPage.tsx +6 -36
  150. package/src/lib/plugins/openapi/ColorizedParam.tsx +1 -1
  151. package/src/lib/plugins/openapi/OperationList.tsx +36 -15
  152. package/src/lib/plugins/openapi/OperationListItem.tsx +7 -2
  153. package/src/lib/plugins/openapi/ParameterListItem.tsx +2 -0
  154. package/src/lib/plugins/openapi/SchemaList.tsx +151 -0
  155. package/src/lib/plugins/openapi/client/GraphQLClient.tsx +1 -1
  156. package/src/lib/plugins/openapi/client/useCreateQuery.ts +12 -5
  157. package/src/lib/plugins/openapi/components/EnumValues.tsx +1 -1
  158. package/src/lib/plugins/openapi/graphql/gql.ts +15 -6
  159. package/src/lib/plugins/openapi/graphql/graphql.ts +104 -15
  160. package/src/lib/plugins/openapi/index.tsx +13 -0
  161. package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.tsx +1 -8
  162. package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.tsx +1 -2
  163. package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +36 -0
  164. package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +20 -21
  165. package/src/lib/plugins/openapi/schema/SchemaView.tsx +69 -141
  166. package/src/lib/plugins/openapi/schema/utils.ts +7 -1
  167. package/src/lib/plugins/openapi/util/getRoutes.tsx +9 -6
  168. package/src/lib/util/useOnScreen.ts +6 -4
  169. package/dist/lib/plugins/markdown/Toc.js.map +0 -1
  170. package/lib/MdxPage-JEdbfW-f.js +0 -195
  171. package/lib/MdxPage-JEdbfW-f.js.map +0 -1
  172. package/lib/OperationList-yOmYzMIp.js +0 -5379
  173. package/lib/OperationList-yOmYzMIp.js.map +0 -1
  174. package/lib/index-B0y3fTg-.js.map +0 -1
  175. package/lib/index.esm-CltAN0Tf.js +0 -711
  176. package/lib/index.esm-CltAN0Tf.js.map +0 -1
  177. /package/dist/lib/{plugins/markdown → components/navigation}/Toc.d.ts +0 -0
@@ -4,9 +4,10 @@ const documents = {
4
4
  "\n query ServersQuery($input: JSON!, $type: SchemaType!) {\n schema(input: $input, type: $type) {\n url\n servers {\n url\n }\n }\n }\n": types.ServersQueryDocument,
5
5
  "\n fragment OperationsFragment on OperationItem {\n slug\n summary\n method\n description\n operationId\n contentTypes\n path\n deprecated\n extensions\n parameters {\n name\n in\n description\n required\n schema\n style\n explode\n examples {\n name\n description\n externalValue\n value\n summary\n }\n }\n requestBody {\n content {\n mediaType\n encoding {\n name\n }\n examples {\n name\n description\n externalValue\n value\n summary\n }\n schema\n }\n description\n required\n }\n responses {\n statusCode\n links\n description\n content {\n examples {\n name\n description\n externalValue\n value\n summary\n }\n mediaType\n encoding {\n name\n }\n schema\n }\n }\n }\n": types.OperationsFragmentFragmentDoc,
6
6
  "\n query SchemaWarmup($input: JSON!, $type: SchemaType!) {\n schema(input: $input, type: $type) {\n openapi\n }\n }\n": types.SchemaWarmupDocument,
7
- "\n query OperationsForTag(\n $input: JSON!\n $type: SchemaType!\n $tag: String\n $untagged: Boolean\n ) {\n schema(input: $input, type: $type) {\n servers {\n url\n }\n description\n summary\n title\n url\n version\n tags(name: $tag) {\n name\n description\n }\n operations(tag: $tag, untagged: $untagged) {\n slug\n ...OperationsFragment\n }\n }\n }\n": types.OperationsForTagDocument,
7
+ "\n query OperationsForTag(\n $input: JSON!\n $type: SchemaType!\n $tag: String\n $untagged: Boolean\n ) {\n schema(input: $input, type: $type) {\n servers {\n url\n }\n description\n summary\n title\n url\n version\n tag(slug: $tag, untagged: $untagged) {\n name\n description\n operations {\n slug\n ...OperationsFragment\n }\n next {\n name\n slug\n }\n prev {\n name\n slug\n }\n }\n }\n }\n": types.OperationsForTagDocument,
8
+ "\n query GetSchemas($input: JSON!, $type: SchemaType!) {\n schema(input: $input, type: $type) {\n title\n description\n summary\n components {\n schemas {\n name\n schema\n extensions\n }\n }\n }\n }\n": types.GetSchemasDocument,
8
9
  "\n query getServerQuery($input: JSON!, $type: SchemaType!) {\n schema(input: $input, type: $type) {\n url\n servers {\n url\n }\n }\n }\n": types.GetServerQueryDocument,
9
- "\n query GetSidebarOperations($input: JSON!, $type: SchemaType!) {\n schema(input: $input, type: $type) {\n tags {\n slug\n name\n extensions\n operations {\n summary\n slug\n method\n operationId\n path\n }\n }\n }\n }\n": types.GetSidebarOperationsDocument,
10
+ "\n query GetSidebarOperations($input: JSON!, $type: SchemaType!) {\n schema(input: $input, type: $type) {\n tags {\n slug\n name\n extensions\n operations {\n summary\n slug\n method\n operationId\n path\n }\n }\n components {\n schemas {\n __typename\n }\n }\n }\n }\n": types.GetSidebarOperationsDocument,
10
11
  };
11
12
  export function graphql(source) {
12
13
  return documents[source] ?? {};
@@ -1 +1 @@
1
- {"version":3,"file":"gql.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/graphql/gql.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAqBtC,MAAM,SAAS,GAAc;IAC3B,uKAAuK,EACrK,KAAK,CAAC,oBAAoB;IAC5B,khCAAkhC,EAChhC,KAAK,CAAC,6BAA6B;IACrC,oIAAoI,EAClI,KAAK,CAAC,oBAAoB;IAC5B,idAAid,EAC/c,KAAK,CAAC,wBAAwB;IAChC,yKAAyK,EACvK,KAAK,CAAC,sBAAsB;IAC9B,iUAAiU,EAC/T,KAAK,CAAC,4BAA4B;CACrC,CAAC;AAuCF,MAAM,UAAU,OAAO,CAAC,MAAc;IACpC,OAAQ,SAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"gql.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/graphql/gql.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAsBtC,MAAM,SAAS,GAAc;IAC3B,uKAAuK,EACrK,KAAK,CAAC,oBAAoB;IAC5B,khCAAkhC,EAChhC,KAAK,CAAC,6BAA6B;IACrC,oIAAoI,EAClI,KAAK,CAAC,oBAAoB;IAC5B,mkBAAmkB,EACjkB,KAAK,CAAC,wBAAwB;IAChC,qRAAqR,EACnR,KAAK,CAAC,kBAAkB;IAC1B,yKAAyK,EACvK,KAAK,CAAC,sBAAsB;IAC9B,kZAAkZ,EAChZ,KAAK,CAAC,4BAA4B;CACrC,CAAC;AA6CF,MAAM,UAAU,OAAO,CAAC,MAAc;IACpC,OAAQ,SAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC"}
@@ -58,6 +58,10 @@ export type Scalars = {
58
58
  output: any;
59
59
  };
60
60
  };
61
+ export type Components = {
62
+ __typename?: "Components";
63
+ schemas?: Maybe<Array<SchemaItem>>;
64
+ };
61
65
  export type EncodingItem = {
62
66
  __typename?: "EncodingItem";
63
67
  allowReserved?: Maybe<Scalars["Boolean"]["output"]>;
@@ -144,6 +148,7 @@ export type ResponseItem = {
144
148
  };
145
149
  export type Schema = {
146
150
  __typename?: "Schema";
151
+ components?: Maybe<Components>;
147
152
  description?: Maybe<Scalars["String"]["output"]>;
148
153
  extensions?: Maybe<Scalars["JSONObject"]["output"]>;
149
154
  openapi: Scalars["String"]["output"];
@@ -151,6 +156,7 @@ export type Schema = {
151
156
  paths: Array<PathItem>;
152
157
  servers: Array<Server>;
153
158
  summary?: Maybe<Scalars["String"]["output"]>;
159
+ tag?: Maybe<SchemaTag>;
154
160
  tags: Array<SchemaTag>;
155
161
  title: Scalars["String"]["output"];
156
162
  url?: Maybe<Scalars["String"]["output"]>;
@@ -163,15 +169,26 @@ export type SchemaOperationsArgs = {
163
169
  tag?: InputMaybe<Scalars["String"]["input"]>;
164
170
  untagged?: InputMaybe<Scalars["Boolean"]["input"]>;
165
171
  };
166
- export type SchemaTagsArgs = {
172
+ export type SchemaTagArgs = {
167
173
  name?: InputMaybe<Scalars["String"]["input"]>;
174
+ slug?: InputMaybe<Scalars["String"]["input"]>;
175
+ untagged?: InputMaybe<Scalars["Boolean"]["input"]>;
176
+ };
177
+ export type SchemaItem = {
178
+ __typename?: "SchemaItem";
179
+ extensions?: Maybe<Scalars["JSONObject"]["output"]>;
180
+ name: Scalars["String"]["output"];
181
+ schema: Scalars["JSONSchema"]["output"];
168
182
  };
169
183
  export type SchemaTag = {
170
184
  __typename?: "SchemaTag";
171
185
  description?: Maybe<Scalars["String"]["output"]>;
172
186
  extensions?: Maybe<Scalars["JSONObject"]["output"]>;
187
+ isUntagged: Scalars["Boolean"]["output"];
173
188
  name?: Maybe<Scalars["String"]["output"]>;
189
+ next?: Maybe<SchemaTag>;
174
190
  operations: Array<OperationItem>;
191
+ prev?: Maybe<SchemaTag>;
175
192
  slug?: Maybe<Scalars["String"]["output"]>;
176
193
  };
177
194
  export type SchemaType = "file" | "raw" | "url";
@@ -308,19 +325,51 @@ export type OperationsForTagQuery = {
308
325
  __typename?: "Server";
309
326
  url: string;
310
327
  }>;
311
- tags: Array<{
328
+ tag?: {
312
329
  __typename?: "SchemaTag";
313
330
  name?: string | null;
314
331
  description?: string | null;
315
- }>;
316
- operations: Array<{
317
- __typename?: "OperationItem";
318
- slug: string;
319
- } & {
320
- " $fragmentRefs"?: {
321
- OperationsFragmentFragment: OperationsFragmentFragment;
322
- };
323
- }>;
332
+ operations: Array<{
333
+ __typename?: "OperationItem";
334
+ slug: string;
335
+ } & {
336
+ " $fragmentRefs"?: {
337
+ OperationsFragmentFragment: OperationsFragmentFragment;
338
+ };
339
+ }>;
340
+ next?: {
341
+ __typename?: "SchemaTag";
342
+ name?: string | null;
343
+ slug?: string | null;
344
+ } | null;
345
+ prev?: {
346
+ __typename?: "SchemaTag";
347
+ name?: string | null;
348
+ slug?: string | null;
349
+ } | null;
350
+ } | null;
351
+ };
352
+ };
353
+ export type GetSchemasQueryVariables = Exact<{
354
+ input: Scalars["JSON"]["input"];
355
+ type: SchemaType;
356
+ }>;
357
+ export type GetSchemasQuery = {
358
+ __typename?: "Query";
359
+ schema: {
360
+ __typename?: "Schema";
361
+ title: string;
362
+ description?: string | null;
363
+ summary?: string | null;
364
+ components?: {
365
+ __typename?: "Components";
366
+ schemas?: Array<{
367
+ __typename?: "SchemaItem";
368
+ name: string;
369
+ schema: any;
370
+ extensions?: any | null;
371
+ }> | null;
372
+ } | null;
324
373
  };
325
374
  };
326
375
  export type GetServerQueryQueryVariables = Exact<{
@@ -360,6 +409,12 @@ export type GetSidebarOperationsQuery = {
360
409
  path: string;
361
410
  }>;
362
411
  }>;
412
+ components?: {
413
+ __typename?: "Components";
414
+ schemas?: Array<{
415
+ __typename: "SchemaItem";
416
+ }> | null;
417
+ } | null;
363
418
  };
364
419
  };
365
420
  export declare class TypedDocumentString<TResult, TVariables> extends String implements DocumentTypeDecoration<TResult, TVariables> {
@@ -373,5 +428,6 @@ export declare const OperationsFragmentFragmentDoc: TypedDocumentString<Operatio
373
428
  export declare const ServersQueryDocument: TypedDocumentString<ServersQueryQuery, ServersQueryQueryVariables>;
374
429
  export declare const SchemaWarmupDocument: TypedDocumentString<SchemaWarmupQuery, SchemaWarmupQueryVariables>;
375
430
  export declare const OperationsForTagDocument: TypedDocumentString<OperationsForTagQuery, OperationsForTagQueryVariables>;
431
+ export declare const GetSchemasDocument: TypedDocumentString<GetSchemasQuery, GetSchemasQueryVariables>;
376
432
  export declare const GetServerQueryDocument: TypedDocumentString<GetServerQueryQuery, GetServerQueryQueryVariables>;
377
433
  export declare const GetSidebarOperationsDocument: TypedDocumentString<GetSidebarOperationsQuery, GetSidebarOperationsQueryVariables>;
@@ -105,13 +105,21 @@ export const OperationsForTagDocument = new TypedDocumentString(`
105
105
  title
106
106
  url
107
107
  version
108
- tags(name: $tag) {
108
+ tag(slug: $tag, untagged: $untagged) {
109
109
  name
110
110
  description
111
- }
112
- operations(tag: $tag, untagged: $untagged) {
113
- slug
114
- ...OperationsFragment
111
+ operations {
112
+ slug
113
+ ...OperationsFragment
114
+ }
115
+ next {
116
+ name
117
+ slug
118
+ }
119
+ prev {
120
+ name
121
+ slug
122
+ }
115
123
  }
116
124
  }
117
125
  }
@@ -179,6 +187,22 @@ export const OperationsForTagDocument = new TypedDocumentString(`
179
187
  }
180
188
  }
181
189
  }`);
190
+ export const GetSchemasDocument = new TypedDocumentString(`
191
+ query GetSchemas($input: JSON!, $type: SchemaType!) {
192
+ schema(input: $input, type: $type) {
193
+ title
194
+ description
195
+ summary
196
+ components {
197
+ schemas {
198
+ name
199
+ schema
200
+ extensions
201
+ }
202
+ }
203
+ }
204
+ }
205
+ `);
182
206
  export const GetServerQueryDocument = new TypedDocumentString(`
183
207
  query getServerQuery($input: JSON!, $type: SchemaType!) {
184
208
  schema(input: $input, type: $type) {
@@ -204,6 +228,11 @@ export const GetSidebarOperationsDocument = new TypedDocumentString(`
204
228
  path
205
229
  }
206
230
  }
231
+ components {
232
+ schemas {
233
+ __typename
234
+ }
235
+ }
207
236
  }
208
237
  }
209
238
  `);
@@ -1 +1 @@
1
- {"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/graphql/graphql.ts"],"names":[],"mappings":"AA6VA,MAAM,OAAO,mBACX,SAAQ,MAAM;IAGd,SAAS,CAA4D;IAC7D,KAAK,CAAS;IACf,QAAQ,CAAmC;IAElD,YAAY,KAAa,EAAE,QAA0C;QACnE,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AACD,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,mBAAmB,CAClE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiEG,EACH,EAAE,YAAY,EAAE,oBAAoB,EAAE,CACgC,CAAC;AACzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;KASvD,CAGJ,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,mBAAmB,CAAC;;;;;;KAMvD,CAGJ,CAAC;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoF9D,CAGD,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;KASzD,CAGJ,CAAC;AACF,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;;;;;;;;;KAiB/D,CAGJ,CAAC"}
1
+ {"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/graphql/graphql.ts"],"names":[],"mappings":"AAsZA,MAAM,OAAO,mBACX,SAAQ,MAAM;IAGd,SAAS,CAA4D;IAC7D,KAAK,CAAS;IACf,QAAQ,CAAmC;IAElD,YAAY,KAAa,EAAE,QAA0C;QACnE,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AACD,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,mBAAmB,CAClE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiEG,EACH,EAAE,YAAY,EAAE,oBAAoB,EAAE,CACgC,CAAC;AACzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;KASvD,CAGJ,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,mBAAmB,CAAC;;;;;;KAMvD,CAGJ,CAAC;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4F9D,CAGD,CAAC;AACF,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;;;;;;;KAerD,CAGJ,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;KASzD,CAGJ,CAAC;AACF,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,mBAAmB,CAAC;;;;;;;;;;;;;;;;;;;;;;KAsB/D,CAGJ,CAAC"}
@@ -24,6 +24,11 @@ const GetSidebarOperationsQuery = graphql(`
24
24
  path
25
25
  }
26
26
  }
27
+ components {
28
+ schemas {
29
+ __typename
30
+ }
31
+ }
27
32
  }
28
33
  }
29
34
  `);
@@ -90,6 +95,13 @@ export const openApiPlugin = (config) => {
90
95
  collapsed: !config.options?.expandAllTags,
91
96
  }));
92
97
  }
98
+ if (data.schema.components?.schemas?.length) {
99
+ categories.push({
100
+ type: "link",
101
+ label: "Schemas",
102
+ href: joinUrl(basePath, versionParam, "~schemas"),
103
+ });
104
+ }
93
105
  return categories;
94
106
  }
95
107
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/plugins/openapi/index.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
1
  import type { SchemaObject } from "../../../../oas/parser/index.js";
2
2
  import type { LogicalGroupType } from "../utils.js";
3
- export declare const LogicalGroup: ({ schemas, type, isOpen, level, toggleOpen, }: {
3
+ export declare const LogicalGroup: ({ schemas, type, isOpen, toggleOpen, }: {
4
4
  schemas: SchemaObject[];
5
5
  type: LogicalGroupType;
6
6
  isOpen: boolean;
7
7
  toggleOpen: () => void;
8
- level: number;
9
8
  }) => import("react/jsx-runtime").JSX.Element;
@@ -8,7 +8,7 @@ const typeLabel = {
8
8
  OR: "Any of",
9
9
  ONE: "One of",
10
10
  };
11
- export const LogicalGroup = ({ schemas, type, isOpen, level, toggleOpen, }) => (_jsx(Collapsible.Root, { open: isOpen, onOpenChange: toggleOpen, asChild: true, children: _jsxs(Card, { className: "px-6", children: [_jsxs(Collapsible.Trigger, { className: "flex gap-2 items-center py-2 w-full text-sm text-muted-foreground -translate-x-1.5", children: [isOpen ? _jsx(SquareMinusIcon, { size: 14 }) : _jsx(SquarePlusIcon, { size: 14 }), _jsx("span", { children: typeLabel[type] })] }), _jsx(Collapsible.Content, { className: "pb-4", children: schemas.map((subSchema, index) => (
11
+ export const LogicalGroup = ({ schemas, type, isOpen, toggleOpen, }) => (_jsx(Collapsible.Root, { open: isOpen, onOpenChange: toggleOpen, asChild: true, children: _jsxs(Card, { className: "px-6", children: [_jsxs(Collapsible.Trigger, { className: "flex gap-2 items-center py-2 w-full text-sm text-muted-foreground -translate-x-1.5", children: [isOpen ? _jsx(SquareMinusIcon, { size: 14 }) : _jsx(SquarePlusIcon, { size: 14 }), _jsx("span", { children: typeLabel[type] })] }), _jsx(Collapsible.Content, { className: "pb-4", children: schemas.map((subSchema, index) => (
12
12
  // eslint-disable-next-line react/no-array-index-key
13
- _jsx(LogicalGroupItem, { type: type, schema: subSchema, level: level }, index))) })] }) }));
13
+ _jsx(LogicalGroupItem, { type: type, schema: subSchema }, index))) })] }) }));
14
14
  //# sourceMappingURL=LogicalGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LogicalGroup.js","sourceRoot":"","sources":["../../../../../../src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE/D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,SAAS,GAAG;IAChB,GAAG,EAAE,QAAQ;IACb,EAAE,EAAE,QAAQ;IACZ,GAAG,EAAE,QAAQ;CACd,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,OAAO,EACP,IAAI,EACJ,MAAM,EACN,KAAK,EACL,UAAU,GAOX,EAAE,EAAE,CAAC,CACJ,KAAC,WAAW,CAAC,IAAI,IAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,kBAC/D,MAAC,IAAI,IAAC,SAAS,EAAC,MAAM,aACpB,MAAC,WAAW,CAAC,OAAO,IAAC,SAAS,EAAC,oFAAoF,aAChH,MAAM,CAAC,CAAC,CAAC,KAAC,eAAe,IAAC,IAAI,EAAE,EAAE,GAAI,CAAC,CAAC,CAAC,KAAC,cAAc,IAAC,IAAI,EAAE,EAAE,GAAI,EACtE,yBAAO,SAAS,CAAC,IAAI,CAAC,GAAQ,IACV,EAEtB,KAAC,WAAW,CAAC,OAAO,IAAC,SAAS,EAAC,MAAM,YAClC,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC;gBACjC,oDAAoD;gBACpD,KAAC,gBAAgB,IAEf,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,KAAK,IAHP,KAAK,CAIV,CACH,CAAC,GACkB,IACjB,GACU,CACpB,CAAC"}
1
+ {"version":3,"file":"LogicalGroup.js","sourceRoot":"","sources":["../../../../../../src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE/D,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,SAAS,GAAG;IAChB,GAAG,EAAE,QAAQ;IACb,EAAE,EAAE,QAAQ;IACZ,GAAG,EAAE,QAAQ;CACd,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,OAAO,EACP,IAAI,EACJ,MAAM,EACN,UAAU,GAMX,EAAE,EAAE,CAAC,CACJ,KAAC,WAAW,CAAC,IAAI,IAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,kBAC/D,MAAC,IAAI,IAAC,SAAS,EAAC,MAAM,aACpB,MAAC,WAAW,CAAC,OAAO,IAAC,SAAS,EAAC,oFAAoF,aAChH,MAAM,CAAC,CAAC,CAAC,KAAC,eAAe,IAAC,IAAI,EAAE,EAAE,GAAI,CAAC,CAAC,CAAC,KAAC,cAAc,IAAC,IAAI,EAAE,EAAE,GAAI,EACtE,yBAAO,SAAS,CAAC,IAAI,CAAC,GAAQ,IACV,EAEtB,KAAC,WAAW,CAAC,OAAO,IAAC,SAAS,EAAC,MAAM,YAClC,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC;gBACjC,oDAAoD;gBACpD,KAAC,gBAAgB,IAAa,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,IAApC,KAAK,CAAmC,CAChE,CAAC,GACkB,IACjB,GACU,CACpB,CAAC"}
@@ -3,5 +3,4 @@ import type { LogicalGroupType } from "../utils.js";
3
3
  export declare const LogicalGroupItem: (props: {
4
4
  type: LogicalGroupType;
5
5
  schema: SchemaObject;
6
- level: number;
7
6
  }) => import("react/jsx-runtime").JSX.Element;
@@ -5,6 +5,6 @@ import { SchemaView } from "../SchemaView.js";
5
5
  import { LogicalGroupConnector } from "./LogicalGroupConnector.js";
6
6
  export const LogicalGroupItem = (props) => {
7
7
  const [isOpen, setIsOpen] = useState(true);
8
- return (_jsxs(Collapsible.Root, { open: isOpen, onOpenChange: () => setIsOpen((prev) => !prev), className: "group", children: [_jsx(Collapsible.Trigger, { children: _jsx(LogicalGroupConnector, { type: props.type, isOpen: isOpen }) }), !isOpen && _jsx("div", { className: "wavy-line bg-border translate-y-1" }), _jsx(Collapsible.Content, { children: _jsx(SchemaView, { schema: props.schema, level: props.level + 1 }) })] }));
8
+ return (_jsxs(Collapsible.Root, { open: isOpen, onOpenChange: () => setIsOpen((prev) => !prev), className: "group", children: [_jsx(Collapsible.Trigger, { children: _jsx(LogicalGroupConnector, { type: props.type, isOpen: isOpen }) }), !isOpen && _jsx("div", { className: "wavy-line bg-border translate-y-1" }), _jsx(Collapsible.Content, { children: _jsx(SchemaView, { schema: props.schema }) })] }));
9
9
  };
10
10
  //# sourceMappingURL=LogicalGroupItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LogicalGroupItem.js","sourceRoot":"","sources":["../../../../../../src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAIhC,EAAE,EAAE;IACH,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE3C,OAAO,CACL,MAAC,WAAW,CAAC,IAAI,IACf,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAC9C,SAAS,EAAC,OAAO,aAEjB,KAAC,WAAW,CAAC,OAAO,cAClB,KAAC,qBAAqB,IAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAI,GACvC,EACrB,CAAC,MAAM,IAAI,cAAK,SAAS,EAAC,mCAAmC,GAAG,EACjE,KAAC,WAAW,CAAC,OAAO,cAClB,KAAC,UAAU,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,CAAC,GAAI,GACxC,IACL,CACpB,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"LogicalGroupItem.js","sourceRoot":"","sources":["../../../../../../src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAGhC,EAAE,EAAE;IACH,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE3C,OAAO,CACL,MAAC,WAAW,CAAC,IAAI,IACf,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAC9C,SAAS,EAAC,OAAO,aAEjB,KAAC,WAAW,CAAC,OAAO,cAClB,KAAC,qBAAqB,IAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAI,GACvC,EACrB,CAAC,MAAM,IAAI,cAAK,SAAS,EAAC,mCAAmC,GAAG,EACjE,KAAC,WAAW,CAAC,OAAO,cAClB,KAAC,UAAU,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAI,GAChB,IACL,CACpB,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { SchemaObject } from "../../../oas/parser/index.js";
2
+ export declare const SchemaExampleAndDefault: ({ schema, }: {
3
+ schema: SchemaObject;
4
+ }) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { SelectOnClick } from "../components/SelectOnClick.js";
3
+ export const SchemaExampleAndDefault = ({ schema, }) => {
4
+ const example = schema.examples?.at(0);
5
+ const defaultValue = schema.default;
6
+ if (!example && !defaultValue)
7
+ return null;
8
+ return (_jsxs("div", { className: "flex flex-col gap-1 text-xs", children: [example && (_jsxs("div", { children: [_jsx("span", { className: "text-muted-foreground", children: "Example: " }), _jsx(SelectOnClick, { className: "border rounded px-1 font-mono", children: typeof example === "object" ? JSON.stringify(example) : example })] })), defaultValue && (_jsxs("div", { children: [_jsx("span", { className: "text-muted-foreground", children: "Default: " }), _jsx(SelectOnClick, { className: "border rounded px-1 font-mono", children: typeof defaultValue === "object"
9
+ ? JSON.stringify(defaultValue)
10
+ : defaultValue })] }))] }));
11
+ };
12
+ //# sourceMappingURL=SchemaExampleAndDefault.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaExampleAndDefault.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACtC,MAAM,GAGP,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC;IAEpC,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAE3C,OAAO,CACL,eAAK,SAAS,EAAC,6BAA6B,aACzC,OAAO,IAAI,CACV,0BACE,eAAM,SAAS,EAAC,uBAAuB,0BAAiB,EACxD,KAAC,aAAa,IAAC,SAAS,EAAC,+BAA+B,YACrD,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,GAClD,IACZ,CACP,EACA,YAAY,IAAI,CACf,0BACE,eAAM,SAAS,EAAC,uBAAuB,0BAAiB,EACxD,KAAC,aAAa,IAAC,SAAS,EAAC,+BAA+B,YACrD,OAAO,YAAY,KAAK,QAAQ;4BAC/B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;4BAC9B,CAAC,CAAC,YAAY,GACF,IACZ,CACP,IACG,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1,13 +1,11 @@
1
1
  import type { SchemaObject } from "../../../oas/parser/index.js";
2
- export declare const SchemaLogicalGroup: ({ schema, level, }: {
2
+ export declare const SchemaLogicalGroup: ({ schema }: {
3
3
  schema: SchemaObject;
4
- level: number;
5
4
  }) => import("react/jsx-runtime").JSX.Element | undefined;
6
- export declare const SchemaPropertyItem: ({ name, schema, group, level, defaultOpen, showCollapseButton, }: {
5
+ export declare const SchemaPropertyItem: ({ name, schema, group, defaultOpen, showCollapseButton, }: {
7
6
  name: string;
8
7
  schema: SchemaObject;
9
8
  group: "required" | "optional" | "deprecated";
10
- level: number;
11
9
  defaultOpen?: boolean;
12
10
  showCollapseButton?: boolean;
13
11
  }) => import("react/jsx-runtime").JSX.Element;
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as Collapsible from "@radix-ui/react-collapsible";
3
3
  import { MinusIcon, PlusIcon, RefreshCcwDotIcon } from "lucide-react";
4
4
  import { useCallback, useState } from "react";
5
+ import { InlineCode } from "../../../components/InlineCode.js";
5
6
  import { Markdown, ProseClasses } from "../../../components/Markdown.js";
6
7
  import { Button } from "../../../ui/Button.js";
7
8
  import { cn } from "../../../util/cn.js";
@@ -10,30 +11,32 @@ import { EnumValues } from "../components/EnumValues.js";
10
11
  import { SelectOnClick } from "../components/SelectOnClick.js";
11
12
  import { ParamInfos } from "../ParamInfos.js";
12
13
  import { LogicalGroup } from "./LogicalGroup/LogicalGroup.js";
14
+ import { SchemaExampleAndDefault } from "./SchemaExampleAndDefault.js";
13
15
  import { SchemaView } from "./SchemaView.js";
14
16
  import { hasLogicalGroupings, isCircularRef, isComplexType, LogicalSchemaTypeMap, } from "./utils.js";
15
- export const SchemaLogicalGroup = ({ schema, level, }) => {
17
+ export const SchemaLogicalGroup = ({ schema }) => {
16
18
  const [isOpen, setIsOpen] = useState(true);
17
19
  const toggleOpen = useCallback(() => setIsOpen((prev) => !prev), []);
18
20
  for (const [key, type] of objectEntries(LogicalSchemaTypeMap)) {
19
21
  if (!schema[key])
20
22
  continue;
21
- return (_jsx(LogicalGroup, { schemas: schema[key], type: type, isOpen: isOpen, toggleOpen: toggleOpen, level: level }));
23
+ return (_jsx(LogicalGroup, { schemas: schema[key], type: type, isOpen: isOpen, toggleOpen: toggleOpen }));
22
24
  }
23
25
  };
24
- const RecursiveIndicator = () => (_jsxs("div", { className: "flex items-center gap-1.5 italic text-xs text-muted-foreground font-mono bg-muted px-2 py-0.5 rounded-md", children: [_jsx(RefreshCcwDotIcon, { size: 13 }), _jsx("span", { children: "circular" })] }));
25
- export const SchemaPropertyItem = ({ name, schema, group, level, defaultOpen = false, showCollapseButton = true, }) => {
26
+ const RecursiveIndicator = () => (_jsxs(InlineCode, { className: "inline-flex items-center gap-1.5 italic text-xs translate-y-0.5", selectOnClick: false, children: [_jsx(RefreshCcwDotIcon, { size: 13 }), _jsx("span", { children: "circular" })] }));
27
+ export const SchemaPropertyItem = ({ name, schema, group, defaultOpen = false, showCollapseButton = true, }) => {
26
28
  const [isOpen, setIsOpen] = useState(defaultOpen);
27
29
  if (isCircularRef(schema)) {
28
- return (_jsx("li", { className: "p-4 bg-border/20 hover:bg-border/30", children: _jsx("div", { className: "flex flex-col gap-2.5 justify-between text-sm", children: _jsxs("div", { className: "space-x-2", children: [_jsx("code", { children: name }), _jsx(ParamInfos, { schema: schema }), _jsx(RecursiveIndicator, {})] }) }) }));
30
+ return (_jsx("li", { className: "p-4 bg-border/20 hover:bg-border/30", children: _jsxs("div", { className: "flex flex-col gap-2.5 justify-between text-sm", children: [_jsxs("div", { className: "space-x-2", children: [_jsx("code", { children: name }), _jsx(ParamInfos, { schema: schema, extraItems: [_jsx(RecursiveIndicator, {}, "circular-ref")] })] }), _jsx(SchemaExampleAndDefault, { schema: schema })] }) }));
29
31
  }
30
32
  return (_jsx("li", { className: "p-4 bg-border/20 hover:bg-border/30", children: _jsxs("div", { className: "flex flex-col gap-2.5 justify-between text-sm", children: [_jsxs("div", { className: "space-x-2", children: [_jsx(SelectOnClick, { asChild: true, children: _jsx("code", { children: name }) }), _jsx(ParamInfos, { schema: schema, extraItems: [
31
33
  group !== "optional" && (_jsx("span", { className: "text-primary", children: "required" })),
32
- ] }), schema.type === "array" &&
33
- "items" in schema &&
34
- isCircularRef(schema.items) && _jsx(RecursiveIndicator, {})] }), schema.description && (_jsx(Markdown, { className: cn(ProseClasses, "text-sm leading-normal line-clamp-4"), content: schema.description })), schema.type === "array" && "items" in schema && schema.items.enum && (_jsx(EnumValues, { values: schema.items.enum })), schema.enum && _jsx(EnumValues, { values: schema.enum }), (hasLogicalGroupings(schema) || isComplexType(schema)) && (_jsxs(Collapsible.Root, { defaultOpen: defaultOpen, open: isOpen, onOpenChange: () => setIsOpen(!isOpen), children: [showCollapseButton && (_jsx(Collapsible.Trigger, { asChild: true, children: _jsxs(Button, { variant: "expand", size: "sm", className: "h-7", children: [isOpen ? _jsx(MinusIcon, { size: 12 }) : _jsx(PlusIcon, { size: 12 }), !isOpen ? "Show properties" : "Hide properties"] }) })), _jsx(Collapsible.Content, { children: _jsx("div", { className: "mt-2", children: hasLogicalGroupings(schema) ? (_jsx(SchemaLogicalGroup, { schema: schema, level: level + 1 })) : schema.type === "object" ? (_jsx(SchemaView, { schema: schema, level: level + 1 })) : (schema.type === "array" &&
34
+ schema.type === "array" &&
35
+ "items" in schema &&
36
+ isCircularRef(schema.items) && _jsx(RecursiveIndicator, {}),
37
+ ] })] }), schema.description && (_jsx(Markdown, { className: cn(ProseClasses, "text-sm leading-normal line-clamp-4"), content: schema.description })), schema.type === "array" && "items" in schema && schema.items.enum && (_jsx(EnumValues, { values: schema.items.enum })), schema.enum && _jsx(EnumValues, { values: schema.enum }), _jsx(SchemaExampleAndDefault, { schema: schema }), (hasLogicalGroupings(schema) || isComplexType(schema)) && (_jsxs(Collapsible.Root, { defaultOpen: defaultOpen, open: isOpen, onOpenChange: () => setIsOpen(!isOpen), children: [showCollapseButton && (_jsx(Collapsible.Trigger, { asChild: true, children: _jsxs(Button, { variant: "expand", size: "sm", className: "h-7", children: [isOpen ? _jsx(MinusIcon, { size: 12 }) : _jsx(PlusIcon, { size: 12 }), !isOpen ? "Show properties" : "Hide properties"] }) })), _jsx(Collapsible.Content, { children: _jsx("div", { className: "mt-2", children: hasLogicalGroupings(schema) ? (_jsx(SchemaLogicalGroup, { schema: schema })) : schema.type === "object" ? (_jsx(SchemaView, { schema: schema })) : (schema.type === "array" &&
35
38
  "items" in schema &&
36
39
  typeof schema.items === "object" &&
37
- !isCircularRef(schema.items) && (_jsx(SchemaView, { schema: schema.items, level: level + 1 }))) }) })] }))] }) }));
40
+ !isCircularRef(schema.items) && (_jsx(SchemaView, { schema: schema.items }))) }) })] }))] }) }));
38
41
  };
39
42
  //# sourceMappingURL=SchemaPropertyItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaPropertyItem.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemaPropertyItem.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,WAAW,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAE,MAAM,EAA4B,EAAE,EAAE;IACzE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAErE,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YAAE,SAAS;QAE3B,OAAO,CACL,KAAC,YAAY,IACX,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EACpB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,GACtB,CACH,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,CAC/B,MAAC,UAAU,IACT,SAAS,EAAC,iEAAiE,EAC3E,aAAa,EAAE,KAAK,aAEpB,KAAC,iBAAiB,IAAC,IAAI,EAAE,EAAE,GAAI,EAC/B,sCAAqB,IACV,CACd,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,IAAI,EACJ,MAAM,EACN,KAAK,EACL,WAAW,GAAG,KAAK,EACnB,kBAAkB,GAAG,IAAI,GAO1B,EAAE,EAAE;IACH,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IAElD,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,CACL,aAAI,SAAS,EAAC,qCAAqC,YACjD,eAAK,SAAS,EAAC,+CAA+C,aAC5D,eAAK,SAAS,EAAC,WAAW,aACxB,yBAAO,IAAI,GAAQ,EACnB,KAAC,UAAU,IACT,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,CAAC,KAAC,kBAAkB,MAAK,cAAc,CAAG,CAAC,GACvD,IACE,EACN,KAAC,uBAAuB,IAAC,MAAM,EAAE,MAAM,GAAI,IACvC,GACH,CACN,CAAC;IACJ,CAAC;IAED,OAAO,CACL,aAAI,SAAS,EAAC,qCAAqC,YACjD,eAAK,SAAS,EAAC,+CAA+C,aAC5D,eAAK,SAAS,EAAC,WAAW,aACxB,KAAC,aAAa,IAAC,OAAO,kBACpB,yBAAO,IAAI,GAAQ,GACL,EAChB,KAAC,UAAU,IACT,MAAM,EAAE,MAAM,EACd,UAAU,EAAE;gCACV,KAAK,KAAK,UAAU,IAAI,CACtB,eAAM,SAAS,EAAC,cAAc,yBAAgB,CAC/C;gCACD,MAAM,CAAC,IAAI,KAAK,OAAO;oCACrB,OAAO,IAAI,MAAM;oCACjB,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAC,kBAAkB,KAAG;6BACxD,GACD,IACE,EACL,MAAM,CAAC,WAAW,IAAI,CACrB,KAAC,QAAQ,IACP,SAAS,EAAE,EAAE,CAAC,YAAY,EAAE,qCAAqC,CAAC,EAClE,OAAO,EAAE,MAAM,CAAC,WAAW,GAC3B,CACH,EACA,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CACpE,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,GAAI,CAC1C,EACA,MAAM,CAAC,IAAI,IAAI,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,CAAC,IAAI,GAAI,EACnD,KAAC,uBAAuB,IAAC,MAAM,EAAE,MAAM,GAAI,EAC1C,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,CACzD,MAAC,WAAW,CAAC,IAAI,IACf,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,aAErC,kBAAkB,IAAI,CACrB,KAAC,WAAW,CAAC,OAAO,IAAC,OAAO,kBAC1B,MAAC,MAAM,IAAC,OAAO,EAAC,QAAQ,EAAC,IAAI,EAAC,IAAI,EAAC,SAAS,EAAC,KAAK,aAC/C,MAAM,CAAC,CAAC,CAAC,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,GAAI,CAAC,CAAC,CAAC,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,GAAI,EACzD,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,IACzC,GACW,CACvB,EACD,KAAC,WAAW,CAAC,OAAO,cAClB,cAAK,SAAS,EAAC,MAAM,YAClB,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAC7B,KAAC,kBAAkB,IAAC,MAAM,EAAE,MAAM,GAAI,CACvC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC7B,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,GAAI,CAC/B,CAAC,CAAC,CAAC,CACF,MAAM,CAAC,IAAI,KAAK,OAAO;oCACvB,OAAO,IAAI,MAAM;oCACjB,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;oCAChC,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAC9B,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,CAAC,KAAK,GAAI,CACrC,CACF,GACG,GACc,IACL,CACpB,IACG,GACH,CACN,CAAC;AACJ,CAAC,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import type { SchemaObject } from "../../../oas/parser/index.js";
2
- export declare const SchemaView: ({ schema, level, defaultOpen, }: {
2
+ export declare const SchemaView: ({ schema, defaultOpen, }: {
3
3
  schema?: SchemaObject | null;
4
- level?: number;
5
4
  defaultOpen?: boolean;
6
5
  }) => import("react/jsx-runtime").JSX.Element | null;
@@ -1,64 +1,42 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Markdown, ProseClasses } from "../../../components/Markdown.js";
3
3
  import { Card, CardContent, CardHeader, CardTitle } from "../../../ui/Card.js";
4
4
  import { cn } from "../../../util/cn.js";
5
5
  import { groupBy } from "../../../util/groupBy.js";
6
6
  import { EnumValues } from "../components/EnumValues.js";
7
7
  import { ParamInfos } from "../ParamInfos.js";
8
+ import { SchemaExampleAndDefault } from "./SchemaExampleAndDefault.js";
8
9
  import { SchemaLogicalGroup, SchemaPropertyItem, } from "./SchemaPropertyItem.js";
9
- import { hasLogicalGroupings } from "./utils.js";
10
+ import { hasLogicalGroupings, isBasicType } from "./utils.js";
10
11
  const renderMarkdown = (content) => content && (_jsx(Markdown, { className: cn(ProseClasses, "text-sm leading-normal line-clamp-4"), content: content }));
11
- export const SchemaView = ({ schema, level = 0, defaultOpen = false, }) => {
12
+ const renderBasicSchema = (schema) => (_jsxs(Card, { className: "p-4 space-y-2", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: _jsx(ParamInfos, { schema: schema }) }), schema.enum && _jsx(EnumValues, { values: schema.enum }), renderMarkdown(schema.description), _jsx(SchemaExampleAndDefault, { schema: schema })] }));
13
+ export const SchemaView = ({ schema, defaultOpen = false, }) => {
12
14
  if (!schema || Object.keys(schema).length === 0) {
13
- return (_jsx(Card, { className: "p-4", children: _jsx("span", { className: "text-sm text-muted-foreground italic", children: "No response specified" }) }));
15
+ return (_jsx(Card, { className: "p-4", children: _jsx("span", { className: "text-sm text-muted-foreground italic", children: "No schema specified" }) }));
14
16
  }
15
- const renderSchema = (schema, level) => {
16
- if (hasLogicalGroupings(schema)) {
17
- return _jsx(SchemaLogicalGroup, { schema: schema, level: level });
18
- }
19
- if (Array.isArray(schema.type)) {
20
- return (_jsxs(Card, { className: "p-4 space-y-2", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: _jsx(ParamInfos, { schema: schema }) }), schema.enum && _jsx(EnumValues, { values: schema.enum }), renderMarkdown(schema.description)] }));
21
- }
22
- if (schema.type === "array" && typeof schema.items === "object") {
23
- const itemsSchema = schema.items;
24
- if (itemsSchema.enum) {
25
- return (_jsxs(Card, { className: "p-4", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: _jsx(ParamInfos, { schema: schema }) }), _jsx(EnumValues, { values: itemsSchema.enum }), renderMarkdown(schema.description)] }));
26
- }
27
- if (typeof itemsSchema.type === "string" &&
28
- ["string", "number", "boolean", "integer"].includes(itemsSchema.type)) {
29
- return (_jsxs(Card, { className: "p-4", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: _jsx(ParamInfos, { schema: schema }) }), renderMarkdown(schema.description)] }));
30
- }
31
- else if (itemsSchema.type === "object") {
32
- return (_jsxs(Card, { className: "flex flex-col gap-2 bg-border/30 p-4", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: "object[]" }), renderSchema(itemsSchema, level + 1)] }));
33
- }
34
- else {
35
- return renderSchema(itemsSchema, level + 1);
36
- }
37
- }
38
- if (schema.type === "object" &&
39
- (!schema.properties || Object.keys(schema.properties).length === 0)) {
40
- return (_jsxs(Card, { className: "p-4 flex gap-2 items-baseline", children: ["name" in schema && _jsx(_Fragment, { children: schema.name }), _jsx("span", { className: "text-sm text-muted-foreground", children: _jsx(ParamInfos, { schema: schema }) }), renderMarkdown(schema.description)] }));
41
- }
42
- if (schema.properties) {
43
- const groupedProperties = groupBy(Object.entries(schema.properties), ([propertyName, property]) => {
44
- return property.deprecated
45
- ? "deprecated"
46
- : schema.required?.includes(propertyName)
47
- ? "required"
48
- : "optional";
49
- });
50
- const groupNames = ["required", "optional", "deprecated"];
51
- return (_jsx(Card, { className: "divide-y overflow-hidden", children: groupNames.map((group) => groupedProperties[group] && (_jsx("ul", { className: "divide-y", children: groupedProperties[group].map(([name, schema]) => (_jsx(SchemaPropertyItem, { name: name, schema: schema, group: group, level: level, defaultOpen: defaultOpen }, name))) }, group))) }));
52
- }
53
- if (typeof schema.type === "string" &&
54
- ["string", "number", "boolean", "integer", "null"].includes(schema.type)) {
55
- return (_jsxs(Card, { className: "p-4 space-y-2", children: [_jsx("span", { className: "text-sm text-muted-foreground", children: _jsx(ParamInfos, { schema: schema }) }), schema.enum && _jsx(EnumValues, { values: schema.enum }), renderMarkdown(schema.description)] }));
56
- }
57
- if (schema.additionalProperties) {
58
- return (_jsxs(Card, { className: "my-2", children: [_jsx(CardHeader, { children: _jsx(CardTitle, { children: "Additional Properties:" }) }), _jsx(CardContent, { children: renderSchema(schema.additionalProperties, level + 1) })] }));
59
- }
60
- return null;
61
- };
62
- return renderSchema(schema, level);
17
+ if (hasLogicalGroupings(schema)) {
18
+ return _jsx(SchemaLogicalGroup, { schema: schema });
19
+ }
20
+ if (isBasicType(schema.type)) {
21
+ return renderBasicSchema(schema);
22
+ }
23
+ if (schema.type === "array" && typeof schema.items === "object") {
24
+ return renderBasicSchema(schema.items);
25
+ }
26
+ if (schema.type === "object") {
27
+ const groupedProperties = groupBy(Object.entries(schema.properties ?? {}), ([propertyName, property]) => {
28
+ return property.deprecated
29
+ ? "deprecated"
30
+ : schema.required?.includes(propertyName)
31
+ ? "required"
32
+ : "optional";
33
+ });
34
+ const groupNames = ["required", "optional", "deprecated"];
35
+ return (_jsx(Card, { className: "divide-y overflow-hidden", children: groupNames.map((group) => groupedProperties[group] && (_jsx("ul", { className: "divide-y", children: groupedProperties[group].map(([name, schema]) => (_jsx(SchemaPropertyItem, { name: name, schema: schema, group: group, defaultOpen: defaultOpen }, name))) }, group))) }));
36
+ }
37
+ if (schema.additionalProperties) {
38
+ return (_jsxs(Card, { className: "my-2", children: [_jsx(CardHeader, { children: _jsx(CardTitle, { children: "Additional Properties:" }) }), _jsx(CardContent, { children: _jsx(SchemaView, { schema: schema.additionalProperties }) })] }));
39
+ }
40
+ return null;
63
41
  };
64
42
  //# sourceMappingURL=SchemaView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaView.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/schema/SchemaView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemaView.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/schema/SchemaView.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { SchemaObject } from "../../../oas/parser/index.js";
2
+ export declare const isBasicType: (type: unknown) => type is "string" | "number" | "boolean" | "integer" | "null";
2
3
  export declare const isComplexType: (value: SchemaObject) => boolean;
3
4
  export declare const hasLogicalGroupings: (value: SchemaObject) => boolean;
4
5
  export declare const LogicalSchemaTypeMap: {
@@ -1,5 +1,7 @@
1
1
  import { CIRCULAR_REF } from "../../../oas/graphql/circular.js";
2
- export const isComplexType = (value) => value.type === "object" ||
2
+ export const isBasicType = (type) => typeof type === "string" &&
3
+ ["string", "number", "boolean", "integer", "null"].includes(type);
4
+ export const isComplexType = (value) => (value.type === "object" && Object.keys(value.properties ?? {}).length > 0) ||
3
5
  (value.type === "array" &&
4
6
  typeof value.items === "object" &&
5
7
  (!value.items.type || value.items.type === "object"));