zudoku 0.40.0 → 0.41.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 (157) hide show
  1. package/dist/app/main.js +7 -4
  2. package/dist/app/main.js.map +1 -1
  3. package/dist/cli/cli.js +12 -1
  4. package/dist/cli/cli.js.map +1 -1
  5. package/dist/cli/common/machine-id/lib.js +1 -0
  6. package/dist/cli/common/machine-id/lib.js.map +1 -1
  7. package/dist/config/ZuploBuildConfig.d.ts +155 -0
  8. package/dist/config/ZuploBuildConfig.js +29 -0
  9. package/dist/config/ZuploBuildConfig.js.map +1 -0
  10. package/dist/config/loader.js +0 -3
  11. package/dist/config/loader.js.map +1 -1
  12. package/dist/config/validators/BuildSchema.d.ts +1 -0
  13. package/dist/config/validators/BuildSchema.js.map +1 -1
  14. package/dist/config/validators/common.d.ts +17 -11
  15. package/dist/config/validators/common.js +1 -1
  16. package/dist/config/validators/common.js.map +1 -1
  17. package/dist/config/validators/validate.d.ts +7 -5
  18. package/dist/lib/authentication/providers/openid.d.ts +3 -1
  19. package/dist/lib/authentication/providers/openid.js +17 -11
  20. package/dist/lib/authentication/providers/openid.js.map +1 -1
  21. package/dist/lib/components/BuildCheck.d.ts +4 -0
  22. package/dist/lib/components/BuildCheck.js +22 -0
  23. package/dist/lib/components/BuildCheck.js.map +1 -0
  24. package/dist/lib/components/Zudoku.js +1 -3
  25. package/dist/lib/components/Zudoku.js.map +1 -1
  26. package/dist/lib/components/context/ViewportAnchorContext.js +8 -9
  27. package/dist/lib/components/context/ViewportAnchorContext.js.map +1 -1
  28. package/dist/lib/components/index.d.ts +4 -0
  29. package/dist/lib/components/index.js +2 -0
  30. package/dist/lib/components/index.js.map +1 -1
  31. package/dist/lib/components/navigation/PoweredByZudoku.js +2 -1
  32. package/dist/lib/components/navigation/PoweredByZudoku.js.map +1 -1
  33. package/dist/lib/components/navigation/ZuploLogo.d.ts +3 -0
  34. package/dist/lib/components/navigation/ZuploLogo.js +4 -0
  35. package/dist/lib/components/navigation/ZuploLogo.js.map +1 -0
  36. package/dist/lib/oas/parser/index.d.ts +1 -1
  37. package/dist/lib/oas/parser/index.js +3 -2
  38. package/dist/lib/oas/parser/index.js.map +1 -1
  39. package/dist/lib/plugins/openapi/OperationList.d.ts +1 -1
  40. package/dist/lib/plugins/openapi/OperationList.js +6 -4
  41. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  42. package/dist/lib/plugins/openapi/processors/removeExtensions.d.ts +3 -2
  43. package/dist/lib/plugins/openapi/processors/removeExtensions.js +1 -1
  44. package/dist/lib/plugins/openapi/processors/removeExtensions.js.map +1 -1
  45. package/dist/lib/plugins/openapi/processors/removeExtensions.test.js +26 -6
  46. package/dist/lib/plugins/openapi/processors/removeExtensions.test.js.map +1 -1
  47. package/dist/lib/plugins/openapi/processors/removeParameters.d.ts +3 -1
  48. package/dist/lib/plugins/openapi/processors/removeParameters.js +1 -1
  49. package/dist/lib/plugins/openapi/processors/removeParameters.js.map +1 -1
  50. package/dist/lib/plugins/openapi/processors/removeParameters.test.js +53 -25
  51. package/dist/lib/plugins/openapi/processors/removeParameters.test.js.map +1 -1
  52. package/dist/lib/plugins/openapi/processors/removePaths.d.ts +3 -1
  53. package/dist/lib/plugins/openapi/processors/removePaths.js +1 -1
  54. package/dist/lib/plugins/openapi/processors/removePaths.js.map +1 -1
  55. package/dist/lib/plugins/openapi/processors/removePaths.test.js +75 -35
  56. package/dist/lib/plugins/openapi/processors/removePaths.test.js.map +1 -1
  57. package/dist/lib/plugins/openapi/util/getRoutes.js +20 -13
  58. package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
  59. package/dist/lib/util/ensureArray.d.ts +1 -0
  60. package/dist/lib/util/ensureArray.js +2 -0
  61. package/dist/lib/util/ensureArray.js.map +1 -0
  62. package/dist/vite/api/SchemaManager.d.ts +36 -0
  63. package/dist/vite/api/SchemaManager.js +120 -0
  64. package/dist/vite/api/SchemaManager.js.map +1 -0
  65. package/dist/vite/api/SchemaManager.test.d.ts +1 -0
  66. package/dist/vite/api/SchemaManager.test.js +106 -0
  67. package/dist/vite/api/SchemaManager.test.js.map +1 -0
  68. package/dist/vite/config.js +5 -1
  69. package/dist/vite/config.js.map +1 -1
  70. package/dist/vite/plugin-api.js +39 -117
  71. package/dist/vite/plugin-api.js.map +1 -1
  72. package/dist/vite/plugin-sidebar.d.ts +3 -1
  73. package/dist/vite/plugin-sidebar.js +8 -2
  74. package/dist/vite/plugin-sidebar.js.map +1 -1
  75. package/dist/zuplo/enrich-with-zuplo.d.ts +3 -3
  76. package/dist/zuplo/enrich-with-zuplo.js +18 -17
  77. package/dist/zuplo/enrich-with-zuplo.js.map +1 -1
  78. package/dist/zuplo/env.d.ts +26 -0
  79. package/dist/zuplo/env.js +17 -0
  80. package/dist/zuplo/env.js.map +1 -1
  81. package/dist/zuplo/with-zuplo-processors.d.ts +2 -2
  82. package/dist/zuplo/with-zuplo-processors.js +3 -3
  83. package/dist/zuplo/with-zuplo-processors.js.map +1 -1
  84. package/dist/zuplo/with-zuplo.d.ts +3 -0
  85. package/dist/zuplo/with-zuplo.js +6 -9
  86. package/dist/zuplo/with-zuplo.js.map +1 -1
  87. package/lib/{Markdown-C5h6bxbE.js → Markdown-DqDbGCj2.js} +314 -315
  88. package/lib/{Markdown-C5h6bxbE.js.map → Markdown-DqDbGCj2.js.map} +1 -1
  89. package/lib/{MdxPage-B66ht0D_.js → MdxPage-DGVqOhzg.js} +5 -5
  90. package/lib/{MdxPage-B66ht0D_.js.map → MdxPage-DGVqOhzg.js.map} +1 -1
  91. package/lib/{OasProvider-BKPF0Pbt.js → OasProvider-qeJNCq-h.js} +2 -2
  92. package/lib/{OasProvider-BKPF0Pbt.js.map → OasProvider-qeJNCq-h.js.map} +1 -1
  93. package/lib/{OperationList-0bhBU7ME.js → OperationList-CBpQALZd.js} +798 -794
  94. package/lib/{OperationList-0bhBU7ME.js.map → OperationList-CBpQALZd.js.map} +1 -1
  95. package/lib/{Pagination-Bt1czAiJ.js → Pagination-PfYTF0cF.js} +2 -2
  96. package/lib/{Pagination-Bt1czAiJ.js.map → Pagination-PfYTF0cF.js.map} +1 -1
  97. package/lib/{SchemaList-CsTIT1pi.js → SchemaList-BIzyXPnY.js} +5 -5
  98. package/lib/{SchemaList-CsTIT1pi.js.map → SchemaList-BIzyXPnY.js.map} +1 -1
  99. package/lib/{SchemaView-DCSWtnYr.js → SchemaView-DwlVvFfp.js} +2 -2
  100. package/lib/{SchemaView-DCSWtnYr.js.map → SchemaView-DwlVvFfp.js.map} +1 -1
  101. package/lib/{SlotletProvider-VUmTNmLZ.js → SlotletProvider-p4XaFFOh.js} +2 -2
  102. package/lib/{SlotletProvider-VUmTNmLZ.js.map → SlotletProvider-p4XaFFOh.js.map} +1 -1
  103. package/lib/{Toc-BK39DQvI.js → Toc-BVdRaIC0.js} +2 -2
  104. package/lib/{Toc-BK39DQvI.js.map → Toc-BVdRaIC0.js.map} +1 -1
  105. package/lib/{createServer-DLN7APz_.js → createServer-D_5UkLtY.js} +1459 -1485
  106. package/lib/createServer-D_5UkLtY.js.map +1 -0
  107. package/lib/{index-tpbiZmWp.js → index-B7lRu87v.js} +686 -648
  108. package/lib/index-B7lRu87v.js.map +1 -0
  109. package/lib/index-BpThvE5R.js +66 -0
  110. package/lib/index-BpThvE5R.js.map +1 -0
  111. package/lib/{index-Ba_X7EnR.js → index-CxdJ8TBB.js} +255 -249
  112. package/lib/{index-Ba_X7EnR.js.map → index-CxdJ8TBB.js.map} +1 -1
  113. package/lib/index-ueM1dihS.js +247 -0
  114. package/lib/index-ueM1dihS.js.map +1 -0
  115. package/lib/processors/removeExtensions.js +1 -1
  116. package/lib/processors/removeExtensions.js.map +1 -1
  117. package/lib/processors/removeParameters.js +1 -1
  118. package/lib/processors/removeParameters.js.map +1 -1
  119. package/lib/processors/removePaths.js +1 -1
  120. package/lib/processors/removePaths.js.map +1 -1
  121. package/lib/{index-DcHeSvkE.js → public-api-CrAQFYc4.js} +651 -684
  122. package/lib/public-api-CrAQFYc4.js.map +1 -0
  123. package/lib/zudoku.auth-openid.js +144 -138
  124. package/lib/zudoku.auth-openid.js.map +1 -1
  125. package/lib/zudoku.components.js +23 -22
  126. package/lib/zudoku.plugin-api-catalog.js +2 -2
  127. package/lib/zudoku.plugin-api-keys.js +1 -1
  128. package/lib/zudoku.plugin-custom-pages.js +1 -1
  129. package/lib/zudoku.plugin-markdown.js +1 -1
  130. package/lib/zudoku.plugin-openapi.js +1 -1
  131. package/package.json +3 -3
  132. package/src/app/main.tsx +12 -1
  133. package/src/lib/authentication/providers/openid.tsx +23 -12
  134. package/src/lib/components/BuildCheck.tsx +60 -0
  135. package/src/lib/components/Zudoku.tsx +1 -3
  136. package/src/lib/components/context/ViewportAnchorContext.tsx +8 -15
  137. package/src/lib/components/index.ts +2 -0
  138. package/src/lib/components/navigation/PoweredByZudoku.tsx +8 -3
  139. package/src/lib/components/navigation/ZuploLogo.tsx +14 -0
  140. package/src/lib/oas/parser/index.ts +4 -2
  141. package/src/lib/plugins/openapi/OperationList.tsx +15 -3
  142. package/src/lib/plugins/openapi/processors/removeExtensions.test.ts +29 -9
  143. package/src/lib/plugins/openapi/processors/removeExtensions.ts +5 -3
  144. package/src/lib/plugins/openapi/processors/removeParameters.test.ts +67 -33
  145. package/src/lib/plugins/openapi/processors/removeParameters.ts +5 -3
  146. package/src/lib/plugins/openapi/processors/removePaths.test.ts +85 -44
  147. package/src/lib/plugins/openapi/processors/removePaths.ts +5 -3
  148. package/src/lib/plugins/openapi/util/getRoutes.tsx +21 -13
  149. package/src/lib/util/ensureArray.ts +3 -0
  150. package/client.d.ts +0 -8
  151. package/dist/lib/oas/parser/upgrade/index.d.ts +0 -9
  152. package/dist/lib/oas/parser/upgrade/index.js +0 -90
  153. package/dist/lib/oas/parser/upgrade/index.js.map +0 -1
  154. package/lib/createServer-DLN7APz_.js.map +0 -1
  155. package/lib/index-DcHeSvkE.js.map +0 -1
  156. package/lib/index-tpbiZmWp.js.map +0 -1
  157. package/src/lib/oas/parser/upgrade/index.ts +0 -103
@@ -1,6 +1,6 @@
1
1
  import { traverse } from "./traverse.js";
2
2
  // Remove all `x-` prefixed key/value pairs, or filter by names if provided
3
- export const removeExtensions = ({ keys, shouldRemove } = {}) => (doc) => traverse(doc, (spec) => {
3
+ export const removeExtensions = ({ keys, shouldRemove } = {}) => ({ schema }) => traverse(schema, (spec) => {
4
4
  const result = {};
5
5
  for (const [key, value] of Object.entries(spec)) {
6
6
  const isExtension = key.startsWith("x-");
@@ -1 +1 @@
1
- {"version":3,"file":"removeExtensions.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removeExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,gBAAgB,GAC3B,CAAC,EAAE,IAAI,EAAE,YAAY,KAA8B,EAAE,EAAE,EAAE,CACzD,CAAC,GAAc,EAAa,EAAE,CAC5B,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAAc,EAAE,CAAC;IAE7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,eAAe,GACnB,WAAW;YACX,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC,CAAC,YAAY,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;QAEvC,IAAI,eAAe;YAAE,SAAS;QAE9B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"removeExtensions.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removeExtensions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,gBAAgB,GAC3B,CAAC,EAAE,IAAI,EAAE,YAAY,KAA8B,EAAE,EAAE,EAAE,CACzD,CAAC,EAAE,MAAM,EAAgB,EAAE,EAAE,CAC3B,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;IACxB,MAAM,MAAM,GAAc,EAAE,CAAC;IAE7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,eAAe,GACnB,WAAW;YACX,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC,CAAC,YAAY,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;QAEvC,IAAI,eAAe;YAAE,SAAS;QAE9B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAoB,CAAC"}
@@ -66,7 +66,11 @@ const baseDoc = {
66
66
  };
67
67
  describe("removeExtensions", () => {
68
68
  it("removes all x- extensions by default", () => {
69
- const processed = removeExtensions()(baseDoc);
69
+ const processed = removeExtensions()({
70
+ schema: baseDoc,
71
+ file: "/file.json",
72
+ dereference: async (id) => id,
73
+ });
70
74
  const removedExtensions = [
71
75
  "x-root-ext",
72
76
  "info.x-info-ext",
@@ -85,7 +89,7 @@ describe("removeExtensions", () => {
85
89
  expect(processed.openapi).toBe("3.1.0");
86
90
  expect(processed.info.title).toBe("Test API");
87
91
  expect(processed).toHaveProperty(["paths", "/test", "get", "responses", "200", "description"], "OK");
88
- expect(processed.tags[0].name).toBe("example");
92
+ expect(processed.tags?.[0]?.name).toBe("example");
89
93
  });
90
94
  it("removes only specified x- extensions when names are provided", () => {
91
95
  const docWithExtraExtensions = {
@@ -94,7 +98,11 @@ describe("removeExtensions", () => {
94
98
  };
95
99
  const processed = removeExtensions({
96
100
  keys: ["x-path-ext", "x-param-ext"],
97
- })(docWithExtraExtensions);
101
+ })({
102
+ schema: docWithExtraExtensions,
103
+ file: "/file.json",
104
+ dereference: async (id) => id,
105
+ });
98
106
  // Assert specified extensions are removed
99
107
  expect(processed.paths["/test"]["x-path-ext"]).toBeUndefined();
100
108
  expect(processed.paths["/test"].parameters[0]["x-param-ext"]).toBeUndefined();
@@ -117,7 +125,11 @@ describe("removeExtensions", () => {
117
125
  },
118
126
  },
119
127
  };
120
- const processed = removeExtensions()(deeplyNested);
128
+ const processed = removeExtensions()({
129
+ schema: deeplyNested,
130
+ file: "/file.json",
131
+ dereference: async (id) => id,
132
+ });
121
133
  expect(processed.a.b.c["x-deep-ext"]).toBeUndefined();
122
134
  expect(processed.a.b.c.d["x-another-ext"]).toBeUndefined();
123
135
  expect(processed.a.b.c.d.e).toBe("value");
@@ -127,13 +139,21 @@ describe("removeExtensions", () => {
127
139
  openapi: "3.1.0",
128
140
  info: { title: "API without extensions" },
129
141
  };
130
- const processed = removeExtensions()(docWithoutExtensions);
142
+ const processed = removeExtensions()({
143
+ schema: docWithoutExtensions,
144
+ file: "/file.json",
145
+ dereference: async (id) => id,
146
+ });
131
147
  expect(processed).toEqual(docWithoutExtensions);
132
148
  });
133
149
  it("removes extensions based on shouldRemove callback", () => {
134
150
  const processed = removeExtensions({
135
151
  shouldRemove: (key) => key.startsWith("x-zuplo"),
136
- })(baseDoc);
152
+ })({
153
+ schema: baseDoc,
154
+ file: "/file.json",
155
+ dereference: async (id) => id,
156
+ });
137
157
  // Should remove x-zuplo extensions
138
158
  const removedExtensions = [
139
159
  "x-zuplo-ext",
@@ -1 +1 @@
1
- {"version":3,"file":"removeExtensions.test.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removeExtensions.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"removeExtensions.test.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removeExtensions.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import type { ProcessorArg } from "../../../../config/validators/BuildSchema.js";
2
+ import type { OpenAPIDocument } from "../../../oas/parser/index.js";
1
3
  import { type RecordAny } from "./traverse.js";
2
4
  interface RemoveParametersOptions {
3
5
  names?: string[];
@@ -6,5 +8,5 @@ interface RemoveParametersOptions {
6
8
  parameter: RecordAny;
7
9
  }) => boolean;
8
10
  }
9
- export declare const removeParameters: ({ names, in: locations, shouldRemove }?: RemoveParametersOptions) => (doc: RecordAny) => RecordAny;
11
+ export declare const removeParameters: ({ names, in: locations, shouldRemove }?: RemoveParametersOptions) => ({ schema }: ProcessorArg) => OpenAPIDocument;
10
12
  export {};
@@ -1,5 +1,5 @@
1
1
  import { traverse } from "./traverse.js";
2
- export const removeParameters = ({ names, in: locations, shouldRemove } = {}) => (doc) => traverse(doc, (spec) => {
2
+ export const removeParameters = ({ names, in: locations, shouldRemove } = {}) => ({ schema }) => traverse(schema, (spec) => {
3
3
  // Helper function to filter parameters
4
4
  const filterParameters = (parameters) => parameters.filter((p) => {
5
5
  if (names?.includes(p.name))
@@ -1 +1 @@
1
- {"version":3,"file":"removeParameters.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removeParameters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"removeParameters.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removeParameters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAWzD,MAAM,CAAC,MAAM,gBAAgB,GAC3B,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,YAAY,KAA8B,EAAE,EAAE,EAAE,CACzE,CAAC,EAAE,MAAM,EAAgB,EAAE,EAAE,CAC3B,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;IACxB,uCAAuC;IACvC,MAAM,gBAAgB,GAAG,CAAC,UAAuB,EAAE,EAAE,CACnD,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACtB,IAAI,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1C,IAAI,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEL,+BAA+B;IAC/B,IAAI,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC;QAChC,IAAI,GAAG;YACL,GAAG,IAAI;YACP,UAAU,EAAE;gBACV,GAAG,IAAI,CAAC,UAAU;gBAClB,UAAU,EAAE,MAAM,CAAC,WAAW,CAC5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,CAC/C,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE;oBACb,MAAM,CAAC,GAAG,KAAkB,CAAC;oBAC7B,IAAI,CAAC,CAAC,IAAI;wBAAE,OAAO,IAAI,CAAC,CAAC,kBAAkB;oBAC3C,OAAO,CACL,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;wBACxB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC1B,CAAC,YAAY,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAClC,CAAC;gBACJ,CAAC,CACF,CACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,eAAe;IACf,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAc,EAAE,CAAC;QAEnC,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBACtD,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;gBAC9B,SAAS;YACX,CAAC;YAED,IAAI,eAAe,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;YAEtC,+BAA+B;YAC/B,IACE,YAAY,IAAI,eAAe;gBAC/B,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,EACzC,CAAC;gBACD,eAAe,CAAC,UAAU,GAAG,gBAAgB,CAC3C,eAAe,CAAC,UAAU,CAC3B,CAAC;YACJ,CAAC;YAED,oCAAoC;YACpC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;gBAClD,MAAM,mBAAmB,GAAG,eAG3B,CAAC;gBAEF,IACE,MAAM,KAAK,YAAY;oBACvB,OAAO,mBAAmB,CAAC,MAAM,CAAC,KAAK,QAAQ,EAC/C,CAAC;oBACD,SAAS;gBACX,CAAC;gBAED,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;oBACxC,mBAAmB,CAAC,MAAM,CAAC,GAAG;wBAC5B,GAAG,SAAS;wBACZ,UAAU,EAAE,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC;qBACnD,CAAC;oBACF,eAAe,GAAG,mBAAmB,CAAC;gBACxC,CAAC;YACH,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC;QACvC,CAAC;QAED,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IAC1C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAoB,CAAC"}
@@ -64,37 +64,53 @@ describe("removeParameters", () => {
64
64
  it("removes parameters by name", () => {
65
65
  const processed = removeParameters({
66
66
  names: ["pathParam", "opParam"],
67
- })(baseDoc);
68
- expect(processed.paths["/test"].parameters).toHaveLength(1);
69
- expect(processed.paths["/test"].parameters[0].name).toBe("pathHeader");
70
- expect(processed.paths["/test"].get.parameters).toHaveLength(1);
71
- expect(processed.paths["/test"].get.parameters[0].name).toBe("opHeader");
67
+ })({
68
+ schema: baseDoc,
69
+ file: "/file.json",
70
+ dereference: async (id) => id,
71
+ });
72
+ expect(processed.paths?.["/test"]?.parameters).toHaveLength(1);
73
+ expect(processed.paths?.["/test"]?.parameters?.[0]?.name).toBe("pathHeader");
74
+ expect(processed.paths?.["/test"]?.get?.parameters).toHaveLength(1);
75
+ expect(processed.paths?.["/test"]?.get?.parameters?.[0]?.name).toBe("opHeader");
72
76
  });
73
77
  it("removes parameters by location", () => {
74
78
  const processed = removeParameters({
75
79
  in: ["header"],
76
- })(baseDoc);
77
- expect(processed.paths["/test"].parameters).toHaveLength(1);
78
- expect(processed.paths["/test"].parameters[0].in).toBe("path");
79
- expect(processed.paths["/test"].get.parameters).toHaveLength(1);
80
- expect(processed.paths["/test"].get.parameters[0].in).toBe("query");
80
+ })({
81
+ schema: baseDoc,
82
+ file: "/file.json",
83
+ dereference: async (id) => id,
84
+ });
85
+ expect(processed.paths?.["/test"]?.parameters).toHaveLength(1);
86
+ expect(processed.paths?.["/test"]?.parameters?.[0]?.in).toBe("path");
87
+ expect(processed.paths?.["/test"]?.get?.parameters).toHaveLength(1);
88
+ expect(processed.paths?.["/test"]?.get?.parameters?.[0]?.in).toBe("query");
81
89
  });
82
90
  it("removes parameters using shouldRemove callback", () => {
83
91
  const processed = removeParameters({
84
92
  shouldRemove: ({ parameter }) => parameter.in === "header" && parameter.name.includes("op"),
85
- })(baseDoc);
86
- expect(processed.paths["/test"].parameters).toHaveLength(2);
87
- expect(processed.paths["/test"].get.parameters).toHaveLength(1);
88
- expect(processed.paths["/test"].get.parameters[0].name).toBe("opParam");
93
+ })({
94
+ schema: baseDoc,
95
+ file: "/file.json",
96
+ dereference: async (id) => id,
97
+ });
98
+ expect(processed.paths?.["/test"]?.parameters).toHaveLength(2);
99
+ expect(processed.paths?.["/test"]?.get?.parameters).toHaveLength(1);
100
+ expect(processed.paths?.["/test"]?.get?.parameters?.[0]?.name).toBe("opParam");
89
101
  });
90
102
  it("combines multiple removal criteria", () => {
91
103
  const processed = removeParameters({
92
104
  in: ["query", "header"],
93
105
  shouldRemove: ({ parameter }) => parameter.name === "pathHeader",
94
- })(baseDoc);
95
- expect(processed.paths["/test"].parameters).toHaveLength(1);
96
- expect(processed.paths["/test"].parameters[0].name).toBe("pathParam");
97
- expect(processed.paths["/test"].get.parameters).toHaveLength(0);
106
+ })({
107
+ schema: baseDoc,
108
+ file: "/file.json",
109
+ dereference: async (id) => id,
110
+ });
111
+ expect(processed.paths?.["/test"]?.parameters).toHaveLength(1);
112
+ expect(processed.paths?.["/test"]?.parameters?.[0]?.name).toBe("pathParam");
113
+ expect(processed.paths?.["/test"]?.get?.parameters).toHaveLength(0);
98
114
  });
99
115
  it("handles missing parameters arrays", () => {
100
116
  const docWithoutParams = {
@@ -109,23 +125,35 @@ describe("removeParameters", () => {
109
125
  };
110
126
  const processed = removeParameters({
111
127
  names: ["someParam"],
112
- })(docWithoutParams);
128
+ })({
129
+ schema: docWithoutParams,
130
+ file: "/file.json",
131
+ dereference: async (id) => id,
132
+ });
113
133
  expect(processed).toEqual(docWithoutParams);
114
134
  });
115
135
  it("preserves non-parameter properties", () => {
116
136
  const processed = removeParameters({
117
137
  names: ["globalParam"],
118
- })(baseDoc);
138
+ })({
139
+ schema: baseDoc,
140
+ file: "/file.json",
141
+ dereference: async (id) => id,
142
+ });
119
143
  expect(processed.openapi).toBe("3.1.0");
120
- expect(processed.paths["/test"].get).toBeDefined();
144
+ expect(processed.paths?.["/test"]?.get).toBeDefined();
121
145
  });
122
146
  it("removes parameters from components", () => {
123
147
  const processed = removeParameters({
124
148
  in: ["header"],
125
- })(baseDoc);
126
- expect(Object.keys(processed.components.parameters)).toHaveLength(1);
127
- expect(processed.components.parameters.commonParam).toBeDefined();
128
- expect(processed.components.parameters.headerParam).toBeUndefined();
149
+ })({
150
+ schema: baseDoc,
151
+ file: "/file.json",
152
+ dereference: async (id) => id,
153
+ });
154
+ expect(Object.keys(processed.components?.parameters ?? {})).toHaveLength(1);
155
+ expect(processed.components?.parameters?.commonParam).toBeDefined();
156
+ expect(processed.components?.parameters?.headerParam).toBeUndefined();
129
157
  });
130
158
  });
131
159
  //# sourceMappingURL=removeParameters.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"removeParameters.test.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removeParameters.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"removeParameters.test.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removeParameters.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import type { ProcessorArg } from "../../../../config/validators/BuildSchema.js";
2
+ import type { OpenAPIDocument } from "../../../oas/parser/index.js";
1
3
  import { type RecordAny } from "./traverse.js";
2
4
  interface RemovePathsOptions {
3
5
  paths?: Record<string, true | string[]>;
@@ -7,5 +9,5 @@ interface RemovePathsOptions {
7
9
  operation: RecordAny;
8
10
  }) => boolean;
9
11
  }
10
- export declare const removePaths: ({ paths, shouldRemove }: RemovePathsOptions) => (doc: RecordAny) => RecordAny;
12
+ export declare const removePaths: ({ paths, shouldRemove }: RemovePathsOptions) => ({ schema }: ProcessorArg) => OpenAPIDocument;
11
13
  export {};
@@ -1,5 +1,5 @@
1
1
  import { traverse } from "./traverse.js";
2
- export const removePaths = ({ paths = {}, shouldRemove }) => (doc) => traverse(doc, (spec) => {
2
+ export const removePaths = ({ paths = {}, shouldRemove }) => ({ schema }) => traverse(schema, (spec) => {
3
3
  if (!spec.paths)
4
4
  return spec;
5
5
  const updatedPaths = {};
@@ -1 +1 @@
1
- {"version":3,"file":"removePaths.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removePaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAYzD,MAAM,CAAC,MAAM,WAAW,GACtB,CAAC,EAAE,KAAK,GAAG,EAAE,EAAE,YAAY,EAAsB,EAAE,EAAE,CACrD,CAAC,GAAc,EAAa,EAAE,CAC5B,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;IACrB,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAE7B,MAAM,YAAY,GAAc,EAAE,CAAC;IAEnC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEpC,0DAA0D;QAC1D,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI;YAAE,SAAS;QAEnC,mDAAmD;QACnD,IAAI,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;YAC/D,SAAS;QAEX,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACpD,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CACrC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE;gBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC5C,MAAM,gBAAgB,GACpB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAE7D,MAAM,gBAAgB,GAAG,YAAY,EAAE,CAAC;oBACtC,IAAI;oBACJ,MAAM;oBACN,SAAS,EAAE,UAAU;iBACtB,CAAC,CAAC;gBAEH,OAAO,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC;YAChD,CAAC,CAAC,CACH,CAAC;YAEF,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AAC1C,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"removePaths.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removePaths.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAYzD,MAAM,CAAC,MAAM,WAAW,GACtB,CAAC,EAAE,KAAK,GAAG,EAAE,EAAE,YAAY,EAAsB,EAAE,EAAE,CACrD,CAAC,EAAE,MAAM,EAAgB,EAAE,EAAE,CAC3B,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;IACxB,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAE7B,MAAM,YAAY,GAAc,EAAE,CAAC;IAEnC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEpC,0DAA0D;QAC1D,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI;YAAE,SAAS;QAEnC,mDAAmD;QACnD,IAAI,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;YAC/D,SAAS;QAEX,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACpD,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CACrC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE;gBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC5C,MAAM,gBAAgB,GACpB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAE7D,MAAM,gBAAgB,GAAG,YAAY,EAAE,CAAC;oBACtC,IAAI;oBACJ,MAAM;oBACN,SAAS,EAAE,UAAU;iBACtB,CAAC,CAAC;gBAEH,OAAO,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC;YAChD,CAAC,CAAC,CACH,CAAC;YAEF,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AAC1C,CAAC,CAAoB,CAAC"}
@@ -21,20 +21,28 @@ describe("removePaths", () => {
21
21
  paths: {
22
22
  "/remove-me": true,
23
23
  },
24
- })(baseDoc);
25
- expect(processed.paths["/remove-me"]).toBeUndefined();
26
- expect(processed.paths["/example"]).toBeDefined();
27
- expect(processed.paths["/another"]).toBeDefined();
24
+ })({
25
+ schema: baseDoc,
26
+ file: "/file.json",
27
+ dereference: async (id) => id,
28
+ });
29
+ expect(processed.paths?.["/remove-me"]).toBeUndefined();
30
+ expect(processed.paths?.["/example"]).toBeDefined();
31
+ expect(processed.paths?.["/another"]).toBeDefined();
28
32
  });
29
33
  it("removes specific methods in the paths option", () => {
30
34
  const processed = removePaths({
31
35
  paths: {
32
36
  "/example": ["get"],
33
37
  },
34
- })(baseDoc);
35
- expect(processed.paths["/example"].get).toBeUndefined();
36
- expect(processed.paths["/example"].post).toBeDefined();
37
- expect(processed.paths["/remove-me"]).toBeDefined();
38
+ })({
39
+ schema: baseDoc,
40
+ file: "/file.json",
41
+ dereference: async (id) => id,
42
+ });
43
+ expect(processed.paths?.["/example"]?.get).toBeUndefined();
44
+ expect(processed.paths?.["/example"]?.post).toBeDefined();
45
+ expect(processed.paths?.["/remove-me"]).toBeDefined();
38
46
  });
39
47
  it("removes paths and methods using paths and shouldRemove together", () => {
40
48
  const processed = removePaths({
@@ -42,63 +50,95 @@ describe("removePaths", () => {
42
50
  "/example": ["post"],
43
51
  },
44
52
  shouldRemove: ({ path }) => path.startsWith("/remove"),
45
- })(baseDoc);
46
- expect(processed.paths["/remove-me"]).toBeUndefined();
47
- expect(processed.paths["/example"].get).toBeDefined();
48
- expect(processed.paths["/example"].post).toBeUndefined();
49
- expect(processed.paths["/another"]).toBeDefined();
53
+ })({
54
+ schema: baseDoc,
55
+ file: "/file.json",
56
+ dereference: async (id) => id,
57
+ });
58
+ expect(processed.paths?.["/remove-me"]).toBeUndefined();
59
+ expect(processed.paths?.["/example"]?.get).toBeDefined();
60
+ expect(processed.paths?.["/example"]?.post).toBeUndefined();
61
+ expect(processed.paths?.["/another"]).toBeDefined();
50
62
  });
51
63
  it("removes paths based on shouldRemove callback", () => {
52
64
  const processed = removePaths({
53
65
  shouldRemove: ({ path }) => path.startsWith("/remove"),
54
- })(baseDoc);
55
- expect(processed.paths["/remove-me"]).toBeUndefined();
56
- expect(processed.paths["/example"]).toBeDefined();
57
- expect(processed.paths["/another"]).toBeDefined();
66
+ })({
67
+ schema: baseDoc,
68
+ file: "/file.json",
69
+ dereference: async (id) => id,
70
+ });
71
+ expect(processed.paths?.["/remove-me"]).toBeUndefined();
72
+ expect(processed.paths?.["/example"]).toBeDefined();
73
+ expect(processed.paths?.["/another"]).toBeDefined();
58
74
  });
59
75
  it("removes methods based on shouldRemove callback", () => {
60
76
  const processed = removePaths({
61
77
  shouldRemove: ({ method }) => method === "post",
62
- })(baseDoc);
63
- expect(processed.paths["/example"].post).toBeUndefined();
64
- expect(processed.paths["/example"].get).toBeDefined();
65
- expect(processed.paths["/remove-me"]).toBeDefined();
78
+ })({
79
+ schema: baseDoc,
80
+ file: "/file.json",
81
+ dereference: async (id) => id,
82
+ });
83
+ expect(processed.paths?.["/example"]?.post).toBeUndefined();
84
+ expect(processed.paths?.["/example"]?.get).toBeDefined();
85
+ expect(processed.paths?.["/remove-me"]).toBeDefined();
66
86
  });
67
87
  it("removes both paths and methods based on shouldRemove callback", () => {
68
88
  const processed = removePaths({
69
89
  shouldRemove: ({ path, method }) => path.startsWith("/remove") || method === "post",
70
- })(baseDoc);
71
- expect(processed.paths["/remove-me"]).toBeUndefined();
72
- expect(processed.paths["/example"].post).toBeUndefined();
73
- expect(processed.paths["/example"].get).toBeDefined();
74
- expect(processed.paths["/another"]).toBeDefined();
90
+ })({
91
+ schema: baseDoc,
92
+ file: "/file.json",
93
+ dereference: async (id) => id,
94
+ });
95
+ expect(processed.paths?.["/remove-me"]).toBeUndefined();
96
+ expect(processed.paths?.["/example"]?.post).toBeUndefined();
97
+ expect(processed.paths?.["/example"]?.get).toBeDefined();
98
+ expect(processed.paths?.["/another"]).toBeDefined();
75
99
  });
76
100
  it("does nothing if shouldRemove always returns false", () => {
77
101
  const processed = removePaths({
78
102
  shouldRemove: () => false,
79
- })(baseDoc);
103
+ })({
104
+ schema: baseDoc,
105
+ file: "/file.json",
106
+ dereference: async (id) => id,
107
+ });
80
108
  expect(processed).toEqual(baseDoc);
81
109
  });
82
110
  it("removes everything if shouldRemove always returns true", () => {
83
111
  const processed = removePaths({
84
112
  shouldRemove: () => true,
85
- })(baseDoc);
113
+ })({
114
+ schema: baseDoc,
115
+ file: "/file.json",
116
+ dereference: async (id) => id,
117
+ });
86
118
  expect(processed.paths).toEqual({});
87
119
  });
88
120
  it("removes entire paths via shouldRemove callback", () => {
89
121
  const processed = removePaths({
90
122
  shouldRemove: ({ path, method }) => method === true && path === "/remove-me",
91
- })(baseDoc);
92
- expect(processed.paths["/remove-me"]).toBeUndefined();
93
- expect(processed.paths["/example"]).toBeDefined();
94
- expect(processed.paths["/another"]).toBeDefined();
123
+ })({
124
+ schema: baseDoc,
125
+ file: "/file.json",
126
+ dereference: async (id) => id,
127
+ });
128
+ expect(processed.paths?.["/remove-me"]).toBeUndefined();
129
+ expect(processed.paths?.["/example"]).toBeDefined();
130
+ expect(processed.paths?.["/another"]).toBeDefined();
95
131
  });
96
132
  it("removes specific methods while keeping paths", () => {
97
133
  const processed = removePaths({
98
134
  shouldRemove: ({ method }) => method === "delete",
99
- })(baseDoc);
100
- expect(processed.paths["/remove-me"]).toBeDefined();
101
- expect(processed.paths["/remove-me"].delete).toBeUndefined();
135
+ })({
136
+ schema: baseDoc,
137
+ file: "/file.json",
138
+ dereference: async (id) => id,
139
+ });
140
+ expect(processed.paths?.["/remove-me"]).toBeDefined();
141
+ expect(processed.paths?.["/remove-me"]?.delete).toBeUndefined();
102
142
  });
103
143
  });
104
144
  //# sourceMappingURL=removePaths.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"removePaths.test.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removePaths.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"removePaths.test.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/processors/removePaths.test.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,21 @@ const createRoute = ({ path, tag, untagged, }) => ({
21
21
  return { element: _jsx(OperationList, { tag: tag, untagged: untagged }) };
22
22
  },
23
23
  });
24
+ const createAdditionalRoutes = (basePath) => [
25
+ // Category without tagged operations
26
+ createRoute({
27
+ path: joinUrl(basePath, UNTAGGED_PATH),
28
+ untagged: true,
29
+ }),
30
+ // Schema list route
31
+ {
32
+ path: joinUrl(basePath, "~schemas"),
33
+ lazy: async () => {
34
+ const { SchemaList } = await import("../SchemaList.js");
35
+ return { element: _jsx(SchemaList, {}) };
36
+ },
37
+ },
38
+ ];
24
39
  // Creates routes for a specific version, including tag-based routes and the untagged operations route.
25
40
  const createVersionRoutes = (versionPath, tagPages) => {
26
41
  const firstTagRoute = joinUrl(versionPath, tagPages.at(0) ?? UNTAGGED_PATH);
@@ -32,18 +47,7 @@ const createVersionRoutes = (versionPath, tagPages) => {
32
47
  path: joinUrl(versionPath, tag),
33
48
  tag,
34
49
  })),
35
- // Category without tagged operations
36
- createRoute({
37
- path: joinUrl(versionPath, UNTAGGED_PATH),
38
- untagged: true,
39
- }),
40
- {
41
- path: joinUrl(versionPath, "~schemas"),
42
- lazy: async () => {
43
- const { SchemaList } = await import("../SchemaList.js");
44
- return { element: _jsx(SchemaList, {}) };
45
- },
46
- },
50
+ ...createAdditionalRoutes(versionPath),
47
51
  ];
48
52
  };
49
53
  export const getVersions = (config) => config.type === "file" ? Object.keys(config.input) : [];
@@ -56,7 +60,10 @@ export const getRoutes = ({ basePath, config, client, }) => {
56
60
  createOasProvider({
57
61
  basePath,
58
62
  routePath: basePath,
59
- routes: [createRoute({ path: basePath + "/:tag?" })],
63
+ routes: [
64
+ createRoute({ path: basePath + "/:tag?" }),
65
+ ...createAdditionalRoutes(basePath),
66
+ ],
60
67
  client,
61
68
  config,
62
69
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"getRoutes.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/util/getRoutes.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getRoutes.js","sourceRoot":"","sources":["../../../../../src/lib/plugins/openapi/util/getRoutes.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const ensureArray: <T extends NonNullable<unknown>>(value: T | T[]) => T[];
@@ -0,0 +1,2 @@
1
+ export const ensureArray = (value) => (Array.isArray(value) ? value : [value]);
2
+ //# sourceMappingURL=ensureArray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ensureArray.js","sourceRoot":"","sources":["../../../src/lib/util/ensureArray.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,KAAc,EACT,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC"}