@nauth-toolkit/mfa-totp 0.1.98 → 0.1.100

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.
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Build-time OpenAPI schema generator for `@nauth-toolkit/mfa-totp` DTOs.
3
+ *
4
+ * Output:
5
+ * - `dist/src/openapi/components.schemas.json`
6
+ */
7
+ export declare function generateOpenApiSchemas(): void;
8
+ //# sourceMappingURL=generate-openapi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-openapi.d.ts","sourceRoot":"","sources":["../../../src/openapi/generate-openapi.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CA4C7C"}
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.generateOpenApiSchemas = generateOpenApiSchemas;
37
+ const node_fs_1 = require("node:fs");
38
+ const node_path_1 = require("node:path");
39
+ const ts_json_schema_generator_1 = require("ts-json-schema-generator");
40
+ const ts = __importStar(require("typescript"));
41
+ const SCHEMA_PREFIX = 'MfaTotp';
42
+ /**
43
+ * Build-time OpenAPI schema generator for `@nauth-toolkit/mfa-totp` DTOs.
44
+ *
45
+ * Output:
46
+ * - `dist/src/openapi/components.schemas.json`
47
+ */
48
+ function generateOpenApiSchemas() {
49
+ // Compiled output path: `dist/src/openapi` → package root is `../../..`
50
+ const packageRoot = (0, node_path_1.resolve)(__dirname, '..', '..', '..');
51
+ const tsconfigPath = (0, node_path_1.join)(packageRoot, 'tsconfig.json');
52
+ const outputDir = __dirname;
53
+ const outputJsonPath = (0, node_path_1.join)(outputDir, 'components.schemas.json');
54
+ const tempRegistryPath = (0, node_path_1.join)(packageRoot, 'src', 'openapi', '_nauth-openapi-dto-registry.ts');
55
+ (0, node_fs_1.mkdirSync)(outputDir, { recursive: true });
56
+ (0, node_fs_1.mkdirSync)((0, node_path_1.dirname)(tempRegistryPath), { recursive: true });
57
+ const dtoFiles = listDtoSourceFiles((0, node_path_1.join)(packageRoot, 'src', 'dto'));
58
+ const exportedSymbolsByModule = dtoFiles.map((filePath, idx) => ({
59
+ namespace: `Dtos${idx}`,
60
+ modulePath: filePath,
61
+ symbols: collectExportedSymbols(filePath),
62
+ }));
63
+ const allSymbolsCount = exportedSymbolsByModule.reduce((acc, m) => acc + m.symbols.length, 0);
64
+ if (allSymbolsCount === 0) {
65
+ throw new Error('OpenAPI generation failed: no exported DTO symbols found under src/dto/.');
66
+ }
67
+ (0, node_fs_1.writeFileSync)(tempRegistryPath, renderRegistryType(exportedSymbolsByModule), 'utf8');
68
+ try {
69
+ const generatorConfig = {
70
+ path: tempRegistryPath,
71
+ tsconfig: tsconfigPath,
72
+ type: 'NAuthOpenApiDtoRegistry',
73
+ expose: 'all',
74
+ skipTypeCheck: true,
75
+ };
76
+ const generator = (0, ts_json_schema_generator_1.createGenerator)(generatorConfig);
77
+ const jsonSchema = generator.createSchema('NAuthOpenApiDtoRegistry');
78
+ const openApiDoc = buildOpenApiDocumentFromJsonSchema(jsonSchema, SCHEMA_PREFIX);
79
+ (0, node_fs_1.writeFileSync)(outputJsonPath, `${JSON.stringify(openApiDoc, null, 2)}\n`, 'utf8');
80
+ }
81
+ finally {
82
+ (0, node_fs_1.rmSync)(tempRegistryPath, { force: true });
83
+ }
84
+ }
85
+ function listDtoSourceFiles(dtoDir) {
86
+ const entries = (0, node_fs_1.readdirSync)(dtoDir, { withFileTypes: true });
87
+ return entries
88
+ .filter((e) => e.isFile() && e.name.endsWith('.ts') && !e.name.endsWith('.spec.ts') && e.name !== 'index.ts')
89
+ .map((e) => (0, node_path_1.join)(dtoDir, e.name))
90
+ .sort();
91
+ }
92
+ function collectExportedSymbols(filePath) {
93
+ const src = (0, node_fs_1.readFileSync)(filePath, 'utf8');
94
+ const sourceFile = ts.createSourceFile(filePath, src, ts.ScriptTarget.ES2022, true);
95
+ const symbols = new Set();
96
+ for (const statement of sourceFile.statements) {
97
+ if (!hasExportModifier(statement))
98
+ continue;
99
+ if (ts.isClassDeclaration(statement) && statement.name)
100
+ symbols.add(statement.name.text);
101
+ if (ts.isInterfaceDeclaration(statement) && statement.name)
102
+ symbols.add(statement.name.text);
103
+ if (ts.isEnumDeclaration(statement) && statement.name)
104
+ symbols.add(statement.name.text);
105
+ if (ts.isTypeAliasDeclaration(statement) && statement.name)
106
+ symbols.add(statement.name.text);
107
+ }
108
+ return Array.from(symbols).sort();
109
+ }
110
+ function hasExportModifier(node) {
111
+ const modifiers = ts.canHaveModifiers(node) ? ts.getModifiers(node) : undefined;
112
+ return !!modifiers?.some((m) => m.kind === ts.SyntaxKind.ExportKeyword);
113
+ }
114
+ function renderRegistryType(modules) {
115
+ const lines = [];
116
+ lines.push('/**');
117
+ lines.push(' * AUTO-GENERATED FILE (build-time only)');
118
+ lines.push(' */');
119
+ const registryDir = (0, node_path_1.resolve)(__dirname, '..', '..', '..', 'src', 'openapi');
120
+ for (const m of modules) {
121
+ const relFromRegistry = (0, node_path_1.relative)(registryDir, m.modulePath).replace(/\\/g, '/').replace(/\.ts$/, '');
122
+ lines.push(`import type * as ${m.namespace} from '${relFromRegistry}';`);
123
+ }
124
+ lines.push('');
125
+ lines.push('export type NAuthOpenApiDtoRegistry = {');
126
+ for (const m of modules) {
127
+ for (const name of m.symbols) {
128
+ lines.push(` ${name}: ${m.namespace}.${name};`);
129
+ }
130
+ }
131
+ lines.push('};');
132
+ lines.push('');
133
+ return lines.join('\n');
134
+ }
135
+ function buildOpenApiDocumentFromJsonSchema(jsonSchema, prefix) {
136
+ if (typeof jsonSchema !== 'object' || jsonSchema === null || !('definitions' in jsonSchema)) {
137
+ throw new Error('OpenAPI generation failed: JSON Schema missing `definitions`.');
138
+ }
139
+ const definitions = jsonSchema.definitions ?? {};
140
+ const renameMap = new Map();
141
+ for (const name of Object.keys(definitions)) {
142
+ if (name === 'NAuthOpenApiDtoRegistry')
143
+ continue;
144
+ renameMap.set(name, `${prefix}${name}`);
145
+ }
146
+ const schemas = {};
147
+ for (const [name, schema] of Object.entries(definitions)) {
148
+ if (name === 'NAuthOpenApiDtoRegistry')
149
+ continue;
150
+ const renamed = renameMap.get(name) ?? name;
151
+ schemas[renamed] = rewriteRefsAndRename(schema, renameMap);
152
+ }
153
+ return { openapi: '3.0.3', components: { schemas } };
154
+ }
155
+ function rewriteRefsAndRename(value, renameMap) {
156
+ if (Array.isArray(value))
157
+ return value.map((v) => rewriteRefsAndRename(v, renameMap));
158
+ if (typeof value !== 'object' || value === null)
159
+ return value;
160
+ const obj = value;
161
+ const next = {};
162
+ for (const [key, val] of Object.entries(obj)) {
163
+ if (key === '$ref' && typeof val === 'string') {
164
+ const openApiRef = val.replace(/^#\/definitions\//, '#/components/schemas/');
165
+ const refName = openApiRef.replace(/^#\/components\/schemas\//, '');
166
+ const renamed = renameMap.get(refName);
167
+ next[key] = renamed ? `#/components/schemas/${renamed}` : openApiRef;
168
+ continue;
169
+ }
170
+ next[key] = rewriteRefsAndRename(val, renameMap);
171
+ }
172
+ return next;
173
+ }
174
+ if (require.main === module) {
175
+ generateOpenApiSchemas();
176
+ }
177
+ //# sourceMappingURL=generate-openapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-openapi.js","sourceRoot":"","sources":["../../../src/openapi/generate-openapi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * OpenAPI component schemas exported by `@nauth-toolkit/mfa-totp`.
3
+ *
4
+ * Notes:
5
+ * - Schemas are generated at build time into `dist/src/openapi/components.schemas.json`
6
+ * - Schema names are prefixed with `MfaTotp` to avoid collisions when merging
7
+ * multiple nauth-toolkit OpenAPI exports.
8
+ */
9
+ export interface NAuthOpenApiDocument {
10
+ openapi: string;
11
+ components: {
12
+ schemas: Record<string, unknown>;
13
+ };
14
+ }
15
+ export declare function loadNAuthOpenApiDocument(): NAuthOpenApiDocument;
16
+ export declare function loadNAuthOpenApiSchemas(): Record<string, unknown>;
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/openapi/index.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAClC,CAAC;CACH;AAED,wBAAgB,wBAAwB,IAAI,oBAAoB,CAI/D;AAED,wBAAgB,uBAAuB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEjE"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadNAuthOpenApiDocument = loadNAuthOpenApiDocument;
4
+ exports.loadNAuthOpenApiSchemas = loadNAuthOpenApiSchemas;
5
+ const node_fs_1 = require("node:fs");
6
+ const node_path_1 = require("node:path");
7
+ function loadNAuthOpenApiDocument() {
8
+ const filePath = (0, node_path_1.join)(__dirname, 'components.schemas.json');
9
+ const json = (0, node_fs_1.readFileSync)(filePath, 'utf8');
10
+ return JSON.parse(json);
11
+ }
12
+ function loadNAuthOpenApiSchemas() {
13
+ return loadNAuthOpenApiDocument().components.schemas;
14
+ }
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/openapi/index.ts"],"names":[],"mappings":";;AAkBA,4DAIC;AAED,0DAEC;AA1BD,qCAAuC;AACvC,yCAAiC;AAiBjC,SAAgB,wBAAwB;IACtC,MAAM,QAAQ,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,IAAA,sBAAY,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAyB,CAAC;AAClD,CAAC;AAED,SAAgB,uBAAuB;IACrC,OAAO,wBAAwB,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;AACvD,CAAC"}