@malloydata/malloy-tag 0.0.339 → 0.0.340

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 (45) hide show
  1. package/dist/index.d.ts +1 -3
  2. package/dist/index.js +4 -5
  3. package/dist/index.js.map +1 -1
  4. package/dist/{peggy/index.d.ts → parser.d.ts} +13 -4
  5. package/dist/parser.js +181 -0
  6. package/dist/parser.js.map +1 -0
  7. package/package.json +13 -6
  8. package/src/index.ts +1 -3
  9. package/src/parser.ts +203 -0
  10. package/CONTEXT.md +0 -173
  11. package/README.md +0 -0
  12. package/dist/peggy/dist/peg-tag-parser.d.ts +0 -11
  13. package/dist/peggy/dist/peg-tag-parser.js +0 -3130
  14. package/dist/peggy/dist/peg-tag-parser.js.map +0 -1
  15. package/dist/peggy/index.js +0 -117
  16. package/dist/peggy/index.js.map +0 -1
  17. package/dist/peggy/interpreter.d.ts +0 -32
  18. package/dist/peggy/interpreter.js +0 -208
  19. package/dist/peggy/interpreter.js.map +0 -1
  20. package/dist/peggy/statements.d.ts +0 -51
  21. package/dist/peggy/statements.js +0 -7
  22. package/dist/peggy/statements.js.map +0 -1
  23. package/dist/schema.d.ts +0 -41
  24. package/dist/schema.js +0 -573
  25. package/dist/schema.js.map +0 -1
  26. package/dist/schema.spec.d.ts +0 -1
  27. package/dist/schema.spec.js +0 -980
  28. package/dist/schema.spec.js.map +0 -1
  29. package/dist/tags.spec.d.ts +0 -8
  30. package/dist/tags.spec.js +0 -884
  31. package/dist/tags.spec.js.map +0 -1
  32. package/dist/util.spec.d.ts +0 -1
  33. package/dist/util.spec.js +0 -43
  34. package/dist/util.spec.js.map +0 -1
  35. package/src/motly-schema.motly +0 -52
  36. package/src/peggy/dist/peg-tag-parser.js +0 -2790
  37. package/src/peggy/index.ts +0 -89
  38. package/src/peggy/interpreter.ts +0 -265
  39. package/src/peggy/malloy-tag.peggy +0 -224
  40. package/src/peggy/statements.ts +0 -49
  41. package/src/schema.spec.ts +0 -1280
  42. package/src/schema.ts +0 -852
  43. package/src/tags.spec.ts +0 -967
  44. package/src/util.spec.ts +0 -43
  45. package/tsconfig.json +0 -12
package/dist/schema.d.ts DELETED
@@ -1,41 +0,0 @@
1
- import type { Tag } from './tags';
2
- export interface SchemaError {
3
- message: string;
4
- path: string[];
5
- code: 'missing-required' | 'wrong-type' | 'unknown-property' | 'invalid-schema' | 'invalid-enum-value' | 'pattern-mismatch';
6
- }
7
- /**
8
- * Validate a tag against a schema.
9
- *
10
- * The schema is itself a Tag that defines Required and Optional properties:
11
- *
12
- * ```motly
13
- * Types: {
14
- * ItemType: {
15
- * Required: { name=string price=number }
16
- * }
17
- * }
18
- * Required: {
19
- * color=string
20
- * items="ItemType[]"
21
- * }
22
- * Optional: {
23
- * border=number
24
- * }
25
- * ```
26
- *
27
- * Type specifiers: string, number, boolean, date, tag, any
28
- * Array types: string[], number[], boolean[], date[], tag[], any[]
29
- * Custom types: defined in `Types` section, referenced by name or name[]
30
- * Union types: TypeName.oneOf = [type1, type2, ...]
31
- *
32
- * Additional properties:
33
- * - No `Additional`: reject unknown properties
34
- * - `Additional`: allow any additional properties (same as `Additional = any`)
35
- * - `Additional = TypeName`: validate additional properties against type
36
- *
37
- * @param tag The tag to validate
38
- * @param schema The schema to validate against (as a Tag)
39
- * @returns Array of schema errors, empty if valid
40
- */
41
- export declare function validateTag(tag: Tag, schema: Tag): SchemaError[];
package/dist/schema.js DELETED
@@ -1,573 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright Contributors to the Malloy project
4
- * SPDX-License-Identifier: MIT
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.validateTag = validateTag;
8
- const VALID_TYPES = [
9
- 'string',
10
- 'number',
11
- 'boolean',
12
- 'date',
13
- 'tag',
14
- 'flag',
15
- 'any',
16
- 'string[]',
17
- 'number[]',
18
- 'boolean[]',
19
- 'date[]',
20
- 'tag[]',
21
- 'any[]',
22
- ];
23
- function isValidSchemaType(value) {
24
- return VALID_TYPES.includes(value);
25
- }
26
- function isArrayType(type) {
27
- return type.endsWith('[]');
28
- }
29
- function getArrayElementType(type) {
30
- return type.slice(0, -2);
31
- }
32
- function parseTypeSpecifier(value, customTypes) {
33
- // Check built-in types first (including built-in array types)
34
- if (isValidSchemaType(value)) {
35
- return { type: value };
36
- }
37
- // Check for array suffix for custom types
38
- const isArray = value.endsWith('[]');
39
- const baseName = isArray ? value.slice(0, -2) : value;
40
- // Check if it's a custom type reference
41
- if (baseName in customTypes) {
42
- return { typeRef: baseName, typeRefArray: isArray };
43
- }
44
- // Unknown type
45
- return { invalidType: value };
46
- }
47
- function getExpectedType(schemaProp, customTypes) {
48
- // Check for shorthand: prop=string, prop=number, prop=customType, etc.
49
- const eqValue = schemaProp.text();
50
- if (eqValue !== undefined) {
51
- return parseTypeSpecifier(eqValue, customTypes);
52
- }
53
- // Check for full form: prop: { type=string }
54
- const typeValue = schemaProp.text('Type');
55
- if (typeValue !== undefined) {
56
- return parseTypeSpecifier(typeValue, customTypes);
57
- }
58
- return {};
59
- }
60
- function getActualType(tag) {
61
- const eq = tag.eq;
62
- if (eq === undefined) {
63
- // No value - check if it has properties
64
- if (!tag.hasProperties()) {
65
- // No value and no properties - it's a flag (presence-only)
66
- return 'flag';
67
- }
68
- // Has properties but no value - it's a "tag" type
69
- return 'tag';
70
- }
71
- if (Array.isArray(eq)) {
72
- // Check element types in array
73
- if (eq.length === 0) {
74
- return 'any[]'; // Empty array, could be any type
75
- }
76
- const elementTypes = eq.map(el => {
77
- if (el.eq === undefined) {
78
- return 'tag';
79
- }
80
- if (typeof el.eq === 'string')
81
- return 'string';
82
- if (typeof el.eq === 'number')
83
- return 'number';
84
- if (typeof el.eq === 'boolean')
85
- return 'boolean';
86
- if (el.eq instanceof Date)
87
- return 'date';
88
- return 'unknown';
89
- });
90
- // Check if all elements are the same type
91
- const firstType = elementTypes[0];
92
- const allSame = elementTypes.every(t => t === firstType);
93
- if (allSame && firstType !== 'unknown') {
94
- return `${firstType}[]`;
95
- }
96
- return 'mixed[]';
97
- }
98
- if (typeof eq === 'string')
99
- return 'string';
100
- if (typeof eq === 'number')
101
- return 'number';
102
- if (typeof eq === 'boolean')
103
- return 'boolean';
104
- if (eq instanceof Date)
105
- return 'date';
106
- return 'unknown';
107
- }
108
- function typeMatches(actualType, expectedType) {
109
- if (expectedType === 'any') {
110
- return true;
111
- }
112
- if (expectedType === 'tag') {
113
- return actualType === 'tag';
114
- }
115
- if (isArrayType(expectedType)) {
116
- const elementType = getArrayElementType(expectedType);
117
- // Check if actual is an array type
118
- if (!actualType.endsWith('[]')) {
119
- return false;
120
- }
121
- if (elementType === 'any') {
122
- return true; // any[] matches any array
123
- }
124
- // Extract actual element type
125
- const actualElementType = actualType.slice(0, -2);
126
- // Empty arrays (any[]) match any array type
127
- if (actualElementType === 'any') {
128
- return true;
129
- }
130
- return actualElementType === elementType;
131
- }
132
- return actualType === expectedType;
133
- }
134
- function getAdditionalConfig(schema, customTypes) {
135
- const additional = schema.tag('Additional');
136
- if (additional === undefined) {
137
- return { allow: false };
138
- }
139
- // Additional present - check if it has a type value
140
- const typeValue = additional.text();
141
- if (typeValue === undefined) {
142
- // Flag form: Additional (no value) = allow any
143
- return { allow: true };
144
- }
145
- // Check if it's "any" explicitly
146
- if (typeValue === 'any') {
147
- return { allow: true };
148
- }
149
- // It's a type reference
150
- if (typeValue in customTypes || isValidSchemaType(typeValue)) {
151
- return { allow: true, typeRef: typeValue };
152
- }
153
- // Unknown type - treat as allow (will error on validation if type is bad)
154
- return { allow: true, typeRef: typeValue };
155
- }
156
- function validateProperties(tag, schema, path, errors, additionalConfig, customTypes) {
157
- const requiredSection = schema.tag('Required');
158
- const optionalSection = schema.tag('Optional');
159
- const knownProps = new Set();
160
- // Check required properties
161
- if (requiredSection) {
162
- for (const [propName, schemaProp] of requiredSection.entries()) {
163
- knownProps.add(propName);
164
- const propTag = tag.tag(propName);
165
- if (propTag === undefined) {
166
- errors.push({
167
- message: `Missing required property '${propName}'`,
168
- path: [...path, propName],
169
- code: 'missing-required',
170
- });
171
- continue;
172
- }
173
- validateProperty(propTag, schemaProp, propName, path, errors, additionalConfig, customTypes);
174
- }
175
- }
176
- // Check optional properties that exist
177
- if (optionalSection) {
178
- for (const [propName, schemaProp] of optionalSection.entries()) {
179
- knownProps.add(propName);
180
- const propTag = tag.tag(propName);
181
- if (propTag === undefined) {
182
- continue; // Optional, so OK if missing
183
- }
184
- validateProperty(propTag, schemaProp, propName, path, errors, additionalConfig, customTypes);
185
- }
186
- }
187
- // Check for unknown properties (only if schema defines any)
188
- if (knownProps.size > 0) {
189
- for (const [propName, propTag] of tag.entries()) {
190
- if (!knownProps.has(propName)) {
191
- if (!additionalConfig.allow) {
192
- errors.push({
193
- message: `Unknown property '${propName}'`,
194
- path: [...path, propName],
195
- code: 'unknown-property',
196
- });
197
- }
198
- else if (additionalConfig.typeRef !== undefined) {
199
- // Validate unknown property against the Additional type
200
- validatePropertyAgainstType(propTag, additionalConfig.typeRef, propName, path, errors, additionalConfig, customTypes);
201
- }
202
- // else: allow any, no validation needed
203
- }
204
- }
205
- }
206
- }
207
- function getEnumInfo(refSchema, typeName) {
208
- const array = refSchema.array();
209
- if (!array || array.length === 0) {
210
- return {
211
- message: `Enum type '${typeName}' has no values`,
212
- path: [],
213
- code: 'invalid-schema',
214
- };
215
- }
216
- // Check what types are in the array
217
- let hasStrings = false;
218
- let hasNumbers = false;
219
- const stringValues = [];
220
- const numberValues = [];
221
- for (const el of array) {
222
- const val = el.eq;
223
- if (typeof val === 'string') {
224
- hasStrings = true;
225
- stringValues.push(val);
226
- }
227
- else if (typeof val === 'number') {
228
- hasNumbers = true;
229
- numberValues.push(val);
230
- }
231
- }
232
- // Check for mixed types
233
- if (hasStrings && hasNumbers) {
234
- return {
235
- message: `Enum type '${typeName}' has mixed types (must be all strings or all numbers)`,
236
- path: [],
237
- code: 'invalid-schema',
238
- };
239
- }
240
- if (hasStrings) {
241
- return { kind: 'string', values: stringValues };
242
- }
243
- if (hasNumbers) {
244
- return { kind: 'number', values: numberValues };
245
- }
246
- return {
247
- message: `Enum type '${typeName}' has no valid values (must be strings or numbers)`,
248
- path: [],
249
- code: 'invalid-schema',
250
- };
251
- }
252
- function isSchemaError(x) {
253
- return 'code' in x;
254
- }
255
- function validateEnumValue(tag, enumInfo, typeName, path, errors) {
256
- const actualValue = tag.eq;
257
- if (enumInfo.kind === 'string') {
258
- if (typeof actualValue === 'string' &&
259
- enumInfo.values.includes(actualValue)) {
260
- return;
261
- }
262
- }
263
- else {
264
- if (typeof actualValue === 'number' &&
265
- enumInfo.values.includes(actualValue)) {
266
- return;
267
- }
268
- }
269
- const allowedStr = enumInfo.values.map(v => String(v)).join(', ');
270
- errors.push({
271
- message: `Value '${actualValue}' is not a valid ${typeName}. Allowed values: [${allowedStr}]`,
272
- path,
273
- code: 'invalid-enum-value',
274
- });
275
- }
276
- function validatePattern(tag, pattern, typeName, path, errors) {
277
- const actualValue = tag.eq;
278
- // Pattern only applies to strings
279
- if (typeof actualValue !== 'string') {
280
- errors.push({
281
- message: `Value must be a string to match pattern for type '${typeName}', got ${typeof actualValue}`,
282
- path,
283
- code: 'wrong-type',
284
- });
285
- return;
286
- }
287
- try {
288
- const regex = new RegExp(pattern);
289
- if (!regex.test(actualValue)) {
290
- errors.push({
291
- message: `Value '${actualValue}' does not match pattern for type '${typeName}'`,
292
- path,
293
- code: 'pattern-mismatch',
294
- });
295
- }
296
- }
297
- catch {
298
- errors.push({
299
- message: `Invalid regex pattern '${pattern}' in type '${typeName}'`,
300
- path,
301
- code: 'invalid-schema',
302
- });
303
- }
304
- }
305
- function validateEachElement(propTag, isArray, typeName, path, errors, validate) {
306
- if (isArray === true) {
307
- const array = propTag.array();
308
- if (!array) {
309
- const actualType = getActualType(propTag);
310
- errors.push({
311
- message: `Expected '${typeName}[]', got '${actualType}'`,
312
- path,
313
- code: 'wrong-type',
314
- });
315
- return;
316
- }
317
- for (let i = 0; i < array.length; i++) {
318
- validate({ tag: array[i], path: [...path, String(i)] });
319
- }
320
- }
321
- else {
322
- validate({ tag: propTag, path });
323
- }
324
- }
325
- function validateAgainstOneOf(propTag, oneOfTypes, propName, path, errors, additionalConfig, customTypes) {
326
- // Try each type in the oneOf list
327
- for (const typeName of oneOfTypes) {
328
- const testErrors = [];
329
- if (isValidSchemaType(typeName)) {
330
- // Built-in type
331
- const actualType = getActualType(propTag);
332
- if (typeMatches(actualType, typeName)) {
333
- return true; // Match found
334
- }
335
- }
336
- else if (typeName in customTypes) {
337
- // Custom type reference
338
- const refSchema = customTypes[typeName];
339
- const refAdditionalConfig = getAdditionalConfig(refSchema, customTypes);
340
- // Check if it's an enum type
341
- if (Array.isArray(refSchema.eq)) {
342
- const enumInfo = getEnumInfo(refSchema, typeName);
343
- if (!isSchemaError(enumInfo)) {
344
- validateEnumValue(propTag, enumInfo, typeName, path, testErrors);
345
- if (testErrors.length === 0) {
346
- return true; // Match found
347
- }
348
- }
349
- continue;
350
- }
351
- // Check if it's a pattern type
352
- const pattern = refSchema.text('matches');
353
- if (pattern !== undefined) {
354
- validatePattern(propTag, pattern, typeName, path, testErrors);
355
- if (testErrors.length === 0) {
356
- return true; // Match found
357
- }
358
- continue;
359
- }
360
- // Check if it's a oneOf type (nested)
361
- const nestedOneOf = refSchema.textArray('oneOf');
362
- if (nestedOneOf !== undefined && nestedOneOf.length > 0) {
363
- if (validateAgainstOneOf(propTag, nestedOneOf, propName, path, testErrors, additionalConfig, customTypes)) {
364
- return true; // Match found
365
- }
366
- continue;
367
- }
368
- // Structural type - validate properties
369
- validateProperties(propTag, refSchema, path, testErrors, refAdditionalConfig, customTypes);
370
- if (testErrors.length === 0) {
371
- return true; // Match found
372
- }
373
- }
374
- }
375
- // No match found - report error
376
- errors.push({
377
- message: `Property '${propName}' does not match any type in oneOf: [${oneOfTypes.join(', ')}]`,
378
- path,
379
- code: 'wrong-type',
380
- });
381
- return false;
382
- }
383
- function validatePropertyAgainstType(propTag, typeName, propName, parentPath, errors, additionalConfig, customTypes) {
384
- const path = [...parentPath, propName];
385
- // Check if it's a built-in type
386
- if (isValidSchemaType(typeName)) {
387
- const actualType = getActualType(propTag);
388
- if (!typeMatches(actualType, typeName)) {
389
- errors.push({
390
- message: `Property '${propName}' has wrong type: expected '${typeName}', got '${actualType}'`,
391
- path,
392
- code: 'wrong-type',
393
- });
394
- }
395
- return;
396
- }
397
- // Check if it's a custom type
398
- if (!(typeName in customTypes)) {
399
- errors.push({
400
- message: `Invalid type '${typeName}' in schema for '${propName}'`,
401
- path,
402
- code: 'invalid-schema',
403
- });
404
- return;
405
- }
406
- const refSchema = customTypes[typeName];
407
- const refAdditionalConfig = getAdditionalConfig(refSchema, customTypes);
408
- // Check if this is an enum type
409
- if (Array.isArray(refSchema.eq)) {
410
- const enumInfo = getEnumInfo(refSchema, typeName);
411
- if (isSchemaError(enumInfo)) {
412
- errors.push({ ...enumInfo, path });
413
- return;
414
- }
415
- validateEnumValue(propTag, enumInfo, typeName, path, errors);
416
- return;
417
- }
418
- // Check if this is a pattern type
419
- const pattern = refSchema.text('matches');
420
- if (pattern !== undefined) {
421
- validatePattern(propTag, pattern, typeName, path, errors);
422
- return;
423
- }
424
- // Check if this is a oneOf type
425
- const oneOfTypes = refSchema.textArray('oneOf');
426
- if (oneOfTypes !== undefined && oneOfTypes.length > 0) {
427
- validateAgainstOneOf(propTag, oneOfTypes, propName, path, errors, additionalConfig, customTypes);
428
- return;
429
- }
430
- // Structural type - validate properties
431
- validateProperties(propTag, refSchema, path, errors, refAdditionalConfig, customTypes);
432
- }
433
- function validateProperty(propTag, schemaProp, propName, parentPath, errors, additionalConfig, customTypes) {
434
- const path = [...parentPath, propName];
435
- const { type: expectedType, typeRef, typeRefArray, invalidType, } = getExpectedType(schemaProp, customTypes);
436
- if (invalidType !== undefined) {
437
- errors.push({
438
- message: `Invalid type '${invalidType}' in schema for '${propName}'`,
439
- path,
440
- code: 'invalid-schema',
441
- });
442
- return; // Don't continue validation with invalid schema
443
- }
444
- // Handle custom type reference
445
- if (typeRef !== undefined) {
446
- const refSchema = customTypes[typeRef];
447
- const refAdditionalConfig = getAdditionalConfig(refSchema, customTypes);
448
- // Check if this is an enum type (custom type value is an array)
449
- if (Array.isArray(refSchema.eq)) {
450
- const enumInfo = getEnumInfo(refSchema, typeRef);
451
- if (isSchemaError(enumInfo)) {
452
- errors.push({ ...enumInfo, path });
453
- return;
454
- }
455
- validateEachElement(propTag, typeRefArray, typeRef, path, errors, el => validateEnumValue(el.tag, enumInfo, typeRef, el.path, errors));
456
- return;
457
- }
458
- // Check if this is a pattern type (custom type has 'matches' property)
459
- const pattern = refSchema.text('matches');
460
- if (pattern !== undefined) {
461
- validateEachElement(propTag, typeRefArray, typeRef, path, errors, el => validatePattern(el.tag, pattern, typeRef, el.path, errors));
462
- return;
463
- }
464
- // Check if this is a oneOf type
465
- const oneOfTypes = refSchema.textArray('oneOf');
466
- if (oneOfTypes !== undefined && oneOfTypes.length > 0) {
467
- validateEachElement(propTag, typeRefArray, typeRef, path, errors, el => validateAgainstOneOf(el.tag, oneOfTypes, propName, el.path, errors, additionalConfig, customTypes));
468
- return;
469
- }
470
- // Regular custom type - validate properties
471
- if (typeRefArray) {
472
- // Validate as array of custom type
473
- const actualType = getActualType(propTag);
474
- if (!actualType.endsWith('[]')) {
475
- errors.push({
476
- message: `Property '${propName}' has wrong type: expected '${typeRef}[]', got '${actualType}'`,
477
- path,
478
- code: 'wrong-type',
479
- });
480
- return;
481
- }
482
- const array = propTag.array();
483
- if (array) {
484
- for (let i = 0; i < array.length; i++) {
485
- validateProperties(array[i], refSchema, [...path, String(i)], errors, refAdditionalConfig, customTypes);
486
- }
487
- }
488
- }
489
- else {
490
- // Validate against referenced type schema
491
- validateProperties(propTag, refSchema, path, errors, refAdditionalConfig, customTypes);
492
- }
493
- return;
494
- }
495
- if (expectedType !== undefined) {
496
- const actualType = getActualType(propTag);
497
- if (!typeMatches(actualType, expectedType)) {
498
- errors.push({
499
- message: `Property '${propName}' has wrong type: expected '${expectedType}', got '${actualType}'`,
500
- path,
501
- code: 'wrong-type',
502
- });
503
- return; // Don't validate nested if type is wrong
504
- }
505
- }
506
- // Check for nested Required/Optional sections in schema
507
- const nestedRequired = schemaProp.tag('Required');
508
- const nestedOptional = schemaProp.tag('Optional');
509
- if (nestedRequired !== undefined || nestedOptional !== undefined) {
510
- const nestedAdditionalConfig = getAdditionalConfig(schemaProp, customTypes);
511
- // If this is an array type, validate each element against the nested schema
512
- if (expectedType !== undefined && isArrayType(expectedType)) {
513
- const array = propTag.array();
514
- if (array) {
515
- for (let i = 0; i < array.length; i++) {
516
- validateProperties(array[i], schemaProp, [...path, String(i)], errors, nestedAdditionalConfig, customTypes);
517
- }
518
- }
519
- }
520
- else {
521
- validateProperties(propTag, schemaProp, path, errors, nestedAdditionalConfig, customTypes);
522
- }
523
- }
524
- }
525
- /**
526
- * Validate a tag against a schema.
527
- *
528
- * The schema is itself a Tag that defines Required and Optional properties:
529
- *
530
- * ```motly
531
- * Types: {
532
- * ItemType: {
533
- * Required: { name=string price=number }
534
- * }
535
- * }
536
- * Required: {
537
- * color=string
538
- * items="ItemType[]"
539
- * }
540
- * Optional: {
541
- * border=number
542
- * }
543
- * ```
544
- *
545
- * Type specifiers: string, number, boolean, date, tag, any
546
- * Array types: string[], number[], boolean[], date[], tag[], any[]
547
- * Custom types: defined in `Types` section, referenced by name or name[]
548
- * Union types: TypeName.oneOf = [type1, type2, ...]
549
- *
550
- * Additional properties:
551
- * - No `Additional`: reject unknown properties
552
- * - `Additional`: allow any additional properties (same as `Additional = any`)
553
- * - `Additional = TypeName`: validate additional properties against type
554
- *
555
- * @param tag The tag to validate
556
- * @param schema The schema to validate against (as a Tag)
557
- * @returns Array of schema errors, empty if valid
558
- */
559
- function validateTag(tag, schema) {
560
- const errors = [];
561
- // Extract custom types from schema
562
- const typesSection = schema.tag('Types');
563
- const customTypes = {};
564
- if (typesSection) {
565
- for (const [name, typeDef] of typesSection.entries()) {
566
- customTypes[name] = typeDef;
567
- }
568
- }
569
- const additionalConfig = getAdditionalConfig(schema, customTypes);
570
- validateProperties(tag, schema, [], errors, additionalConfig, customTypes);
571
- return errors;
572
- }
573
- //# sourceMappingURL=schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};