@rsdk/cli.cmd.autodoc 6.0.0-next.3 → 6.0.0-next.4

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.
@@ -18,8 +18,10 @@ const cli_common_1 = require("@rsdk/cli.common");
18
18
  const common_1 = require("@rsdk/common");
19
19
  const common_node_1 = require("@rsdk/common.node");
20
20
  const logging_1 = require("@rsdk/logging");
21
+ const value_1 = require("@sinclair/typebox/value");
21
22
  const app_loader_1 = require("../base/app.loader");
22
23
  const document_file_1 = require("../base/document.file");
24
+ const generators_1 = require("../generators");
23
25
  const openapi_json_generator_1 = require("../generators/openapi-json/openapi-json.generator");
24
26
  let OpenApiCommand = OpenApiCommand_1 = class OpenApiCommand {
25
27
  logger;
@@ -71,6 +73,10 @@ let OpenApiCommand = OpenApiCommand_1 = class OpenApiCommand {
71
73
  this.logger.info(`reading config file: ${configPath}`);
72
74
  const [absolutePath] = common_node_1.Path.absolutize(configPath);
73
75
  const config = await (0, common_node_1.readObj)(absolutePath);
76
+ if (!value_1.Value.Check(generators_1.OpenApiConfigSchema, config)) {
77
+ const errors = [...value_1.Value.Errors(generators_1.OpenApiConfigSchema, config)];
78
+ throw new Error(`Invalid config file: ${configPath}\n${JSON.stringify(errors, null, 2)}`);
79
+ }
74
80
  return config;
75
81
  }
76
82
  };
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.variation.js","sourceRoot":"","sources":["../../src/commands/openapi.variation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAK0B;AAC1B,yCAA+D;AAC/D,mDAAgE;AAChE,2CAAuD;AAEvD,mDAA+C;AAC/C,yDAAuD;AACvD,8FAG2D;AAUpD,IAAM,cAAc,sBAApB,MAAM,cAAc;IACR,MAAM,CAAU;IAChB,MAAM,CAAY;IAEnC;QACE,IAAI,CAAC,MAAM,GAAG,uBAAa,CAAC,MAAM,CAAC,gBAAc,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,GAAG,IAAI,sBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAEK,AAAN,KAAK,CAAC,GAAG,CAEP,OAAgB,EAMhB,SAAkB,EAMlB,OAAgB,EAMhB,OAAgB,EAQhB,UAAmB,EAQnB,YAAuB,EAQvB,YAAuB,EAOvB,KAAc,EAOd,OAAgB,EAOhB,WAAoB;QAEpB,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,OAAO,EAAE,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAEjD,wDAAwD;QACxD,MAAM,gBAAgB,GAAG,OAAO,IAAI,MAAM,CAAC,GAAG,IAAI,cAAc,CAAC;QACjE,MAAM,gBAAgB,GAAG,OAAO,IAAI,MAAM,CAAC,GAAG,IAAI,eAAe,CAAC;QAElE,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,gBAAgB,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,gBAAgB,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO;QACT,CAAC;QAED,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,kBAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAErD,MAAM,OAAO,GAAqC;YAChD,GAAG,MAAM;YACT,GAAG,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,CAAC;YACrC,GAAG,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,CAAC;YACrC,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC;YACvB,GAAG,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,CAAC;YACnC,GAAG,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,CAAC;SAC5B,CAAC;QAEF,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,yCAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,8BAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEtD,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,UAA8B;QAE9B,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;QAEvD,MAAM,CAAC,YAAY,CAAC,GAAG,kBAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAO,EAAC,YAAY,CAAC,CAAC;QAE3C,OAAO,MAAgC,CAAC;IAC1C,CAAC;CACF,CAAA;AAxIY,wCAAc;AASnB;IACH,WAAA,IAAA,mBAAM,EAAC,SAAS,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAA;IAGzE,WAAA,IAAA,mBAAM,EAAC,YAAY,EAAE;QACpB,WAAW,EAAE,mCAAmC;QAChD,YAAY,EAAE,KAAK;KACpB,CAAC,CAAA;IAGD,WAAA,IAAA,wBAAW,EAAC,KAAK,EAAE,IAAI,0BAAY,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE;QAClE,WAAW,EAAE,aAAa;QAC1B,KAAK,EAAE,GAAG;KACX,CAAC,CAAA;IAGD,WAAA,IAAA,wBAAW,EAAC,KAAK,EAAE,IAAI,0BAAY,CAAC,MAAM,CAAC,EAAE;QAC5C,WAAW,EAAE,qBAAqB;QAClC,KAAK,EAAE,GAAG;KACX,CAAC,CAAA;IAGD,WAAA,IAAA,wBAAW,EAAC,MAAM,EAAE,IAAI,0BAAY,CAAC,MAAM,CAAC,EAAE;QAC7C,WAAW,EAAE,IAAA,aAAI,EAAA;;;OAGhB;KACF,CAAC,CAAA;IAGD,WAAA,IAAA,wBAAW,EAAC,eAAe,EAAE,IAAI,oBAAW,CAAC,IAAI,qBAAY,EAAE,CAAC,EAAE;QACjE,WAAW,EAAE,IAAA,aAAI,EAAA;;;OAGhB;KACF,CAAC,CAAA;IAGD,WAAA,IAAA,wBAAW,EAAC,eAAe,EAAE,IAAI,oBAAW,CAAC,IAAI,qBAAY,EAAE,CAAC,EAAE;QACjE,WAAW,EAAE,IAAA,aAAI,EAAA;;;OAGhB;KACF,CAAC,CAAA;IAGD,WAAA,IAAA,wBAAW,EAAC,OAAO,EAAE,IAAI,qBAAY,EAAE,EAAE;QACxC,WAAW,EAAE,IAAA,aAAI,EAAA;;OAEhB;KACF,CAAC,CAAA;IAGD,WAAA,IAAA,wBAAW,EAAC,SAAS,EAAE,IAAI,qBAAY,EAAE,EAAE;QAC1C,WAAW,EAAE,IAAA,aAAI,EAAA;;OAEhB;KACF,CAAC,CAAA;IAGD,WAAA,IAAA,wBAAW,EAAC,aAAa,EAAE,IAAI,qBAAY,EAAE,EAAE;QAC9C,WAAW,EAAE,IAAA,aAAI,EAAA;;OAEhB;KACF,CAAC,CAAA;;;;yCA+CH;yBAxHU,cAAc;IAH1B,IAAA,6BAAgB,EAAC,iBAAiB,EAAE;QACnC,WAAW,EAAE,mBAAmB;KACjC,CAAC;;GACW,cAAc,CAwI1B"}
1
+ {"version":3,"file":"openapi.variation.js","sourceRoot":"","sources":["../../src/commands/openapi.variation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import type { Static } from '@sinclair/typebox';
2
+ /**
3
+ * Configuration schema for OpenAPI document generation.
4
+ * @example
5
+ * {
6
+ * "out": "openapi.json",
7
+ * "app": "./dist/app.js",
8
+ * "title": "My API",
9
+ * "version": "1.0.0",
10
+ * "description": "API Description",
11
+ * "includeZones": ["public"],
12
+ * "excludeZones": ["internal"],
13
+ * "security": [{
14
+ * "type": "http",
15
+ * "scheme": "bearer",
16
+ * "bearerFormat": "JWT",
17
+ * "name": "JWT Auth"
18
+ * }]
19
+ * }
20
+ */
21
+ export declare const OpenApiConfigSchema: import("@sinclair/typebox").TObject<{
22
+ /** Output file path for the generated OpenAPI document (includes dirname) */
23
+ out: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
24
+ /** Path to the application file (usually `dist/app.js`) */
25
+ app: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
26
+ /** API title */
27
+ title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
28
+ /** API version */
29
+ version: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
30
+ /** API description */
31
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
32
+ /** List of zones to include in the documentation */
33
+ includeZones: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
34
+ /** List of zones to exclude from the documentation */
35
+ excludeZones: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
36
+ /** Security schemes configuration */
37
+ security: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{
38
+ type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"http">, import("@sinclair/typebox").TLiteral<"apiKey">, import("@sinclair/typebox").TLiteral<"oauth2">, import("@sinclair/typebox").TLiteral<"mutualTLS">]>;
39
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
40
+ name: import("@sinclair/typebox").TString;
41
+ }>, import("@sinclair/typebox").TObject<{
42
+ type: import("@sinclair/typebox").TLiteral<"http">;
43
+ scheme: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"basic">, import("@sinclair/typebox").TLiteral<"bearer">]>;
44
+ bearerFormat: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
45
+ }>]>, import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{
46
+ type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"http">, import("@sinclair/typebox").TLiteral<"apiKey">, import("@sinclair/typebox").TLiteral<"oauth2">, import("@sinclair/typebox").TLiteral<"mutualTLS">]>;
47
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
48
+ name: import("@sinclair/typebox").TString;
49
+ }>, import("@sinclair/typebox").TObject<{
50
+ type: import("@sinclair/typebox").TLiteral<"apiKey">;
51
+ in: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"query">, import("@sinclair/typebox").TLiteral<"header">, import("@sinclair/typebox").TLiteral<"cookie">]>;
52
+ }>]>, import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{
53
+ type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"http">, import("@sinclair/typebox").TLiteral<"apiKey">, import("@sinclair/typebox").TLiteral<"oauth2">, import("@sinclair/typebox").TLiteral<"mutualTLS">]>;
54
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
55
+ name: import("@sinclair/typebox").TString;
56
+ }>, import("@sinclair/typebox").TObject<{
57
+ type: import("@sinclair/typebox").TLiteral<"oauth2">;
58
+ flows: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
59
+ authorizationUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
60
+ tokenUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
61
+ refreshUrl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
62
+ scopes: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>;
63
+ }>>;
64
+ }>]>, import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{
65
+ type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"http">, import("@sinclair/typebox").TLiteral<"apiKey">, import("@sinclair/typebox").TLiteral<"oauth2">, import("@sinclair/typebox").TLiteral<"mutualTLS">]>;
66
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
67
+ name: import("@sinclair/typebox").TString;
68
+ }>, import("@sinclair/typebox").TObject<{
69
+ type: import("@sinclair/typebox").TLiteral<"mutualTLS">;
70
+ }>]>]>>>;
71
+ }>;
72
+ export type OpenApiConfigSchema = Static<typeof OpenApiConfigSchema>;
@@ -0,0 +1,152 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenApiConfigSchema = void 0;
4
+ const typebox_1 = require("@sinclair/typebox");
5
+ /**
6
+ * Base schema for all security schemes.
7
+ * Contains common fields that are present in all security scheme types.
8
+ */
9
+ const SecuritySchemeBase = typebox_1.Type.Object({
10
+ type: typebox_1.Type.Union([
11
+ typebox_1.Type.Literal('http'),
12
+ typebox_1.Type.Literal('apiKey'),
13
+ typebox_1.Type.Literal('oauth2'),
14
+ typebox_1.Type.Literal('mutualTLS'),
15
+ ]),
16
+ description: typebox_1.Type.Optional(typebox_1.Type.String()),
17
+ name: typebox_1.Type.String(),
18
+ }, { additionalProperties: false });
19
+ /**
20
+ * HTTP Authentication scheme (Basic or Bearer).
21
+ * @example
22
+ * {
23
+ * "type": "http",
24
+ * "scheme": "bearer",
25
+ * "bearerFormat": "JWT",
26
+ * "name": "JWT Auth"
27
+ * }
28
+ */
29
+ const HttpSecurityScheme = typebox_1.Type.Intersect([
30
+ SecuritySchemeBase,
31
+ typebox_1.Type.Object({
32
+ type: typebox_1.Type.Literal('http'),
33
+ scheme: typebox_1.Type.Union([typebox_1.Type.Literal('basic'), typebox_1.Type.Literal('bearer')]),
34
+ bearerFormat: typebox_1.Type.Optional(typebox_1.Type.String()),
35
+ }, { additionalProperties: false }),
36
+ ]);
37
+ /**
38
+ * API Key Authentication scheme.
39
+ * The API key can be passed in a header, query parameter, or cookie.
40
+ * @example
41
+ * {
42
+ * "type": "apiKey",
43
+ * "name": "api_key",
44
+ * "in": "header",
45
+ * "description": "API Key Authentication"
46
+ * }
47
+ */
48
+ const ApiKeySecurityScheme = typebox_1.Type.Intersect([
49
+ SecuritySchemeBase,
50
+ typebox_1.Type.Object({
51
+ type: typebox_1.Type.Literal('apiKey'),
52
+ in: typebox_1.Type.Union([
53
+ typebox_1.Type.Literal('query'),
54
+ typebox_1.Type.Literal('header'),
55
+ typebox_1.Type.Literal('cookie'),
56
+ ]),
57
+ }, { additionalProperties: false }),
58
+ ]);
59
+ /**
60
+ * OAuth2 Authentication scheme.
61
+ * Supports multiple OAuth2 flows (implicit, password, clientCredentials, authorizationCode).
62
+ * @example
63
+ * {
64
+ * "type": "oauth2",
65
+ * "name": "OAuth2",
66
+ * "flows": {
67
+ * "implicit": {
68
+ * "authorizationUrl": "https://example.com/oauth/authorize",
69
+ * "scopes": {
70
+ * "read": "Read access",
71
+ * "write": "Write access"
72
+ * }
73
+ * }
74
+ * }
75
+ * }
76
+ */
77
+ const OAuth2SecurityScheme = typebox_1.Type.Intersect([
78
+ SecuritySchemeBase,
79
+ typebox_1.Type.Object({
80
+ type: typebox_1.Type.Literal('oauth2'),
81
+ flows: typebox_1.Type.Record(typebox_1.Type.String(), typebox_1.Type.Object({
82
+ authorizationUrl: typebox_1.Type.Optional(typebox_1.Type.String({ format: 'uri' })),
83
+ tokenUrl: typebox_1.Type.Optional(typebox_1.Type.String({ format: 'uri' })),
84
+ refreshUrl: typebox_1.Type.Optional(typebox_1.Type.String({ format: 'uri' })),
85
+ scopes: typebox_1.Type.Record(typebox_1.Type.String(), typebox_1.Type.String()),
86
+ }, { additionalProperties: false })),
87
+ }, { additionalProperties: false }),
88
+ ]);
89
+ /**
90
+ * Mutual TLS Authentication scheme.
91
+ * Used when clients must present valid certificates to access the API.
92
+ * @example
93
+ * {
94
+ * "type": "mutualTLS",
95
+ * "name": "mtls",
96
+ * "description": "Client certificate required"
97
+ * }
98
+ */
99
+ const MutualTLSSecurityScheme = typebox_1.Type.Intersect([
100
+ SecuritySchemeBase,
101
+ typebox_1.Type.Object({
102
+ type: typebox_1.Type.Literal('mutualTLS'),
103
+ }, { additionalProperties: false }),
104
+ ]);
105
+ /**
106
+ * Union of all supported security schemes.
107
+ * Can be one of: HTTP (Basic/Bearer), API Key, OAuth2, or Mutual TLS.
108
+ */
109
+ const SecurityScheme = typebox_1.Type.Union([
110
+ HttpSecurityScheme,
111
+ ApiKeySecurityScheme,
112
+ OAuth2SecurityScheme,
113
+ MutualTLSSecurityScheme,
114
+ ]);
115
+ /**
116
+ * Configuration schema for OpenAPI document generation.
117
+ * @example
118
+ * {
119
+ * "out": "openapi.json",
120
+ * "app": "./dist/app.js",
121
+ * "title": "My API",
122
+ * "version": "1.0.0",
123
+ * "description": "API Description",
124
+ * "includeZones": ["public"],
125
+ * "excludeZones": ["internal"],
126
+ * "security": [{
127
+ * "type": "http",
128
+ * "scheme": "bearer",
129
+ * "bearerFormat": "JWT",
130
+ * "name": "JWT Auth"
131
+ * }]
132
+ * }
133
+ */
134
+ exports.OpenApiConfigSchema = typebox_1.Type.Object({
135
+ /** Output file path for the generated OpenAPI document (includes dirname) */
136
+ out: typebox_1.Type.Optional(typebox_1.Type.String()),
137
+ /** Path to the application file (usually `dist/app.js`) */
138
+ app: typebox_1.Type.Optional(typebox_1.Type.String()),
139
+ /** API title */
140
+ title: typebox_1.Type.Optional(typebox_1.Type.String()),
141
+ /** API version */
142
+ version: typebox_1.Type.Optional(typebox_1.Type.String()),
143
+ /** API description */
144
+ description: typebox_1.Type.Optional(typebox_1.Type.String()),
145
+ /** List of zones to include in the documentation */
146
+ includeZones: typebox_1.Type.Optional(typebox_1.Type.Array(typebox_1.Type.String())),
147
+ /** List of zones to exclude from the documentation */
148
+ excludeZones: typebox_1.Type.Optional(typebox_1.Type.Array(typebox_1.Type.String())),
149
+ /** Security schemes configuration */
150
+ security: typebox_1.Type.Optional(typebox_1.Type.Array(SecurityScheme)),
151
+ }, { additionalProperties: false });
152
+ //# sourceMappingURL=config.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../../../src/generators/openapi-json/config.schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export * from './openapi-json.generator';
2
+ export * from './config.schema';
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./openapi-json.generator"), exports);
18
+ __exportStar(require("./config.schema"), exports);
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generators/openapi-json/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generators/openapi-json/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,kDAAgC"}
@@ -1,12 +1,11 @@
1
1
  import { PlatformApp } from '@rsdk/core';
2
2
  import { FileGenerator } from '../file-generator.interface';
3
- export type OpenApiGeneratorOptions = {
4
- title: string;
5
- version: string;
6
- description: string;
7
- includeZones?: string[];
8
- excludeZones?: string[];
9
- };
3
+ import { OpenApiConfigSchema } from './config.schema';
4
+ /**
5
+ * Here we don't need `out` and `app`,
6
+ * but `title`, `version` and `description` are required.
7
+ */
8
+ export type OpenApiGeneratorOptions = Omit<OpenApiConfigSchema, 'out' | 'app'> & Required<Pick<OpenApiConfigSchema, 'title' | 'version' | 'description'>>;
10
9
  export declare class OpenapiGenerator extends FileGenerator {
11
10
  private readonly app;
12
11
  private readonly options;
@@ -72,11 +72,29 @@ class OpenapiGenerator extends file_generator_interface_1.FileGenerator {
72
72
  ], OpenApiModule);
73
73
  const createOptions = await this.app.context.getNestFactoryCreateOptions();
74
74
  const app = await core_1.NestFactory.create(OpenApiModule, ...createOptions);
75
- const { title, version, description } = options;
75
+ const { title, version, description, security } = options;
76
76
  const builder = new swagger_1.DocumentBuilder()
77
77
  .setTitle(title)
78
78
  .setVersion(version)
79
79
  .setDescription(description);
80
+ for (const scheme of security || []) {
81
+ switch (scheme.type) {
82
+ case 'http':
83
+ if (scheme.scheme === 'bearer') {
84
+ builder.addBearerAuth(scheme, scheme.name);
85
+ }
86
+ else if (scheme.scheme === 'basic') {
87
+ builder.addBasicAuth(scheme, scheme.name);
88
+ }
89
+ break;
90
+ case 'oauth2':
91
+ builder.addOAuth2(scheme, scheme.name);
92
+ break;
93
+ case 'apiKey':
94
+ builder.addApiKey(scheme, scheme.name);
95
+ break;
96
+ }
97
+ }
80
98
  const openApiConfig = builder.build();
81
99
  const document = swagger_1.SwaggerModule.createDocument(app, openApiConfig);
82
100
  this.logger.info('Generate openapi finished');
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-json.generator.js","sourceRoot":"","sources":["../../../src/generators/openapi-json/openapi-json.generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openapi-json.generator.js","sourceRoot":"","sources":["../../../src/generators/openapi-json/openapi-json.generator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rsdk/cli.cmd.autodoc",
3
- "version": "6.0.0-next.3",
3
+ "version": "6.0.0-next.4",
4
4
  "description": "autodoc your app!",
5
5
  "homepage": "https://github.com/R-Vision/rsdk",
6
6
  "license": "Apache License 2.0",
@@ -16,11 +16,13 @@
16
16
  "url": "https://github.com/R-Vision/rsdk"
17
17
  },
18
18
  "dependencies": {
19
+ "@sinclair/typebox": "^0.34.9",
19
20
  "commander": "^12.1.0",
20
21
  "lodash": "^4.17.21",
21
22
  "log-update": "4.0.0",
22
23
  "markdown-table": "2.0.0",
23
- "pino-pretty": "^10.3.1"
24
+ "pino-pretty": "^10.3.1",
25
+ "rxjs": "^7.8.1"
24
26
  },
25
27
  "peerDependencies": {
26
28
  "@nestjs/common": "^10.0.0",
@@ -38,5 +40,5 @@
38
40
  "@rsdk/zones": "*",
39
41
  "reflect-metadata": "^0.1.12 || ^0.2.0"
40
42
  },
41
- "gitHead": "e9a3e6741c196ecd2d6d1db6a6d9b6611b7d39c4"
43
+ "gitHead": "f0dec6323cbe016b5efd433484d2f2d044d12fa9"
42
44
  }