@automatons/parser 0.0.2

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 (211) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +47 -0
  3. package/converters/allOf.d.ts +4 -0
  4. package/converters/allOf.d.ts.map +1 -0
  5. package/converters/allOf.js +10 -0
  6. package/converters/allOf.js.map +1 -0
  7. package/converters/array.d.ts +4 -0
  8. package/converters/array.d.ts.map +1 -0
  9. package/converters/array.js +13 -0
  10. package/converters/array.js.map +1 -0
  11. package/converters/boolean.d.ts +4 -0
  12. package/converters/boolean.d.ts.map +1 -0
  13. package/converters/boolean.js +9 -0
  14. package/converters/boolean.js.map +1 -0
  15. package/converters/map.d.ts +7 -0
  16. package/converters/map.d.ts.map +1 -0
  17. package/converters/map.js +5 -0
  18. package/converters/map.js.map +1 -0
  19. package/converters/model.d.ts +3 -0
  20. package/converters/model.d.ts.map +1 -0
  21. package/converters/model.js +11 -0
  22. package/converters/model.js.map +1 -0
  23. package/converters/number.d.ts +4 -0
  24. package/converters/number.d.ts.map +1 -0
  25. package/converters/number.js +11 -0
  26. package/converters/number.js.map +1 -0
  27. package/converters/object.d.ts +4 -0
  28. package/converters/object.d.ts.map +1 -0
  29. package/converters/object.js +10 -0
  30. package/converters/object.js.map +1 -0
  31. package/converters/oneOf.d.ts +4 -0
  32. package/converters/oneOf.d.ts.map +1 -0
  33. package/converters/oneOf.js +10 -0
  34. package/converters/oneOf.js.map +1 -0
  35. package/converters/schema.d.ts +4 -0
  36. package/converters/schema.d.ts.map +1 -0
  37. package/converters/schema.js +13 -0
  38. package/converters/schema.js.map +1 -0
  39. package/converters/schemaModel.d.ts +4 -0
  40. package/converters/schemaModel.d.ts.map +1 -0
  41. package/converters/schemaModel.js +11 -0
  42. package/converters/schemaModel.js.map +1 -0
  43. package/converters/security.d.ts +4 -0
  44. package/converters/security.d.ts.map +1 -0
  45. package/converters/security.js +18 -0
  46. package/converters/security.js.map +1 -0
  47. package/converters/server.d.ts +4 -0
  48. package/converters/server.d.ts.map +1 -0
  49. package/converters/server.js +11 -0
  50. package/converters/server.js.map +1 -0
  51. package/converters/string.d.ts +4 -0
  52. package/converters/string.d.ts.map +1 -0
  53. package/converters/string.js +11 -0
  54. package/converters/string.js.map +1 -0
  55. package/extractors/index.d.ts +4 -0
  56. package/extractors/index.d.ts.map +1 -0
  57. package/extractors/index.js +16 -0
  58. package/extractors/index.js.map +1 -0
  59. package/extractors/model/allOf.d.ts +4 -0
  60. package/extractors/model/allOf.d.ts.map +1 -0
  61. package/extractors/model/allOf.js +11 -0
  62. package/extractors/model/allOf.js.map +1 -0
  63. package/extractors/model/array.d.ts +4 -0
  64. package/extractors/model/array.d.ts.map +1 -0
  65. package/extractors/model/array.js +15 -0
  66. package/extractors/model/array.js.map +1 -0
  67. package/extractors/model/index.d.ts +4 -0
  68. package/extractors/model/index.d.ts.map +1 -0
  69. package/extractors/model/index.js +41 -0
  70. package/extractors/model/index.js.map +1 -0
  71. package/extractors/model/object.d.ts +4 -0
  72. package/extractors/model/object.d.ts.map +1 -0
  73. package/extractors/model/object.js +22 -0
  74. package/extractors/model/object.js.map +1 -0
  75. package/extractors/model/of.d.ts +8 -0
  76. package/extractors/model/of.d.ts.map +1 -0
  77. package/extractors/model/of.js +14 -0
  78. package/extractors/model/of.js.map +1 -0
  79. package/extractors/model/oneOf.d.ts +6 -0
  80. package/extractors/model/oneOf.d.ts.map +1 -0
  81. package/extractors/model/oneOf.js +11 -0
  82. package/extractors/model/oneOf.js.map +1 -0
  83. package/extractors/model/ref.d.ts +4 -0
  84. package/extractors/model/ref.d.ts.map +1 -0
  85. package/extractors/model/ref.js +13 -0
  86. package/extractors/model/ref.js.map +1 -0
  87. package/extractors/model/type.d.ts +6 -0
  88. package/extractors/model/type.d.ts.map +1 -0
  89. package/extractors/model/type.js +3 -0
  90. package/extractors/model/type.js.map +1 -0
  91. package/extractors/path/index.d.ts +8 -0
  92. package/extractors/path/index.d.ts.map +1 -0
  93. package/extractors/path/index.js +17 -0
  94. package/extractors/path/index.js.map +1 -0
  95. package/extractors/path/mediaType.d.ts +3 -0
  96. package/extractors/path/mediaType.d.ts.map +1 -0
  97. package/extractors/path/mediaType.js +10 -0
  98. package/extractors/path/mediaType.js.map +1 -0
  99. package/extractors/path/method.d.ts +4 -0
  100. package/extractors/path/method.d.ts.map +1 -0
  101. package/extractors/path/method.js +75 -0
  102. package/extractors/path/method.js.map +1 -0
  103. package/extractors/path/parameter.d.ts +4 -0
  104. package/extractors/path/parameter.d.ts.map +1 -0
  105. package/extractors/path/parameter.js +83 -0
  106. package/extractors/path/parameter.js.map +1 -0
  107. package/extractors/path/requestBody.d.ts +8 -0
  108. package/extractors/path/requestBody.d.ts.map +1 -0
  109. package/extractors/path/requestBody.js +34 -0
  110. package/extractors/path/requestBody.js.map +1 -0
  111. package/extractors/path/response.d.ts +5 -0
  112. package/extractors/path/response.d.ts.map +1 -0
  113. package/extractors/path/response.js +19 -0
  114. package/extractors/path/response.js.map +1 -0
  115. package/extractors/path/security.d.ts +4 -0
  116. package/extractors/path/security.d.ts.map +1 -0
  117. package/extractors/path/security.js +10 -0
  118. package/extractors/path/security.js.map +1 -0
  119. package/extractors/path/status.d.ts +3 -0
  120. package/extractors/path/status.d.ts.map +1 -0
  121. package/extractors/path/status.js +11 -0
  122. package/extractors/path/status.js.map +1 -0
  123. package/extractors/path/type.d.ts +20 -0
  124. package/extractors/path/type.d.ts.map +1 -0
  125. package/extractors/path/type.js +3 -0
  126. package/extractors/path/type.js.map +1 -0
  127. package/extractors/schema/allOf.d.ts +7 -0
  128. package/extractors/schema/allOf.d.ts.map +1 -0
  129. package/extractors/schema/allOf.js +16 -0
  130. package/extractors/schema/allOf.js.map +1 -0
  131. package/extractors/schema/array.d.ts +12 -0
  132. package/extractors/schema/array.d.ts.map +1 -0
  133. package/extractors/schema/array.js +30 -0
  134. package/extractors/schema/array.js.map +1 -0
  135. package/extractors/schema/boolean.d.ts +11 -0
  136. package/extractors/schema/boolean.d.ts.map +1 -0
  137. package/extractors/schema/boolean.js +15 -0
  138. package/extractors/schema/boolean.js.map +1 -0
  139. package/extractors/schema/index.d.ts +9 -0
  140. package/extractors/schema/index.d.ts.map +1 -0
  141. package/extractors/schema/index.js +40 -0
  142. package/extractors/schema/index.js.map +1 -0
  143. package/extractors/schema/number.d.ts +11 -0
  144. package/extractors/schema/number.d.ts.map +1 -0
  145. package/extractors/schema/number.js +15 -0
  146. package/extractors/schema/number.js.map +1 -0
  147. package/extractors/schema/object.d.ts +7 -0
  148. package/extractors/schema/object.d.ts.map +1 -0
  149. package/extractors/schema/object.js +16 -0
  150. package/extractors/schema/object.js.map +1 -0
  151. package/extractors/schema/oneOf.d.ts +7 -0
  152. package/extractors/schema/oneOf.d.ts.map +1 -0
  153. package/extractors/schema/oneOf.js +16 -0
  154. package/extractors/schema/oneOf.js.map +1 -0
  155. package/extractors/schema/ref.d.ts +7 -0
  156. package/extractors/schema/ref.d.ts.map +1 -0
  157. package/extractors/schema/ref.js +16 -0
  158. package/extractors/schema/ref.js.map +1 -0
  159. package/extractors/schema/string.d.ts +11 -0
  160. package/extractors/schema/string.d.ts.map +1 -0
  161. package/extractors/schema/string.js +15 -0
  162. package/extractors/schema/string.js.map +1 -0
  163. package/index.d.ts +3 -0
  164. package/index.d.ts.map +1 -0
  165. package/index.js +15 -0
  166. package/index.js.map +1 -0
  167. package/package.json +55 -0
  168. package/parser.d.ts +8 -0
  169. package/parser.d.ts.map +1 -0
  170. package/parser.js +15 -0
  171. package/parser.js.map +1 -0
  172. package/parsers/api.d.ts +7 -0
  173. package/parsers/api.d.ts.map +1 -0
  174. package/parsers/api.js +29 -0
  175. package/parsers/api.js.map +1 -0
  176. package/parsers/model.d.ts +4 -0
  177. package/parsers/model.d.ts.map +1 -0
  178. package/parsers/model.js +11 -0
  179. package/parsers/model.js.map +1 -0
  180. package/types/api.d.ts +105 -0
  181. package/types/api.d.ts.map +1 -0
  182. package/types/api.js +3 -0
  183. package/types/api.js.map +1 -0
  184. package/types/index.d.ts +3 -0
  185. package/types/index.d.ts.map +1 -0
  186. package/types/index.js +15 -0
  187. package/types/index.js.map +1 -0
  188. package/types/model.d.ts +94 -0
  189. package/types/model.d.ts.map +1 -0
  190. package/types/model.js +3 -0
  191. package/types/model.js.map +1 -0
  192. package/utils/method.d.ts +4 -0
  193. package/utils/method.d.ts.map +1 -0
  194. package/utils/method.js +5 -0
  195. package/utils/method.js.map +1 -0
  196. package/utils/omitCopy.d.ts +2 -0
  197. package/utils/omitCopy.d.ts.map +1 -0
  198. package/utils/omitCopy.js +6 -0
  199. package/utils/omitCopy.js.map +1 -0
  200. package/utils/overwrite.d.ts +2 -0
  201. package/utils/overwrite.d.ts.map +1 -0
  202. package/utils/overwrite.js +5 -0
  203. package/utils/overwrite.js.map +1 -0
  204. package/utils/sort.d.ts +6 -0
  205. package/utils/sort.d.ts.map +1 -0
  206. package/utils/sort.js +5 -0
  207. package/utils/sort.js.map +1 -0
  208. package/utils/uniq.d.ts +2 -0
  209. package/utils/uniq.d.ts.map +1 -0
  210. package/utils/uniq.js +5 -0
  211. package/utils/uniq.js.map +1 -0
@@ -0,0 +1,8 @@
1
+ import { Model, Schema } from '../../types';
2
+ import { AutomatonContext, OpenapiSchema } from '@automatons/tools';
3
+ export declare const extractOfModel: (title: string, schemas: OpenapiSchema[], context: AutomatonContext) => Promise<{
4
+ schemas: Schema[];
5
+ models: Model[];
6
+ imports: Model[];
7
+ }>;
8
+ //# sourceMappingURL=of.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"of.d.ts","sourceRoot":"","sources":["../../../src/extractors/model/of.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,KAAK,EAAE,MAAM,EAAC,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAElE,eAAO,MAAM,cAAc,UAAW,MAAM,WAAW,aAAa,EAAE,WAAW,gBAAgB;aAGlE,MAAM,EAAE;YAAU,KAAK,EAAE;aAAW,KAAK,EAAE;EAMzE,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractOfModel = void 0;
4
+ const schema_1 = require("../schema");
5
+ const change_case_1 = require("change-case");
6
+ exports.extractOfModel = (title, schemas, context) => {
7
+ return schemas.map((item, index) => schema_1.extractSchema(change_case_1.pascalCase([title, index].join(' ')), item, context))
8
+ .reduce(async (pre, cur) => ({
9
+ schemas: [...(await pre).schemas, (await cur).schema],
10
+ models: [...(await pre).models, ...(await cur).models],
11
+ imports: [...(await pre).imports, ...((await cur).imports ?? [])],
12
+ }), Promise.resolve({ schemas: [], models: [], imports: [] }));
13
+ };
14
+ //# sourceMappingURL=of.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"of.js","sourceRoot":"","sources":["../../../src/extractors/model/of.ts"],"names":[],"mappings":";;;AAAA,sCAAwC;AACxC,6CAAuC;AAI1B,QAAA,cAAc,GAAG,CAAC,KAAa,EAAE,OAAwB,EAAE,OAAyB,EAAE,EAAE;IACnG,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACjC,sBAAa,CAAC,wBAAU,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;SAClE,MAAM,CAAoE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAC5F,CAAC;QACC,OAAO,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACrD,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACtD,OAAO,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;KAClE,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC,CAAC,CAAC;AACnE,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { AutomatonContext, OpenapiSchemaOneOf } from '@automatons/tools';
2
+ export declare const extractOneOfModel: (title: string, schema: OpenapiSchemaOneOf, context: AutomatonContext) => Promise<{
3
+ model: import("../..").Model;
4
+ insides: import("../..").Model[];
5
+ }>;
6
+ //# sourceMappingURL=oneOf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oneOf.d.ts","sourceRoot":"","sources":["../../../src/extractors/model/oneOf.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,gBAAgB,EAAE,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAEvE,eAAO,MAAM,iBAAiB,UAAiB,MAAM,UAAU,kBAAkB,WAAW,gBAAgB;;;EAG3G,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractOneOfModel = void 0;
4
+ const model_1 = require("../../converters/model");
5
+ const oneOf_1 = require("../../converters/oneOf");
6
+ const of_1 = require("./of");
7
+ exports.extractOneOfModel = async (title, schema, context) => {
8
+ const { models, schemas, imports } = await of_1.extractOfModel(title, schema.oneOf, context);
9
+ return { model: model_1.convertModel(title, oneOf_1.convertOneOf(schema, schemas), imports), insides: models };
10
+ };
11
+ //# sourceMappingURL=oneOf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oneOf.js","sourceRoot":"","sources":["../../../src/extractors/model/oneOf.ts"],"names":[],"mappings":";;;AAAA,kDAAoD;AACpD,kDAAoD;AACpD,6BAAoC;AAGvB,QAAA,iBAAiB,GAAG,KAAK,EAAE,KAAa,EAAE,MAA0B,EAAE,OAAyB,EAAE,EAAE;IAC9G,MAAM,EAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAC,GAAG,MAAM,mBAAc,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACtF,OAAO,EAAC,KAAK,EAAE,oBAAY,CAAC,KAAK,EAAE,oBAAY,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAC,CAAC;AAC/F,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { AutomatonContext, OpenapiSchemaReference } from '@automatons/tools';
2
+ import { ExtractModel } from './type';
3
+ export declare const extractRefModel: (title: string, schema: OpenapiSchemaReference, context: AutomatonContext) => Promise<ExtractModel>;
4
+ //# sourceMappingURL=ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref.d.ts","sourceRoot":"","sources":["../../../src/extractors/model/ref.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAEhB,sBAAsB,EAGvB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AAEpC,eAAO,MAAM,eAAe,UACZ,MAAM,UAAU,sBAAsB,WAAW,gBAAgB,KAAG,OAAO,CAAC,YAAY,CAMrG,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractRefModel = void 0;
4
+ const tools_1 = require("@automatons/tools");
5
+ const model_1 = require("../../converters/model");
6
+ const schemaModel_1 = require("../../converters/schemaModel");
7
+ exports.extractRefModel = async (title, schema, context) => {
8
+ const refSchema = await tools_1.referenceSchema(schema, context);
9
+ const refTitle = tools_1.referenceTitle(schema);
10
+ const ref = schemaModel_1.convertSchemaModel(refTitle, refSchema);
11
+ return { model: model_1.convertModel(title, ref, [model_1.convertModel(refTitle, ref)]), insides: [] };
12
+ };
13
+ //# sourceMappingURL=ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref.js","sourceRoot":"","sources":["../../../src/extractors/model/ref.ts"],"names":[],"mappings":";;;AAAA,6CAM2B;AAC3B,kDAAoD;AACpD,8DAAgE;AAGnD,QAAA,eAAe,GAC1B,KAAK,EAAE,KAAa,EAAE,MAA8B,EAAE,OAAyB,EAAyB,EAAE;IACxG,MAAM,SAAS,GAAG,MAAM,uBAAe,CAAgB,MAAM,EAAE,OAAO,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,sBAAc,CAAC,MAAM,CAAC,CAAC;IAExC,MAAM,GAAG,GAAG,gCAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACpD,OAAO,EAAC,KAAK,EAAE,oBAAY,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,oBAAY,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC;AACvF,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Model } from '../../types';
2
+ export declare type ExtractModel = {
3
+ model: Model;
4
+ insides: Model[];
5
+ };
6
+ //# sourceMappingURL=type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/extractors/model/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;AAElC,oBAAY,YAAY,GAAG;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,KAAK,EAAE,CAAA;CAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/extractors/model/type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import { AutomatonContext, OpenapiPath } from '@automatons/tools';
2
+ import { PathReturn } from './type';
3
+ declare type PathContext = {
4
+ path: string;
5
+ } & AutomatonContext;
6
+ export declare const extractPath: (schema: OpenapiPath, { path, openapi, settings }: PathContext) => Promise<PathReturn[]>;
7
+ export {};
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAwB,WAAW,EAAuB,MAAM,mBAAmB,CAAC;AAC5G,OAAO,EAAC,UAAU,EAAC,MAAM,QAAQ,CAAC;AAKlC,aAAK,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,CAAC;AAEvD,eAAO,MAAM,WAAW,WACP,WAAW,+BAA6B,WAAW,KAAG,OAAO,CAAC,UAAU,EAAE,CASxF,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractPath = void 0;
4
+ const tools_1 = require("@automatons/tools");
5
+ const method_1 = require("./method");
6
+ const tools_2 = require("@automatons/tools");
7
+ const omitCopy_1 = require("../../utils/omitCopy");
8
+ exports.extractPath = async (schema, { path, openapi, settings }) => {
9
+ const _schema = tools_2.isRef(schema) ?
10
+ { ...await tools_2.referenceSchema(schema, { openapi, settings }), ...omitCopy_1.omitCopy(schema, '$ref') } :
11
+ schema;
12
+ return Promise.all(tools_1.HTTP_METHODS
13
+ .map((method) => ({ method, operation: _schema[method] }))
14
+ .filter((operation) => !!operation.operation)
15
+ .map(({ method, operation }) => method_1.extractMethod(path, method, operation, _schema, { openapi, settings })));
16
+ };
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extractors/path/index.ts"],"names":[],"mappings":";;;AAAA,6CAA4G;AAE5G,qCAAuC;AACvC,6CAAyD;AACzD,mDAA8C;AAIjC,QAAA,WAAW,GACtB,KAAK,EAAE,MAAmB,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAc,EAAyB,EAAE;IAC3F,MAAM,OAAO,GAAG,aAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7B,EAAC,GAAG,MAAM,uBAAe,CAAC,MAAM,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAC,CAAC,EAAE,GAAG,mBAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,EAAC,CAAC,CAAC;QACtF,MAAM,CAAC;IACT,OAAO,OAAO,CAAC,GAAG,CAAC,oBAAY;SAC5B,GAAG,CAAyD,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,EAAC,CAAC,CAAC;SAC/G,MAAM,CACL,CAAC,SAAS,EAAoE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC;SACxG,GAAG,CAAC,CAAC,EAAC,MAAM,EAAE,SAAS,EAAC,EAAE,EAAE,CAAC,sBAAa,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAC,CAAC,CAAC,CAAC,CAAC;AACzG,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { OpenapiMap, OpenapiPathMedia } from '@automatons/tools';
2
+ export declare const extractMediaType: (schema: OpenapiMap<OpenapiPathMedia>) => keyof OpenapiMap<OpenapiPathMedia>;
3
+ //# sourceMappingURL=mediaType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mediaType.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/mediaType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAE/D,eAAO,MAAM,gBAAgB,WAAY,UAAU,CAAC,gBAAgB,CAAC,KAAG,MAAM,UAAU,CAAC,gBAAgB,CAM/D,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractMediaType = void 0;
4
+ exports.extractMediaType = (schema) => schema.hasOwnProperty('application/json') ?
5
+ 'application/json' :
6
+ schema.hasOwnProperty('application/*') ?
7
+ 'application/*' :
8
+ schema.hasOwnProperty('default') ?
9
+ 'default' : Object.keys(schema)[0];
10
+ //# sourceMappingURL=mediaType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mediaType.js","sourceRoot":"","sources":["../../../src/extractors/path/mediaType.ts"],"names":[],"mappings":";;;AAEa,QAAA,gBAAgB,GAAG,CAAC,MAAoC,EAAsC,EAAE,CAC3G,MAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACzC,kBAAkB,CAAC,CAAC;IACpB,MAAM,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC;QACtC,eAAe,CAAC,CAAC;QACjB,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;YAChC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { AutomatonContext, Method, OpenapiPath, OpenapiPathOperation } from '@automatons/tools';
2
+ import { PathReturn } from './type';
3
+ export declare const extractMethod: (path: string, method: Method, operation: OpenapiPathOperation, schema: OpenapiPath, { openapi, settings }: AutomatonContext) => Promise<PathReturn>;
4
+ //# sourceMappingURL=method.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAE,MAAM,EAAoB,WAAW,EAAE,oBAAoB,EAAC,MAAM,mBAAmB,CAAC;AAmBhH,OAAO,EAAC,UAAU,EAAC,MAAM,QAAQ,CAAC;AAiDlC,eAAO,MAAM,aAAa,SAAgB,MAAM,UAAU,MAAM,aAAa,oBAAoB,UAAU,WAAW,yBAC/F,gBAAgB,KAAG,OAAO,CAAC,UAAU,CAyC3D,CAAC"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractMethod = void 0;
4
+ const change_case_1 = require("change-case");
5
+ const server_1 = require("../../converters/server");
6
+ const sort_1 = require("../../utils/sort");
7
+ const parameter_1 = require("./parameter");
8
+ const requestBody_1 = require("./requestBody");
9
+ const response_1 = require("./response");
10
+ const security_1 = require("./security");
11
+ const mergeModels = (main, adding) => {
12
+ main.models.push(...adding.models);
13
+ main.imports.push(...adding.imports);
14
+ };
15
+ const mergeParameter = async (parameters, path, params, models, { openapi, settings }) => {
16
+ const { parameters: _parameters, queries: _queries, headers: _headers, cookies: _cookies, models: _models, imports: _imports, } = await parameter_1.extractParameter(parameters, { path, openapi, settings });
17
+ params.parameters.push(..._parameters);
18
+ params.queries.push(..._queries);
19
+ params.headers.push(..._headers);
20
+ params.cookies.push(..._cookies);
21
+ mergeModels(models, { models: _models, imports: _imports });
22
+ };
23
+ exports.extractMethod = async (path, method, operation, schema, { openapi, settings }) => {
24
+ const models = {
25
+ models: [],
26
+ imports: [],
27
+ };
28
+ const params = {
29
+ parameters: [],
30
+ queries: [],
31
+ headers: [],
32
+ cookies: [],
33
+ };
34
+ const data = {
35
+ params,
36
+ servers: (operation.servers || schema.servers || openapi.servers || [])
37
+ .map(server_1.convertServer),
38
+ securities: security_1.extractSecurity(operation, openapi),
39
+ };
40
+ if (schema.parameters) {
41
+ await mergeParameter(schema.parameters, path, params, models, { openapi, settings });
42
+ }
43
+ if (operation.parameters) {
44
+ await mergeParameter(operation.parameters, path, params, models, { openapi, settings });
45
+ }
46
+ if (operation.requestBody) {
47
+ const bodies = await requestBody_1.extractRequestBody(operation.requestBody, path, method, { openapi, settings });
48
+ data.forms = bodies.forms;
49
+ mergeModels(models, { models: bodies.models, imports: bodies.imports });
50
+ }
51
+ const response = await response_1.extractResponse(operation.responses, method, { path, openapi, settings });
52
+ if (response) {
53
+ data.schema = response.schema;
54
+ mergeModels(models, { models: response.models, imports: response.imports ?? [] });
55
+ }
56
+ return convertPath(path, method, operation, data, models);
57
+ };
58
+ const convertPath = (path, method, operation, { params, servers, securities, forms, schema }, models) => ({
59
+ tags: operation.tags && operation.tags.length ? operation.tags : ['default'],
60
+ path: {
61
+ name: change_case_1.camelCase(operation.operationId ?? [method, ...path.split('/')].join(' ')),
62
+ path,
63
+ method,
64
+ servers,
65
+ parameters: params.parameters,
66
+ queries: params.queries.sort(sort_1.requiredCompare),
67
+ headers: params.headers.sort(sort_1.requiredCompare),
68
+ cookies: params.cookies.sort(sort_1.requiredCompare),
69
+ ...(securities ? { securities } : {}),
70
+ ...(forms ? { forms } : {}),
71
+ ...(schema ? { schema } : {}),
72
+ },
73
+ ...models,
74
+ });
75
+ //# sourceMappingURL=method.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"method.js","sourceRoot":"","sources":["../../../src/extractors/path/method.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { OpenapiParameter } from '@automatons/tools';
2
+ import { ParameterResult, PathContext } from './type';
3
+ export declare const extractParameter: (schema: OpenapiParameter[], { path, ...context }: PathContext) => Promise<ParameterResult>;
4
+ //# sourceMappingURL=parameter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parameter.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/parameter.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,gBAAgB,EAEjB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAC,eAAe,EAAE,WAAW,EAAC,MAAM,QAAQ,CAAC;AAEpD,eAAO,MAAM,gBAAgB,WAClB,gBAAgB,EAAE,wBAAsB,WAAW,KAAG,OAAO,CAAC,eAAe,CAyEmB,CAAC"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractParameter = void 0;
4
+ const tools_1 = require("@automatons/tools");
5
+ const change_case_1 = require("change-case");
6
+ const schema_1 = require("../schema");
7
+ const mediaType_1 = require("./mediaType");
8
+ exports.extractParameter = (schema, { path, ...context }) => schema
9
+ .map((param) => tools_1.referenceSchema(param, context))
10
+ .map(async (param) => {
11
+ const _param = await param;
12
+ const paramSchema = tools_1.hasSchema(_param) ? _param.schema : Object.keys(_param.content).length ?
13
+ _param.content[mediaType_1.extractMediaType(_param.content)].schema : undefined;
14
+ if (!paramSchema)
15
+ return;
16
+ const { schema, models, imports } = await schema_1.extractSchema(change_case_1.pascalCase([path, 'parameter', _param.name].join(' ')), paramSchema, context);
17
+ if (tools_1.isPathParam(_param)) {
18
+ return {
19
+ parameter: {
20
+ name: _param.name,
21
+ schema,
22
+ style: _param.style,
23
+ explode: _param.explode,
24
+ },
25
+ models,
26
+ imports,
27
+ };
28
+ }
29
+ else if (tools_1.isQueryParam(_param)) {
30
+ return {
31
+ query: {
32
+ name: _param.name,
33
+ schema,
34
+ style: _param.style,
35
+ required: _param.required,
36
+ explode: _param.explode,
37
+ },
38
+ models,
39
+ imports,
40
+ };
41
+ }
42
+ else if (tools_1.isHeaderParam(_param)) {
43
+ return {
44
+ header: {
45
+ name: _param.name,
46
+ schema,
47
+ style: _param.style,
48
+ required: _param.required,
49
+ explode: _param.explode,
50
+ },
51
+ models,
52
+ imports,
53
+ };
54
+ }
55
+ else if (tools_1.isCookieParam(_param)) {
56
+ return {
57
+ cookie: {
58
+ name: _param.name,
59
+ schema,
60
+ style: _param.style,
61
+ required: _param.required,
62
+ explode: _param.explode,
63
+ },
64
+ models,
65
+ imports,
66
+ };
67
+ }
68
+ return;
69
+ })
70
+ .reduce(async (pre, cur) => {
71
+ const previous = await pre;
72
+ const current = await cur;
73
+ return current ? ({
74
+ parameters: current.parameter ? [...previous.parameters, current.parameter] : previous.parameters,
75
+ queries: current.query ? [...previous.queries, current.query] : previous.queries,
76
+ headers: current.header ? [...previous.headers, current.header] : previous.headers,
77
+ cookies: current.cookie ? [...previous.cookies, current.cookie] : previous.cookies,
78
+ models: [...previous.models, ...current.models],
79
+ imports: [...previous.imports, ...current.imports ?? []],
80
+ }) :
81
+ previous;
82
+ }, Promise.resolve({ parameters: [], queries: [], headers: [], cookies: [], models: [], imports: [] }));
83
+ //# sourceMappingURL=parameter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parameter.js","sourceRoot":"","sources":["../../../src/extractors/path/parameter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { AutomatonContext, OpenapiPathRequestBody, OpenapiReference } from '@automatons/tools';
2
+ import { Form, Model } from '../../types';
3
+ export declare const extractRequestBody: (schema: OpenapiPathRequestBody | OpenapiReference, path: string, method: any, context: AutomatonContext) => Promise<{
4
+ forms: Form[];
5
+ models: Model[];
6
+ imports: Model[];
7
+ }>;
8
+ //# sourceMappingURL=requestBody.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestBody.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/requestBody.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAEhB,sBAAsB,EACtB,gBAAgB,EAGjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAC,IAAI,EAAE,KAAK,EAAC,MAAM,aAAa,CAAC;AAGxC,eAAO,MAAM,kBAAkB,WACd,sBAAsB,GAAG,gBAAgB,QAAQ,MAAM,UAAU,GAAG,WAAW,gBAAgB;WAkBzF,IAAI,EAAE;YAAU,KAAK,EAAE;aAAW,KAAK,EAAE;EAS7D,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.extractRequestBody = void 0;
7
+ const tools_1 = require("@automatons/tools");
8
+ const deep_equal_1 = __importDefault(require("deep-equal"));
9
+ const schema_1 = require("../schema");
10
+ exports.extractRequestBody = async (schema, path, method, context) => {
11
+ const requestBody = await tools_1.referenceSchema(schema, context);
12
+ const extracts = await Promise.all(Object.entries(requestBody.content)
13
+ .filter((item) => !!item[1].schema)
14
+ .map(async ([key, value]) => ({
15
+ key,
16
+ required: requestBody.required,
17
+ extract: await schema_1.extractSchema([...path.split('/'), method, ...key.split('/'), 'Request'].join(' '), value.schema, context),
18
+ })));
19
+ return extracts
20
+ .map(({ key, required, extract }) => ({
21
+ form: { types: [key], required, schema: extract.schema },
22
+ models: extract.models,
23
+ imports: extract.imports,
24
+ }))
25
+ .reduce((pre, cur) => ({
26
+ forms: pre.forms.some((form) => deep_equal_1.default(form.schema, cur.form.schema)) ? pre.forms.map((form) => deep_equal_1.default(form.schema, cur.form.schema) ? {
27
+ ...form,
28
+ types: [...form.types, ...cur.form.types],
29
+ } : form) : [...pre.forms, cur.form],
30
+ models: [...pre.models, ...cur.models],
31
+ imports: [...pre.imports, ...cur.imports ?? []],
32
+ }), { forms: [], models: [], imports: [] });
33
+ };
34
+ //# sourceMappingURL=requestBody.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestBody.js","sourceRoot":"","sources":["../../../src/extractors/path/requestBody.ts"],"names":[],"mappings":";;;;;;AAAA,6CAO2B;AAC3B,4DAAmC;AAEnC,sCAA6D;AAEhD,QAAA,kBAAkB,GAC7B,KAAK,EAAE,MAAiD,EAAE,IAAY,EAAE,MAAW,EAAE,OAAyB,EAAE,EAAE;IAChH,MAAM,WAAW,GAAG,MAAM,uBAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;SACnE,MAAM,CACL,CAAC,IAAI,EAAkE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SAC5F,GAAG,CAA6E,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACxG,GAAG;QACH,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,OAAO,EAAE,MAAM,sBAAa,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,EAC7G,OAAO,CAAC;KACX,CAAC,CAAC,CAAC,CAAC;IACP,OAAO,QAAQ;SACZ,GAAG,CAAqD,CAAC,EAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAC,EAAE,EAAE,CACpF,CAAC;QACC,IAAI,EAAE,EAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAC;QACtD,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC;SACJ,MAAM,CAAuD,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3E,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAS,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CACtF,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAS,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAClD,GAAG,IAAI;YACP,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;SAC1C,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC;QACtC,MAAM,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QACtC,OAAO,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;KAChD,CAAC,EAAE,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC,CAAC;AAC9C,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Method, OpenapiMap, OpenapiPathResponse, OpenapiReference } from '@automatons/tools';
2
+ import { ExtractSchemaResult } from '../schema';
3
+ import { PathContext } from './type';
4
+ export declare const extractResponse: (schema: OpenapiMap<OpenapiPathResponse | OpenapiReference>, method: Method, context: PathContext) => Promise<ExtractSchemaResult | void>;
5
+ //# sourceMappingURL=response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,gBAAgB,EAAkB,MAAM,mBAAmB,CAAC;AAC7G,OAAO,EAAgB,mBAAmB,EAAC,MAAM,WAAW,CAAC;AAG7D,OAAO,EAAC,WAAW,EAAC,MAAM,QAAQ,CAAC;AAEnC,eAAO,MAAM,eAAe,WACX,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,UACvD,MAAM,WACL,WAAW,KAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAS1D,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractResponse = void 0;
4
+ const tools_1 = require("@automatons/tools");
5
+ const schema_1 = require("../schema");
6
+ const mediaType_1 = require("./mediaType");
7
+ const status_1 = require("./status");
8
+ exports.extractResponse = async (schema, method, context) => {
9
+ const status = status_1.extractStatus(schema);
10
+ const response = await tools_1.referenceSchema(schema[status], context);
11
+ const content = response.content;
12
+ if (!content || !Object.keys(content).length)
13
+ return;
14
+ const resSchema = content[mediaType_1.extractMediaType(content)].schema;
15
+ if (!resSchema)
16
+ return;
17
+ return schema_1.extractSchema([...context.path.split('/'), method, 'Response'].join(' '), resSchema, context);
18
+ };
19
+ //# sourceMappingURL=response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/extractors/path/response.ts"],"names":[],"mappings":";;;AAAA,6CAA6G;AAC7G,sCAA6D;AAC7D,2CAA6C;AAC7C,qCAAuC;AAG1B,QAAA,eAAe,GAC1B,KAAK,EAAE,MAA0D,EAC/D,MAAc,EACd,OAAoB,EAAuC,EAAE;IAC7D,MAAM,MAAM,GAAG,sBAAa,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,MAAM,uBAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM;QAAE,OAAO;IACrD,MAAM,SAAS,GAAG,OAAO,CAAC,4BAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5D,IAAI,CAAC,SAAS;QAAE,OAAO;IACvB,OAAO,sBAAa,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAC7E,SAAS,EAAE,OAAO,CAAC,CAAC;AACxB,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Security } from '../../types';
2
+ import { Openapi, OpenapiPathOperation } from '@automatons/tools';
3
+ export declare const extractSecurity: (operation: OpenapiPathOperation, openapi: Openapi) => Security[] | undefined;
4
+ //# sourceMappingURL=security.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/security.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;AAErC,OAAO,EAAC,OAAO,EAAE,oBAAoB,EAAC,MAAM,mBAAmB,CAAC;AAEhE,eAAO,MAAM,eAAe,cAAe,oBAAoB,WAAW,OAAO,KAAG,QAAQ,EAAE,GAAG,SAMb,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractSecurity = void 0;
4
+ const security_1 = require("../../converters/security");
5
+ exports.extractSecurity = (operation, openapi) => operation.security && operation.security.map((value) => Object.entries(value)
6
+ .map(([name, scopes]) => {
7
+ const security = openapi.components?.securitySchemes?.[name];
8
+ return security ? security_1.convertSecurity(name, security, scopes) : undefined;
9
+ }).filter((value) => value !== undefined)).flat();
10
+ //# sourceMappingURL=security.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security.js","sourceRoot":"","sources":["../../../src/extractors/path/security.ts"],"names":[],"mappings":";;;AACA,wDAA0D;AAG7C,QAAA,eAAe,GAAG,CAAC,SAA+B,EAAE,OAAgB,EAA0B,EAAE,CAC3G,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACrD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;KAClB,GAAG,CAAuB,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAwB,EAAE;IAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC;IAC7D,OAAO,QAAQ,CAAC,CAAC,CAAC,0BAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC,CAAC,CAAC,MAAM,CAAW,CAAC,KAAK,EAAqB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { OpenapiMap, OpenapiPathResponse, OpenapiReference } from '@automatons/tools';
2
+ export declare const extractStatus: (schema: OpenapiMap<OpenapiPathResponse | OpenapiReference>) => keyof OpenapiMap<OpenapiPathResponse | OpenapiReference>;
3
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,mBAAmB,EAAE,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEpF,eAAO,MAAM,aAAa,WAAY,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,KACtF,MAAM,UAAU,CAAC,mBAAmB,GAAG,gBAAgB,CAMxD,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractStatus = void 0;
4
+ exports.extractStatus = (schema) => {
5
+ const statuses = Object.keys(schema);
6
+ return statuses
7
+ .map((status) => Number(status))
8
+ .filter((status) => Number(status) >= 200 && Number(status) < 300)
9
+ .sort()[0] ?? statuses[0];
10
+ };
11
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/extractors/path/status.ts"],"names":[],"mappings":";;;AAEa,QAAA,aAAa,GAAG,CAAC,MAA0D,EAC7B,EAAE;IAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,QAAQ;SACZ,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC/B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;SACjE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { AutomatonContext } from '@automatons/tools';
2
+ import { CookieParameter, HeaderParameter, Model, Path, PathParameter, QueryParameter } from '../../types';
3
+ export declare type PathContext = {
4
+ path: string;
5
+ } & AutomatonContext;
6
+ export declare type ParameterResult = {
7
+ parameters: PathParameter[];
8
+ queries: QueryParameter[];
9
+ headers: HeaderParameter[];
10
+ cookies: CookieParameter[];
11
+ models: Model[];
12
+ imports: Model[];
13
+ };
14
+ export declare type PathReturn = {
15
+ tags: string[];
16
+ path: Path;
17
+ models: Model[];
18
+ imports: Model[];
19
+ };
20
+ //# sourceMappingURL=type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/extractors/path/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAC,eAAe,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,cAAc,EAAC,MAAM,aAAa,CAAC;AAEzG,oBAAY,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,gBAAgB,CAAC;AAC9D,oBAAY,eAAe,GAAG;IAC5B,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,OAAO,EAAE,KAAK,EAAE,CAAA;CACjB,CAAC;AACF,oBAAY,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IAAC,OAAO,EAAE,KAAK,EAAE,CAAA;CAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/extractors/path/type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { AutomatonContext, OpenapiSchemaAllOf } from '@automatons/tools';
2
+ export declare const extractAllOfSchema: (title: string, schema: OpenapiSchemaAllOf, context: AutomatonContext) => Promise<{
3
+ schema: import("../..").ModelSchema;
4
+ models: import("../..").Model[];
5
+ imports: import("../..").Model[];
6
+ }>;
7
+ //# sourceMappingURL=allOf.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allOf.d.ts","sourceRoot":"","sources":["../../../src/extractors/schema/allOf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAE,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAKvE,eAAO,MAAM,kBAAkB,UAAiB,MAAM,UAAU,kBAAkB,WAAW,gBAAgB;;;;EAQ5G,CAAC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractAllOfSchema = void 0;
4
+ const schemaModel_1 = require("../../converters/schemaModel");
5
+ const model_1 = require("../model");
6
+ const model_2 = require("../../converters/model");
7
+ exports.extractAllOfSchema = async (title, schema, context) => {
8
+ const modelSchema = schemaModel_1.convertSchemaModel(title, schema);
9
+ const { model, insides } = await model_1.extractModel(title, schema, context);
10
+ return {
11
+ schema: modelSchema,
12
+ models: [model, ...insides],
13
+ imports: [model_2.convertModel(title, modelSchema)],
14
+ };
15
+ };
16
+ //# sourceMappingURL=allOf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allOf.js","sourceRoot":"","sources":["../../../src/extractors/schema/allOf.ts"],"names":[],"mappings":";;;AACA,8DAAgE;AAChE,oCAAsC;AACtC,kDAAoD;AAEvC,QAAA,kBAAkB,GAAG,KAAK,EAAE,KAAa,EAAE,MAA0B,EAAE,OAAyB,EAAE,EAAE;IAC/G,MAAM,WAAW,GAAG,gCAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtD,MAAM,EAAC,KAAK,EAAE,OAAO,EAAC,GAAG,MAAM,oBAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACpE,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC;QAC3B,OAAO,EAAE,CAAC,oBAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;KAC5C,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { AutomatonContext, OpenapiSchemaArray } from '@automatons/tools';
2
+ import { Model } from '../../types';
3
+ export declare const extractArraySchema: (title: string, schema: OpenapiSchemaArray, context: AutomatonContext) => Promise<{
4
+ schema: import("../../types").ModelSchema;
5
+ models: Model[];
6
+ imports: Model[];
7
+ } | {
8
+ schema: import("../../types").ArraySchema;
9
+ models: Model[];
10
+ imports: Model[];
11
+ }>;
12
+ //# sourceMappingURL=array.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/extractors/schema/array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAE,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;AAOlC,eAAO,MAAM,kBAAkB,UAAiB,MAAM,UAAU,kBAAkB,WAAW,gBAAgB;;;;;;;;EAqB5G,CAAC"}