configforge 1.0.0-beta.1 → 1.0.0-beta.10

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 (77) hide show
  1. package/README.md +574 -11
  2. package/dist/core/ConversionResult.d.ts +22 -0
  3. package/dist/core/ConversionResult.d.ts.map +1 -1
  4. package/dist/core/ConversionResult.js +44 -30
  5. package/dist/core/ConversionResult.js.map +1 -1
  6. package/dist/core/Converter.d.ts +40 -10
  7. package/dist/core/Converter.d.ts.map +1 -1
  8. package/dist/core/Converter.js +137 -29
  9. package/dist/core/Converter.js.map +1 -1
  10. package/dist/core/Mapper.d.ts +12 -0
  11. package/dist/core/Mapper.d.ts.map +1 -1
  12. package/dist/core/Mapper.js +155 -3
  13. package/dist/core/Mapper.js.map +1 -1
  14. package/dist/core/Pipeline.d.ts +42 -0
  15. package/dist/core/Pipeline.d.ts.map +1 -0
  16. package/dist/core/Pipeline.js +134 -0
  17. package/dist/core/Pipeline.js.map +1 -0
  18. package/dist/core/pipeline/PipelineBuilder.d.ts +67 -0
  19. package/dist/core/pipeline/PipelineBuilder.d.ts.map +1 -0
  20. package/dist/core/pipeline/PipelineBuilder.js +109 -0
  21. package/dist/core/pipeline/PipelineBuilder.js.map +1 -0
  22. package/dist/core/pipeline/PipelineSteps.d.ts +74 -0
  23. package/dist/core/pipeline/PipelineSteps.d.ts.map +1 -0
  24. package/dist/core/pipeline/PipelineSteps.js +298 -0
  25. package/dist/core/pipeline/PipelineSteps.js.map +1 -0
  26. package/dist/errors/ErrorCollector.d.ts +119 -0
  27. package/dist/errors/ErrorCollector.d.ts.map +1 -0
  28. package/dist/errors/ErrorCollector.js +197 -0
  29. package/dist/errors/ErrorCollector.js.map +1 -0
  30. package/dist/errors/ErrorContext.d.ts +168 -0
  31. package/dist/errors/ErrorContext.d.ts.map +1 -0
  32. package/dist/errors/ErrorContext.js +356 -0
  33. package/dist/errors/ErrorContext.js.map +1 -0
  34. package/dist/errors/ErrorRecovery.d.ts +91 -0
  35. package/dist/errors/ErrorRecovery.d.ts.map +1 -0
  36. package/dist/errors/ErrorRecovery.js +321 -0
  37. package/dist/errors/ErrorRecovery.js.map +1 -0
  38. package/dist/errors/ErrorReporter.d.ts +58 -0
  39. package/dist/errors/ErrorReporter.d.ts.map +1 -0
  40. package/dist/errors/ErrorReporter.js +262 -0
  41. package/dist/errors/ErrorReporter.js.map +1 -0
  42. package/dist/errors/ErrorTypes.d.ts +103 -0
  43. package/dist/errors/ErrorTypes.d.ts.map +1 -0
  44. package/dist/errors/ErrorTypes.js +125 -0
  45. package/dist/errors/ErrorTypes.js.map +1 -0
  46. package/dist/errors/SpecificErrors.d.ts +45 -0
  47. package/dist/errors/SpecificErrors.d.ts.map +1 -0
  48. package/dist/errors/SpecificErrors.js +124 -0
  49. package/dist/errors/SpecificErrors.js.map +1 -0
  50. package/dist/errors/SuggestionEngine.d.ts +63 -0
  51. package/dist/errors/SuggestionEngine.d.ts.map +1 -0
  52. package/dist/errors/SuggestionEngine.js +328 -0
  53. package/dist/errors/SuggestionEngine.js.map +1 -0
  54. package/dist/errors/index.d.ts +12 -0
  55. package/dist/errors/index.d.ts.map +1 -0
  56. package/dist/errors/index.js +39 -0
  57. package/dist/errors/index.js.map +1 -0
  58. package/dist/index.d.ts +3 -0
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +7 -2
  61. package/dist/index.js.map +1 -1
  62. package/dist/types/index.d.ts +8 -1
  63. package/dist/types/index.d.ts.map +1 -1
  64. package/dist/types/index.js.map +1 -1
  65. package/dist/validators/ValidatorRegistry.d.ts +55 -0
  66. package/dist/validators/ValidatorRegistry.d.ts.map +1 -0
  67. package/dist/validators/ValidatorRegistry.js +140 -0
  68. package/dist/validators/ValidatorRegistry.js.map +1 -0
  69. package/dist/validators/built-in.d.ts +93 -0
  70. package/dist/validators/built-in.d.ts.map +1 -0
  71. package/dist/validators/built-in.js +290 -0
  72. package/dist/validators/built-in.js.map +1 -0
  73. package/dist/validators/index.d.ts +4 -0
  74. package/dist/validators/index.d.ts.map +1 -0
  75. package/dist/validators/index.js +24 -0
  76. package/dist/validators/index.js.map +1 -0
  77. package/package.json +1 -1
@@ -0,0 +1,328 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SuggestionEngine = void 0;
4
+ /**
5
+ * Suggestion engine for providing helpful error messages and corrections
6
+ */
7
+ class SuggestionEngine {
8
+ /**
9
+ * Calculate Levenshtein distance between two strings
10
+ */
11
+ static levenshteinDistance(str1, str2) {
12
+ const matrix = [];
13
+ for (let i = 0; i <= str2.length; i++) {
14
+ matrix[i] = [i];
15
+ }
16
+ for (let j = 0; j <= str1.length; j++) {
17
+ matrix[0][j] = j;
18
+ }
19
+ for (let i = 1; i <= str2.length; i++) {
20
+ for (let j = 1; j <= str1.length; j++) {
21
+ if (str2.charAt(i - 1) === str1.charAt(j - 1)) {
22
+ matrix[i][j] = matrix[i - 1][j - 1];
23
+ }
24
+ else {
25
+ matrix[i][j] = Math.min(matrix[i - 1][j - 1] + 1, // substitution
26
+ matrix[i][j - 1] + 1, // insertion
27
+ matrix[i - 1][j] + 1 // deletion
28
+ );
29
+ }
30
+ }
31
+ }
32
+ return matrix[str2.length][str1.length];
33
+ }
34
+ /**
35
+ * Calculate similarity score between two strings (0-1, where 1 is identical)
36
+ */
37
+ static calculateSimilarity(str1, str2) {
38
+ if (str1 === str2)
39
+ return 1;
40
+ if (str1.length === 0 || str2.length === 0)
41
+ return 0;
42
+ const s1 = str1.toLowerCase();
43
+ const s2 = str2.toLowerCase();
44
+ // Check for exact prefix/suffix matches (bonus points)
45
+ let bonus = 0;
46
+ if (s1.startsWith(s2) || s2.startsWith(s1)) {
47
+ bonus = 0.1; // Prefix match bonus
48
+ }
49
+ else if (s1.endsWith(s2) || s2.endsWith(s1)) {
50
+ bonus = 0.05; // Suffix match bonus
51
+ }
52
+ const maxLength = Math.max(str1.length, str2.length);
53
+ const distance = this.levenshteinDistance(s1, s2);
54
+ const baseSimilarity = 1 - distance / maxLength;
55
+ return Math.min(1, baseSimilarity + bonus);
56
+ }
57
+ /**
58
+ * Find similar strings from a list of candidates
59
+ */
60
+ static findSimilar(target, candidates, threshold = SuggestionEngine.SIMILARITY_THRESHOLD) {
61
+ const similarities = candidates
62
+ .map(candidate => ({
63
+ value: candidate,
64
+ similarity: this.calculateSimilarity(target, candidate),
65
+ }))
66
+ .filter(item => item.similarity >= threshold)
67
+ .sort((a, b) => {
68
+ // First sort by similarity (descending)
69
+ if (b.similarity !== a.similarity) {
70
+ return b.similarity - a.similarity;
71
+ }
72
+ // If similarity is equal, prefer shorter strings
73
+ if (a.value.length !== b.value.length) {
74
+ return a.value.length - b.value.length;
75
+ }
76
+ // If length is also equal, prefer reverse alphabetical order (apply before apple)
77
+ return b.value.localeCompare(a.value);
78
+ })
79
+ .slice(0, this.MAX_SUGGESTIONS);
80
+ return similarities;
81
+ }
82
+ /**
83
+ * Suggest field names for mapping errors
84
+ */
85
+ static suggestFieldNames(invalidField, availableFields) {
86
+ // First, try exact substring matches
87
+ const substringMatches = availableFields.filter(field => field.toLowerCase().includes(invalidField.toLowerCase()) ||
88
+ invalidField.toLowerCase().includes(field.toLowerCase()));
89
+ // If we have substring matches, prioritize them
90
+ if (substringMatches.length > 0) {
91
+ return substringMatches.slice(0, this.MAX_SUGGESTIONS);
92
+ }
93
+ // Otherwise, use similarity matching with a lower threshold for field names
94
+ const suggestions = this.findSimilar(invalidField, availableFields, 0.4);
95
+ return suggestions.map(s => s.value);
96
+ }
97
+ /**
98
+ * Suggest property paths for nested object access
99
+ */
100
+ static suggestPropertyPaths(invalidPath, availablePaths) {
101
+ // Split path into segments for better matching
102
+ const pathSegments = invalidPath.split('.');
103
+ const lastSegment = pathSegments[pathSegments.length - 1] || '';
104
+ // Calculate scores for each available path
105
+ const pathScores = availablePaths.map(path => {
106
+ const segments = path.split('.');
107
+ const lastAvailableSegment = segments[segments.length - 1] || '';
108
+ // Score based on last segment similarity
109
+ const lastSegmentSimilarity = this.calculateSimilarity(lastSegment, lastAvailableSegment);
110
+ // Score based on full path similarity
111
+ const fullPathSimilarity = this.calculateSimilarity(invalidPath, path);
112
+ // Score based on substring matches in path segments
113
+ let segmentMatchScore = 0;
114
+ pathSegments.forEach(inputSegment => {
115
+ if (segments.some(pathSegment => pathSegment.toLowerCase().includes(inputSegment.toLowerCase()) ||
116
+ inputSegment.toLowerCase().includes(pathSegment.toLowerCase()))) {
117
+ segmentMatchScore += 0.5;
118
+ }
119
+ });
120
+ // Combine scores with weights
121
+ const combinedScore = lastSegmentSimilarity * 0.4 +
122
+ fullPathSimilarity * 0.3 +
123
+ segmentMatchScore * 0.3;
124
+ return { path, score: combinedScore };
125
+ });
126
+ // Sort by combined score and return top matches
127
+ const sortedPaths = pathScores
128
+ .filter(item => item.score >= 0.3)
129
+ .sort((a, b) => b.score - a.score)
130
+ .slice(0, this.MAX_SUGGESTIONS);
131
+ if (sortedPaths.length > 0) {
132
+ return sortedPaths.map(item => item.path);
133
+ }
134
+ // Fallback to simple similarity matching
135
+ const suggestions = this.findSimilar(invalidPath, availablePaths, 0.4);
136
+ return suggestions.map(s => s.value);
137
+ }
138
+ /**
139
+ * Suggest configuration values
140
+ */
141
+ static suggestConfigValues(invalidValue, validValues) {
142
+ // First, try substring matches (both directions)
143
+ const substringMatches = validValues.filter(value => value.toLowerCase().includes(invalidValue.toLowerCase()) ||
144
+ invalidValue.toLowerCase().includes(value.toLowerCase()));
145
+ // If we have substring matches, prioritize them
146
+ if (substringMatches.length > 0) {
147
+ return substringMatches.slice(0, this.MAX_SUGGESTIONS);
148
+ }
149
+ // Otherwise, use similarity matching with lower threshold
150
+ const suggestions = this.findSimilar(invalidValue, validValues, 0.3);
151
+ return suggestions.map(s => s.value);
152
+ }
153
+ /**
154
+ * Generate helpful error message for missing fields
155
+ */
156
+ static generateMissingFieldMessage(missingField, availableFields) {
157
+ const suggestions = this.suggestFieldNames(missingField, availableFields);
158
+ let message = `Field '${missingField}' not found in source data.`;
159
+ if (suggestions.length > 0) {
160
+ message += ` Did you mean: ${suggestions
161
+ .slice(0, 3)
162
+ .map(s => `'${s}'`)
163
+ .join(', ')}?`;
164
+ }
165
+ else if (availableFields.length > 0) {
166
+ const topFields = availableFields.slice(0, 5);
167
+ message += ` Available fields: ${topFields.map(f => `'${f}'`).join(', ')}${availableFields.length > 5 ? '...' : ''}.`;
168
+ }
169
+ return message;
170
+ }
171
+ /**
172
+ * Generate helpful error message for invalid paths
173
+ */
174
+ static generateInvalidPathMessage(invalidPath, availablePaths) {
175
+ const suggestions = this.suggestPropertyPaths(invalidPath, availablePaths);
176
+ let message = `Invalid path '${invalidPath}'.`;
177
+ if (suggestions.length > 0) {
178
+ message += ` Did you mean: ${suggestions
179
+ .slice(0, 3)
180
+ .map(s => `'${s}'`)
181
+ .join(', ')}?`;
182
+ }
183
+ else if (availablePaths.length > 0) {
184
+ const topPaths = availablePaths.slice(0, 5);
185
+ message += ` Available paths: ${topPaths.map(p => `'${p}'`).join(', ')}${availablePaths.length > 5 ? '...' : ''}.`;
186
+ }
187
+ return message;
188
+ }
189
+ /**
190
+ * Generate helpful error message for invalid configuration
191
+ */
192
+ static generateInvalidConfigMessage(configKey, invalidValue, validValues) {
193
+ const suggestions = this.suggestConfigValues(invalidValue, validValues);
194
+ let message = `Invalid value '${invalidValue}' for configuration '${configKey}'.`;
195
+ if (suggestions.length > 0) {
196
+ message += ` Did you mean: ${suggestions
197
+ .slice(0, 3)
198
+ .map(s => `'${s}'`)
199
+ .join(', ')}?`;
200
+ }
201
+ if (validValues.length > 0) {
202
+ message += ` Valid values: ${validValues.map(v => `'${v}'`).join(', ')}.`;
203
+ }
204
+ return message;
205
+ }
206
+ /**
207
+ * Generate suggestions for transform function errors
208
+ */
209
+ static suggestTransformFix(error, inputValue, expectedType) {
210
+ const inputType = typeof inputValue;
211
+ let suggestion = 'Check the transform function implementation.';
212
+ if (expectedType && inputType !== expectedType) {
213
+ suggestion = `Expected ${expectedType} but got ${inputType}. `;
214
+ switch (expectedType) {
215
+ case 'string':
216
+ suggestion += 'Consider using String(value) or value.toString().';
217
+ break;
218
+ case 'number':
219
+ suggestion += 'Consider using Number(value) or parseFloat(value).';
220
+ break;
221
+ case 'boolean':
222
+ suggestion += 'Consider using Boolean(value) or !!value.';
223
+ break;
224
+ default:
225
+ suggestion += 'Add type checking in your transform function.';
226
+ }
227
+ }
228
+ else if (error.message.includes('undefined')) {
229
+ suggestion =
230
+ 'Check for undefined values before processing. Consider using optional chaining (?.) or default values.';
231
+ }
232
+ else if (error.message.includes('null')) {
233
+ suggestion =
234
+ 'Check for null values before processing. Consider using nullish coalescing (??) operator.';
235
+ }
236
+ return suggestion;
237
+ }
238
+ /**
239
+ * Generate suggestions for validation errors
240
+ */
241
+ static suggestValidationFix(fieldPath, value, validationRule) {
242
+ const valueType = typeof value;
243
+ let suggestion = `Validation failed for field '${fieldPath}'.`;
244
+ switch (validationRule.toLowerCase()) {
245
+ case 'required':
246
+ suggestion += ' This field is required and cannot be empty.';
247
+ break;
248
+ case 'email':
249
+ suggestion +=
250
+ ' Please provide a valid email address (e.g., user@example.com).';
251
+ break;
252
+ case 'url':
253
+ suggestion +=
254
+ ' Please provide a valid URL (e.g., https://example.com).';
255
+ break;
256
+ case 'number':
257
+ suggestion += ` Expected a number but got ${valueType}. Consider converting the value to a number.`;
258
+ break;
259
+ case 'string':
260
+ suggestion += ` Expected a string but got ${valueType}. Consider converting the value to a string.`;
261
+ break;
262
+ case 'boolean':
263
+ suggestion += ` Expected a boolean but got ${valueType}. Consider using true/false values.`;
264
+ break;
265
+ default:
266
+ suggestion += ` Check the validation rule: ${validationRule}.`;
267
+ }
268
+ return suggestion;
269
+ }
270
+ /**
271
+ * Extract all possible paths from an object for suggestions
272
+ */
273
+ static extractPaths(obj, prefix = '') {
274
+ const paths = [];
275
+ if (obj === null || typeof obj !== 'object') {
276
+ return paths;
277
+ }
278
+ if (Array.isArray(obj)) {
279
+ obj.forEach((item, index) => {
280
+ const arrayPath = prefix ? `${prefix}[${index}]` : `[${index}]`;
281
+ paths.push(arrayPath);
282
+ paths.push(...this.extractPaths(item, arrayPath));
283
+ });
284
+ }
285
+ else {
286
+ Object.keys(obj).forEach(key => {
287
+ const currentPath = prefix ? `${prefix}.${key}` : key;
288
+ paths.push(currentPath);
289
+ paths.push(...this.extractPaths(obj[key], currentPath));
290
+ });
291
+ }
292
+ return paths;
293
+ }
294
+ /**
295
+ * Extract field names from an object (top-level and nested)
296
+ */
297
+ static extractFieldNames(obj, includeNested = true) {
298
+ const fields = new Set();
299
+ const traverse = (current, path = '') => {
300
+ if (current === null || typeof current !== 'object') {
301
+ return;
302
+ }
303
+ if (Array.isArray(current)) {
304
+ current.forEach((item, index) => {
305
+ if (includeNested) {
306
+ traverse(item, path ? `${path}[${index}]` : `[${index}]`);
307
+ }
308
+ });
309
+ }
310
+ else {
311
+ Object.keys(current).forEach(key => {
312
+ const currentPath = path ? `${path}.${key}` : key;
313
+ fields.add(key); // Add the key itself
314
+ if (includeNested) {
315
+ fields.add(currentPath); // Add the full path
316
+ traverse(current[key], currentPath);
317
+ }
318
+ });
319
+ }
320
+ };
321
+ traverse(obj);
322
+ return Array.from(fields);
323
+ }
324
+ }
325
+ exports.SuggestionEngine = SuggestionEngine;
326
+ SuggestionEngine.SIMILARITY_THRESHOLD = 0.6;
327
+ SuggestionEngine.MAX_SUGGESTIONS = 5;
328
+ //# sourceMappingURL=SuggestionEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SuggestionEngine.js","sourceRoot":"","sources":["../../src/errors/SuggestionEngine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Error handling and reporting system for ConfigForge
3
+ */
4
+ export * from './ErrorTypes';
5
+ export * from './SpecificErrors';
6
+ export * from './ErrorCollector';
7
+ export * from './ErrorReporter';
8
+ export * from './ErrorRecovery';
9
+ export * from './ErrorContext';
10
+ export * from './SuggestionEngine';
11
+ export { ConfigForgeError, ParseError, MappingError, ValidationError, TransformError, GenericConfigForgeError, } from '../types';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAGhC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AAGnC,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,uBAAuB,GACxB,MAAM,UAAU,CAAC"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ /**
3
+ * Error handling and reporting system for ConfigForge
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.GenericConfigForgeError = exports.TransformError = exports.ValidationError = exports.MappingError = exports.ParseError = exports.ConfigForgeError = void 0;
21
+ // Export error types
22
+ __exportStar(require("./ErrorTypes"), exports);
23
+ __exportStar(require("./SpecificErrors"), exports);
24
+ // Export error management
25
+ __exportStar(require("./ErrorCollector"), exports);
26
+ __exportStar(require("./ErrorReporter"), exports);
27
+ __exportStar(require("./ErrorRecovery"), exports);
28
+ // Export error context and utilities
29
+ __exportStar(require("./ErrorContext"), exports);
30
+ __exportStar(require("./SuggestionEngine"), exports);
31
+ // Re-export base error types from main types
32
+ var types_1 = require("../types");
33
+ Object.defineProperty(exports, "ConfigForgeError", { enumerable: true, get: function () { return types_1.ConfigForgeError; } });
34
+ Object.defineProperty(exports, "ParseError", { enumerable: true, get: function () { return types_1.ParseError; } });
35
+ Object.defineProperty(exports, "MappingError", { enumerable: true, get: function () { return types_1.MappingError; } });
36
+ Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return types_1.ValidationError; } });
37
+ Object.defineProperty(exports, "TransformError", { enumerable: true, get: function () { return types_1.TransformError; } });
38
+ Object.defineProperty(exports, "GenericConfigForgeError", { enumerable: true, get: function () { return types_1.GenericConfigForgeError; } });
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,qBAAqB;AACrB,+CAA6B;AAC7B,mDAAiC;AAEjC,0BAA0B;AAC1B,mDAAiC;AACjC,kDAAgC;AAChC,kDAAgC;AAEhC,qCAAqC;AACrC,iDAA+B;AAC/B,qDAAmC;AAEnC,6CAA6C;AAC7C,kCAOkB;AANhB,yGAAA,gBAAgB,OAAA;AAChB,mGAAA,UAAU,OAAA;AACV,qGAAA,YAAY,OAAA;AACZ,wGAAA,eAAe,OAAA;AACf,uGAAA,cAAc,OAAA;AACd,gHAAA,uBAAuB,OAAA"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,9 @@ export { forge } from './core/Forge';
2
2
  export { Converter } from './core/Converter';
3
3
  export { Mapper } from './core/Mapper';
4
4
  export * as transforms from './transformers/built-in';
5
+ export * as validators from './validators/built-in';
6
+ export { ValidatorRegistry, validatorRegistry, } from './validators/ValidatorRegistry';
5
7
  export * from './types';
8
+ export * from './errors';
6
9
  export { parsePath, setPath, mergePaths, detectFormat } from './utils';
7
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAC;AAEtD,cAAc,SAAS,CAAC;AAMxB,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAC;AACpD,OAAO,EACL,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,gCAAgC,CAAC;AACxC,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAMzB,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -36,7 +36,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.detectFormat = exports.mergePaths = exports.setPath = exports.parsePath = exports.transforms = exports.Mapper = exports.Converter = exports.forge = void 0;
39
+ exports.detectFormat = exports.mergePaths = exports.setPath = exports.parsePath = exports.validatorRegistry = exports.ValidatorRegistry = exports.validators = exports.transforms = exports.Mapper = exports.Converter = exports.forge = void 0;
40
40
  // Main exports
41
41
  var Forge_1 = require("./core/Forge");
42
42
  Object.defineProperty(exports, "forge", { enumerable: true, get: function () { return Forge_1.forge; } });
@@ -45,8 +45,13 @@ Object.defineProperty(exports, "Converter", { enumerable: true, get: function ()
45
45
  var Mapper_1 = require("./core/Mapper");
46
46
  Object.defineProperty(exports, "Mapper", { enumerable: true, get: function () { return Mapper_1.Mapper; } });
47
47
  exports.transforms = __importStar(require("./transformers/built-in"));
48
- // export * as validators from './validators/built-in'; // TODO: Implement validators module
48
+ exports.validators = __importStar(require("./validators/built-in"));
49
+ var ValidatorRegistry_1 = require("./validators/ValidatorRegistry");
50
+ Object.defineProperty(exports, "ValidatorRegistry", { enumerable: true, get: function () { return ValidatorRegistry_1.ValidatorRegistry; } });
51
+ Object.defineProperty(exports, "validatorRegistry", { enumerable: true, get: function () { return ValidatorRegistry_1.validatorRegistry; } });
49
52
  __exportStar(require("./types"), exports);
53
+ // Error handling exports
54
+ __exportStar(require("./errors"), exports);
50
55
  // Plugin exports
51
56
  // export { Plugin, PluginContext } from './plugins/Plugin'; // TODO: Implement plugin system
52
57
  // Utility exports
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,eAAe;AACf,sCAAqC;AAA5B,8FAAA,KAAK,OAAA;AACd,8CAA6C;AAApC,sGAAA,SAAS,OAAA;AAClB,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AACf,sEAAsD;AACtD,4FAA4F;AAC5F,0CAAwB;AAExB,iBAAiB;AACjB,6FAA6F;AAE7F,kBAAkB;AAClB,iCAAuE;AAA9D,kGAAA,SAAS,OAAA;AAAE,gGAAA,OAAO,OAAA;AAAE,mGAAA,UAAU,OAAA;AAAE,qGAAA,YAAY,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,eAAe;AACf,sCAAqC;AAA5B,8FAAA,KAAK,OAAA;AACd,8CAA6C;AAApC,sGAAA,SAAS,OAAA;AAClB,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AACf,sEAAsD;AACtD,oEAAoD;AACpD,oEAGwC;AAFtC,sHAAA,iBAAiB,OAAA;AACjB,sHAAA,iBAAiB,OAAA;AAEnB,0CAAwB;AAExB,yBAAyB;AACzB,2CAAyB;AAEzB,iBAAiB;AACjB,6FAA6F;AAE7F,kBAAkB;AAClB,iCAAuE;AAA9D,kGAAA,SAAS,OAAA;AAAE,gGAAA,OAAO,OAAA;AAAE,mGAAA,UAAU,OAAA;AAAE,qGAAA,YAAY,OAAA"}
@@ -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;IACxB,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC;AAEzE,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAGD,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI,CAC1C,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,gBAAgB,KACvB,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAEpB,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,SAAS,EAAE,GAAG,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAGD,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,GAAG,IAAI,CACjC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,iBAAiB,KACvB,OAAO,GAAG,MAAM,CAAC;AAEtB,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,GAAG,CAAC;IACf,SAAS,EAAE,eAAe,EAAE,CAAC;CAC9B;AAGD,MAAM,MAAM,WAAW,GAAG,CACxB,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,gBAAgB,KACtB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAGhC,MAAM,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAEhD,MAAM,MAAM,SAAS,GAAG,CACtB,IAAI,EAAE,GAAG,EACT,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,OAAO,EAAE,gBAAgB,KACtB,GAAG,GAAG,IAAI,CAAC;AAEhB,MAAM,MAAM,MAAM,GAAG,CACnB,IAAI,EAAE,GAAG,EACT,OAAO,CAAC,EAAE,gBAAgB,KACvB,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;AAGxB,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,GAAG,CAAC;IACV,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,KAAK,EAAE,eAAe,CAAC;IAGvB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,IAAI,MAAM,CAAC;IACjB,MAAM,IAAI,MAAM,CAAC;IACjB,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAG7E,8BAAsB,gBAAiB,SAAQ,KAAK;IAClD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,GAAG,CAAC;gBAGZ,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,GAAG,CAAA;KAAE;CAclE;AAED,qBAAa,uBAAwB,SAAQ,gBAAgB;IAC3D,IAAI,SAAmB;CACxB;AAED,qBAAa,YAAa,SAAQ,gBAAgB;IAChD,IAAI,SAAmB;CACxB;AAED,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD,IAAI,SAAsB;CAC3B;AAED,qBAAa,UAAW,SAAQ,gBAAgB;IAC9C,IAAI,SAAiB;CACtB;AAED,qBAAa,cAAe,SAAQ,gBAAgB;IAClD,IAAI,SAAqB;CAC1B;AAGD,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC;IAC5B,SAAS,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM,CAAC;CAC9B;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,CAAC;AAGpD,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAC9B;AAGD,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CAC1B;AAGD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,GAAG,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CACnE;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,GAAG,CAAC;IACZ,MAAM,EAAE,GAAG,CAAC;IACZ,SAAS,EAAE,GAAG,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAGD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IACrD,aAAa,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC;CAC1C;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,UAAU,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB;AAGD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAGD,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAGD,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GACpC;KACG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,MAAM,GAC5B,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GACjB,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAC/B,GAAG,CAAC,EAAE,GACR,KAAK;CACV,CAAC,MAAM,CAAC,CAAC,GACV,KAAK,CAAC;AAGV,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;KAC1B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAChE,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;KAC3B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;CACpD,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;KAC3B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CACpD,CAAC,MAAM,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;AAsIA,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"}
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"}