ts-openapi-codegen 1.0.0-beta.4 → 1.0.0-beta.6

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 (92) hide show
  1. package/README.md +35 -1
  2. package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.d.ts +5 -0
  3. package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.d.ts.map +1 -0
  4. package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.js +40 -0
  5. package/dist/cli/index.js +47 -5
  6. package/dist/cli/utils.d.ts +5 -0
  7. package/dist/cli/utils.d.ts.map +1 -1
  8. package/dist/cli/utils.js +22 -0
  9. package/dist/common/Options.d.ts +1 -0
  10. package/dist/common/Options.d.ts.map +1 -1
  11. package/dist/common/UpdateNotifier.d.ts +24 -0
  12. package/dist/common/UpdateNotifier.d.ts.map +1 -0
  13. package/dist/common/UpdateNotifier.js +120 -0
  14. package/dist/common/__tests__/mergeObjectSchemas.test.js +1 -1
  15. package/dist/core/Context.d.ts +10 -1
  16. package/dist/core/Context.d.ts.map +1 -1
  17. package/dist/core/Context.js +8 -1
  18. package/dist/core/{utils/writeClient.d.ts → WriteClient.d.ts} +13 -6
  19. package/dist/core/WriteClient.d.ts.map +1 -0
  20. package/dist/core/{utils/writeClient.js → WriteClient.js} +69 -78
  21. package/dist/core/__tests__/WriteClient.test.d.ts +2 -0
  22. package/dist/core/__tests__/WriteClient.test.d.ts.map +1 -0
  23. package/dist/core/{utils/__tests__/writeClient.test.js → __tests__/WriteClient.test.js} +8 -8
  24. package/dist/core/api/v2/parser/__tests__/getType.test.js +3 -3
  25. package/dist/core/api/v2/parser/getOperationParameters.d.ts.map +1 -1
  26. package/dist/core/api/v2/parser/getOperationParameters.js +9 -7
  27. package/dist/core/api/v3/parser/__tests__/getType.test.js +3 -3
  28. package/dist/core/api/v3/parser/getOperation.d.ts.map +1 -1
  29. package/dist/core/api/v3/parser/getOperation.js +4 -2
  30. package/dist/core/api/v3/parser/getOperationParameters.d.ts.map +1 -1
  31. package/dist/core/api/v3/parser/getOperationParameters.js +9 -7
  32. package/dist/core/index.d.ts.map +1 -1
  33. package/dist/core/index.js +5 -4
  34. package/dist/core/types/Consts.d.ts +10 -0
  35. package/dist/core/types/Consts.d.ts.map +1 -1
  36. package/dist/core/types/Consts.js +11 -1
  37. package/dist/core/types/Models.d.ts +3 -0
  38. package/dist/core/types/Models.d.ts.map +1 -1
  39. package/dist/core/utils/__mocks__/createOperationParameter.d.ts +3 -0
  40. package/dist/core/utils/__mocks__/createOperationParameter.d.ts.map +1 -0
  41. package/dist/core/utils/__mocks__/createOperationParameter.js +28 -0
  42. package/dist/core/utils/__tests__/sortByRequiredExtended.test.d.ts +2 -0
  43. package/dist/core/utils/__tests__/sortByRequiredExtended.test.d.ts.map +1 -0
  44. package/dist/core/utils/__tests__/sortByRequiredExtended.test.js +145 -0
  45. package/dist/core/utils/__tests__/sortByRequiredSimple.test.d.ts +2 -0
  46. package/dist/core/utils/__tests__/sortByRequiredSimple.test.d.ts.map +1 -0
  47. package/dist/core/utils/__tests__/sortByRequiredSimple.test.js +80 -0
  48. package/dist/core/utils/__tests__/writeClientCore.test.js +2 -2
  49. package/dist/core/utils/__tests__/writeClientIndex.test.js +2 -2
  50. package/dist/core/utils/__tests__/writeClientModels.test.js +2 -2
  51. package/dist/core/utils/__tests__/writeClientSchemas.test.js +2 -2
  52. package/dist/core/utils/__tests__/writeClientServices.test.js +2 -2
  53. package/dist/core/utils/getOpenApiSpec.d.ts.map +1 -1
  54. package/dist/core/utils/getOpenApiSpec.js +0 -7
  55. package/dist/core/utils/getPropertyGroupExtended.d.ts +4 -0
  56. package/dist/core/utils/getPropertyGroupExtended.d.ts.map +1 -0
  57. package/dist/core/utils/getPropertyGroupExtended.js +10 -0
  58. package/dist/core/utils/getPropertyGroupSimple.d.ts +3 -0
  59. package/dist/core/utils/getPropertyGroupSimple.d.ts.map +1 -0
  60. package/dist/core/utils/getPropertyGroupSimple.js +9 -0
  61. package/dist/core/utils/precompileTemplates.js +1 -1
  62. package/dist/core/utils/prepareAlias.d.ts +7 -0
  63. package/dist/core/utils/prepareAlias.d.ts.map +1 -0
  64. package/dist/core/utils/prepareAlias.js +24 -0
  65. package/dist/core/utils/registerHandlebarTemplates.d.ts.map +1 -1
  66. package/dist/core/utils/registerHandlebarTemplates.js +2 -0
  67. package/dist/core/utils/sortByRequiredExtended.d.ts +3 -0
  68. package/dist/core/utils/sortByRequiredExtended.d.ts.map +1 -0
  69. package/dist/core/utils/sortByRequiredExtended.js +15 -0
  70. package/dist/core/utils/sortByRequiredSimple.d.ts +3 -0
  71. package/dist/core/utils/sortByRequiredSimple.d.ts.map +1 -0
  72. package/dist/core/utils/sortByRequiredSimple.js +10 -0
  73. package/dist/core/utils/sortModelByName.d.ts +3 -0
  74. package/dist/core/utils/sortModelByName.d.ts.map +1 -0
  75. package/dist/core/utils/sortModelByName.js +12 -0
  76. package/dist/templatesCompiled/partials/isReadOnly.d.ts +1 -1
  77. package/dist/templatesCompiled/partials/isReadOnly.d.ts.map +1 -1
  78. package/dist/templatesCompiled/partials/isReadOnly.js +1 -2
  79. package/dist/templatesCompiled/partials/isRequiredDefinition.d.ts +9 -0
  80. package/dist/templatesCompiled/partials/isRequiredDefinition.d.ts.map +1 -0
  81. package/dist/templatesCompiled/partials/isRequiredDefinition.js +27 -0
  82. package/dist/templatesCompiled/partials/parametersDefinition.js +1 -1
  83. package/package.json +9 -1
  84. package/dist/core/utils/__tests__/sortByRequired.test.d.ts +0 -2
  85. package/dist/core/utils/__tests__/sortByRequired.test.d.ts.map +0 -1
  86. package/dist/core/utils/__tests__/sortByRequired.test.js +0 -108
  87. package/dist/core/utils/__tests__/writeClient.test.d.ts +0 -2
  88. package/dist/core/utils/__tests__/writeClient.test.d.ts.map +0 -1
  89. package/dist/core/utils/sortByRequired.d.ts +0 -3
  90. package/dist/core/utils/sortByRequired.d.ts.map +0 -1
  91. package/dist/core/utils/sortByRequired.js +0 -18
  92. package/dist/core/utils/writeClient.d.ts.map +0 -1
@@ -38,7 +38,7 @@ exports.default = { "1": function (container, depth0, helpers, partials, data) {
38
38
  return undefined;
39
39
  };
40
40
  return ((stack1 = container.lambda(container.strict(depth0, "name", { "start": { "line": 9, "column": 3 }, "end": { "line": 9, "column": 7 } }), depth0)) != null ? stack1 : "")
41
- + ((stack1 = container.invokePartial(lookupProperty(partials, "isRequired"), depth0, { "name": "isRequired", "data": data, "helpers": helpers, "partials": partials, "decorators": container.decorators })) != null ? stack1 : "")
41
+ + ((stack1 = container.invokePartial(lookupProperty(partials, "isRequiredDefinition"), depth0, { "name": "isRequiredDefinition", "data": data, "helpers": helpers, "partials": partials, "decorators": container.decorators })) != null ? stack1 : "")
42
42
  + ": "
43
43
  + ((stack1 = container.invokePartial(lookupProperty(partials, "type"), depth0, { "name": "type", "data": data, "helpers": helpers, "partials": partials, "decorators": container.decorators })) != null ? stack1 : "")
44
44
  + ",\n";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ts-openapi-codegen",
3
- "version": "1.0.0-beta.4",
3
+ "version": "1.0.0-beta.6",
4
4
  "description": "Library that generates Typescript clients based on the OpenAPI specification. It bases on openapi-typescript-codegen",
5
5
  "author": "Alexey Zverev",
6
6
  "homepage": "https://github.com/ozonophore/openapi-codegen.git",
@@ -59,9 +59,13 @@
59
59
  "codecov": "codecov --token=89a9fe76-2714-4b5b-83e3-9d809615064d"
60
60
  },
61
61
  "dependencies": {
62
+ "boxen": "^5.1.2",
62
63
  "camelcase": "6.2.0",
64
+ "chalk": "^4.1.2",
63
65
  "commander": "8.0.0",
66
+ "configstore": "^5.0.1",
64
67
  "fast-deep-equal": "^3.1.3",
68
+ "figlet": "^1.8.0",
65
69
  "handlebars": "4.7.6",
66
70
  "joi": "^17.13.3",
67
71
  "json-schema": "0.4.0",
@@ -69,6 +73,7 @@
69
73
  "leven": "^4.0.0",
70
74
  "mkdirp": "1.0.4",
71
75
  "rimraf": "3.0.2",
76
+ "semver": "^7.7.1",
72
77
  "winston": "^3.17.0",
73
78
  "winston-daily-rotate-file": "^5.0.0"
74
79
  },
@@ -81,13 +86,16 @@
81
86
  "@eslint/eslintrc": "^3.3.1",
82
87
  "@eslint/js": "^9.29.0",
83
88
  "@types/axios": "^0.14.0",
89
+ "@types/configstore": "^6.0.2",
84
90
  "@types/express": "4.17.13",
91
+ "@types/figlet": "^1.5.8",
85
92
  "@types/json-schema": "^7.0.15",
86
93
  "@types/lodash-es": "^4.17.12",
87
94
  "@types/node": "22.5.1",
88
95
  "@types/node-fetch": "2.5.12",
89
96
  "@types/prettier": "3.0.0",
90
97
  "@types/qs": "6.9.7",
98
+ "@types/semver": "^7.7.0",
91
99
  "@types/winston": "^2.4.4",
92
100
  "@typescript-eslint/eslint-plugin": "^8.34.1",
93
101
  "@typescript-eslint/parser": "^8.34.1",
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=sortByRequired.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sortByRequired.test.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/__tests__/sortByRequired.test.ts"],"names":[],"mappings":""}
@@ -1,108 +0,0 @@
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
- const node_assert_1 = __importDefault(require("node:assert"));
7
- const node_test_1 = require("node:test");
8
- const sortByRequired_1 = require("../sortByRequired");
9
- (0, node_test_1.describe)('sortByRequired', () => {
10
- (0, node_test_1.test)('@unit: should sort params', () => {
11
- const paramOptional = {
12
- in: 'query',
13
- prop: 'parameterOptionalStringWithNoDefault',
14
- export: 'generic',
15
- name: 'parameterOptionalStringWithNoDefault',
16
- alias: '',
17
- path: '',
18
- type: 'string',
19
- base: 'string',
20
- template: null,
21
- link: null,
22
- description: '3. This is a optional string with no default',
23
- isDefinition: false,
24
- isReadOnly: false,
25
- isRequired: false,
26
- isNullable: false,
27
- imports: [],
28
- enum: [],
29
- enums: [],
30
- properties: [],
31
- mediaType: null,
32
- };
33
- const paramOptionalWithDefault = {
34
- in: 'query',
35
- prop: 'parameterOptionalStringWithNoDefault',
36
- export: 'generic',
37
- name: 'parameterOptionalStringWithNoDefault',
38
- alias: '',
39
- path: '',
40
- type: 'string',
41
- base: 'string',
42
- template: null,
43
- link: null,
44
- description: '3. This is a optional string with no default',
45
- isDefinition: false,
46
- isReadOnly: false,
47
- isRequired: false,
48
- isNullable: false,
49
- imports: [],
50
- enum: [],
51
- enums: [],
52
- properties: [],
53
- mediaType: null,
54
- default: 'Hello World!',
55
- };
56
- const paramRequiredWithDefault = {
57
- in: 'query',
58
- prop: 'parameterStringWithDefault',
59
- export: 'generic',
60
- name: 'parameterStringWithDefault',
61
- alias: '',
62
- path: '',
63
- type: 'string',
64
- base: 'string',
65
- template: null,
66
- link: null,
67
- description: '2. This is a string with default',
68
- isDefinition: false,
69
- isReadOnly: false,
70
- isRequired: true,
71
- isNullable: false,
72
- imports: [],
73
- enum: [],
74
- enums: [],
75
- properties: [],
76
- mediaType: null,
77
- default: 'Hello World!',
78
- };
79
- const paramRequiredWithoutDefault = {
80
- in: 'query',
81
- prop: 'parameterStringWithoutDefault',
82
- export: 'generic',
83
- name: 'parameterStringWithoutDefault',
84
- alias: '',
85
- path: '',
86
- type: 'string',
87
- base: 'string',
88
- template: null,
89
- link: null,
90
- description: '1. This is a string without default',
91
- isDefinition: false,
92
- isReadOnly: false,
93
- isRequired: true,
94
- isNullable: false,
95
- imports: [],
96
- enum: [],
97
- enums: [],
98
- properties: [],
99
- mediaType: null,
100
- };
101
- node_assert_1.default.deepStrictEqual([paramOptionalWithDefault, paramOptional, paramRequiredWithDefault, paramRequiredWithoutDefault].sort(sortByRequired_1.sortByRequired), [
102
- paramRequiredWithoutDefault,
103
- paramRequiredWithDefault,
104
- paramOptionalWithDefault,
105
- paramOptional,
106
- ]);
107
- });
108
- });
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=writeClient.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"writeClient.test.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/__tests__/writeClient.test.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- import type { OperationParameter } from '../types/shared/OperationParameter.model';
2
- export declare function sortByRequired(a: OperationParameter, b: OperationParameter): number;
3
- //# sourceMappingURL=sortByRequired.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sortByRequired.d.ts","sourceRoot":"","sources":["../../../src/core/utils/sortByRequired.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAEnF,wBAAgB,cAAc,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAcnF"}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sortByRequired = sortByRequired;
4
- function sortByRequired(a, b) {
5
- if (!a.isRequired && b.isRequired) {
6
- return 1;
7
- }
8
- if (a.isRequired && !b.isRequired) {
9
- return -1;
10
- }
11
- if ((a.isRequired && a.default === undefined && b.default !== undefined) || (a.isRequired && a.default !== undefined && b.default === undefined)) {
12
- return -1;
13
- }
14
- if ((a.isRequired && a.default !== undefined && b.default === undefined) || (!a.isRequired && a.default === undefined && b.default !== undefined)) {
15
- return 1;
16
- }
17
- return 0;
18
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"writeClient.d.ts","sourceRoot":"","sources":["../../../src/core/utils/writeClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAG3D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAoCzD;;;;;;;;;;;;;;GAcG;AACH,UAAU,YAAY;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,WAAW;IACpB,OAAO,CAAC,OAAO,CAA+C;IAC9D,OAAO,CAAC,OAAO,CAAS;;IAUxB;;;;;;;;;;;;;;;OAeG;IACG,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA+DvD;;;OAGG;IACG,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAU3D,eAAe;IAuFrB,IAAW,MAAM,WAEhB;CACJ"}