configforge 1.0.0-beta.1 → 1.0.0-beta.11
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/README.md +630 -12
- package/dist/core/ConversionResult.d.ts +22 -0
- package/dist/core/ConversionResult.d.ts.map +1 -1
- package/dist/core/ConversionResult.js +44 -30
- package/dist/core/ConversionResult.js.map +1 -1
- package/dist/core/Converter.d.ts +40 -10
- package/dist/core/Converter.d.ts.map +1 -1
- package/dist/core/Converter.js +137 -29
- package/dist/core/Converter.js.map +1 -1
- package/dist/core/Mapper.d.ts +12 -0
- package/dist/core/Mapper.d.ts.map +1 -1
- package/dist/core/Mapper.js +155 -3
- package/dist/core/Mapper.js.map +1 -1
- package/dist/core/Pipeline.d.ts +42 -0
- package/dist/core/Pipeline.d.ts.map +1 -0
- package/dist/core/Pipeline.js +134 -0
- package/dist/core/Pipeline.js.map +1 -0
- package/dist/core/pipeline/PipelineBuilder.d.ts +67 -0
- package/dist/core/pipeline/PipelineBuilder.d.ts.map +1 -0
- package/dist/core/pipeline/PipelineBuilder.js +109 -0
- package/dist/core/pipeline/PipelineBuilder.js.map +1 -0
- package/dist/core/pipeline/PipelineSteps.d.ts +74 -0
- package/dist/core/pipeline/PipelineSteps.d.ts.map +1 -0
- package/dist/core/pipeline/PipelineSteps.js +298 -0
- package/dist/core/pipeline/PipelineSteps.js.map +1 -0
- package/dist/errors/ErrorCollector.d.ts +119 -0
- package/dist/errors/ErrorCollector.d.ts.map +1 -0
- package/dist/errors/ErrorCollector.js +197 -0
- package/dist/errors/ErrorCollector.js.map +1 -0
- package/dist/errors/ErrorContext.d.ts +168 -0
- package/dist/errors/ErrorContext.d.ts.map +1 -0
- package/dist/errors/ErrorContext.js +356 -0
- package/dist/errors/ErrorContext.js.map +1 -0
- package/dist/errors/ErrorRecovery.d.ts +91 -0
- package/dist/errors/ErrorRecovery.d.ts.map +1 -0
- package/dist/errors/ErrorRecovery.js +321 -0
- package/dist/errors/ErrorRecovery.js.map +1 -0
- package/dist/errors/ErrorReporter.d.ts +58 -0
- package/dist/errors/ErrorReporter.d.ts.map +1 -0
- package/dist/errors/ErrorReporter.js +262 -0
- package/dist/errors/ErrorReporter.js.map +1 -0
- package/dist/errors/ErrorTypes.d.ts +103 -0
- package/dist/errors/ErrorTypes.d.ts.map +1 -0
- package/dist/errors/ErrorTypes.js +125 -0
- package/dist/errors/ErrorTypes.js.map +1 -0
- package/dist/errors/SpecificErrors.d.ts +45 -0
- package/dist/errors/SpecificErrors.d.ts.map +1 -0
- package/dist/errors/SpecificErrors.js +124 -0
- package/dist/errors/SpecificErrors.js.map +1 -0
- package/dist/errors/SuggestionEngine.d.ts +63 -0
- package/dist/errors/SuggestionEngine.d.ts.map +1 -0
- package/dist/errors/SuggestionEngine.js +328 -0
- package/dist/errors/SuggestionEngine.js.map +1 -0
- package/dist/errors/index.d.ts +12 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +39 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -2
- package/dist/index.js.map +1 -1
- package/dist/scripts/CLIGenerator.d.ts +109 -0
- package/dist/scripts/CLIGenerator.d.ts.map +1 -0
- package/dist/scripts/CLIGenerator.js +440 -0
- package/dist/scripts/CLIGenerator.js.map +1 -0
- package/dist/scripts/CLIUtils.d.ts +136 -0
- package/dist/scripts/CLIUtils.d.ts.map +1 -0
- package/dist/scripts/CLIUtils.js +361 -0
- package/dist/scripts/CLIUtils.js.map +1 -0
- package/dist/scripts/CommandBuilder.d.ts +72 -0
- package/dist/scripts/CommandBuilder.d.ts.map +1 -0
- package/dist/scripts/CommandBuilder.js +280 -0
- package/dist/scripts/CommandBuilder.js.map +1 -0
- package/dist/scripts/index.d.ts +23 -0
- package/dist/scripts/index.d.ts.map +1 -0
- package/dist/scripts/index.js +43 -0
- package/dist/scripts/index.js.map +1 -0
- package/dist/types/index.d.ts +8 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/validators/ValidatorRegistry.d.ts +55 -0
- package/dist/validators/ValidatorRegistry.d.ts.map +1 -0
- package/dist/validators/ValidatorRegistry.js +140 -0
- package/dist/validators/ValidatorRegistry.js.map +1 -0
- package/dist/validators/built-in.d.ts +93 -0
- package/dist/validators/built-in.d.ts.map +1 -0
- package/dist/validators/built-in.js +290 -0
- package/dist/validators/built-in.js.map +1 -0
- package/dist/validators/index.d.ts +4 -0
- package/dist/validators/index.d.ts.map +1 -0
- package/dist/validators/index.js +24 -0
- package/dist/validators/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CommandBuilder = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Fluent builder for creating CLI commands
|
|
6
|
+
*/
|
|
7
|
+
class CommandBuilder {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.command = {};
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Set command name
|
|
13
|
+
*/
|
|
14
|
+
name(name) {
|
|
15
|
+
this.command.name = name;
|
|
16
|
+
return this;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Set command description
|
|
20
|
+
*/
|
|
21
|
+
description(description) {
|
|
22
|
+
this.command.description = description;
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Add an option to the command
|
|
27
|
+
*/
|
|
28
|
+
option(flags, description, defaultValue) {
|
|
29
|
+
if (!this.command.options) {
|
|
30
|
+
this.command.options = [];
|
|
31
|
+
}
|
|
32
|
+
this.command.options.push({
|
|
33
|
+
flags,
|
|
34
|
+
description,
|
|
35
|
+
defaultValue,
|
|
36
|
+
});
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Add multiple options at once
|
|
41
|
+
*/
|
|
42
|
+
options(options) {
|
|
43
|
+
if (!this.command.options) {
|
|
44
|
+
this.command.options = [];
|
|
45
|
+
}
|
|
46
|
+
this.command.options.push(...options);
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Set command action
|
|
51
|
+
*/
|
|
52
|
+
action(action) {
|
|
53
|
+
this.command.action = action;
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Build the command
|
|
58
|
+
*/
|
|
59
|
+
build() {
|
|
60
|
+
if (!this.command.name) {
|
|
61
|
+
throw new Error('Command name is required');
|
|
62
|
+
}
|
|
63
|
+
if (!this.command.description) {
|
|
64
|
+
throw new Error('Command description is required');
|
|
65
|
+
}
|
|
66
|
+
if (!this.command.action) {
|
|
67
|
+
throw new Error('Command action is required');
|
|
68
|
+
}
|
|
69
|
+
return this.command;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Create a new command builder
|
|
73
|
+
*/
|
|
74
|
+
static create() {
|
|
75
|
+
return new CommandBuilder();
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Create a convert command with common options
|
|
79
|
+
*/
|
|
80
|
+
static createConvertCommand(action) {
|
|
81
|
+
return CommandBuilder.create()
|
|
82
|
+
.name('convert')
|
|
83
|
+
.description('Convert configuration files')
|
|
84
|
+
.option('-o, --output <path>', 'Output file path')
|
|
85
|
+
.option('-f, --format <format>', 'Output format (json, yaml, yml)')
|
|
86
|
+
.option('--dry-run', 'Show preview without writing output')
|
|
87
|
+
.option('--verbose', 'Show detailed information')
|
|
88
|
+
.option('--backup', 'Create backup of input file')
|
|
89
|
+
.action(async (options) => {
|
|
90
|
+
// Extract input from arguments (would be handled by commander)
|
|
91
|
+
const input = options.input || process.argv[3];
|
|
92
|
+
const output = options.output;
|
|
93
|
+
await action(input, output, options);
|
|
94
|
+
})
|
|
95
|
+
.build();
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Create a validate command with common options
|
|
99
|
+
*/
|
|
100
|
+
static createValidateCommand(action) {
|
|
101
|
+
return CommandBuilder.create()
|
|
102
|
+
.name('validate')
|
|
103
|
+
.description('Validate configuration files')
|
|
104
|
+
.option('--verbose', 'Show detailed validation information')
|
|
105
|
+
.option('--strict', 'Use strict validation mode')
|
|
106
|
+
.action(async (options) => {
|
|
107
|
+
const input = options.input || process.argv[3];
|
|
108
|
+
await action(input, options);
|
|
109
|
+
})
|
|
110
|
+
.build();
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Create a batch command for processing multiple files
|
|
114
|
+
*/
|
|
115
|
+
static createBatchCommand(action) {
|
|
116
|
+
return CommandBuilder.create()
|
|
117
|
+
.name('batch')
|
|
118
|
+
.description('Process multiple files matching a pattern')
|
|
119
|
+
.option('-p, --pattern <pattern>', 'File pattern to match', '**/*.{json,yml,yaml}')
|
|
120
|
+
.option('-o, --output-dir <dir>', 'Output directory')
|
|
121
|
+
.option('-f, --format <format>', 'Output format for all files')
|
|
122
|
+
.option('--parallel <count>', 'Number of parallel processes', '4')
|
|
123
|
+
.option('--dry-run', 'Show what would be processed')
|
|
124
|
+
.option('--verbose', 'Show detailed information')
|
|
125
|
+
.action(async (options) => {
|
|
126
|
+
const pattern = options.pattern;
|
|
127
|
+
await action(pattern, options);
|
|
128
|
+
})
|
|
129
|
+
.build();
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Create a profile command group
|
|
133
|
+
*/
|
|
134
|
+
static createProfileCommands() {
|
|
135
|
+
return [
|
|
136
|
+
CommandBuilder.create()
|
|
137
|
+
.name('profile:list')
|
|
138
|
+
.description('List all saved converter profiles')
|
|
139
|
+
.option('--format <format>', 'Output format (table, json)', 'table')
|
|
140
|
+
.action(async (_options) => {
|
|
141
|
+
// Implementation would list profiles
|
|
142
|
+
console.log('Listing profiles...');
|
|
143
|
+
})
|
|
144
|
+
.build(),
|
|
145
|
+
CommandBuilder.create()
|
|
146
|
+
.name('profile:save')
|
|
147
|
+
.description('Save a converter configuration as a profile')
|
|
148
|
+
.option('-n, --name <name>', 'Profile name (required)')
|
|
149
|
+
.option('-d, --description <desc>', 'Profile description')
|
|
150
|
+
.option('-c, --config <path>', 'Path to converter configuration file')
|
|
151
|
+
.action(async (options) => {
|
|
152
|
+
if (!options.name) {
|
|
153
|
+
throw new Error('Profile name is required');
|
|
154
|
+
}
|
|
155
|
+
console.log(`Saving profile: ${options.name}`);
|
|
156
|
+
})
|
|
157
|
+
.build(),
|
|
158
|
+
CommandBuilder.create()
|
|
159
|
+
.name('profile:delete')
|
|
160
|
+
.description('Delete a converter profile')
|
|
161
|
+
.option('-n, --name <name>', 'Profile name (required)')
|
|
162
|
+
.option('--force', 'Skip confirmation prompt')
|
|
163
|
+
.action(async (options) => {
|
|
164
|
+
if (!options.name) {
|
|
165
|
+
throw new Error('Profile name is required');
|
|
166
|
+
}
|
|
167
|
+
console.log(`Deleting profile: ${options.name}`);
|
|
168
|
+
})
|
|
169
|
+
.build(),
|
|
170
|
+
CommandBuilder.create()
|
|
171
|
+
.name('profile:show')
|
|
172
|
+
.description('Show details of a converter profile')
|
|
173
|
+
.option('-n, --name <name>', 'Profile name (required)')
|
|
174
|
+
.option('--format <format>', 'Output format (json, yaml)', 'json')
|
|
175
|
+
.action(async (options) => {
|
|
176
|
+
if (!options.name) {
|
|
177
|
+
throw new Error('Profile name is required');
|
|
178
|
+
}
|
|
179
|
+
console.log(`Showing profile: ${options.name}`);
|
|
180
|
+
})
|
|
181
|
+
.build(),
|
|
182
|
+
];
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Create common global options
|
|
186
|
+
*/
|
|
187
|
+
static getGlobalOptions() {
|
|
188
|
+
return [
|
|
189
|
+
{ flags: '--config <path>', description: 'Path to configuration file' },
|
|
190
|
+
{ flags: '--verbose', description: 'Enable verbose output' },
|
|
191
|
+
{ flags: '--quiet', description: 'Suppress non-error output' },
|
|
192
|
+
{ flags: '--no-color', description: 'Disable colored output' },
|
|
193
|
+
{
|
|
194
|
+
flags: '--log-level <level>',
|
|
195
|
+
description: 'Set log level (error, warn, info, debug)',
|
|
196
|
+
defaultValue: 'info',
|
|
197
|
+
},
|
|
198
|
+
];
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Create a help command
|
|
202
|
+
*/
|
|
203
|
+
static createHelpCommand() {
|
|
204
|
+
return CommandBuilder.create()
|
|
205
|
+
.name('help')
|
|
206
|
+
.description('Show help information')
|
|
207
|
+
.option('-c, --command <name>', 'Show help for specific command')
|
|
208
|
+
.action(async (options) => {
|
|
209
|
+
if (options.command) {
|
|
210
|
+
console.log(`Help for command: ${options.command}`);
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
console.log('General help information');
|
|
214
|
+
}
|
|
215
|
+
})
|
|
216
|
+
.build();
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Create a version command
|
|
220
|
+
*/
|
|
221
|
+
static createVersionCommand(version) {
|
|
222
|
+
return CommandBuilder.create()
|
|
223
|
+
.name('version')
|
|
224
|
+
.description('Show version information')
|
|
225
|
+
.option('--json', 'Output version as JSON')
|
|
226
|
+
.action(async (options) => {
|
|
227
|
+
if (options.json) {
|
|
228
|
+
console.log(JSON.stringify({ version }, null, 2));
|
|
229
|
+
}
|
|
230
|
+
else {
|
|
231
|
+
console.log(version);
|
|
232
|
+
}
|
|
233
|
+
})
|
|
234
|
+
.build();
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Create an init command for setting up new projects
|
|
238
|
+
*/
|
|
239
|
+
static createInitCommand() {
|
|
240
|
+
return CommandBuilder.create()
|
|
241
|
+
.name('init')
|
|
242
|
+
.description('Initialize a new ConfigForge project')
|
|
243
|
+
.option('-t, --template <name>', 'Project template to use')
|
|
244
|
+
.option('-d, --directory <path>', 'Target directory', '.')
|
|
245
|
+
.option('--force', 'Overwrite existing files')
|
|
246
|
+
.action(async (options) => {
|
|
247
|
+
console.log(`Initializing project in: ${options.directory}`);
|
|
248
|
+
if (options.template) {
|
|
249
|
+
console.log(`Using template: ${options.template}`);
|
|
250
|
+
}
|
|
251
|
+
})
|
|
252
|
+
.build();
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Create a config command for managing configuration
|
|
256
|
+
*/
|
|
257
|
+
static createConfigCommand() {
|
|
258
|
+
return CommandBuilder.create()
|
|
259
|
+
.name('config')
|
|
260
|
+
.description('Manage ConfigForge configuration')
|
|
261
|
+
.option('-g, --get <key>', 'Get configuration value')
|
|
262
|
+
.option('-s, --set <key=value>', 'Set configuration value')
|
|
263
|
+
.option('-l, --list', 'List all configuration values')
|
|
264
|
+
.option('--global', 'Use global configuration')
|
|
265
|
+
.action(async (options) => {
|
|
266
|
+
if (options.get) {
|
|
267
|
+
console.log(`Getting config: ${options.get}`);
|
|
268
|
+
}
|
|
269
|
+
else if (options.set) {
|
|
270
|
+
console.log(`Setting config: ${options.set}`);
|
|
271
|
+
}
|
|
272
|
+
else if (options.list) {
|
|
273
|
+
console.log('Listing all configuration values');
|
|
274
|
+
}
|
|
275
|
+
})
|
|
276
|
+
.build();
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
exports.CommandBuilder = CommandBuilder;
|
|
280
|
+
//# sourceMappingURL=CommandBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CommandBuilder.js","sourceRoot":"","sources":["../../src/scripts/CommandBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Generation System
|
|
3
|
+
*
|
|
4
|
+
* This module provides tools for creating command-line interfaces for ConfigForge converters.
|
|
5
|
+
* It includes utilities for generating CLIs, managing profiles, and handling common CLI operations.
|
|
6
|
+
*/
|
|
7
|
+
export { CLIGenerator, CLICommand, CLIOption, CLIGeneratorOptions, ConverterProfile, } from './CLIGenerator';
|
|
8
|
+
export { CLIUtils, ProgressTracker, OutputOptions, FileInfo } from './CLIUtils';
|
|
9
|
+
export { CommandBuilder } from './CommandBuilder';
|
|
10
|
+
export { Command } from 'commander';
|
|
11
|
+
/**
|
|
12
|
+
* Create a CLI generator with default configuration
|
|
13
|
+
*/
|
|
14
|
+
export declare function createCLI(options?: Partial<import('./CLIGenerator').CLIGeneratorOptions>): any;
|
|
15
|
+
/**
|
|
16
|
+
* Create a command builder
|
|
17
|
+
*/
|
|
18
|
+
export declare function createCommand(): any;
|
|
19
|
+
/**
|
|
20
|
+
* Quick CLI creation for a converter
|
|
21
|
+
*/
|
|
22
|
+
export declare function quickCLI(converter: any, name?: string): any;
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scripts/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,YAAY,EACZ,UAAU,EACV,SAAS,EACT,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;GAEG;AACH,wBAAgB,SAAS,CACvB,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,gBAAgB,EAAE,mBAAmB,CAAC,OAIhE;AAED;;GAEG;AACH,wBAAgB,aAAa,QAG5B;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,OAGrD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CLI Generation System
|
|
4
|
+
*
|
|
5
|
+
* This module provides tools for creating command-line interfaces for ConfigForge converters.
|
|
6
|
+
* It includes utilities for generating CLIs, managing profiles, and handling common CLI operations.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.Command = exports.CommandBuilder = exports.CLIUtils = exports.CLIGenerator = void 0;
|
|
10
|
+
exports.createCLI = createCLI;
|
|
11
|
+
exports.createCommand = createCommand;
|
|
12
|
+
exports.quickCLI = quickCLI;
|
|
13
|
+
var CLIGenerator_1 = require("./CLIGenerator");
|
|
14
|
+
Object.defineProperty(exports, "CLIGenerator", { enumerable: true, get: function () { return CLIGenerator_1.CLIGenerator; } });
|
|
15
|
+
var CLIUtils_1 = require("./CLIUtils");
|
|
16
|
+
Object.defineProperty(exports, "CLIUtils", { enumerable: true, get: function () { return CLIUtils_1.CLIUtils; } });
|
|
17
|
+
var CommandBuilder_1 = require("./CommandBuilder");
|
|
18
|
+
Object.defineProperty(exports, "CommandBuilder", { enumerable: true, get: function () { return CommandBuilder_1.CommandBuilder; } });
|
|
19
|
+
// Re-export commonly used types from commander
|
|
20
|
+
var commander_1 = require("commander");
|
|
21
|
+
Object.defineProperty(exports, "Command", { enumerable: true, get: function () { return commander_1.Command; } });
|
|
22
|
+
/**
|
|
23
|
+
* Create a CLI generator with default configuration
|
|
24
|
+
*/
|
|
25
|
+
function createCLI(options) {
|
|
26
|
+
const { CLIGenerator } = require('./CLIGenerator');
|
|
27
|
+
return new CLIGenerator(options);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Create a command builder
|
|
31
|
+
*/
|
|
32
|
+
function createCommand() {
|
|
33
|
+
const { CommandBuilder } = require('./CommandBuilder');
|
|
34
|
+
return CommandBuilder.create();
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Quick CLI creation for a converter
|
|
38
|
+
*/
|
|
39
|
+
function quickCLI(converter, name) {
|
|
40
|
+
const { CLIGenerator } = require('./CLIGenerator');
|
|
41
|
+
return CLIGenerator.forConverter(converter, { name });
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scripts/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAkBH,8BAKC;AAKD,sCAGC;AAKD,4BAGC;AArCD,+CAMwB;AALtB,4GAAA,YAAY,OAAA;AAMd,uCAAgF;AAAvE,oGAAA,QAAQ,OAAA;AACjB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AAEvB,+CAA+C;AAC/C,uCAAoC;AAA3B,oGAAA,OAAO,OAAA;AAEhB;;GAEG;AACH,SAAgB,SAAS,CACvB,OAA+D;IAE/D,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnD,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa;IAC3B,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACvD,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,SAAc,EAAE,IAAa;IACpD,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnD,OAAO,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACxD,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export interface Mapping {
|
|
|
24
24
|
source: string;
|
|
25
25
|
target: string;
|
|
26
26
|
transform?: TransformFn;
|
|
27
|
-
condition?: ConditionFn;
|
|
27
|
+
condition?: string | ConditionFn;
|
|
28
28
|
type: MappingType;
|
|
29
29
|
metadata?: MappingMetadata;
|
|
30
30
|
}
|
|
@@ -33,6 +33,10 @@ export interface MappingMetadata {
|
|
|
33
33
|
description?: string;
|
|
34
34
|
examples?: any[];
|
|
35
35
|
deprecated?: boolean;
|
|
36
|
+
forEachFn?: ForEachFn;
|
|
37
|
+
condition?: string | ConditionFn;
|
|
38
|
+
sources?: string[];
|
|
39
|
+
mergeFn?: MergeFn;
|
|
36
40
|
}
|
|
37
41
|
export type TransformFn<T = any, R = any> = (value: T, context?: TransformContext) => R | Promise<R>;
|
|
38
42
|
export interface TransformContext {
|
|
@@ -138,6 +142,9 @@ export interface PipelineContext {
|
|
|
138
142
|
converter: any;
|
|
139
143
|
options: ForgeOptions;
|
|
140
144
|
metadata: Record<string, any>;
|
|
145
|
+
warnings: Warning[];
|
|
146
|
+
errors: ConfigForgeError[];
|
|
147
|
+
stats: Partial<ConversionStats>;
|
|
141
148
|
}
|
|
142
149
|
export interface BatchOptions {
|
|
143
150
|
parallel?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAGnE,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAGD,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,SAAS,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;AA0IA,cAAc;AACd,MAAsB,gBAAiB,SAAQ,KAAK;IAMlD,YACE,OAAe,EACf,OAA+D;QAE/D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAC3B,CAAC;QACD,IAAI,OAAO,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACvC,CAAC;QACD,IAAI,OAAO,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QACjC,CAAC;IACH,CAAC;CACF;AAtBD,4CAsBC;AAED,MAAa,uBAAwB,SAAQ,gBAAgB;IAA7D;;QACE,SAAI,GAAG,eAAe,CAAC;IACzB,CAAC;CAAA;AAFD,0DAEC;AAED,MAAa,YAAa,SAAQ,gBAAgB;IAAlD;;QACE,SAAI,GAAG,eAAe,CAAC;IACzB,CAAC;CAAA;AAFD,oCAEC;AAED,MAAa,eAAgB,SAAQ,gBAAgB;IAArD;;QACE,SAAI,GAAG,kBAAkB,CAAC;IAC5B,CAAC;CAAA;AAFD,0CAEC;AAED,MAAa,UAAW,SAAQ,gBAAgB;IAAhD;;QACE,SAAI,GAAG,aAAa,CAAC;IACvB,CAAC;CAAA;AAFD,gCAEC;AAED,MAAa,cAAe,SAAQ,gBAAgB;IAApD;;QACE,SAAI,GAAG,iBAAiB,CAAC;IAC3B,CAAC;CAAA;AAFD,wCAEC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Validator, ValidatorFn } from '../types';
|
|
2
|
+
import * as builtInValidators from './built-in';
|
|
3
|
+
/**
|
|
4
|
+
* Registry for managing validators
|
|
5
|
+
*/
|
|
6
|
+
export declare class ValidatorRegistry {
|
|
7
|
+
private validators;
|
|
8
|
+
constructor();
|
|
9
|
+
/**
|
|
10
|
+
* Register a validator
|
|
11
|
+
*/
|
|
12
|
+
register(validator: Validator): void;
|
|
13
|
+
/**
|
|
14
|
+
* Register a validator by name and function
|
|
15
|
+
*/
|
|
16
|
+
registerFunction(name: string, validate: ValidatorFn): void;
|
|
17
|
+
/**
|
|
18
|
+
* Get a validator by name
|
|
19
|
+
*/
|
|
20
|
+
get(name: string): Validator | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* Get a validator function by name
|
|
23
|
+
*/
|
|
24
|
+
getFunction(name: string): ValidatorFn | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Check if a validator exists
|
|
27
|
+
*/
|
|
28
|
+
has(name: string): boolean;
|
|
29
|
+
/**
|
|
30
|
+
* List all registered validators
|
|
31
|
+
*/
|
|
32
|
+
list(): string[];
|
|
33
|
+
/**
|
|
34
|
+
* Remove a validator
|
|
35
|
+
*/
|
|
36
|
+
unregister(name: string): boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Clear all validators
|
|
39
|
+
*/
|
|
40
|
+
clear(): void;
|
|
41
|
+
/**
|
|
42
|
+
* Register all built-in validators
|
|
43
|
+
*/
|
|
44
|
+
private registerBuiltInValidators;
|
|
45
|
+
/**
|
|
46
|
+
* Create a validator instance with built-in validators
|
|
47
|
+
*/
|
|
48
|
+
static create(): ValidatorRegistry;
|
|
49
|
+
/**
|
|
50
|
+
* Get built-in validators object for direct access
|
|
51
|
+
*/
|
|
52
|
+
static getBuiltIns(): typeof builtInValidators;
|
|
53
|
+
}
|
|
54
|
+
export declare const validatorRegistry: ValidatorRegistry;
|
|
55
|
+
//# sourceMappingURL=ValidatorRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValidatorRegistry.d.ts","sourceRoot":"","sources":["../../src/validators/ValidatorRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,KAAK,iBAAiB,MAAM,YAAY,CAAC;AAEhD;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,UAAU,CAAqC;;IAMvD;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIpC;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI;IAI3D;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAIxC;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIlD;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;OAEG;IACH,IAAI,IAAI,MAAM,EAAE;IAIhB;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIjC;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAgCjC;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,iBAAiB;IAIlC;;OAEG;IACH,MAAM,CAAC,WAAW;CAGnB;AAGD,eAAO,MAAM,iBAAiB,mBAA6B,CAAC"}
|
|
@@ -0,0 +1,140 @@
|
|
|
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.validatorRegistry = exports.ValidatorRegistry = void 0;
|
|
37
|
+
const builtInValidators = __importStar(require("./built-in"));
|
|
38
|
+
/**
|
|
39
|
+
* Registry for managing validators
|
|
40
|
+
*/
|
|
41
|
+
class ValidatorRegistry {
|
|
42
|
+
constructor() {
|
|
43
|
+
this.validators = new Map();
|
|
44
|
+
this.registerBuiltInValidators();
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Register a validator
|
|
48
|
+
*/
|
|
49
|
+
register(validator) {
|
|
50
|
+
this.validators.set(validator.name, validator);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Register a validator by name and function
|
|
54
|
+
*/
|
|
55
|
+
registerFunction(name, validate) {
|
|
56
|
+
this.register({ name, validate });
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Get a validator by name
|
|
60
|
+
*/
|
|
61
|
+
get(name) {
|
|
62
|
+
return this.validators.get(name);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Get a validator function by name
|
|
66
|
+
*/
|
|
67
|
+
getFunction(name) {
|
|
68
|
+
return this.validators.get(name)?.validate;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Check if a validator exists
|
|
72
|
+
*/
|
|
73
|
+
has(name) {
|
|
74
|
+
return this.validators.has(name);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* List all registered validators
|
|
78
|
+
*/
|
|
79
|
+
list() {
|
|
80
|
+
return Array.from(this.validators.keys());
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Remove a validator
|
|
84
|
+
*/
|
|
85
|
+
unregister(name) {
|
|
86
|
+
return this.validators.delete(name);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Clear all validators
|
|
90
|
+
*/
|
|
91
|
+
clear() {
|
|
92
|
+
this.validators.clear();
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Register all built-in validators
|
|
96
|
+
*/
|
|
97
|
+
registerBuiltInValidators() {
|
|
98
|
+
// Simple validators
|
|
99
|
+
this.registerFunction('required', builtInValidators.required);
|
|
100
|
+
this.registerFunction('positive', builtInValidators.positive);
|
|
101
|
+
this.registerFunction('nonNegative', builtInValidators.nonNegative);
|
|
102
|
+
this.registerFunction('integer', builtInValidators.integer);
|
|
103
|
+
this.registerFunction('email', builtInValidators.email);
|
|
104
|
+
this.registerFunction('url', builtInValidators.url);
|
|
105
|
+
this.registerFunction('uuid', builtInValidators.uuid);
|
|
106
|
+
this.registerFunction('uniqueItems', builtInValidators.uniqueItems);
|
|
107
|
+
// Factory validators (these need to be created with parameters)
|
|
108
|
+
// Note: These are registered as factory functions, not direct validators
|
|
109
|
+
this.registerFunction('minLength', builtInValidators.minLength);
|
|
110
|
+
this.registerFunction('maxLength', builtInValidators.maxLength);
|
|
111
|
+
this.registerFunction('range', builtInValidators.range);
|
|
112
|
+
this.registerFunction('pattern', builtInValidators.pattern);
|
|
113
|
+
this.registerFunction('oneOf', builtInValidators.oneOf);
|
|
114
|
+
this.registerFunction('minItems', builtInValidators.minItems);
|
|
115
|
+
this.registerFunction('maxItems', builtInValidators.maxItems);
|
|
116
|
+
this.registerFunction('type', builtInValidators.type);
|
|
117
|
+
this.registerFunction('hasProperties', builtInValidators.hasProperties);
|
|
118
|
+
this.registerFunction('custom', builtInValidators.custom);
|
|
119
|
+
this.registerFunction('all', builtInValidators.all);
|
|
120
|
+
this.registerFunction('any', builtInValidators.any);
|
|
121
|
+
this.registerFunction('optional', builtInValidators.optional);
|
|
122
|
+
this.registerFunction('when', builtInValidators.when);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Create a validator instance with built-in validators
|
|
126
|
+
*/
|
|
127
|
+
static create() {
|
|
128
|
+
return new ValidatorRegistry();
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Get built-in validators object for direct access
|
|
132
|
+
*/
|
|
133
|
+
static getBuiltIns() {
|
|
134
|
+
return builtInValidators;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
exports.ValidatorRegistry = ValidatorRegistry;
|
|
138
|
+
// Create and export a default registry instance
|
|
139
|
+
exports.validatorRegistry = ValidatorRegistry.create();
|
|
140
|
+
//# sourceMappingURL=ValidatorRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValidatorRegistry.js","sourceRoot":"","sources":["../../src/validators/ValidatorRegistry.ts"],"names":[],"mappings":"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"}
|