@rxap/workspace-open-api 16.0.2-dev.1 → 16.0.2-dev.3

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,16 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [16.0.2-dev.3](https://gitlab.com/rxap/packages/compare/@rxap/workspace-open-api@16.0.2-dev.2...@rxap/workspace-open-api@16.0.2-dev.3) (2024-04-09)
7
+
8
+ **Note:** Version bump only for package @rxap/workspace-open-api
9
+
10
+ ## [16.0.2-dev.2](https://gitlab.com/rxap/packages/compare/@rxap/workspace-open-api@16.0.2-dev.1...@rxap/workspace-open-api@16.0.2-dev.2) (2024-03-26)
11
+
12
+ ### Bug Fixes
13
+
14
+ - reduce the code duplication when generating the open api client sdk files ([1ea4ac1](https://gitlab.com/rxap/packages/commit/1ea4ac1beb38ddf9d404c72698d1a582bb8d9837)), closes [#36](https://gitlab.com/rxap/packages/issues/36)
15
+
6
16
  ## [16.0.2-dev.1](https://gitlab.com/rxap/packages/compare/@rxap/workspace-open-api@16.0.2-dev.0...@rxap/workspace-open-api@16.0.2-dev.1) (2024-03-11)
7
17
 
8
18
  **Note:** Version bump only for package @rxap/workspace-open-api
package/README.md CHANGED
@@ -17,5 +17,5 @@ yarn add @rxap/workspace-open-api
17
17
  ```
18
18
  **Install peer dependencies:**
19
19
  ```bash
20
- yarn add @angular-devkit/core@^16.1.4 @rxap/json-schema-to-typescript@^16.0.1-dev.0 @rxap/utilities@^16.1.0-dev.7 @rxap/workspace-utilities@^16.1.0-dev.0 openapi-types@10.0.0 ts-morph@^18.0.0 tslib@2.6.2
20
+ yarn add @angular-devkit/core@^16.2.13 @rxap/json-schema-to-typescript@^16.0.1-dev.5 @rxap/utilities@^16.1.0-dev.8 @rxap/workspace-utilities@^16.1.0-dev.9 openapi-types@10.0.0 ts-morph@^18.0.0 tslib@2.6.2
21
21
  ```
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
- "version": "16.0.2-dev.1",
2
+ "version": "16.0.2-dev.3",
3
3
  "name": "@rxap/workspace-open-api",
4
4
  "license": "GPL-3.0-or-later",
5
5
  "dependencies": {
6
6
  "@apidevtools/json-schema-ref-parser": "9.0.9",
7
+ "colors": "1.4.0",
7
8
  "ignore": "5.2.4",
8
9
  "openapi-types": "10.0.0",
9
10
  "process": "0.11.10",
@@ -12,14 +13,14 @@
12
13
  "yaml": "2.3.1"
13
14
  },
14
15
  "peerDependencies": {
15
- "@angular-devkit/core": "^16.1.4",
16
- "@rxap/json-schema-to-typescript": "^16.0.1-dev.0",
17
- "@rxap/utilities": "^16.1.0-dev.7",
18
- "@rxap/workspace-utilities": "^16.1.0-dev.0",
16
+ "@angular-devkit/core": "^16.2.13",
17
+ "@rxap/json-schema-to-typescript": "^16.0.1-dev.5",
18
+ "@rxap/utilities": "^16.1.0-dev.8",
19
+ "@rxap/workspace-utilities": "^16.1.0-dev.9",
19
20
  "openapi-types": "10.0.0",
20
21
  "ts-morph": "^18.0.0",
21
22
  "tslib": "2.6.2",
22
- "@rxap/node-utilities": "1.2.0-dev.0"
23
+ "@rxap/node-utilities": "1.2.0-dev.1"
23
24
  },
24
25
  "author": {
25
26
  "name": "Merzough Münker",
@@ -41,15 +42,15 @@
41
42
  "packageGroup": [
42
43
  {
43
44
  "package": "@rxap/json-schema-to-typescript",
44
- "version": "16.0.1-dev.0"
45
+ "version": "16.0.1-dev.5"
45
46
  },
46
47
  {
47
48
  "package": "@rxap/utilities",
48
- "version": "16.1.0-dev.6"
49
+ "version": "16.1.0-dev.8"
49
50
  },
50
51
  {
51
52
  "package": "@rxap/workspace-utilities",
52
- "version": "16.0.2-dev.0"
53
+ "version": "16.1.0-dev.9"
53
54
  }
54
55
  ]
55
56
  },
@@ -63,7 +64,6 @@
63
64
  "directory": "packages/workspace/open-api"
64
65
  },
65
66
  "type": "commonjs",
66
- "gitHead": "67bc7956fc88110f26bacf9c78884454a3714aa7",
67
- "main": "./src/index.js",
68
- "types": "./src/index.d.ts"
67
+ "gitHead": "3e1762a8ab913dadaaa5f55c84c28d40cb579885",
68
+ "main": "./src/index.js"
69
69
  }
package/src/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './lib/utilities/any-schema-object';
2
+ export * from './lib/utilities/create-component-type-alias-source-file';
2
3
  export * from './lib/utilities/get-parameter-type';
3
4
  export * from './lib/utilities/get-reqeust-body';
4
5
  export * from './lib/utilities/get-request-body-type';
@@ -15,6 +16,7 @@ export * from './lib/utilities/is-open-api-schema-from-path';
15
16
  export * from './lib/utilities/is-operation-object';
16
17
  export * from './lib/utilities/is-reference-object';
17
18
  export * from './lib/utilities/is-without-parameters';
19
+ export * from './lib/utilities/ref-schema-object';
18
20
  export * from './lib/config';
19
21
  export * from './lib/const';
20
22
  export * from './lib/create-directive';
package/src/index.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  // region utilities
5
5
  tslib_1.__exportStar(require("./lib/utilities/any-schema-object"), exports);
6
+ tslib_1.__exportStar(require("./lib/utilities/create-component-type-alias-source-file"), exports);
6
7
  tslib_1.__exportStar(require("./lib/utilities/get-parameter-type"), exports);
7
8
  tslib_1.__exportStar(require("./lib/utilities/get-reqeust-body"), exports);
8
9
  tslib_1.__exportStar(require("./lib/utilities/get-request-body-type"), exports);
@@ -19,6 +20,7 @@ tslib_1.__exportStar(require("./lib/utilities/is-open-api-schema-from-path"), ex
19
20
  tslib_1.__exportStar(require("./lib/utilities/is-operation-object"), exports);
20
21
  tslib_1.__exportStar(require("./lib/utilities/is-reference-object"), exports);
21
22
  tslib_1.__exportStar(require("./lib/utilities/is-without-parameters"), exports);
23
+ tslib_1.__exportStar(require("./lib/utilities/ref-schema-object"), exports);
22
24
  // endregion
23
25
  // region
24
26
  tslib_1.__exportStar(require("./lib/config"), exports);
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/workspace/open-api/src/index.ts"],"names":[],"mappings":";;;AAAA,mBAAmB;AACnB,4EAAkD;AAClD,6EAAmD;AACnD,2EAAiD;AACjD,gFAAsD;AACtD,4EAAkD;AAClD,uEAA6C;AAC7C,8EAAoD;AACpD,kFAAwD;AACxD,qFAA2D;AAC3D,uEAA6C;AAC7C,2EAAiD;AACjD,iFAAuD;AACvD,yEAA+C;AAC/C,uFAA6D;AAC7D,8EAAoD;AACpD,8EAAoD;AACpD,gFAAsD;AACtD,YAAY;AAEZ,UAAU;AACV,uDAA6B;AAC7B,sDAA4B;AAC5B,iEAAuC;AACvC,oEAA0C;AAC1C,qEAA2C;AAC3C,oEAA0C;AAC1C,uEAA6C;AAC7C,oEAA0C;AAC1C,2EAAiD;AACjD,mEAAyC;AACzC,oEAA0C;AAC1C,uEAA6C;AAC7C,sEAA4C;AAC5C,kEAAwC;AACxC,qEAA2C;AAC3C,wDAA8B;AAC9B,4DAAkC;AAClC,sDAA4B;AAC5B,YAAY"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/workspace/open-api/src/index.ts"],"names":[],"mappings":";;;AAAA,mBAAmB;AACnB,4EAAkD;AAClD,kGAAwE;AACxE,6EAAmD;AACnD,2EAAiD;AACjD,gFAAsD;AACtD,4EAAkD;AAClD,uEAA6C;AAC7C,8EAAoD;AACpD,kFAAwD;AACxD,qFAA2D;AAC3D,uEAA6C;AAC7C,2EAAiD;AACjD,iFAAuD;AACvD,yEAA+C;AAC/C,uFAA6D;AAC7D,8EAAoD;AACpD,8EAAoD;AACpD,gFAAsD;AACtD,4EAAkD;AAClD,YAAY;AAEZ,UAAU;AACV,uDAA6B;AAC7B,sDAA4B;AAC5B,iEAAuC;AACvC,oEAA0C;AAC1C,qEAA2C;AAC3C,oEAA0C;AAC1C,uEAA6C;AAC7C,oEAA0C;AAC1C,2EAAiD;AACjD,mEAAyC;AACzC,oEAA0C;AAC1C,uEAA6C;AAC7C,sEAA4C;AAC5C,kEAAwC;AACxC,qEAA2C;AAC3C,wDAA8B;AAC9B,4DAAkC;AAClC,sDAA4B;AAC5B,YAAY"}
@@ -77,7 +77,6 @@ function GenerateRemoteMethod(parameter) {
77
77
  operationId: w => w.quote(parameter.operationId),
78
78
  operation: w => {
79
79
  w.write('`');
80
- console.log(JSON.stringify((0, types_1.GenerateParameterToOperationObjectWithMetadata)(parameter), undefined, 2));
81
80
  w.write(JSON.stringify((0, types_1.GenerateParameterToOperationObjectWithMetadata)(parameter), undefined, 2));
82
81
  w.write('`');
83
82
  },
@@ -1 +1 @@
1
- {"version":3,"file":"generate-remote-method.js","sourceRoot":"","sources":["../../../../../../packages/workspace/open-api/src/lib/generate-remote-method.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-remote-method.js","sourceRoot":"","sources":["../../../../../../packages/workspace/open-api/src/lib/generate-remote-method.ts"],"names":[],"mappings":"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"}
@@ -4,22 +4,30 @@ exports.GenerateRequestBody = void 0;
4
4
  const json_schema_to_typescript_1 = require("@rxap/json-schema-to-typescript");
5
5
  const config_1 = require("./config");
6
6
  const any_schema_object_1 = require("./utilities/any-schema-object");
7
+ const create_component_type_alias_source_file_1 = require("./utilities/create-component-type-alias-source-file");
7
8
  const get_reqeust_body_1 = require("./utilities/get-reqeust-body");
9
+ const ref_schema_object_1 = require("./utilities/ref-schema-object");
8
10
  function GenerateRequestBody(operation, project, components) {
9
11
  const requestBodySchema = (0, get_reqeust_body_1.GetRequestBody)(operation);
10
12
  if (requestBodySchema && !(0, any_schema_object_1.IsAnySchemaObject)(requestBodySchema) && operation.operationId) {
11
13
  const operationId = operation.operationId;
12
- const generator = new json_schema_to_typescript_1.TypescriptInterfaceGenerator(Object.assign(Object.assign({}, requestBodySchema), { components }), {
13
- suffix: config_1.REQUEST_BODY_FILE_SUFFIX,
14
- basePath: config_1.REQUEST_BODY_BASE_PATH,
15
- addImports: true,
16
- }, project);
17
- console.debug(`Generate request body interface for: ${operationId}`);
18
- try {
19
- generator.buildSync(operationId);
14
+ if ((0, ref_schema_object_1.IsRefSchemaObject)(requestBodySchema) || (0, ref_schema_object_1.IsArrayRefSchemaObject)(requestBodySchema)) {
15
+ console.debug(`Skip request body interface generation for: ${operationId}`);
16
+ (0, create_component_type_alias_source_file_1.CreateComponentTypeAliasSourceFile)(project, operationId, requestBodySchema, config_1.REQUEST_BODY_BASE_PATH, config_1.REQUEST_BODY_FILE_SUFFIX);
20
17
  }
21
- catch (error) {
22
- console.error(`Failed to generate request body interface for: ${operationId}`, error.message);
18
+ else {
19
+ const generator = new json_schema_to_typescript_1.TypescriptInterfaceGenerator(Object.assign(Object.assign({}, requestBodySchema), { components }), {
20
+ suffix: config_1.REQUEST_BODY_FILE_SUFFIX,
21
+ basePath: config_1.REQUEST_BODY_BASE_PATH,
22
+ addImports: true,
23
+ }, project);
24
+ console.debug(`Generate request body interface for: ${operationId}`);
25
+ try {
26
+ generator.buildSync(operationId);
27
+ }
28
+ catch (error) {
29
+ console.error(`Failed to generate request body interface for: ${operationId}`, error.message);
30
+ }
23
31
  }
24
32
  }
25
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generate-request-body.js","sourceRoot":"","sources":["../../../../../../packages/workspace/open-api/src/lib/generate-request-body.ts"],"names":[],"mappings":";;;AAAA,+EAA+E;AAG/E,qCAGkB;AAClB,qEAAkE;AAClE,mEAA8D;AAE9D,SAAgB,mBAAmB,CACjC,SAAoC,EACpC,OAAgB,EAChB,UAAsC;IAGtC,MAAM,iBAAiB,GAAG,IAAA,iCAAc,EAAC,SAAS,CAAC,CAAC;IAEpD,IAAI,iBAAiB,IAAI,CAAC,IAAA,qCAAiB,EAAC,iBAAiB,CAAC,IAAI,SAAS,CAAC,WAAW,EAAE;QACvF,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QAE1C,MAAM,SAAS,GAAG,IAAI,wDAA4B,iCAE3C,iBAAiB,KACpB,UAAU,KAEZ;YACE,MAAM,EAAE,iCAAwB;YAChC,QAAQ,EAAE,+BAAsB;YAChC,UAAU,EAAE,IAAI;SACjB,EACD,OAAO,CACR,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,wCAAyC,WAAY,EAAE,CAAC,CAAC;QAEvE,IAAI;YAEF,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;SAElC;QAAC,OAAO,KAAU,EAAE;YACnB,OAAO,CAAC,KAAK,CAAC,kDAAmD,WAAY,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;SACjG;KAEF;AAEH,CAAC;AApCD,kDAoCC"}
1
+ {"version":3,"file":"generate-request-body.js","sourceRoot":"","sources":["../../../../../../packages/workspace/open-api/src/lib/generate-request-body.ts"],"names":[],"mappings":";;;AAAA,+EAA+E;AAG/E,qCAGkB;AAClB,qEAAkE;AAClE,iHAAyG;AACzG,mEAA8D;AAC9D,qEAGuC;AAEvC,SAAgB,mBAAmB,CACjC,SAAoC,EACpC,OAAgB,EAChB,UAAsC;IAGtC,MAAM,iBAAiB,GAAG,IAAA,iCAAc,EAAC,SAAS,CAAC,CAAC;IAEpD,IAAI,iBAAiB,IAAI,CAAC,IAAA,qCAAiB,EAAC,iBAAiB,CAAC,IAAI,SAAS,CAAC,WAAW,EAAE;QACvF,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QAE1C,IAAI,IAAA,qCAAiB,EAAC,iBAAiB,CAAC,IAAI,IAAA,0CAAsB,EAAC,iBAAiB,CAAC,EAAE;YAErF,OAAO,CAAC,KAAK,CAAC,+CAAgD,WAAY,EAAE,CAAC,CAAC;YAE9E,IAAA,4EAAkC,EAChC,OAAO,EACP,WAAW,EACX,iBAAiB,EACjB,+BAAsB,EACtB,iCAAwB,CACzB,CAAC;SAEH;aAAM;YAEL,MAAM,SAAS,GAAG,IAAI,wDAA4B,iCAE3C,iBAAiB,KACpB,UAAU,KAEZ;gBACE,MAAM,EAAE,iCAAwB;gBAChC,QAAQ,EAAE,+BAAsB;gBAChC,UAAU,EAAE,IAAI;aACjB,EACD,OAAO,CACR,CAAC;YAEF,OAAO,CAAC,KAAK,CAAC,wCAAyC,WAAY,EAAE,CAAC,CAAC;YAEvE,IAAI;gBAEF,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;aAElC;YAAC,OAAO,KAAU,EAAE;gBACnB,OAAO,CAAC,KAAK,CAAC,kDAAmD,WAAY,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;aACjG;SAEF;KAEF;AAEH,CAAC;AApDD,kDAoDC"}
@@ -4,22 +4,30 @@ exports.GenerateResponse = void 0;
4
4
  const json_schema_to_typescript_1 = require("@rxap/json-schema-to-typescript");
5
5
  const config_1 = require("./config");
6
6
  const any_schema_object_1 = require("./utilities/any-schema-object");
7
+ const create_component_type_alias_source_file_1 = require("./utilities/create-component-type-alias-source-file");
7
8
  const get_response_1 = require("./utilities/get-response");
9
+ const ref_schema_object_1 = require("./utilities/ref-schema-object");
8
10
  function GenerateResponse(operation, project, components) {
9
11
  const response = (0, get_response_1.GetResponse)(operation);
10
12
  if (response && !(0, any_schema_object_1.IsAnySchemaObject)(response) && operation.operationId) {
11
13
  const operationId = operation.operationId;
12
- const generator = new json_schema_to_typescript_1.TypescriptInterfaceGenerator(Object.assign(Object.assign({}, response), { components }), {
13
- suffix: config_1.RESPONSE_FILE_SUFFIX,
14
- basePath: config_1.RESPONSE_BASE_PATH,
15
- addImports: true,
16
- }, project);
17
- console.debug(`Generate response interface for: ${operationId}`);
18
- try {
19
- generator.buildSync(operationId);
14
+ if ((0, ref_schema_object_1.IsRefSchemaObject)(response) || (0, ref_schema_object_1.IsArrayRefSchemaObject)(response)) {
15
+ console.debug(`Skip response interface generation for: ${operationId}`);
16
+ (0, create_component_type_alias_source_file_1.CreateComponentTypeAliasSourceFile)(project, operationId, response, config_1.RESPONSE_BASE_PATH, config_1.RESPONSE_FILE_SUFFIX);
20
17
  }
21
- catch (error) {
22
- console.error(`Failed to generate response interface for: ${operationId}`, error.message);
18
+ else {
19
+ const generator = new json_schema_to_typescript_1.TypescriptInterfaceGenerator(Object.assign(Object.assign({}, response), { components }), {
20
+ suffix: config_1.RESPONSE_FILE_SUFFIX,
21
+ basePath: config_1.RESPONSE_BASE_PATH,
22
+ addImports: true,
23
+ }, project);
24
+ console.debug(`Generate response interface for: ${operationId}`);
25
+ try {
26
+ generator.buildSync(operationId);
27
+ }
28
+ catch (error) {
29
+ console.error(`Failed to generate response interface for: ${operationId}`, error.message);
30
+ }
23
31
  }
24
32
  }
25
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generate-response.js","sourceRoot":"","sources":["../../../../../../packages/workspace/open-api/src/lib/generate-response.ts"],"names":[],"mappings":";;;AAAA,+EAA+E;AAG/E,qCAGkB;AAClB,qEAAkE;AAClE,2DAAuD;AAEvD,SAAgB,gBAAgB,CAC9B,SAAoC,EACpC,OAAgB,EAChB,UAAsC;IAGtC,MAAM,QAAQ,GAAG,IAAA,0BAAW,EAAC,SAAS,CAAC,CAAC;IAExC,IAAI,QAAQ,IAAI,CAAC,IAAA,qCAAiB,EAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,WAAW,EAAE;QACrE,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QAE1C,MAAM,SAAS,GAAG,IAAI,wDAA4B,iCAE3C,QAAQ,KACX,UAAU,KAEZ;YACE,MAAM,EAAE,6BAAoB;YAC5B,QAAQ,EAAE,2BAAkB;YAC5B,UAAU,EAAE,IAAI;SACjB,EACD,OAAO,CACR,CAAC;QAEF,OAAO,CAAC,KAAK,CAAC,oCAAqC,WAAY,EAAE,CAAC,CAAC;QAEnE,IAAI;YAEF,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;SAElC;QAAC,OAAO,KAAU,EAAE;YACnB,OAAO,CAAC,KAAK,CAAC,8CAA+C,WAAY,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;SAC7F;KAEF;AAEH,CAAC;AApCD,4CAoCC"}
1
+ {"version":3,"file":"generate-response.js","sourceRoot":"","sources":["../../../../../../packages/workspace/open-api/src/lib/generate-response.ts"],"names":[],"mappings":";;;AAAA,+EAA+E;AAG/E,qCAGkB;AAClB,qEAAkE;AAClE,iHAAyG;AACzG,2DAAuD;AACvD,qEAGuC;AAEvC,SAAgB,gBAAgB,CAC9B,SAAoC,EACpC,OAAgB,EAChB,UAAsC;IAGtC,MAAM,QAAQ,GAAG,IAAA,0BAAW,EAAC,SAAS,CAAC,CAAC;IAExC,IAAI,QAAQ,IAAI,CAAC,IAAA,qCAAiB,EAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,WAAW,EAAE;QACrE,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QAE1C,IAAI,IAAA,qCAAiB,EAAC,QAAQ,CAAC,IAAI,IAAA,0CAAsB,EAAC,QAAQ,CAAC,EAAE;YAEnE,OAAO,CAAC,KAAK,CAAC,2CAA4C,WAAY,EAAE,CAAC,CAAC;YAE1E,IAAA,4EAAkC,EAChC,OAAO,EACP,WAAW,EACX,QAAQ,EACR,2BAAkB,EAClB,6BAAoB,CACrB,CAAC;SAEH;aAAM;YAEL,MAAM,SAAS,GAAG,IAAI,wDAA4B,iCAE3C,QAAQ,KACX,UAAU,KAEZ;gBACE,MAAM,EAAE,6BAAoB;gBAC5B,QAAQ,EAAE,2BAAkB;gBAC5B,UAAU,EAAE,IAAI;aACjB,EACD,OAAO,CACR,CAAC;YAEF,OAAO,CAAC,KAAK,CAAC,oCAAqC,WAAY,EAAE,CAAC,CAAC;YAEnE,IAAI;gBAEF,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;aAElC;YAAC,OAAO,KAAU,EAAE;gBACnB,OAAO,CAAC,KAAK,CAAC,8CAA+C,WAAY,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;aAC7F;SAEF;KAEF;AAEH,CAAC;AApDD,4CAoDC"}
@@ -0,0 +1,4 @@
1
+ import { ArrayRefSchemaObject } from '@rxap/workspace-open-api';
2
+ import { Project } from 'ts-morph';
3
+ import { RefSchemaObject } from './ref-schema-object';
4
+ export declare function CreateComponentTypeAliasSourceFile(project: Project, operationId: string, schema: RefSchemaObject | ArrayRefSchemaObject, basePath: string, fileSuffix: string): void;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CreateComponentTypeAliasSourceFile = void 0;
4
+ const utilities_1 = require("@rxap/utilities");
5
+ const workspace_open_api_1 = require("@rxap/workspace-open-api");
6
+ const path_1 = require("path");
7
+ function CreateComponentTypeAliasSourceFile(project, operationId, schema, basePath, fileSuffix) {
8
+ const sourceFile = project.createSourceFile((0, path_1.join)(basePath, `${(0, utilities_1.dasherize)(operationId)}.${fileSuffix}.ts`));
9
+ const ref = (0, workspace_open_api_1.IsRefSchemaObject)(schema) ? schema.$ref : schema.items.$ref;
10
+ const componentName = ref.replace('#/components/schemas/', '');
11
+ let type = (0, utilities_1.classify)(componentName);
12
+ if ((0, workspace_open_api_1.IsArrayRefSchemaObject)(schema)) {
13
+ type += '[]';
14
+ }
15
+ sourceFile.addTypeAlias({
16
+ name: (0, utilities_1.classify)(operationId) + (0, utilities_1.classify)(fileSuffix),
17
+ isExported: true,
18
+ type
19
+ });
20
+ sourceFile.addImportDeclarations([{
21
+ namedImports: [(0, utilities_1.classify)(componentName)],
22
+ moduleSpecifier: `${(0, path_1.relative)(basePath, '')}/${workspace_open_api_1.COMPONENTS_BASE_PATH}/${(0, utilities_1.dasherize)(componentName)}`
23
+ }]);
24
+ }
25
+ exports.CreateComponentTypeAliasSourceFile = CreateComponentTypeAliasSourceFile;
26
+ //# sourceMappingURL=create-component-type-alias-source-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-component-type-alias-source-file.js","sourceRoot":"","sources":["../../../../../../../packages/workspace/open-api/src/lib/utilities/create-component-type-alias-source-file.ts"],"names":[],"mappings":";;;AAAA,+CAGyB;AACzB,iEAKkC;AAClC,+BAGc;AAId,SAAgB,kCAAkC,CAChD,OAAgB,EAChB,WAAmB,EACnB,MAA8C,EAC9C,QAAgB,EAChB,UAAkB;IAElB,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAA,WAAI,EAAC,QAAQ,EAAE,GAAI,IAAA,qBAAS,EAAC,WAAW,CAAE,IAAK,UAAW,KAAK,CAAC,CAAC,CAAC;IAC9G,MAAM,GAAG,GAAG,IAAA,sCAAiB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;IACxE,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAC/D,IAAI,IAAI,GAAG,IAAA,oBAAQ,EAAC,aAAa,CAAC,CAAC;IACnC,IAAI,IAAA,2CAAsB,EAAC,MAAM,CAAC,EAAE;QAClC,IAAI,IAAI,IAAI,CAAC;KACd;IACD,UAAU,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE,IAAA,oBAAQ,EAAC,WAAW,CAAC,GAAG,IAAA,oBAAQ,EAAC,UAAU,CAAC;QAClD,UAAU,EAAE,IAAI;QAChB,IAAI;KACL,CAAC,CAAC;IACH,UAAU,CAAC,qBAAqB,CAAC,CAAC;YAChC,YAAY,EAAE,CAAC,IAAA,oBAAQ,EAAC,aAAa,CAAC,CAAC;YACvC,eAAe,EAAE,GAAG,IAAA,eAAQ,EAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,yCAAoB,IAAK,IAAA,qBAAS,EAAC,aAAa,CAAE,EAAE;SACnG,CAAC,CAAC,CAAC;AACN,CAAC;AAvBD,gFAuBC"}
@@ -0,0 +1,9 @@
1
+ export interface RefSchemaObject {
2
+ $ref: string;
3
+ }
4
+ export declare function IsRefSchemaObject(obj: any): obj is RefSchemaObject;
5
+ export interface ArrayRefSchemaObject {
6
+ type: 'array';
7
+ items: RefSchemaObject;
8
+ }
9
+ export declare function IsArrayRefSchemaObject(obj: any): obj is ArrayRefSchemaObject;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IsArrayRefSchemaObject = exports.IsRefSchemaObject = void 0;
4
+ function IsRefSchemaObject(obj) {
5
+ return obj && obj['$ref'];
6
+ }
7
+ exports.IsRefSchemaObject = IsRefSchemaObject;
8
+ function IsArrayRefSchemaObject(obj) {
9
+ return obj && obj.type === 'array' && IsRefSchemaObject(obj.items);
10
+ }
11
+ exports.IsArrayRefSchemaObject = IsArrayRefSchemaObject;
12
+ //# sourceMappingURL=ref-schema-object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref-schema-object.js","sourceRoot":"","sources":["../../../../../../../packages/workspace/open-api/src/lib/utilities/ref-schema-object.ts"],"names":[],"mappings":";;;AAIA,SAAgB,iBAAiB,CAAC,GAAQ;IACxC,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAFD,8CAEC;AAOD,SAAgB,sBAAsB,CAAC,GAAQ;IAC7C,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACrE,CAAC;AAFD,wDAEC"}