functional-models 3.9.5 → 3.11.0

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 (84) hide show
  1. package/cjs/errors.cjs +38 -0
  2. package/cjs/errors.cjs.map +7 -0
  3. package/cjs/index.cjs +2426 -0
  4. package/cjs/index.cjs.map +7 -0
  5. package/cjs/lib.cjs +431 -0
  6. package/cjs/lib.cjs.map +7 -0
  7. package/cjs/models.cjs +571 -0
  8. package/cjs/models.cjs.map +7 -0
  9. package/cjs/orm/index.cjs +1765 -0
  10. package/cjs/orm/index.cjs.map +7 -0
  11. package/cjs/orm/internal-libs.cjs +136 -0
  12. package/cjs/orm/internal-libs.cjs.map +7 -0
  13. package/cjs/orm/libs.cjs +88 -0
  14. package/cjs/orm/libs.cjs.map +7 -0
  15. package/cjs/orm/models.cjs +1027 -0
  16. package/cjs/orm/models.cjs.map +7 -0
  17. package/cjs/orm/properties.cjs +989 -0
  18. package/cjs/orm/properties.cjs.map +7 -0
  19. package/cjs/orm/query.cjs +376 -0
  20. package/cjs/orm/query.cjs.map +7 -0
  21. package/cjs/orm/types.cjs +59 -0
  22. package/cjs/orm/types.cjs.map +7 -0
  23. package/cjs/orm/validation.cjs +301 -0
  24. package/cjs/orm/validation.cjs.map +7 -0
  25. package/cjs/properties.cjs +998 -0
  26. package/cjs/properties.cjs.map +7 -0
  27. package/cjs/serialization.cjs +75 -0
  28. package/cjs/serialization.cjs.map +7 -0
  29. package/cjs/types.cjs +65 -0
  30. package/cjs/types.cjs.map +7 -0
  31. package/cjs/utils.cjs +187 -0
  32. package/cjs/utils.cjs.map +7 -0
  33. package/cjs/validation.cjs +431 -0
  34. package/cjs/validation.cjs.map +7 -0
  35. package/errors.js +3 -4
  36. package/errors.js.map +1 -1
  37. package/index.d.ts +13 -13
  38. package/index.js +13 -52
  39. package/index.js.map +1 -1
  40. package/lib.d.ts +5 -5
  41. package/lib.js +45 -65
  42. package/lib.js.map +1 -1
  43. package/models.d.ts +1 -1
  44. package/models.js +22 -30
  45. package/models.js.map +1 -1
  46. package/orm/index.d.ts +9 -9
  47. package/orm/index.js +9 -48
  48. package/orm/index.js.map +1 -1
  49. package/orm/internal-libs.js +7 -11
  50. package/orm/internal-libs.js.map +1 -1
  51. package/orm/libs.d.ts +1 -1
  52. package/orm/libs.js +8 -16
  53. package/orm/libs.js.map +1 -1
  54. package/orm/models.d.ts +2 -2
  55. package/orm/models.js +20 -26
  56. package/orm/models.js.map +1 -1
  57. package/orm/properties.d.ts +28 -28
  58. package/orm/properties.js +28 -36
  59. package/orm/properties.js.map +1 -1
  60. package/orm/query.d.ts +1 -1
  61. package/orm/query.js +31 -52
  62. package/orm/query.js.map +1 -1
  63. package/orm/types.d.ts +2 -2
  64. package/orm/types.js +7 -10
  65. package/orm/types.js.map +1 -1
  66. package/orm/validation.d.ts +2 -2
  67. package/orm/validation.js +5 -13
  68. package/orm/validation.js.map +1 -1
  69. package/package.json +50 -65
  70. package/properties.d.ts +133 -133
  71. package/properties.js +66 -94
  72. package/properties.js.map +1 -1
  73. package/serialization.d.ts +1 -1
  74. package/serialization.js +3 -9
  75. package/serialization.js.map +1 -1
  76. package/types.d.ts +6 -1
  77. package/types.js +4 -6
  78. package/types.js.map +1 -1
  79. package/utils.d.ts +2 -1
  80. package/utils.js +8 -23
  81. package/utils.js.map +1 -1
  82. package/validation.d.ts +1 -1
  83. package/validation.js +19 -50
  84. package/validation.js.map +1 -1
package/utils.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { v4 as uuidv4 } from 'uuid';
1
2
  declare const getRandomValues: () => Uint8Array;
2
3
  declare const toTitleCase: (string: string) => string;
3
4
  declare const loweredTitleCase: (string: string) => string;
@@ -7,5 +8,5 @@ declare const createHeadAndTail: (values: readonly string[], joiner: string) =>
7
8
  declare const flowFindFirst: <T, TResult>(funcs: ((t: T) => undefined | TResult)[]) => (input: T) => string | TResult;
8
9
  declare const memoizeSync: <T, A extends Array<any>>(method: (...args: A) => T) => (...args: A) => T;
9
10
  declare const memoizeAsync: <T, A extends Array<any>>(method: (...args: A) => T) => (...args: A) => Promise<T>;
10
- declare const createUuid: (<T extends ArrayLike<number>>(options: import("uuid").V4Options | null | undefined, buffer: T, offset?: number) => T) & ((options?: import("uuid").V4Options) => string);
11
+ declare const createUuid: typeof uuidv4;
11
12
  export { getRandomValues, loweredTitleCase, toTitleCase, isPromise, createHeadAndTail, singularize, flowFindFirst, memoizeSync, memoizeAsync, createUuid, };
package/utils.js CHANGED
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
2
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
3
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,15 +7,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
8
  });
10
9
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.createUuid = exports.memoizeAsync = exports.memoizeSync = exports.flowFindFirst = exports.singularize = exports.createHeadAndTail = exports.isPromise = exports.toTitleCase = exports.loweredTitleCase = exports.getRandomValues = void 0;
16
- const async_lock_1 = __importDefault(require("async-lock"));
17
- const uuid_1 = require("uuid");
10
+ import AsyncLock from 'async-lock';
11
+ import { v4 as uuidv4 } from 'uuid';
18
12
  // @ts-ignore
19
- const get_random_values_1 = __importDefault(require("get-random-values"));
13
+ import getRandomValuesFunc from 'get-random-values';
20
14
  const getRandomValues = () => {
21
15
  const array = new Uint8Array(1);
22
16
  if (typeof window !== 'undefined') {
@@ -29,24 +23,20 @@ const getRandomValues = () => {
29
23
  return window.msCrypto.getRandomValues(array);
30
24
  }
31
25
  }
32
- return (0, get_random_values_1.default)(array);
26
+ return getRandomValuesFunc(array);
33
27
  };
34
- exports.getRandomValues = getRandomValues;
35
28
  const toTitleCase = (string) => {
36
29
  return `${string.slice(0, 1).toUpperCase()}${string.slice(1)}`;
37
30
  };
38
- exports.toTitleCase = toTitleCase;
39
31
  const loweredTitleCase = (string) => {
40
32
  return `${string.slice(0, 1).toLowerCase()}${string.slice(1)}`;
41
33
  };
42
- exports.loweredTitleCase = loweredTitleCase;
43
34
  const isPromise = (something) => {
44
35
  if (something === null || something === void 0 ? void 0 : something.then) {
45
36
  return true;
46
37
  }
47
38
  return false;
48
39
  };
49
- exports.isPromise = isPromise;
50
40
  var PluralEndings;
51
41
  (function (PluralEndings) {
52
42
  PluralEndings["ves"] = "fe";
@@ -62,13 +52,11 @@ const singularize = (word) => {
62
52
  // @ts-ignore
63
53
  return word.replace(_singularizingRe, r => PluralEndings[r]);
64
54
  };
65
- exports.singularize = singularize;
66
55
  const createHeadAndTail = (values, joiner) => {
67
56
  const head = values[0];
68
57
  const tail = values.slice(1).join(joiner);
69
58
  return [head, tail];
70
59
  };
71
- exports.createHeadAndTail = createHeadAndTail;
72
60
  const flowFindFirst = (funcs) => (input) => {
73
61
  return funcs.reduce((acc, func) => {
74
62
  if (acc) {
@@ -77,7 +65,6 @@ const flowFindFirst = (funcs) => (input) => {
77
65
  return func(input);
78
66
  }, undefined);
79
67
  };
80
- exports.flowFindFirst = flowFindFirst;
81
68
  const memoizeSync = (method) => {
82
69
  /* eslint-disable functional/no-let */
83
70
  let value = undefined;
@@ -91,10 +78,9 @@ const memoizeSync = (method) => {
91
78
  };
92
79
  /* eslint-enable functional/no-let */
93
80
  };
94
- exports.memoizeSync = memoizeSync;
95
81
  const memoizeAsync = (method) => {
96
- const key = (0, uuid_1.v4)();
97
- const lock = new async_lock_1.default();
82
+ const key = uuidv4();
83
+ const lock = new AsyncLock();
98
84
  /* eslint-disable functional/no-let */
99
85
  let value = undefined;
100
86
  let called = false;
@@ -109,7 +95,6 @@ const memoizeAsync = (method) => {
109
95
  });
110
96
  /* eslint-enable functional/no-let */
111
97
  };
112
- exports.memoizeAsync = memoizeAsync;
113
- const createUuid = uuid_1.v4;
114
- exports.createUuid = createUuid;
98
+ const createUuid = uuidv4;
99
+ export { getRandomValues, loweredTitleCase, toTitleCase, isPromise, createHeadAndTail, singularize, flowFindFirst, memoizeSync, memoizeAsync, createUuid, };
115
100
  //# sourceMappingURL=utils.js.map
package/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/validation.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { DataDescription, ModelInstance, ModelType, ModelValidatorComponent, PropertyValidatorComponent, PropertyValidator, PropertyConfig, PropertyValidators, ValueGetter, Arrayable, DataValue, ModelErrors, ValidatorContext, ValuePropertyValidatorComponent, MaybeFunction, PropertyValidatorComponentTypeAdvanced, PrimitiveValueType } from './types';
1
+ import { DataDescription, ModelInstance, ModelType, ModelValidatorComponent, PropertyValidatorComponent, PropertyValidator, PropertyConfig, PropertyValidators, ValueGetter, Arrayable, DataValue, ModelErrors, ValidatorContext, ValuePropertyValidatorComponent, MaybeFunction, PropertyValidatorComponentTypeAdvanced, PrimitiveValueType } from './types.js';
2
2
  declare const multiValidator: <T extends Arrayable<DataValue>>(validators: ValuePropertyValidatorComponent<T>[]) => ValuePropertyValidatorComponent<T>;
3
3
  declare const isType: <T extends Arrayable<DataValue>>(type: string) => ValuePropertyValidatorComponent<T>;
4
4
  declare const isNumber: ValuePropertyValidatorComponent<number>;
package/validation.js CHANGED
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
2
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
3
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,22 +7,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
8
  });
10
9
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.isValidUuid = exports.optionalValidator = exports.objectValidator = exports.isObject = exports.multiValidator = exports.referenceTypeMatch = exports.isValid = exports.arrayType = exports.createModelValidator = exports.createPropertyValidator = exports.emptyValidator = exports.aggregateValidator = exports.meetsRegex = exports.minTextLength = exports.maxTextLength = exports.choices = exports.minNumber = exports.maxNumber = exports.isRequired = exports.isArray = exports.isDate = exports.isType = exports.isInteger = exports.isString = exports.isBoolean = exports.isNumber = void 0;
16
- const isEmpty_1 = __importDefault(require("lodash/isEmpty"));
17
- const merge_1 = __importDefault(require("lodash/merge"));
18
- const flatMap_1 = __importDefault(require("lodash/flatMap"));
19
- const get_1 = __importDefault(require("lodash/get"));
20
- const types_1 = require("./types");
21
- const utils_1 = require("./utils");
10
+ import isEmpty from 'lodash/isEmpty.js';
11
+ import merge from 'lodash/merge.js';
12
+ import flatMap from 'lodash/flatMap.js';
13
+ import get from 'lodash/get.js';
14
+ import { PrimitiveValueType, } from './types.js';
15
+ import { flowFindFirst } from './utils.js';
22
16
  const multiValidator = (validators) => {
23
- const flow = (0, utils_1.flowFindFirst)(validators);
17
+ const flow = flowFindFirst(validators);
24
18
  return flow;
25
19
  };
26
- exports.multiValidator = multiValidator;
27
20
  const filterEmpty = (array) => {
28
21
  return array.filter(x => x);
29
22
  };
@@ -43,28 +36,21 @@ const isType = (type) => (value) => {
43
36
  // @ts-ignore
44
37
  return _typeOrError(type, `Must be a ${type}`)(value);
45
38
  };
46
- exports.isType = isType;
47
39
  const isNumber = isType('number');
48
- exports.isNumber = isNumber;
49
40
  const isInteger = _trueOrError(Number.isInteger, 'Must be an integer');
50
- exports.isInteger = isInteger;
51
41
  const isObject = multiValidator([
52
42
  isType('object'),
53
43
  x => (Array.isArray(x) ? 'Must be an object, but got an array' : undefined),
54
44
  ]);
55
- exports.isObject = isObject;
56
45
  const isBoolean = isType('boolean');
57
- exports.isBoolean = isBoolean;
58
46
  const isString = isType('string');
59
- exports.isString = isString;
60
47
  const isArray = _trueOrError((v) => Array.isArray(v), 'Value is not an array');
61
- exports.isArray = isArray;
62
48
  const PRIMITIVE_TO_SPECIAL_TYPE_VALIDATOR = {
63
- [types_1.PrimitiveValueType.boolean]: isBoolean,
64
- [types_1.PrimitiveValueType.string]: isString,
65
- [types_1.PrimitiveValueType.integer]: isInteger,
66
- [types_1.PrimitiveValueType.number]: isNumber,
67
- [types_1.PrimitiveValueType.object]: isObject,
49
+ [PrimitiveValueType.boolean]: isBoolean,
50
+ [PrimitiveValueType.string]: isString,
51
+ [PrimitiveValueType.integer]: isInteger,
52
+ [PrimitiveValueType.number]: isNumber,
53
+ [PrimitiveValueType.object]: isObject,
68
54
  };
69
55
  const arrayType = (type) => (value) => {
70
56
  const arrayError = isArray(value);
@@ -79,13 +65,11 @@ const arrayType = (type) => (value) => {
79
65
  return validator(v);
80
66
  }, undefined);
81
67
  };
82
- exports.arrayType = arrayType;
83
68
  const meetsRegex = (regex, flags, errorMessage = 'Format was invalid') => (value) => {
84
69
  const reg = new RegExp(regex, flags);
85
70
  // @ts-ignore
86
71
  return _trueOrError((v) => reg.test(v), errorMessage)(value);
87
72
  };
88
- exports.meetsRegex = meetsRegex;
89
73
  const choices = (choiceArray) => (value) => {
90
74
  if (Array.isArray(value)) {
91
75
  const bad = value.find(v => !choiceArray.includes(v));
@@ -100,7 +84,6 @@ const choices = (choiceArray) => (value) => {
100
84
  }
101
85
  return undefined;
102
86
  };
103
- exports.choices = choices;
104
87
  const isDate = (value) => {
105
88
  if (!value) {
106
89
  return 'Date value is empty';
@@ -110,7 +93,6 @@ const isDate = (value) => {
110
93
  }
111
94
  return undefined;
112
95
  };
113
- exports.isDate = isDate;
114
96
  const isRequired = (value) => {
115
97
  if (value === true || value === false) {
116
98
  return undefined;
@@ -119,7 +101,7 @@ const isRequired = (value) => {
119
101
  if (isNumber(value) === undefined) {
120
102
  return undefined;
121
103
  }
122
- const empty = (0, isEmpty_1.default)(value);
104
+ const empty = isEmpty(value);
123
105
  if (empty) {
124
106
  // @ts-ignore
125
107
  if (isDate(value)) {
@@ -128,7 +110,6 @@ const isRequired = (value) => {
128
110
  }
129
111
  return undefined;
130
112
  };
131
- exports.isRequired = isRequired;
132
113
  const maxNumber = (max) => (value) => {
133
114
  // @ts-ignore
134
115
  const numberError = isNumber(value);
@@ -140,7 +121,6 @@ const maxNumber = (max) => (value) => {
140
121
  }
141
122
  return undefined;
142
123
  };
143
- exports.maxNumber = maxNumber;
144
124
  const minNumber = (min) => (value) => {
145
125
  // @ts-ignore
146
126
  const numberError = isNumber(value);
@@ -152,7 +132,6 @@ const minNumber = (min) => (value) => {
152
132
  }
153
133
  return undefined;
154
134
  };
155
- exports.minNumber = minNumber;
156
135
  const maxTextLength = (max) => (value) => {
157
136
  // @ts-ignore
158
137
  const stringError = isString(value);
@@ -164,7 +143,6 @@ const maxTextLength = (max) => (value) => {
164
143
  }
165
144
  return undefined;
166
145
  };
167
- exports.maxTextLength = maxTextLength;
168
146
  const minTextLength = (min) => (value) => {
169
147
  // @ts-ignore
170
148
  const stringError = isString(value);
@@ -176,7 +154,6 @@ const minTextLength = (min) => (value) => {
176
154
  }
177
155
  return undefined;
178
156
  };
179
- exports.minTextLength = minTextLength;
180
157
  const aggregateValidator = (value, methodOrMethods) => {
181
158
  const toDo = Array.isArray(methodOrMethods)
182
159
  ? methodOrMethods
@@ -189,9 +166,7 @@ const aggregateValidator = (value, methodOrMethods) => {
189
166
  });
190
167
  return _aggregativeValidator;
191
168
  };
192
- exports.aggregateValidator = aggregateValidator;
193
169
  const emptyValidator = () => undefined;
194
- exports.emptyValidator = emptyValidator;
195
170
  const _boolChoice = (method) => (configValue) => {
196
171
  const func = method(configValue);
197
172
  const validatorWrapper = func;
@@ -243,12 +218,11 @@ const createPropertyValidator = (valueGetter, config) => {
243
218
  }
244
219
  const validator = aggregateValidator(value, validators);
245
220
  const errors = yield validator(model, instanceData, propertyConfiguration);
246
- return [...new Set((0, flatMap_1.default)(errors))];
221
+ return [...new Set(flatMap(errors))];
247
222
  }));
248
223
  });
249
224
  return _propertyValidator;
250
225
  };
251
- exports.createPropertyValidator = createPropertyValidator;
252
226
  const createModelValidator = (validators, modelValidators) => {
253
227
  const _modelValidator = (instance, propertyConfiguration) => __awaiter(void 0, void 0, void 0, function* () {
254
228
  return Promise.resolve().then(() => __awaiter(void 0, void 0, void 0, function* () {
@@ -272,12 +246,12 @@ const createModelValidator = (validators, modelValidators) => {
272
246
  const propertyErrors = propertyValidationErrors
273
247
  .filter(([, errors]) => Boolean(errors) && errors.length > 0)
274
248
  .reduce((acc, [key, errors]) => {
275
- return (0, merge_1.default)(acc, { [String(key)]: errors });
249
+ return merge(acc, { [String(key)]: errors });
276
250
  }, {});
277
251
  const final = modelValidationErrors.length > 0
278
- ? (0, merge_1.default)(propertyErrors, { overall: modelValidationErrors })
252
+ ? merge(propertyErrors, { overall: modelValidationErrors })
279
253
  : propertyErrors;
280
- if ((0, isEmpty_1.default)(final)) {
254
+ if (isEmpty(final)) {
281
255
  return undefined;
282
256
  }
283
257
  return final;
@@ -285,11 +259,9 @@ const createModelValidator = (validators, modelValidators) => {
285
259
  });
286
260
  return _modelValidator;
287
261
  };
288
- exports.createModelValidator = createModelValidator;
289
262
  const isValid = (errors) => {
290
263
  return Object.keys(errors).length < 1;
291
264
  };
292
- exports.isValid = isValid;
293
265
  const referenceTypeMatch = (referencedModel) => {
294
266
  return (value) => {
295
267
  const theType = typeof value;
@@ -318,7 +290,6 @@ const referenceTypeMatch = (referencedModel) => {
318
290
  return undefined;
319
291
  };
320
292
  };
321
- exports.referenceTypeMatch = referenceTypeMatch;
322
293
  /**
323
294
  * A validator that can validate an entire object.
324
295
  *
@@ -342,7 +313,7 @@ const objectValidator = ({ required, keyToValidators, }) => {
342
313
  const theValidator = Array.isArray(validator)
343
314
  ? multiValidator(validator)
344
315
  : validator;
345
- const value = (0, get_1.default)(obj, key);
316
+ const value = get(obj, key);
346
317
  const error = theValidator(value);
347
318
  if (error) {
348
319
  return acc.concat(`${key}: ${error}`);
@@ -352,7 +323,6 @@ const objectValidator = ({ required, keyToValidators, }) => {
352
323
  .join(', ') || undefined);
353
324
  };
354
325
  };
355
- exports.objectValidator = objectValidator;
356
326
  const optionalValidator = (validator) => {
357
327
  return (v) => {
358
328
  if (v === undefined || v === null) {
@@ -361,7 +331,6 @@ const optionalValidator = (validator) => {
361
331
  return validator(v);
362
332
  };
363
333
  };
364
- exports.optionalValidator = optionalValidator;
365
334
  const UUID_VALIDATOR = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-5][0-9a-f]{3}-[089ab][0-9a-f]{3}-[0-9a-f]{12}$/iu;
366
335
  const isValidUuid = (uuid) => {
367
336
  const stringError = isString(uuid);
@@ -370,5 +339,5 @@ const isValidUuid = (uuid) => {
370
339
  }
371
340
  return meetsRegex(UUID_VALIDATOR, 'g', 'Invalid UUID format')(uuid);
372
341
  };
373
- exports.isValidUuid = isValidUuid;
342
+ export { isNumber, isBoolean, isString, isInteger, isType, isDate, isArray, isRequired, maxNumber, minNumber, choices, maxTextLength, minTextLength, meetsRegex, aggregateValidator, emptyValidator, createPropertyValidator, createModelValidator, arrayType, isValid, referenceTypeMatch, multiValidator, isObject, objectValidator, optionalValidator, isValidUuid, };
374
343
  //# sourceMappingURL=validation.js.map
package/validation.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"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"}