functional-models 1.1.13 → 1.1.17

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/interfaces.d.ts CHANGED
@@ -4,18 +4,14 @@ declare type Nullable<T> = T | null;
4
4
  declare type Maybe<T> = T | undefined | null;
5
5
  declare type Arrayable<T> = T | readonly T[];
6
6
  declare type MaybeLazy<T> = Maybe<Promise<T>>;
7
- declare type MaybeEmpty<T> = T | null | undefined;
8
- declare type JsonAble = number | string | boolean | null | Arrayable<{
7
+ declare type JsonAble = Arrayable<{
9
8
  readonly [s: string]: JsonAble;
10
- }>;
9
+ }> | Arrayable<number> | Arrayable<string> | Arrayable<boolean> | Arrayable<null>;
11
10
  declare type VeryPrimitivesTypes = null | string | number | boolean;
12
11
  declare type toObj = () => Promise<JsonAble>;
13
12
  declare type ValueIsOfType<T, V> = {
14
13
  readonly [P in keyof T as T[P] extends V ? P : never]: T[P];
15
14
  };
16
- declare type ValueIsNotOfType<T, V> = {
17
- readonly [P in keyof T as T[P] extends V ? never : P]: T[P];
18
- };
19
15
  declare type InstanceMethodGetters<T> = {
20
16
  readonly [P in keyof T as T[P] extends ModelInstanceMethod ? P : never]: ModelInstanceMethodClient;
21
17
  };
@@ -26,26 +22,31 @@ declare type ModelMethodTypes<T extends FunctionalModel> = ModelMethod | ModelIn
26
22
  declare type PropertyGetters<T extends FunctionalModel> = {
27
23
  readonly [Property in keyof T as T[Property] extends ModelMethodTypes<T> ? never : Property]: () => T[Property] | Promise<T[Property]>;
28
24
  };
29
- declare type FunctionalModel = {
25
+ declare type FunctionalModel = JsonAble | {
30
26
  readonly [s: string]: Arrayable<number> | Arrayable<string> | Arrayable<boolean> | Arrayable<null> | Arrayable<FunctionalModel> | Arrayable<Date> | Arrayable<undefined> | ReferenceValueType<any> | ModelInstanceMethod | ModelMethod;
31
- } | JsonAble;
27
+ };
32
28
  declare type FunctionalType = JsonAble | (() => FunctionalType) | Arrayable<undefined> | Arrayable<Date> | Arrayable<FunctionalModel> | Arrayable<{
33
29
  readonly [s: string]: JsonAble;
34
30
  }>;
35
- declare type ModelInstanceInputData<T extends FunctionalModel> = ValueIsNotOfType<T, ModelMethodTypes<T>> | JsonAble;
31
+ declare type ModelInstanceInputData<T extends FunctionalModel> = {
32
+ readonly [P in keyof T as T[P] extends ModelMethodTypes<T> ? never : P]: T[P];
33
+ } | JsonAble;
34
+ declare type ValidatorConfiguration = {
35
+ readonly [s: string]: any;
36
+ };
36
37
  declare type PropertyValidatorComponentTypeAdvanced<TValue, TModel extends FunctionalModel> = (value: TValue, instance: ModelInstance<TModel>, instanceData: FunctionalModel) => string | undefined;
37
- declare type PropertyValidatorComponentType<TValue> = (value: TValue, instance: ModelInstance<any>, instanceData: FunctionalModel) => string | undefined;
38
+ declare type PropertyValidatorComponentType<TValue> = (value: TValue, instance: ModelInstance<any>, instanceData: FunctionalModel, configurations: ValidatorConfiguration) => string | undefined;
38
39
  declare type PropertyValidatorComponentSync = PropertyValidatorComponentType<any>;
39
- declare type PropertyValidatorComponentAsync = (value: Arrayable<FunctionalModel>, instance: ModelInstance<any>, instanceData: FunctionalModel) => Promise<string | undefined>;
40
+ declare type PropertyValidatorComponentAsync = (value: Arrayable<FunctionalModel>, instance: ModelInstance<any>, instanceData: FunctionalModel, configurations: ValidatorConfiguration) => Promise<string | undefined>;
40
41
  declare type PropertyValidatorComponent = PropertyValidatorComponentSync | PropertyValidatorComponentAsync;
41
- declare type PropertyValidator = (instance: ModelInstance<any>, instanceData: FunctionalModel) => Promise<ValidationErrors>;
42
+ declare type PropertyValidator = (instance: ModelInstance<any>, instanceData: FunctionalModel, configurations: ValidatorConfiguration) => Promise<ValidationErrors>;
42
43
  declare type ValidationError = string | undefined;
43
44
  declare type ValidationErrors = readonly ValidationError[];
44
45
  declare type ModelError = string;
45
46
  declare type ModelErrors = {
46
47
  readonly [s: string]: readonly ModelError[];
47
48
  };
48
- declare type ModelComponentValidator = (instance: ModelInstance<any>, instanceData: FunctionalModel, options?: object) => Promise<ValidationErrors>;
49
+ declare type ModelComponentValidator = (instance: ModelInstance<any>, instanceData: FunctionalModel, configurations: ValidatorConfiguration) => Promise<ValidationErrors>;
49
50
  declare type ValueGetter = () => MaybePromise<Arrayable<FunctionalType>> | MaybePromise<ModelInstance<any>>;
50
51
  declare type PropertyInstance<T extends Arrayable<FunctionalType>> = {
51
52
  readonly getConfig: () => object;
@@ -59,11 +60,11 @@ declare type PropertyInstance<T extends Arrayable<FunctionalType>> = {
59
60
  declare type PropertiesList<T> = {
60
61
  readonly [P in keyof T as T[P] extends Arrayable<FunctionalType> ? P : never]: PropertyInstance<any>;
61
62
  };
62
- interface ReferencePropertyInstance<T extends FunctionalModel> extends PropertyInstance<ModelInstance<T> | T | MaybeEmpty<PrimaryKeyType>> {
63
- readonly getReferencedId: (instanceValues: ReferenceValueType<T>) => MaybeEmpty<PrimaryKeyType>;
63
+ interface ReferencePropertyInstance<T extends FunctionalModel> extends PropertyInstance<ModelInstance<T> | T | Maybe<PrimaryKeyType>> {
64
+ readonly getReferencedId: (instanceValues: ReferenceValueType<T>) => Maybe<PrimaryKeyType>;
64
65
  readonly getReferencedModel: () => Model<T>;
65
66
  }
66
- declare type ReferenceValueType<T extends FunctionalModel> = ModelInstance<T> | ModelInstanceInputData<T> | string | number | null | undefined;
67
+ declare type ReferenceValueType<T extends FunctionalModel> = Maybe<ModelInstance<T> | ModelInstanceInputData<T> | PrimaryKeyType>;
67
68
  declare type DefaultPropertyValidators = {
68
69
  readonly required?: boolean;
69
70
  readonly isInteger?: boolean;
@@ -72,13 +73,13 @@ declare type DefaultPropertyValidators = {
72
73
  readonly isArray?: boolean;
73
74
  readonly isBoolean?: boolean;
74
75
  };
75
- declare type PropertyConfigContents = {
76
+ declare type PropertyConfigContents<T extends Arrayable<FunctionalType>> = {
76
77
  readonly type?: string;
77
- readonly defaultValue?: Arrayable<FunctionalType>;
78
- readonly value?: Arrayable<FunctionalType>;
78
+ readonly defaultValue?: T;
79
+ readonly value?: T;
79
80
  readonly choices?: readonly VeryPrimitivesTypes[];
80
- readonly lazyLoadMethod?: (value: Arrayable<FunctionalType>) => MaybeLazy<Arrayable<FunctionalType>>;
81
- readonly valueSelector?: (instanceValue: MaybePromise<Arrayable<FunctionalType>>) => Arrayable<FunctionalType>;
81
+ readonly lazyLoadMethod?: (value: T) => MaybeLazy<T>;
82
+ readonly valueSelector?: (instanceValue: MaybePromise<T>) => T;
82
83
  readonly validators?: readonly PropertyValidatorComponent[];
83
84
  readonly maxLength?: number;
84
85
  readonly minLength?: number;
@@ -87,8 +88,8 @@ declare type PropertyConfigContents = {
87
88
  readonly autoNow?: boolean;
88
89
  readonly fetcher?: ModelFetcher;
89
90
  };
90
- declare type ModelFetcher = <T extends FunctionalModel>(model: Model<T>, primaryKey: PrimaryKeyType) => Promise<Maybe<ModelInstance<T> | ModelInstanceInputData<T>>>;
91
- declare type PropertyConfig = (PropertyConfigContents & DefaultPropertyValidators) | undefined;
91
+ declare type ModelFetcher = (model: Model<any>, primaryKey: PrimaryKeyType) => Promise<ModelInstance<any> | ModelInstanceInputData<any> | null | undefined>;
92
+ declare type PropertyConfig<T extends Arrayable<FunctionalType>> = (PropertyConfigContents<T> & DefaultPropertyValidators) | undefined;
92
93
  declare type PrimaryKeyPropertyInstanceType = PropertyInstance<string> | PropertyInstance<number>;
93
94
  declare type PrimaryKeyType = string | number;
94
95
  declare type ModelMethods<T extends FunctionalModel> = ValueIsOfType<T, ModelMethod | ModelMethodTyped<T>>;
@@ -102,16 +103,16 @@ declare type ModelDefinition<T extends FunctionalModel> = {
102
103
  readonly modelMethods?: ModelMethods<T>;
103
104
  readonly modelValidators?: readonly ModelComponentValidator[];
104
105
  };
105
- declare type ModelFactory = <T extends FunctionalModel>(modelName: string, modelDefinition: ModelDefinition<T>, options?: OptionalModelOptions) => Model<T>;
106
- declare type CreateParams<T extends FunctionalModel> = (ModelInstanceInputData<T> & {
106
+ declare type ModelFactory = <T extends FunctionalModel>(modelName: string, modelDefinition: ModelDefinition<T>, options?: OptionalModelOptions<T>) => Model<T>;
107
+ declare type CreateParams<T extends FunctionalModel> = ModelInstanceInputData<T> | (ModelInstanceInputData<T> & {
107
108
  readonly id?: PrimaryKeyType;
108
- }) | ModelInstanceInputData<T>;
109
+ });
109
110
  declare type Model<T extends FunctionalModel> = {
110
111
  readonly getName: () => string;
111
112
  readonly getPrimaryKeyName: () => string;
112
113
  readonly getModelDefinition: () => ModelDefinition<T>;
113
114
  readonly getPrimaryKey: (t: ModelInstanceInputData<T>) => PrimaryKeyType;
114
- readonly getOptions: () => object & ModelOptions;
115
+ readonly getOptions: () => object & ModelOptions<T>;
115
116
  readonly create: (data: CreateParams<T>) => ModelInstance<T>;
116
117
  readonly methods: ModelMethodGetters<T>;
117
118
  };
@@ -140,12 +141,12 @@ declare type ModelMethodClient = (...args: readonly any[]) => any;
140
141
  declare type ModelInstanceMethodTyped<T extends FunctionalModel> = (instance: ModelInstance<T>, args?: readonly any[]) => any;
141
142
  declare type ModelInstanceMethod = ModelInstanceMethodTyped<any>;
142
143
  declare type ModelInstanceMethodClient = (...args: readonly any[]) => any;
143
- declare type ModelOptions = {
144
- readonly instanceCreatedCallback: Nullable<Arrayable<(instance: ModelInstance<any>) => void>>;
144
+ declare type ModelOptions<T extends FunctionalModel> = {
145
+ readonly instanceCreatedCallback: Nullable<Arrayable<(instance: ModelInstance<T>) => void>>;
145
146
  readonly [s: string]: any;
146
147
  };
147
- declare type OptionalModelOptions = {
148
- readonly instanceCreatedCallback?: Nullable<Arrayable<(instance: ModelInstance<any>) => void>>;
148
+ declare type OptionalModelOptions<T extends FunctionalModel> = {
149
+ readonly instanceCreatedCallback?: Nullable<Arrayable<(instance: ModelInstance<T>) => void>>;
149
150
  readonly [s: string]: any;
150
151
  } | undefined;
151
- export { MaybeFunction, Maybe, MaybePromise, Nullable, Arrayable, MaybeLazy, JsonAble, toObj, ModelInstance, Model, PropertyValidatorComponent, PropertyValidatorComponentSync, PropertyValidatorComponentAsync, PropertyValidatorComponentType, PropertyValidator, ModelComponentValidator, PropertyInstance, PropertyConfig, FunctionalType, ValueGetter, ReferenceValueType, ModelDefinition, ModelOptions, ModelMethod, OptionalModelOptions, ReferencePropertyInstance, PropertyGetters, PropertyValidators, PropertyValidatorComponentTypeAdvanced, ModelInstanceMethod, ModelInstanceMethodTyped, FunctionalModel, ModelInstanceInputData, ModelMethodTyped, ModelMethodGetters, InstanceMethodGetters, ReferenceFunctions, ModelErrors, MaybeEmpty, PrimaryKeyType, ModelFactory, ModelFetcher, CreateParams, };
152
+ export { MaybeFunction, Maybe, MaybePromise, Nullable, Arrayable, MaybeLazy, JsonAble, toObj, ModelInstance, Model, PropertyValidatorComponent, PropertyValidatorComponentSync, PropertyValidatorComponentAsync, PropertyValidatorComponentType, PropertyValidator, ModelComponentValidator, PropertyInstance, PropertyConfig, FunctionalType, ValueGetter, ReferenceValueType, ModelDefinition, ModelOptions, ModelMethod, OptionalModelOptions, ReferencePropertyInstance, PropertyGetters, PropertyValidators, PropertyValidatorComponentTypeAdvanced, ModelInstanceMethod, ModelInstanceMethodTyped, FunctionalModel, ModelInstanceInputData, ModelMethodTyped, ModelMethodGetters, InstanceMethodGetters, ReferenceFunctions, ModelErrors, PrimaryKeyType, ModelFactory, ModelFetcher, CreateParams, ValidatorConfiguration, };
package/interfaces.js CHANGED
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- /* eslint-disable no-unused-vars */
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  /* eslint-enable no-unused-vars */
5
4
  //# sourceMappingURL=interfaces.js.map
package/interfaces.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";AAAA,mCAAmC;;AAiVnC,kCAAkC"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;AAoVA,kCAAkC"}
package/models.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "functional-models",
3
- "version": "1.1.13",
3
+ "version": "1.1.17",
4
4
  "description": "A library for creating JavaScript function based models.",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -9,7 +9,7 @@
9
9
  "test:coverage": "nyc npm run test",
10
10
  "feature-tests": "./node_modules/.bin/cucumber-js -p default",
11
11
  "coverage": "nyc --all --reporter=lcov npm test",
12
- "dist": "tsc && cp package.json ./dist && cp README.md ./dist && cd dist && npm publish"
12
+ "dist": "tsc -p ./tsconfig.build.json && cp package.json ./dist && cp README.md ./dist && cd dist && npm publish"
13
13
  },
14
14
  "repository": {
15
15
  "type": "git",
package/properties.d.ts CHANGED
@@ -1,16 +1,16 @@
1
- import { MaybeEmpty, Model, PropertyInstance, FunctionalType, PropertyConfig, MaybeFunction, Arrayable, ReferencePropertyInstance, FunctionalModel, JsonAble } from './interfaces';
2
- declare const Property: <T extends Arrayable<FunctionalType>>(type: string, config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<T>;
3
- declare const DateProperty: (config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<MaybeEmpty<Date>>;
1
+ import { ModelInstance, Maybe, PrimaryKeyType, Model, PropertyInstance, FunctionalType, PropertyConfig, MaybeFunction, Arrayable, ReferencePropertyInstance, FunctionalModel, JsonAble } from './interfaces';
2
+ declare const Property: <T extends Arrayable<FunctionalType>>(type: string, config?: PropertyConfig<T>, additionalMetadata?: {}) => PropertyInstance<T>;
3
+ declare const DateProperty: (config?: PropertyConfig<Maybe<Date | string>>, additionalMetadata?: {}) => PropertyInstance<Maybe<string | Date>>;
4
4
  declare const ArrayProperty: <T extends FunctionalType>(config?: {}, additionalMetadata?: {}) => PropertyInstance<readonly T[]>;
5
5
  declare const ObjectProperty: (config?: {}, additionalMetadata?: {}) => PropertyInstance<{
6
6
  readonly [s: string]: JsonAble;
7
7
  }>;
8
- declare const TextProperty: (config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<MaybeEmpty<string>>;
9
- declare const IntegerProperty: (config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<MaybeEmpty<number>>;
10
- declare const NumberProperty: (config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<MaybeEmpty<number>>;
11
- declare const ConstantValueProperty: (value: string, config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<MaybeEmpty<string>>;
12
- declare const EmailProperty: (config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<MaybeEmpty<string>>;
13
- declare const BooleanProperty: (config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<MaybeEmpty<boolean>>;
14
- declare const UniqueId: (config?: PropertyConfig, additionalMetadata?: {}) => PropertyInstance<string>;
15
- declare const ReferenceProperty: <T extends FunctionalModel>(model: MaybeFunction<Model<T>>, config?: PropertyConfig, additionalMetadata?: {}) => ReferencePropertyInstance<T>;
8
+ declare const TextProperty: (config?: PropertyConfig<Maybe<string>>, additionalMetadata?: {}) => PropertyInstance<Maybe<string>>;
9
+ declare const IntegerProperty: (config?: PropertyConfig<Maybe<number>>, additionalMetadata?: {}) => PropertyInstance<Maybe<number>>;
10
+ declare const NumberProperty: (config?: PropertyConfig<Maybe<number>>, additionalMetadata?: {}) => PropertyInstance<Maybe<number>>;
11
+ declare const ConstantValueProperty: (value: string, config?: PropertyConfig<Maybe<string>>, additionalMetadata?: {}) => PropertyInstance<Maybe<string>>;
12
+ declare const EmailProperty: (config?: PropertyConfig<Maybe<string>>, additionalMetadata?: {}) => PropertyInstance<Maybe<string>>;
13
+ declare const BooleanProperty: (config?: PropertyConfig<Maybe<boolean>>, additionalMetadata?: {}) => PropertyInstance<Maybe<boolean>>;
14
+ declare const UniqueId: (config?: PropertyConfig<string>, additionalMetadata?: {}) => PropertyInstance<string>;
15
+ declare const ReferenceProperty: <T extends FunctionalModel>(model: MaybeFunction<Model<T>>, config?: PropertyConfig<Maybe<PrimaryKeyType> | T | ModelInstance<T>>, additionalMetadata?: {}) => ReferencePropertyInstance<T>;
16
16
  export { Property, UniqueId, DateProperty, ArrayProperty, ReferenceProperty, IntegerProperty, TextProperty, ConstantValueProperty, NumberProperty, ObjectProperty, EmailProperty, BooleanProperty, };
package/properties.js CHANGED
@@ -70,8 +70,8 @@ const Property = (type, config = {}, additionalMetadata = {}) => {
70
70
  };
71
71
  }, getValidator: valueGetter => {
72
72
  const validator = (0, validation_1.createPropertyValidator)(valueGetter, config);
73
- const _propertyValidatorWrapper = (instance, instanceData) => __awaiter(void 0, void 0, void 0, function* () {
74
- return validator(instance, instanceData);
73
+ const _propertyValidatorWrapper = (instance, instanceData, propertyConfiguration) => __awaiter(void 0, void 0, void 0, function* () {
74
+ return validator(instance, instanceData, propertyConfiguration);
75
75
  });
76
76
  return _propertyValidatorWrapper;
77
77
  } });
@@ -83,6 +83,9 @@ const DateProperty = (config = {}, additionalMetadata = {}) => Property(constant
83
83
  if (!value && (config === null || config === void 0 ? void 0 : config.autoNow)) {
84
84
  return new Date();
85
85
  }
86
+ if (typeof value === 'string') {
87
+ return new Date(value);
88
+ }
86
89
  return value;
87
90
  },
88
91
  }, config), additionalMetadata);
@@ -172,7 +175,7 @@ const ReferenceProperty = (model, config = {}, additionalMetadata = {}) => {
172
175
  const lazyLoadMethod = (instanceValues) => __awaiter(void 0, void 0, void 0, function* () {
173
176
  const valueIsModelInstance = instanceValues && instanceValues.getPrimaryKeyName;
174
177
  const _getInstanceReturn = (objToUse) => {
175
- // We need to determine if the object we just go is an actual model instance to determine if we need to make one.
178
+ // We need to determine if the object we just got is an actual model instance to determine if we need to make one.
176
179
  const objIsModelInstance = instanceValues && instanceValues.getPrimaryKeyName;
177
180
  const instance = objIsModelInstance
178
181
  ? objToUse
package/properties.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"properties.js","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"properties.js","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":"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"}
package/validation.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { FunctionalModel, ModelInstance, Model, ModelComponentValidator, PropertyValidatorComponent, PropertyValidatorComponentType, PropertyValidatorComponentSync, PropertyValidatorComponentTypeAdvanced, PropertyValidator, PropertyConfig, MaybeFunction, PropertyValidators, ValueGetter, FunctionalType, ModelErrors } from './interfaces';
1
+ import { FunctionalModel, ModelInstance, Model, ModelComponentValidator, PropertyValidatorComponent, PropertyValidatorComponentType, PropertyValidatorComponentSync, PropertyValidatorComponentTypeAdvanced, PropertyValidator, PropertyConfig, MaybeFunction, PropertyValidators, ValueGetter, Arrayable, FunctionalType, ModelErrors, ValidatorConfiguration } from './interfaces';
2
2
  declare const TYPE_PRIMITIVES: {
3
3
  boolean: string;
4
4
  string: string;
@@ -24,6 +24,6 @@ declare const minTextLength: (min: Number) => PropertyValidatorComponentType<str
24
24
  declare const referenceTypeMatch: <TModel extends FunctionalModel>(referencedModel: MaybeFunction<Model<TModel>>) => PropertyValidatorComponentTypeAdvanced<ModelInstance<TModel>, TModel>;
25
25
  declare const aggregateValidator: (value: any, methodOrMethods: PropertyValidatorComponent | readonly PropertyValidatorComponent[]) => PropertyValidator;
26
26
  declare const emptyValidator: PropertyValidatorComponentSync;
27
- declare const createPropertyValidator: (valueGetter: ValueGetter, config: PropertyConfig) => PropertyValidator;
28
- declare const createModelValidator: (validators: PropertyValidators, modelValidators?: readonly ModelComponentValidator[] | undefined) => (instance: ModelInstance<any>, options: object) => Promise<ModelErrors>;
27
+ declare const createPropertyValidator: <T extends Arrayable<FunctionalType>>(valueGetter: ValueGetter, config: PropertyConfig<T>) => PropertyValidator;
28
+ declare const createModelValidator: (validators: PropertyValidators, modelValidators?: readonly ModelComponentValidator[] | undefined) => (instance: ModelInstance<any>, propertyConfiguration: ValidatorConfiguration) => Promise<ModelErrors>;
29
29
  export { isNumber, isBoolean, isString, isInteger, isType, isDate, isArray, isRequired, maxNumber, minNumber, choices, maxTextLength, minTextLength, meetsRegex, aggregateValidator, emptyValidator, createPropertyValidator, createModelValidator, arrayType, referenceTypeMatch, TYPE_PRIMITIVES, };
package/validation.js CHANGED
@@ -197,9 +197,9 @@ const aggregateValidator = (value, methodOrMethods) => {
197
197
  const toDo = Array.isArray(methodOrMethods)
198
198
  ? methodOrMethods
199
199
  : [methodOrMethods];
200
- const _aggregativeValidator = (instance, instanceData) => __awaiter(void 0, void 0, void 0, function* () {
200
+ const _aggregativeValidator = (instance, instanceData, propertyConfiguration) => __awaiter(void 0, void 0, void 0, function* () {
201
201
  const values = yield Promise.all(toDo.map(method => {
202
- return method(value, instance, instanceData);
202
+ return method(value, instance, instanceData, propertyConfiguration);
203
203
  }));
204
204
  return filterEmpty(values);
205
205
  });
@@ -211,7 +211,7 @@ exports.emptyValidator = emptyValidator;
211
211
  const _boolChoice = (method) => (configValue) => {
212
212
  const func = method(configValue);
213
213
  const validatorWrapper = (value, modelInstance, modelData) => {
214
- return func(value, modelInstance, modelData);
214
+ return func(value, modelInstance, modelData, {});
215
215
  };
216
216
  return validatorWrapper;
217
217
  };
@@ -228,7 +228,7 @@ const CONFIG_TO_VALIDATE_METHOD = {
228
228
  choices: _boolChoice(choices),
229
229
  };
230
230
  const createPropertyValidator = (valueGetter, config) => {
231
- const _propertyValidator = (instance, instanceData) => __awaiter(void 0, void 0, void 0, function* () {
231
+ const _propertyValidator = (instance, instanceData, propertyConfiguration) => __awaiter(void 0, void 0, void 0, function* () {
232
232
  if (!config) {
233
233
  config = {};
234
234
  }
@@ -250,14 +250,14 @@ const createPropertyValidator = (valueGetter, config) => {
250
250
  return [];
251
251
  }
252
252
  const validator = aggregateValidator(value, validators);
253
- const errors = yield validator(instance, instanceData);
253
+ const errors = yield validator(instance, instanceData, propertyConfiguration);
254
254
  return [...new Set((0, flatMap_1.default)(errors))];
255
255
  });
256
256
  return _propertyValidator;
257
257
  };
258
258
  exports.createPropertyValidator = createPropertyValidator;
259
259
  const createModelValidator = (validators, modelValidators) => {
260
- const _modelValidator = (instance, options) => __awaiter(void 0, void 0, void 0, function* () {
260
+ const _modelValidator = (instance, propertyConfiguration) => __awaiter(void 0, void 0, void 0, function* () {
261
261
  return Promise.resolve().then(() => __awaiter(void 0, void 0, void 0, function* () {
262
262
  if (!instance) {
263
263
  throw new Error(`Instance cannot be empty`);
@@ -265,10 +265,13 @@ const createModelValidator = (validators, modelValidators) => {
265
265
  const keysAndFunctions = Object.entries(validators);
266
266
  const instanceData = yield instance.toObj();
267
267
  const propertyValidationErrors = yield Promise.all(keysAndFunctions.map(([key, validator]) => __awaiter(void 0, void 0, void 0, function* () {
268
- return [key, yield validator(instance, instanceData)];
268
+ return [
269
+ key,
270
+ yield validator(instance, instanceData, propertyConfiguration),
271
+ ];
269
272
  })));
270
273
  const modelValidationErrors = (yield Promise.all(modelValidators
271
- ? modelValidators.map(validator => validator(instance, instanceData, options))
274
+ ? modelValidators.map(validator => validator(instance, instanceData, propertyConfiguration))
272
275
  : [])).filter(x => x);
273
276
  const propertyErrors = propertyValidationErrors
274
277
  .filter(([, errors]) => Boolean(errors) && errors.length > 0)
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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"}