@goast/typescript 0.5.3 → 0.6.0-beta.1

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 (97) hide show
  1. package/LICENSE +21 -21
  2. package/esm/src/file-builder.d.ts.map +1 -1
  3. package/esm/src/file-builder.js +2 -5
  4. package/esm/src/generators/models/model-generator.d.ts.map +1 -1
  5. package/esm/src/generators/models/model-generator.js +6 -2
  6. package/esm/src/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -1
  7. package/esm/src/generators/services/k6-clients/k6-client-generator.js +2 -1
  8. package/package.json +3 -3
  9. package/script/src/file-builder.d.ts.map +1 -1
  10. package/script/src/file-builder.js +1 -5
  11. package/script/src/generators/models/model-generator.d.ts.map +1 -1
  12. package/script/src/generators/models/model-generator.js +5 -1
  13. package/script/src/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -1
  14. package/script/src/generators/services/k6-clients/k6-client-generator.js +2 -1
  15. package/src/mod.ts +0 -7
  16. package/src/src/assets.ts +0 -9
  17. package/src/src/ast/_index.ts +0 -54
  18. package/src/src/ast/common.ts +0 -1
  19. package/src/src/ast/index.ts +0 -1
  20. package/src/src/ast/node.ts +0 -10
  21. package/src/src/ast/nodes/argument.ts +0 -40
  22. package/src/src/ast/nodes/array-type.ts +0 -49
  23. package/src/src/ast/nodes/arrow-function.ts +0 -91
  24. package/src/src/ast/nodes/call.ts +0 -55
  25. package/src/src/ast/nodes/class.ts +0 -133
  26. package/src/src/ast/nodes/constructor-parameter.ts +0 -70
  27. package/src/src/ast/nodes/constructor.ts +0 -77
  28. package/src/src/ast/nodes/decorator.ts +0 -76
  29. package/src/src/ast/nodes/doc-tag.ts +0 -291
  30. package/src/src/ast/nodes/doc.ts +0 -102
  31. package/src/src/ast/nodes/enum-value.ts +0 -72
  32. package/src/src/ast/nodes/enum.ts +0 -77
  33. package/src/src/ast/nodes/export.ts +0 -54
  34. package/src/src/ast/nodes/function-type.ts +0 -60
  35. package/src/src/ast/nodes/function.ts +0 -107
  36. package/src/src/ast/nodes/generic-parameter.ts +0 -71
  37. package/src/src/ast/nodes/indexer.ts +0 -60
  38. package/src/src/ast/nodes/interface.ts +0 -117
  39. package/src/src/ast/nodes/intersection-type.ts +0 -67
  40. package/src/src/ast/nodes/lookup-type.ts +0 -53
  41. package/src/src/ast/nodes/method.ts +0 -138
  42. package/src/src/ast/nodes/object-type.ts +0 -52
  43. package/src/src/ast/nodes/object.ts +0 -48
  44. package/src/src/ast/nodes/parameter.ts +0 -85
  45. package/src/src/ast/nodes/property-accessor.ts +0 -173
  46. package/src/src/ast/nodes/property.ts +0 -192
  47. package/src/src/ast/nodes/reference.ts +0 -194
  48. package/src/src/ast/nodes/string.ts +0 -49
  49. package/src/src/ast/nodes/tuple.ts +0 -53
  50. package/src/src/ast/nodes/type-alias.ts +0 -75
  51. package/src/src/ast/nodes/typeof.ts +0 -42
  52. package/src/src/ast/nodes/types.ts +0 -40
  53. package/src/src/ast/nodes/union-type.ts +0 -62
  54. package/src/src/ast/nodes/variable.ts +0 -73
  55. package/src/src/ast/references/angular.ts +0 -24
  56. package/src/src/ast/references/easy-network-stub.ts +0 -21
  57. package/src/src/ast/references/index.ts +0 -5
  58. package/src/src/ast/references/k6.ts +0 -8
  59. package/src/src/ast/references/rxjs.ts +0 -7
  60. package/src/src/ast/references/typescript.ts +0 -35
  61. package/src/src/ast/utils/get-type-script-builder-options.ts +0 -19
  62. package/src/src/ast/utils/to-ts-node.ts +0 -27
  63. package/src/src/ast/utils/write-ts-generic-parameters.ts +0 -25
  64. package/src/src/ast/utils/write-ts-members.ts +0 -28
  65. package/src/src/ast/utils/write-ts-nodes.ts +0 -35
  66. package/src/src/ast/utils/write-ts-parameters.ts +0 -25
  67. package/src/src/common-results.ts +0 -26
  68. package/src/src/config.ts +0 -89
  69. package/src/src/file-builder.ts +0 -136
  70. package/src/src/generators/file-generator.ts +0 -15
  71. package/src/src/generators/index.ts +0 -6
  72. package/src/src/generators/models/index.ts +0 -3
  73. package/src/src/generators/models/model-generator.ts +0 -469
  74. package/src/src/generators/models/models-generator.ts +0 -108
  75. package/src/src/generators/models/models.ts +0 -121
  76. package/src/src/generators/services/angular-services/angular-service-generator.ts +0 -406
  77. package/src/src/generators/services/angular-services/angular-services-generator.ts +0 -295
  78. package/src/src/generators/services/angular-services/index.ts +0 -3
  79. package/src/src/generators/services/angular-services/models.ts +0 -277
  80. package/src/src/generators/services/angular-services/refs.ts +0 -54
  81. package/src/src/generators/services/easy-network-stub/easy-network-stub-generator.ts +0 -242
  82. package/src/src/generators/services/easy-network-stub/easy-network-stubs-generator.ts +0 -211
  83. package/src/src/generators/services/easy-network-stub/index.ts +0 -3
  84. package/src/src/generators/services/easy-network-stub/models.ts +0 -124
  85. package/src/src/generators/services/easy-network-stub/refs.ts +0 -45
  86. package/src/src/generators/services/fetch-clients/fetch-client-generator.ts +0 -275
  87. package/src/src/generators/services/fetch-clients/fetch-clients-generator.ts +0 -163
  88. package/src/src/generators/services/fetch-clients/index.ts +0 -3
  89. package/src/src/generators/services/fetch-clients/models.ts +0 -130
  90. package/src/src/generators/services/fetch-clients/refs.ts +0 -21
  91. package/src/src/generators/services/k6-clients/index.ts +0 -3
  92. package/src/src/generators/services/k6-clients/k6-client-generator.ts +0 -465
  93. package/src/src/generators/services/k6-clients/k6-clients-generator.ts +0 -171
  94. package/src/src/generators/services/k6-clients/models.ts +0 -247
  95. package/src/src/generators/services/k6-clients/refs.ts +0 -16
  96. package/src/src/import-collection.ts +0 -236
  97. package/src/src/utils.ts +0 -72
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2021 Marc Schmidt
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2021 Marc Schmidt
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -1 +1 @@
1
- {"version":3,"file":"file-builder.d.ts","sourceRoot":"","sources":["../../src/src/file-builder.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAiB,KAAK,QAAQ,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE9G,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAoC,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,iBAAiB,CAAC,kBAAkB,IAAI,MAAM,CAAC,qBAAqB,CAAC,GAAG,kBAAkB,CAAC;AACvG,MAAM,MAAM,qBAAqB,CAAC,QAAQ,SAAS,qBAAqB,EAAE,kBAAkB,IAAI,WAAW,CACzG,QAAQ,EACR,iBAAiB,CAAC,kBAAkB,CAAC,CACtC,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,QAAQ,SAAS,qBAAqB,GAAG,qBAAqB,EACpG,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,WAAW,CAAC,QAAQ,CAAC,CAEhC;AAED,qBAAa,qBAAqB,CAAC,kBAAkB,GAAG,KAAK,CAC3D,SAAQ,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAC5D,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,SAAgB,OAAO,EAAE,sBAAsB,CAAC;IAEhD,IAAoB,OAAO,IAAI,yBAAyB,CAEvD;gBAEW,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,yBAAyB;IAU3D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAK9F,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAKzE,KAAK,IAAI,IAAI;IAKb,QAAQ,CAAC,UAAU,GAAE,OAAc,GAAG,MAAM;cAuBzC,YAAY,CAAC,KAAK,EAAE,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAO/E,gBAAgB,CAAC,IAAI,EAAE,8BAA8B,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAQ/F,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;WAO7B,QAAQ,CAAC,OAAO,EAAE;QAC9B,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,yBAAyB,CAAC;QACpC,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;KACrD,GAAG,IAAI;WAIM,WAAW,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,yBAAyB,CAAC;QACpC,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;KACrD;CASF"}
1
+ {"version":3,"file":"file-builder.d.ts","sourceRoot":"","sources":["../../src/src/file-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,WAAW,EAEhB,KAAK,QAAQ,EACb,aAAa,EAEd,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAoC,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,iBAAiB,CAAC,kBAAkB,IAAI,MAAM,CAAC,qBAAqB,CAAC,GAAG,kBAAkB,CAAC;AACvG,MAAM,MAAM,qBAAqB,CAAC,QAAQ,SAAS,qBAAqB,EAAE,kBAAkB,IAAI,WAAW,CACzG,QAAQ,EACR,iBAAiB,CAAC,kBAAkB,CAAC,CACtC,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,QAAQ,SAAS,qBAAqB,GAAG,qBAAqB,EACpG,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,WAAW,CAAC,QAAQ,CAAC,CAEhC;AAED,qBAAa,qBAAqB,CAAC,kBAAkB,GAAG,KAAK,CAC3D,SAAQ,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAC5D,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,SAAgB,OAAO,EAAE,sBAAsB,CAAC;IAEhD,IAAoB,OAAO,IAAI,yBAAyB,CAEvD;gBAEW,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,yBAAyB;IAU3D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAK9F,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAKzE,KAAK,IAAI,IAAI;IAKb,QAAQ,CAAC,UAAU,GAAE,OAAc,GAAG,MAAM;cAuBzC,YAAY,CAAC,KAAK,EAAE,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAO/E,gBAAgB,CAAC,IAAI,EAAE,8BAA8B,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAQ/F,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;WAM7B,QAAQ,CAAC,OAAO,EAAE;QAC9B,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,yBAAyB,CAAC;QACpC,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;KACrD,GAAG,IAAI;WAIM,WAAW,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,yBAAyB,CAAC;QACpC,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;KACrD;CASF"}
@@ -1,6 +1,4 @@
1
- import { dirname } from 'node:path';
2
- import fs from 'fs-extra';
3
- import { isAppendValue, SourceBuilder } from '@goast/core';
1
+ import { isAppendValue, SourceBuilder, writeGeneratedFile, } from '@goast/core';
4
2
  import { TsNode } from './ast/node.js';
5
3
  import { defaultTypeScriptGeneratorConfig } from './config.js';
6
4
  import { ImportExportCollection, } from './import-collection.js';
@@ -80,8 +78,7 @@ export class TypeScriptFileBuilder extends SourceBuilder {
80
78
  filePath = this.filePath;
81
79
  if (!filePath)
82
80
  throw new Error('File path is required');
83
- fs.ensureDirSync(dirname(filePath));
84
- fs.writeFileSync(filePath, this.toString());
81
+ writeGeneratedFile(this.options, filePath, this.toString());
85
82
  }
86
83
  static generate(options) {
87
84
  TypeScriptFileBuilder.tryGenerate(options);
@@ -1 +1 @@
1
- {"version":3,"file":"model-generator.d.ts","sourceRoot":"","sources":["../../../../src/src/generators/models/model-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-generator.d.ts","sourceRoot":"","sources":["../../../../src/src/generators/models/model-generator.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { resolve } from 'node:path';
2
- import { appendValueGroup, getSchemaReference, notNullish, resolveAnyOfAndAllOf, toCasing, } from '@goast/core';
2
+ import { appendValueGroup, DEFAULT_IGNORED_SCHEMA_PROPERTIES, getSchemaReference, notNullish, resolveAnyOfAndAllOf, toCasing, } from '@goast/core';
3
3
  import { ts } from '../../ast/index.js';
4
4
  import { TypeScriptFileBuilder } from '../../file-builder.js';
5
5
  import { TypeScriptFileGenerator } from '../file-generator.js';
@@ -176,7 +176,7 @@ export class DefaultTypeScriptModelGenerator extends TypeScriptFileGenerator {
176
176
  getType(ctx, schema, options) {
177
177
  if (!schema)
178
178
  return this.getAnyType(ctx);
179
- schema = getSchemaReference(schema, ['description']);
179
+ schema = getSchemaReference(schema, DEFAULT_IGNORED_SCHEMA_PROPERTIES);
180
180
  if ((options === null || options === void 0 ? void 0 : options.useBaseType) && ctx.schema.inheritedSchemas.some((x) => x.id === schema.id)) {
181
181
  return ts.reference(this.getBaseTypeName(ctx, schema), this.getFilePath(ctx, schema), {
182
182
  importType: 'type-import',
@@ -331,6 +331,10 @@ export class DefaultTypeScriptModelGenerator extends TypeScriptFileGenerator {
331
331
  if (!ctx.data.schemas.some((x) => x.id === schema.id)) {
332
332
  return false;
333
333
  }
334
+ // Check if "real" schema
335
+ if (getSchemaReference(ctx.schema, DEFAULT_IGNORED_SCHEMA_PROPERTIES) !== ctx.schema) {
336
+ return false;
337
+ }
334
338
  // For all other types, check if the user has enabled inline unnamed schemas
335
339
  return !ctx.config.inlineUnnamedSchemas;
336
340
  }
@@ -1 +1 @@
1
- {"version":3,"file":"k6-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/k6-clients/k6-client-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"k6-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/k6-clients/k6-client-generator.ts"],"names":[],"mappings":"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"}
@@ -139,7 +139,8 @@ export class DefaultTypeScriptK6ClientGenerator extends TypeScriptFileGenerator
139
139
  const importOptions = ctx.config.language === 'javascript' ? { type: 'js-doc' } : {};
140
140
  const description = `Parameters for operation ${this.getEndpointMethodName(ctx, endpoint)}`;
141
141
  const typeName = this.getEndpointParamsTypeName(ctx, endpoint);
142
- const properties = endpoint.parameters.map((parameter) => {
142
+ const properties = endpoint.parameters
143
+ .map((parameter) => {
143
144
  const schema = parameter.schema;
144
145
  return {
145
146
  name: toCasing(parameter.name, ctx.config.propertyNameCasing),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@goast/typescript",
3
- "version": "0.5.3",
3
+ "version": "0.6.0-beta.1",
4
4
  "description": "Provides gOAst generators for generating TypeScript code from OpenAPI specifications.",
5
5
  "author": {
6
6
  "name": "Marc Schmidt (MaSch0212)",
@@ -24,8 +24,8 @@
24
24
  },
25
25
  "dependencies": {
26
26
  "tslib": "^2.6.2",
27
- "fs-extra": "^11.2.0",
28
- "@goast/core": "0.4.2"
27
+ "fs-extra": "^11.3.3",
28
+ "@goast/core": "0.5.0-beta.1"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/node": "^20.9.0",
@@ -1 +1 @@
1
- {"version":3,"file":"file-builder.d.ts","sourceRoot":"","sources":["../../src/src/file-builder.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAiB,KAAK,QAAQ,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE9G,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAoC,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,iBAAiB,CAAC,kBAAkB,IAAI,MAAM,CAAC,qBAAqB,CAAC,GAAG,kBAAkB,CAAC;AACvG,MAAM,MAAM,qBAAqB,CAAC,QAAQ,SAAS,qBAAqB,EAAE,kBAAkB,IAAI,WAAW,CACzG,QAAQ,EACR,iBAAiB,CAAC,kBAAkB,CAAC,CACtC,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,QAAQ,SAAS,qBAAqB,GAAG,qBAAqB,EACpG,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,WAAW,CAAC,QAAQ,CAAC,CAEhC;AAED,qBAAa,qBAAqB,CAAC,kBAAkB,GAAG,KAAK,CAC3D,SAAQ,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAC5D,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,SAAgB,OAAO,EAAE,sBAAsB,CAAC;IAEhD,IAAoB,OAAO,IAAI,yBAAyB,CAEvD;gBAEW,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,yBAAyB;IAU3D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAK9F,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAKzE,KAAK,IAAI,IAAI;IAKb,QAAQ,CAAC,UAAU,GAAE,OAAc,GAAG,MAAM;cAuBzC,YAAY,CAAC,KAAK,EAAE,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAO/E,gBAAgB,CAAC,IAAI,EAAE,8BAA8B,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAQ/F,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;WAO7B,QAAQ,CAAC,OAAO,EAAE;QAC9B,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,yBAAyB,CAAC;QACpC,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;KACrD,GAAG,IAAI;WAIM,WAAW,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,yBAAyB,CAAC;QACpC,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;KACrD;CASF"}
1
+ {"version":3,"file":"file-builder.d.ts","sourceRoot":"","sources":["../../src/src/file-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,WAAW,EAEhB,KAAK,QAAQ,EACb,aAAa,EAEd,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAoC,KAAK,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,iBAAiB,CAAC,kBAAkB,IAAI,MAAM,CAAC,qBAAqB,CAAC,GAAG,kBAAkB,CAAC;AACvG,MAAM,MAAM,qBAAqB,CAAC,QAAQ,SAAS,qBAAqB,EAAE,kBAAkB,IAAI,WAAW,CACzG,QAAQ,EACR,iBAAiB,CAAC,kBAAkB,CAAC,CACtC,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,QAAQ,SAAS,qBAAqB,GAAG,qBAAqB,EACpG,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,WAAW,CAAC,QAAQ,CAAC,CAEhC;AAED,qBAAa,qBAAqB,CAAC,kBAAkB,GAAG,KAAK,CAC3D,SAAQ,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAC5D,SAAgB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,SAAgB,OAAO,EAAE,sBAAsB,CAAC;IAEhD,IAAoB,OAAO,IAAI,yBAAyB,CAEvD;gBAEW,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,yBAAyB;IAU3D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAK9F,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAKzE,KAAK,IAAI,IAAI;IAKb,QAAQ,CAAC,UAAU,GAAE,OAAc,GAAG,MAAM;cAuBzC,YAAY,CAAC,KAAK,EAAE,qBAAqB,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAO/E,gBAAgB,CAAC,IAAI,EAAE,8BAA8B,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAQ/F,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;WAM7B,QAAQ,CAAC,OAAO,EAAE;QAC9B,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,yBAAyB,CAAC;QACpC,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;KACrD,GAAG,IAAI;WAIM,WAAW,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,OAAO,EACP,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,yBAAyB,CAAC;QACpC,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;KACrD;CASF"}
@@ -2,9 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TypeScriptFileBuilder = void 0;
4
4
  exports.isTypeScriptAppendValue = isTypeScriptAppendValue;
5
- const tslib_1 = require("tslib");
6
- const node_path_1 = require("node:path");
7
- const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
8
5
  const core_1 = require("@goast/core");
9
6
  const node_js_1 = require("./ast/node.js");
10
7
  const config_js_1 = require("./config.js");
@@ -85,8 +82,7 @@ class TypeScriptFileBuilder extends core_1.SourceBuilder {
85
82
  filePath = this.filePath;
86
83
  if (!filePath)
87
84
  throw new Error('File path is required');
88
- fs_extra_1.default.ensureDirSync((0, node_path_1.dirname)(filePath));
89
- fs_extra_1.default.writeFileSync(filePath, this.toString());
85
+ (0, core_1.writeGeneratedFile)(this.options, filePath, this.toString());
90
86
  }
91
87
  static generate(options) {
92
88
  TypeScriptFileBuilder.tryGenerate(options);
@@ -1 +1 @@
1
- {"version":3,"file":"model-generator.d.ts","sourceRoot":"","sources":["../../../../src/src/generators/models/model-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-generator.d.ts","sourceRoot":"","sources":["../../../../src/src/generators/models/model-generator.ts"],"names":[],"mappings":"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"}
@@ -179,7 +179,7 @@ class DefaultTypeScriptModelGenerator extends file_generator_js_1.TypeScriptFile
179
179
  getType(ctx, schema, options) {
180
180
  if (!schema)
181
181
  return this.getAnyType(ctx);
182
- schema = (0, core_1.getSchemaReference)(schema, ['description']);
182
+ schema = (0, core_1.getSchemaReference)(schema, core_1.DEFAULT_IGNORED_SCHEMA_PROPERTIES);
183
183
  if ((options === null || options === void 0 ? void 0 : options.useBaseType) && ctx.schema.inheritedSchemas.some((x) => x.id === schema.id)) {
184
184
  return index_js_1.ts.reference(this.getBaseTypeName(ctx, schema), this.getFilePath(ctx, schema), {
185
185
  importType: 'type-import',
@@ -334,6 +334,10 @@ class DefaultTypeScriptModelGenerator extends file_generator_js_1.TypeScriptFile
334
334
  if (!ctx.data.schemas.some((x) => x.id === schema.id)) {
335
335
  return false;
336
336
  }
337
+ // Check if "real" schema
338
+ if ((0, core_1.getSchemaReference)(ctx.schema, core_1.DEFAULT_IGNORED_SCHEMA_PROPERTIES) !== ctx.schema) {
339
+ return false;
340
+ }
337
341
  // For all other types, check if the user has enabled inline unnamed schemas
338
342
  return !ctx.config.inlineUnnamedSchemas;
339
343
  }
@@ -1 +1 @@
1
- {"version":3,"file":"k6-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/k6-clients/k6-client-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EAGrB,KAAK,YAAY,EAElB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,kCAAkC,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AAEzG,KAAK,OAAO,GAAG,kCAAkC,CAAC;AAClD,KAAK,MAAM,GAAG,iCAAiC,CAAC;AAChD,KAAK,OAAO,GAAG,qBAAqB,CAAC;AAErC,MAAM,WAAW,2BAA2B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAC1E,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;CACnD;AAED,qBAAa,kCAAmC,SAAQ,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAC7F,YAAW,2BAA2B;IACtB,QAAQ,CAAC,GAAG,EAAE,kCAAkC,GAAG,YAAY,CAAC,iCAAiC,CAAC;IAqBlH,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC;IAetF,SAAS,CAAC,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAqErG,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC;IAuBjH,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAqBvE,SAAS,CAAC,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IA2D7G,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IA2DnD,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IA4FpF,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAiBhE,SAAS,CAAC,0BAA0B,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,SAAS;IAOnG,SAAS,CAAC,aAAa,CACrB,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,SAAS,GAAG,SAAS,EAC7B,OAAO,CAAC,EAAE,uBAAuB,GAAG;QAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAAE,GAClE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;IAMnB,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI5C,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAI3E,SAAS,CAAC,yBAAyB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAIhF,SAAS,CAAC,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAIlF,SAAS,CAAC,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAI5E,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAU3C,SAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQxD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,OAAO;CAG3E"}
1
+ {"version":3,"file":"k6-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/k6-clients/k6-client-generator.ts"],"names":[],"mappings":"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"}
@@ -142,7 +142,8 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_js_1.TypeScriptF
142
142
  const importOptions = ctx.config.language === 'javascript' ? { type: 'js-doc' } : {};
143
143
  const description = `Parameters for operation ${this.getEndpointMethodName(ctx, endpoint)}`;
144
144
  const typeName = this.getEndpointParamsTypeName(ctx, endpoint);
145
- const properties = endpoint.parameters.map((parameter) => {
145
+ const properties = endpoint.parameters
146
+ .map((parameter) => {
146
147
  const schema = parameter.schema;
147
148
  return {
148
149
  name: (0, core_1.toCasing)(parameter.name, ctx.config.propertyNameCasing),
package/src/mod.ts DELETED
@@ -1,7 +0,0 @@
1
- export * from './src/ast/index.js';
2
- export * from './src/common-results.js';
3
- export * from './src/config.js';
4
- export * from './src/file-builder.js';
5
- export * from './src/generators/index.js';
6
- export * from './src/import-collection.js';
7
- export * from './src/utils.js';
package/src/src/assets.ts DELETED
@@ -1,9 +0,0 @@
1
- import { AssetManager } from '@goast/core';
2
- import { pathToFileURL, URL } from 'node:url';
3
-
4
- declare const __filename: string | undefined;
5
- const scriptUrl = typeof __filename === 'undefined' ? import.meta.url : pathToFileURL(__filename);
6
-
7
- const manager = new AssetManager(new URL('../assets/', scriptUrl));
8
- export const getAssetFileContent = manager.getAssetFileContent.bind(manager);
9
- export const copyAssetFile = manager.copyAssetFile.bind(manager);
@@ -1,54 +0,0 @@
1
- export { type TsAccessModifier as AccessModifier } from './common.js';
2
- export { TsNode as Node } from './node.js';
3
- export { TsArgument as Argument, tsArgument as argument } from './nodes/argument.js';
4
- export { TsArrayType as ArrayType, tsArrayType as arrayType } from './nodes/array-type.js';
5
- export { TsArrowFunction as ArrowFunction, tsArrowFunction as arrowFunction } from './nodes/arrow-function.js';
6
- export { TsCall as Call, tsCall as call } from './nodes/call.js';
7
- export { TsClass as Class, tsClass as class } from './nodes/class.js';
8
- export {
9
- TsConstructorParameter as ConstructorParameter,
10
- tsConstructorParameter as constructorParameter,
11
- } from './nodes/constructor-parameter.js';
12
- export { TsConstructor as Constructor, tsConstructor as constructor } from './nodes/constructor.js';
13
- export { TsDecorator as Decorator, tsDecorator as decorator } from './nodes/decorator.js';
14
- export { TsDocTag as DocTag, tsDocTag as docTag } from './nodes/doc-tag.js';
15
- export { TsDoc as Doc, tsDoc as doc } from './nodes/doc.js';
16
- export { TsEnumValue as EnumValue, tsEnumValue as enumValue } from './nodes/enum-value.js';
17
- export { TsEnum as Enum, tsEnum as enum } from './nodes/enum.js';
18
- export { TsExport as Export, tsExport as export } from './nodes/export.js';
19
- export { TsFunctionType as FunctionType, tsFunctionType as functionType } from './nodes/function-type.js';
20
- export { TsFunction as Function, tsFunction as function } from './nodes/function.js';
21
- export {
22
- TsGenericParameter as GenericParameter,
23
- tsGenericParameter as genericParameter,
24
- } from './nodes/generic-parameter.js';
25
- export { TsIndexer as Indexer, tsIndexer as indexer } from './nodes/indexer.js';
26
- export { TsInterface as Interface, tsInterface as interface } from './nodes/interface.js';
27
- export {
28
- TsIntersectionType as IntersectionType,
29
- tsIntersectionType as intersectionType,
30
- } from './nodes/intersection-type.js';
31
- export { TsLookupType as LookupType, tsLookupType as lookupType } from './nodes/lookup-type.js';
32
- export { TsMethod as Method, tsMethod as method } from './nodes/method.js';
33
- export { TsObjectType as ObjectType, tsObjectType as objectType } from './nodes/object-type.js';
34
- export { TsObject as Object, tsObject as object } from './nodes/object.js';
35
- export { TsParameter as Parameter, tsParameter as parameter } from './nodes/parameter.js';
36
- export { TsProperty as Property, tsProperty as property } from './nodes/property.js';
37
- export {
38
- type TsGenericModuleReferenceFactory as GenericModuleReferenceFactory,
39
- type TsGenericReferenceFactory as GenericReferenceFactory,
40
- type TsModuleReferenceFactory as ModuleReferenceFactory,
41
- TsReference as Reference,
42
- tsReference as reference,
43
- type TsReferenceFactory as ReferenceFactory,
44
- } from './nodes/reference.js';
45
- export { TsString as String, tsString as string } from './nodes/string.js';
46
- export { TsTuple as Tuple, tsTuple as tuple } from './nodes/tuple.js';
47
- export { TsTypeAlias as TypeAlias, tsTypeAlias as typeAlias } from './nodes/type-alias.js';
48
- export { TsTypeof as Typeof, tsTypeof as typeof } from './nodes/typeof.js';
49
- export { type TsType as Type, type TsValue as Value } from './nodes/types.js';
50
- export { TsUnionType as UnionType, tsUnionType as unionType } from './nodes/union-type.js';
51
- export { TsVariable as Variable, tsVariable as variable } from './nodes/variable.js';
52
- export * as refs from './references/index.js';
53
- export { getTypeScriptBuilderOptions as getBuilderOptions } from './utils/get-type-script-builder-options.js';
54
- export { toTsNode as toNode } from './utils/to-ts-node.js';
@@ -1 +0,0 @@
1
- export type TsAccessModifier = 'public' | 'protected' | 'private';
@@ -1 +0,0 @@
1
- export * as ts from './_index.js';
@@ -1,10 +0,0 @@
1
- import { AstNode, type AstNodeOptions, type SourceBuilder } from '@goast/core';
2
-
3
- export abstract class TsNode<TBuilder extends SourceBuilder, TInjects extends string = never> extends AstNode<
4
- TBuilder,
5
- TInjects
6
- > {
7
- constructor(options: AstNodeOptions<typeof AstNode<TBuilder, TInjects>>) {
8
- super(options);
9
- }
10
- }
@@ -1,40 +0,0 @@
1
- import type { AstNodeOptions, Prettify, SourceBuilder } from '@goast/core';
2
-
3
- import { TsNode } from '../node.js';
4
- import { writeTsNode } from '../utils/write-ts-nodes.js';
5
- import { writeTsParameters } from '../utils/write-ts-parameters.js';
6
- import type { TsValue } from './types.js';
7
-
8
- type Injects = never;
9
-
10
- type Options<TBuilder extends SourceBuilder, TInjects extends string = never> = AstNodeOptions<
11
- typeof TsNode<TBuilder, TInjects | Injects>,
12
- {
13
- value: TsValue<TBuilder>;
14
- }
15
- >;
16
-
17
- export class TsArgument<TBuilder extends SourceBuilder, TInjects extends string = never> extends TsNode<
18
- TBuilder,
19
- TInjects | Injects
20
- > {
21
- public value: TsValue<TBuilder>;
22
-
23
- constructor(options: Options<TBuilder, TInjects>) {
24
- super(options);
25
- this.value = options.value;
26
- }
27
-
28
- protected override onWrite(builder: TBuilder): void {
29
- writeTsNode(builder, this.value);
30
- }
31
- }
32
-
33
- const createArgument = <TBuilder extends SourceBuilder>(
34
- value: Options<TBuilder>['value'],
35
- options?: Prettify<Omit<Options<TBuilder>, 'value'>>,
36
- ): TsArgument<TBuilder> => new TsArgument<TBuilder>({ ...options, value });
37
-
38
- export const tsArgument: typeof createArgument & { write: typeof writeTsParameters } = Object.assign(createArgument, {
39
- write: writeTsParameters,
40
- });
@@ -1,49 +0,0 @@
1
- import type { AstNodeOptions, Nullable, Prettify, SourceBuilder } from '@goast/core';
2
-
3
- import { TsNode } from '../node.js';
4
- import { writeTsNode, writeTsNodes } from '../utils/write-ts-nodes.js';
5
- import type { TsType } from './types.js';
6
-
7
- type Injects = 'type';
8
-
9
- type Options<TBuilder extends SourceBuilder, TInjects extends string = never> = AstNodeOptions<
10
- typeof TsNode<TBuilder, TInjects | Injects>,
11
- {
12
- readonly?: Nullable<boolean>;
13
- type: TsType<TBuilder>;
14
- }
15
- >;
16
-
17
- export class TsArrayType<TBuilder extends SourceBuilder, TInjects extends string = never> extends TsNode<
18
- TBuilder,
19
- TInjects | Injects
20
- > {
21
- public readonly: boolean;
22
- public type: TsType<TBuilder>;
23
-
24
- constructor(options: Options<TBuilder, TInjects>) {
25
- super(options);
26
- this.readonly = options.readonly ?? false;
27
- this.type = options.type;
28
- }
29
-
30
- protected override onWrite(builder: TBuilder): void {
31
- if (this.readonly) builder.append('readonly ');
32
-
33
- builder
34
- .append(this.inject.beforeType)
35
- .parenthesize('()', (b) => writeTsNode(b, this.type))
36
- .append(this.inject.afterType);
37
-
38
- builder.append('[]');
39
- }
40
- }
41
-
42
- const createArrayType = <TBuilder extends SourceBuilder>(
43
- type: Options<TBuilder>['type'],
44
- options?: Prettify<Omit<Options<TBuilder>, 'type'>>,
45
- ): TsArrayType<TBuilder> => new TsArrayType<TBuilder>({ ...options, type });
46
-
47
- export const tsArrayType: typeof createArrayType & { write: typeof writeTsNodes } = Object.assign(createArrayType, {
48
- write: writeTsNodes,
49
- });
@@ -1,91 +0,0 @@
1
- import {
2
- type AppendValue,
3
- type AstNodeOptions,
4
- type BasicAppendValue,
5
- notNullish,
6
- type Nullable,
7
- type SourceBuilder,
8
- } from '@goast/core';
9
-
10
- import { TsNode } from '../node.js';
11
- import { writeTsNode, writeTsNodes } from '../utils/write-ts-nodes.js';
12
- import { type TsGenericParameter, tsGenericParameter } from './generic-parameter.js';
13
- import { type TsParameter, tsParameter } from './parameter.js';
14
- import type { TsType } from './types.js';
15
-
16
- type Injects = 'generics' | 'params' | 'returnType' | 'body';
17
-
18
- type Options<TBuilder extends SourceBuilder, TInjects extends string = never> = AstNodeOptions<
19
- typeof TsNode<TBuilder, TInjects | Injects>,
20
- {
21
- async?: Nullable<boolean>;
22
- generics?: Nullable<Nullable<TsGenericParameter<TBuilder> | BasicAppendValue<TBuilder>>[]>;
23
- parameters?: Nullable<Nullable<TsParameter<TBuilder> | BasicAppendValue<TBuilder>>[]>;
24
- returnType?: Nullable<TsType<TBuilder>>;
25
- singleExpression?: Nullable<boolean>;
26
- body?: Nullable<AppendValue<TBuilder>>;
27
- }
28
- >;
29
-
30
- export class TsArrowFunction<TBuilder extends SourceBuilder, TInjects extends string = never> extends TsNode<
31
- TBuilder,
32
- TInjects | Injects
33
- > {
34
- public async: boolean;
35
- public generics: (TsGenericParameter<TBuilder> | BasicAppendValue<TBuilder>)[];
36
- public parameters: (TsParameter<TBuilder> | BasicAppendValue<TBuilder>)[];
37
- public returnType: TsType<TBuilder> | null;
38
- public singleExpression: boolean;
39
- public body: AppendValue<TBuilder> | null;
40
-
41
- constructor(options: Options<TBuilder, TInjects>) {
42
- super(options);
43
- this.async = options.async ?? false;
44
- this.generics = options.generics?.filter(notNullish) ?? [];
45
- this.parameters = options.parameters?.filter(notNullish) ?? [];
46
- this.returnType = options.returnType ?? null;
47
- this.singleExpression = options.singleExpression ?? false;
48
- this.body = options.body ?? null;
49
- }
50
-
51
- protected override onWrite(builder: TBuilder): void {
52
- if (this.async) {
53
- builder.append('async ');
54
- }
55
-
56
- builder.append(this.inject.beforeGenerics);
57
- tsGenericParameter.write(builder, this.generics);
58
- builder.append(this.inject.afterGenerics);
59
-
60
- builder.append(this.inject.beforeParams);
61
- tsParameter.write(builder, this.parameters);
62
- builder.append(this.inject.afterParams);
63
-
64
- if (this.returnType) {
65
- builder.append(': ');
66
- builder.append(this.inject.beforeReturnType);
67
- writeTsNode(builder, this.returnType);
68
- builder.append(this.inject.afterReturnType);
69
- }
70
-
71
- builder.append(' => ');
72
-
73
- builder.append(this.inject.beforeBody);
74
- if (this.singleExpression && this.body) {
75
- builder.append(this.body);
76
- } else {
77
- builder.parenthesize('{}', this.body, { multiline: !!this.body });
78
- }
79
- builder.append(this.inject.afterBody);
80
- }
81
- }
82
-
83
- const createArrowFunction = <TBuilder extends SourceBuilder>(options?: Options<TBuilder>): TsArrowFunction<TBuilder> =>
84
- new TsArrowFunction<TBuilder>(options ?? {});
85
-
86
- export const tsArrowFunction: typeof createArrowFunction & { write: typeof writeTsNodes } = Object.assign(
87
- createArrowFunction,
88
- {
89
- write: writeTsNodes,
90
- },
91
- );
@@ -1,55 +0,0 @@
1
- import {
2
- type ArrayItem,
3
- type AstNodeOptions,
4
- notNullish,
5
- type Nullable,
6
- type Prettify,
7
- type SourceBuilder,
8
- } from '@goast/core';
9
-
10
- import { TsNode } from '../node.js';
11
- import { writeTsNodes } from '../utils/write-ts-nodes.js';
12
- import { type TsArgument, tsArgument } from './argument.js';
13
- import type { TsType, TsValue } from './types.js';
14
-
15
- type Injects = never;
16
-
17
- type Options<TBuilder extends SourceBuilder, TInjects extends string = never> = AstNodeOptions<
18
- typeof TsNode<TBuilder, TInjects | Injects>,
19
- {
20
- path: Nullable<TsType<TBuilder> | TsValue<TBuilder>>[];
21
- arguments?: Nullable<Nullable<TsArgument<TBuilder> | TsValue<TBuilder>>[]>;
22
- }
23
- >;
24
-
25
- export class TsCall<TBuilder extends SourceBuilder, TInjects extends string = never> extends TsNode<
26
- TBuilder,
27
- TInjects | Injects
28
- > {
29
- public path: (TsType<TBuilder> | TsValue<TBuilder>)[];
30
- public arguments: (TsArgument<TBuilder> | TsValue<TBuilder>)[] | null;
31
-
32
- constructor(options: Options<TBuilder, TInjects>) {
33
- super(options);
34
- this.path = options.path.filter(notNullish);
35
- this.arguments = options.arguments?.filter(notNullish) ?? null;
36
- }
37
-
38
- protected override onWrite(builder: TBuilder): void {
39
- writeTsNodes(builder, this.path, { separator: '.' });
40
-
41
- if (this.arguments) {
42
- tsArgument.write(builder, this.arguments);
43
- }
44
- }
45
- }
46
-
47
- const createCall = <TBuilder extends SourceBuilder>(
48
- path: Options<TBuilder>['path'] | ArrayItem<Options<TBuilder>['path']>,
49
- args?: Options<TBuilder>['arguments'],
50
- options?: Prettify<Omit<Options<TBuilder>, 'path' | 'arguments'>>,
51
- ): TsCall<TBuilder> => new TsCall<TBuilder>({ ...options, path: Array.isArray(path) ? path : [path], arguments: args });
52
-
53
- export const tsCall: typeof createCall & { write: typeof writeTsNodes } = Object.assign(createCall, {
54
- write: writeTsNodes,
55
- });