functional-models 3.6.4 → 3.8.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.
package/package.json CHANGED
@@ -1,24 +1,24 @@
1
1
  {
2
2
  "name": "functional-models",
3
- "version": "3.6.4",
3
+ "version": "3.8.0",
4
4
  "description": "Functional models is ooey gooey framework for building and using awesome models EVERYWHERE.",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
7
7
  "scripts": {
8
- "build": "rm -Rf ./dist && tsc && cp package.json ./dist && cp README.md ./dist",
9
- "build:docs": "npx typedoc --out ./buildDocs ./src/index.ts",
10
- "build:watch": "nodemon -e '*' --watch ./src --exec npm run build",
8
+ "mocha": "mocha -r tsx",
9
+ "test": "mocha -r tsx --extensions ts,tsx 'test/**/*.{ts,tsx}'",
10
+ "test:coverage": "c8 --all --reporter cobertura --reporter text --reporter lcov --reporter html npm run test",
11
+ "test:watch": "nodemon -e '*' --watch test --watch src --exec npm run test:coverage",
11
12
  "commit": "cz",
12
- "coverage": "nyc --all --reporter=lcov npm test",
13
- "dist": "npm run build && npm run build:docs && cd dist && npm publish && cd ../knowledge-mcp && npm run dist",
14
- "eslint": "eslint . --fix",
15
13
  "feature-tests": "./node_modules/.bin/cucumber-js -p default",
16
- "mocha": "mocha -r tsx",
14
+ "coverage": "nyc --all --reporter=lcov npm test",
15
+ "build": "rm -Rf ./dist && tsc && cp package.json ./dist && cp README.md ./dist",
16
+ "build:watch": "nodemon -e '*' --watch ./src --exec npm run build",
17
+ "build:docs": "npx typedoc --out ./buildDocs ./src/index.ts",
17
18
  "prettier": "prettier --write .",
18
19
  "prettier:check": "prettier -c .",
19
- "test": "mocha -r tsx --extensions ts,tsx 'test/**/*.{ts,tsx}'",
20
- "test:coverage": "c8 --all --reporter cobertura --reporter text --reporter lcov --reporter html npm run test",
21
- "test:watch": "nodemon -e '*' --watch test --watch src --exec npm run test:coverage"
20
+ "eslint": "eslint . --fix",
21
+ "dist": "npm run build && cd dist && npm publish"
22
22
  },
23
23
  "repository": {
24
24
  "type": "git",
@@ -85,10 +85,11 @@
85
85
  },
86
86
  "dependencies": {
87
87
  "async-lock": "^1.3.0",
88
+ "get-random-values": "^1.2.2",
88
89
  "lodash": "^4.17.21",
89
90
  "modern-async": "^2.0.4",
90
91
  "openapi-types": "^12.1.3",
91
- "uuid": "^10.0.0",
92
- "zod": "^4.1.11"
92
+ "zod": "^4.1.11",
93
+ "uuid": "^13.0.0"
93
94
  }
94
95
  }
package/properties.d.ts CHANGED
@@ -10,7 +10,7 @@ import { ModelReferenceType, ModelInstance, ModelType, PropertyInstance, DataVal
10
10
  * @typeParam TModelExtensions - Any additional model extensions
11
11
  * @typeParam TModelInstanceExtensions - Any additional model instance extensions
12
12
  */
13
- declare const Property: <TValue extends Arrayable<DataValue>, TData extends DataDescription = Readonly<{
13
+ export declare const Property: <TValue extends Arrayable<DataValue>, TData extends DataDescription = Readonly<{
14
14
  [s: string]: any;
15
15
  }>, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object>(propertyType: PropertyType | string, config?: PropertyConfig<TValue>, additionalMetadata?: {}) => PropertyInstance<TValue, TData, TModelExtensions, TModelInstanceExtensions>;
16
16
  /**
@@ -36,7 +36,7 @@ type DatePropertyConfig<T extends Arrayable<DataValue>> = {
36
36
  * @param config - A configuration that enables overriding of date formatting
37
37
  * @param additionalMetadata
38
38
  */
39
- declare const DateProperty: (config?: DatePropertyConfig<DateValueType>, additionalMetadata?: {}) => Readonly<{
39
+ export declare const DateProperty: (config?: DatePropertyConfig<DateValueType>, additionalMetadata?: {}) => Readonly<{
40
40
  getConfig: () => object;
41
41
  getChoices: () => readonly import("./types").ChoiceTypes[];
42
42
  getDefaultValue: () => DateValueType | undefined;
@@ -61,7 +61,7 @@ declare const DateProperty: (config?: DatePropertyConfig<DateValueType>, additio
61
61
  * @param config - A configuration that enables overriding of date and time formatting
62
62
  * @param additionalMetadata
63
63
  */
64
- declare const DatetimeProperty: (config?: DatePropertyConfig<DateValueType>, additionalMetadata?: {}) => Readonly<{
64
+ export declare const DatetimeProperty: (config?: DatePropertyConfig<DateValueType>, additionalMetadata?: {}) => Readonly<{
65
65
  getConfig: () => object;
66
66
  getChoices: () => readonly import("./types").ChoiceTypes[];
67
67
  getDefaultValue: () => DateValueType | undefined;
@@ -86,7 +86,7 @@ declare const DatetimeProperty: (config?: DatePropertyConfig<DateValueType>, add
86
86
  * @param config
87
87
  * @param additionalMetadata
88
88
  */
89
- declare const ArrayProperty: <T extends DataValue>(config?: {}, additionalMetadata?: {}) => Readonly<{
89
+ export declare const ArrayProperty: <T extends DataValue>(config?: {}, additionalMetadata?: {}) => Readonly<{
90
90
  getConfig: () => object;
91
91
  getChoices: () => readonly import("./types").ChoiceTypes[];
92
92
  getDefaultValue: () => readonly T[] | undefined;
@@ -112,7 +112,7 @@ declare const ArrayProperty: <T extends DataValue>(config?: {}, additionalMetada
112
112
  * @param config
113
113
  * @param additionalMetadata
114
114
  */
115
- declare const SingleTypeArrayProperty: <TValue extends Omit<PrimitiveValueType, "object">>(valueType: TValue, config?: {}, additionalMetadata?: {}) => Readonly<{
115
+ export declare const SingleTypeArrayProperty: <TValue extends Omit<PrimitiveValueType, "object">>(valueType: TValue, config?: {}, additionalMetadata?: {}) => Readonly<{
116
116
  getConfig: () => object;
117
117
  getChoices: () => readonly import("./types").ChoiceTypes[];
118
118
  getDefaultValue: () => readonly TValue[] | undefined;
@@ -137,7 +137,7 @@ declare const SingleTypeArrayProperty: <TValue extends Omit<PrimitiveValueType,
137
137
  * @param config
138
138
  * @param additionalMetadata
139
139
  */
140
- declare const ObjectProperty: <TObject extends Readonly<Record<string, JsonAble>>>(config?: {}, additionalMetadata?: {}) => Readonly<{
140
+ export declare const ObjectProperty: <TObject extends Readonly<Record<string, JsonAble>>>(config?: {}, additionalMetadata?: {}) => Readonly<{
141
141
  getConfig: () => object;
142
142
  getChoices: () => readonly import("./types").ChoiceTypes[];
143
143
  getDefaultValue: () => TObject | undefined;
@@ -162,7 +162,7 @@ declare const ObjectProperty: <TObject extends Readonly<Record<string, JsonAble>
162
162
  * @param config - Additional Configurations
163
163
  * @param additionalMetadata - Additional Metadata
164
164
  */
165
- declare const TextProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
165
+ export declare const TextProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
166
166
  getConfig: () => object;
167
167
  getChoices: () => readonly import("./types").ChoiceTypes[];
168
168
  getDefaultValue: () => string | undefined;
@@ -187,7 +187,7 @@ declare const TextProperty: (config?: PropertyConfig<string>, additionalMetadata
187
187
  * @param config - Additional configurations
188
188
  * @param additionalMetadata - Additional metadata
189
189
  */
190
- declare const BigTextProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
190
+ export declare const BigTextProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
191
191
  getConfig: () => object;
192
192
  getChoices: () => readonly import("./types").ChoiceTypes[];
193
193
  getDefaultValue: () => string | undefined;
@@ -212,7 +212,7 @@ declare const BigTextProperty: (config?: PropertyConfig<string>, additionalMetad
212
212
  * @param config
213
213
  * @param additionalMetadata
214
214
  */
215
- declare const IntegerProperty: (config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
215
+ export declare const IntegerProperty: (config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
216
216
  getConfig: () => object;
217
217
  getChoices: () => readonly import("./types").ChoiceTypes[];
218
218
  getDefaultValue: () => number | undefined;
@@ -238,7 +238,7 @@ declare const IntegerProperty: (config?: PropertyConfig<number>, additionalMetad
238
238
  * @param config
239
239
  * @param additionalMetadata
240
240
  */
241
- declare const YearProperty: (config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
241
+ export declare const YearProperty: (config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
242
242
  getConfig: () => object;
243
243
  getChoices: () => readonly import("./types").ChoiceTypes[];
244
244
  getDefaultValue: () => number | undefined;
@@ -263,7 +263,7 @@ declare const YearProperty: (config?: PropertyConfig<number>, additionalMetadata
263
263
  * @param config
264
264
  * @param additionalMetadata
265
265
  */
266
- declare const NumberProperty: (config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
266
+ export declare const NumberProperty: (config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
267
267
  getConfig: () => object;
268
268
  getChoices: () => readonly import("./types").ChoiceTypes[];
269
269
  getDefaultValue: () => number | undefined;
@@ -290,7 +290,7 @@ declare const NumberProperty: (config?: PropertyConfig<number>, additionalMetada
290
290
  * @param config
291
291
  * @param additionalMetadata
292
292
  */
293
- declare const ConstantValueProperty: <TDataValue extends Arrayable<DataValue>>(valueType: PropertyType | string, value: TDataValue, config?: PropertyConfig<TDataValue>, additionalMetadata?: {}) => Readonly<{
293
+ export declare const ConstantValueProperty: <TDataValue extends Arrayable<DataValue>>(valueType: PropertyType | string, value: TDataValue, config?: PropertyConfig<TDataValue>, additionalMetadata?: {}) => Readonly<{
294
294
  getConfig: () => object;
295
295
  getChoices: () => readonly import("./types").ChoiceTypes[];
296
296
  getDefaultValue: () => TDataValue | undefined;
@@ -315,7 +315,7 @@ declare const ConstantValueProperty: <TDataValue extends Arrayable<DataValue>>(v
315
315
  * @param config
316
316
  * @param additionalMetadata
317
317
  */
318
- declare const EmailProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
318
+ export declare const EmailProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
319
319
  getConfig: () => object;
320
320
  getChoices: () => readonly import("./types").ChoiceTypes[];
321
321
  getDefaultValue: () => string | undefined;
@@ -340,7 +340,7 @@ declare const EmailProperty: (config?: PropertyConfig<string>, additionalMetadat
340
340
  * @param config
341
341
  * @param additionalMetadata
342
342
  */
343
- declare const BooleanProperty: (config?: PropertyConfig<boolean>, additionalMetadata?: {}) => Readonly<{
343
+ export declare const BooleanProperty: (config?: PropertyConfig<boolean>, additionalMetadata?: {}) => Readonly<{
344
344
  getConfig: () => object;
345
345
  getChoices: () => readonly import("./types").ChoiceTypes[];
346
346
  getDefaultValue: () => boolean | undefined;
@@ -366,7 +366,7 @@ declare const BooleanProperty: (config?: PropertyConfig<boolean>, additionalMeta
366
366
  * @param config - Additional configurations. NOTE: required is ALWAYS true.
367
367
  * @param additionalMetadata - Any additional metadata.
368
368
  */
369
- declare const PrimaryKeyUuidProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
369
+ export declare const PrimaryKeyUuidProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
370
370
  getConfig: () => object;
371
371
  getChoices: () => readonly import("./types").ChoiceTypes[];
372
372
  getDefaultValue: () => string | undefined;
@@ -393,7 +393,7 @@ declare const PrimaryKeyUuidProperty: (config?: PropertyConfig<string>, addition
393
393
  * @param config - Additional configurations.
394
394
  * @param additionalMetadata - Any additional metadata.
395
395
  */
396
- declare const UuidProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
396
+ export declare const UuidProperty: (config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
397
397
  getConfig: () => object;
398
398
  getChoices: () => readonly import("./types").ChoiceTypes[];
399
399
  getDefaultValue: () => string | undefined;
@@ -430,7 +430,7 @@ declare const UuidProperty: (config?: PropertyConfig<string>, additionalMetadata
430
430
  * @param config
431
431
  * @param additionalMetadata
432
432
  */
433
- declare const ModelReferenceProperty: <T extends DataDescription>(model: MaybeFunction<ModelType<T>>, config?: PropertyConfig<ModelReferenceType<T>>, additionalMetadata?: {}) => ModelReferencePropertyInstance<T, ModelReferenceType<T, object, object>, object, object>;
433
+ export declare const ModelReferenceProperty: <T extends DataDescription>(model: MaybeFunction<ModelType<T>>, config?: PropertyConfig<ModelReferenceType<T>>, additionalMetadata?: {}) => ModelReferencePropertyInstance<T, ModelReferenceType<T, object, object>, object, object>;
434
434
  /**
435
435
  * The full implementation of a ModelReference, useful for typing certain extended functionalities.
436
436
  * For a full description see {@link ModelReferenceProperty}
@@ -438,7 +438,7 @@ declare const ModelReferenceProperty: <T extends DataDescription>(model: MaybeFu
438
438
  * @param config
439
439
  * @param additionalMetadata
440
440
  */
441
- declare const AdvancedModelReferenceProperty: <T extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object>(model: MaybeFunction<ModelType<T, TModelExtensions, TModelInstanceExtensions>>, config?: PropertyConfig<ModelReferenceType<T, TModelExtensions, TModelInstanceExtensions>>, additionalMetadata?: {}) => ModelReferencePropertyInstance<T, ModelReferenceType<T, TModelExtensions, TModelInstanceExtensions>, TModelExtensions, TModelInstanceExtensions>;
441
+ export declare const AdvancedModelReferenceProperty: <T extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object>(model: MaybeFunction<ModelType<T, TModelExtensions, TModelInstanceExtensions>>, config?: PropertyConfig<ModelReferenceType<T, TModelExtensions, TModelInstanceExtensions>>, additionalMetadata?: {}) => ModelReferencePropertyInstance<T, ModelReferenceType<T, TModelExtensions, TModelInstanceExtensions>, TModelExtensions, TModelInstanceExtensions>;
442
442
  /**
443
443
  * A property for Denormalizing. This represents a complex value that has been simplified for ease of use.
444
444
  * One common use is for creating "Display Values" in a GUI. This process can be extremely expensive, such as having to
@@ -452,7 +452,7 @@ declare const AdvancedModelReferenceProperty: <T extends DataDescription, TModel
452
452
  * @param config - A Config
453
453
  * @param additionalMetadata _ Any additional metadata.
454
454
  */
455
- declare const DenormalizedProperty: <TValue extends DataValue, T extends DataDescription>(propertyType: string, calculate: CalculateDenormalization<TValue, T>, config?: PropertyConfig<TValue>, additionalMetadata?: {}) => Readonly<{
455
+ export declare const DenormalizedProperty: <TValue extends DataValue, T extends DataDescription>(propertyType: string, calculate: CalculateDenormalization<TValue, T>, config?: PropertyConfig<TValue>, additionalMetadata?: {}) => Readonly<{
456
456
  getConfig: () => object;
457
457
  getChoices: () => readonly import("./types").ChoiceTypes[];
458
458
  getDefaultValue: () => TValue | undefined;
@@ -480,7 +480,7 @@ declare const DenormalizedProperty: <TValue extends DataValue, T extends DataDes
480
480
  * @param config - Any configs
481
481
  * @param additionalMetadata - Optional Metadata
482
482
  */
483
- declare const DenormalizedTextProperty: <T extends DataDescription>(calculate: CalculateDenormalization<string, T>, config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
483
+ export declare const DenormalizedTextProperty: <T extends DataDescription>(calculate: CalculateDenormalization<string, T>, config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
484
484
  getConfig: () => object;
485
485
  getChoices: () => readonly import("./types").ChoiceTypes[];
486
486
  getDefaultValue: () => string | undefined;
@@ -508,7 +508,7 @@ declare const DenormalizedTextProperty: <T extends DataDescription>(calculate: C
508
508
  * @param config - Any configs
509
509
  * @param additionalMetadata - Optional Metadata
510
510
  */
511
- declare const DenormalizedNumberProperty: <T extends DataDescription>(calculate: CalculateDenormalization<number, T>, config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
511
+ export declare const DenormalizedNumberProperty: <T extends DataDescription>(calculate: CalculateDenormalization<number, T>, config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
512
512
  getConfig: () => object;
513
513
  getChoices: () => readonly import("./types").ChoiceTypes[];
514
514
  getDefaultValue: () => number | undefined;
@@ -536,7 +536,7 @@ declare const DenormalizedNumberProperty: <T extends DataDescription>(calculate:
536
536
  * @param config - Any configs
537
537
  * @param additionalMetadata - Optional Metadata
538
538
  */
539
- declare const DenormalizedIntegerProperty: <T extends DataDescription>(calculate: CalculateDenormalization<number, T>, config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
539
+ export declare const DenormalizedIntegerProperty: <T extends DataDescription>(calculate: CalculateDenormalization<number, T>, config?: PropertyConfig<number>, additionalMetadata?: {}) => Readonly<{
540
540
  getConfig: () => object;
541
541
  getChoices: () => readonly import("./types").ChoiceTypes[];
542
542
  getDefaultValue: () => number | undefined;
@@ -572,7 +572,7 @@ declare const DenormalizedIntegerProperty: <T extends DataDescription>(calculate
572
572
  * @param config
573
573
  * @param additionalMetadata
574
574
  */
575
- declare const NaturalIdProperty: (propertyKeys: readonly string[], joiner: string, config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
575
+ export declare const NaturalIdProperty: (propertyKeys: readonly string[], joiner: string, config?: PropertyConfig<string>, additionalMetadata?: {}) => Readonly<{
576
576
  getConfig: () => object;
577
577
  getChoices: () => readonly import("./types").ChoiceTypes[];
578
578
  getDefaultValue: () => string | undefined;
@@ -592,4 +592,4 @@ declare const NaturalIdProperty: (propertyKeys: readonly string[], joiner: strin
592
592
  [s: string]: any;
593
593
  }>>;
594
594
  }>;
595
- export { Property, NaturalIdProperty, DateProperty, DatetimeProperty, ArrayProperty, ModelReferenceProperty, AdvancedModelReferenceProperty, IntegerProperty, TextProperty, ConstantValueProperty, NumberProperty, ObjectProperty, EmailProperty, BooleanProperty, DenormalizedProperty, DenormalizedIntegerProperty, DenormalizedNumberProperty, DenormalizedTextProperty, BigTextProperty, YearProperty, PrimaryKeyUuidProperty, SingleTypeArrayProperty, UuidProperty, };
595
+ export {};
package/properties.js CHANGED
@@ -12,10 +12,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.UuidProperty = exports.SingleTypeArrayProperty = exports.PrimaryKeyUuidProperty = exports.YearProperty = exports.BigTextProperty = exports.DenormalizedTextProperty = exports.DenormalizedNumberProperty = exports.DenormalizedIntegerProperty = exports.DenormalizedProperty = exports.BooleanProperty = exports.EmailProperty = exports.ObjectProperty = exports.NumberProperty = exports.ConstantValueProperty = exports.TextProperty = exports.IntegerProperty = exports.AdvancedModelReferenceProperty = exports.ModelReferenceProperty = exports.ArrayProperty = exports.DatetimeProperty = exports.DateProperty = exports.NaturalIdProperty = exports.Property = void 0;
15
+ exports.NaturalIdProperty = exports.DenormalizedIntegerProperty = exports.DenormalizedNumberProperty = exports.DenormalizedTextProperty = exports.DenormalizedProperty = exports.AdvancedModelReferenceProperty = exports.ModelReferenceProperty = exports.UuidProperty = exports.PrimaryKeyUuidProperty = exports.BooleanProperty = exports.EmailProperty = exports.ConstantValueProperty = exports.NumberProperty = exports.YearProperty = exports.IntegerProperty = exports.BigTextProperty = exports.TextProperty = exports.ObjectProperty = exports.SingleTypeArrayProperty = exports.ArrayProperty = exports.DatetimeProperty = exports.DateProperty = exports.Property = void 0;
16
16
  const merge_1 = __importDefault(require("lodash/merge"));
17
17
  const get_1 = __importDefault(require("lodash/get"));
18
- const uuid_1 = require("uuid");
19
18
  const validation_1 = require("./validation");
20
19
  const utils_1 = require("./utils");
21
20
  const types_1 = require("./types");
@@ -115,7 +114,7 @@ const isDate = (value) => {
115
114
  * @param config - A configuration that enables overriding of date formatting
116
115
  * @param additionalMetadata
117
116
  */
118
- const DateProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Date, (0, merge_1.default)({
117
+ const DateProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Date, (0, merge_1.default)({
119
118
  lazyLoadMethod: (value) => {
120
119
  if (isDate(value)) {
121
120
  if (config.formatFunction) {
@@ -139,7 +138,7 @@ exports.DateProperty = DateProperty;
139
138
  * @param config - A configuration that enables overriding of date and time formatting
140
139
  * @param additionalMetadata
141
140
  */
142
- const DatetimeProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Datetime, (0, merge_1.default)({
141
+ const DatetimeProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Datetime, (0, merge_1.default)({
143
142
  lazyLoadMethod: (value) => {
144
143
  if (isDate(value)) {
145
144
  if (config.formatFunction) {
@@ -163,7 +162,7 @@ exports.DatetimeProperty = DatetimeProperty;
163
162
  * @param config
164
163
  * @param additionalMetadata
165
164
  */
166
- const ArrayProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Array, Object.assign(Object.assign({ defaultValue: [] }, config), { isArray: true }), additionalMetadata);
165
+ const ArrayProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Array, Object.assign(Object.assign({ defaultValue: [] }, config), { isArray: true }), additionalMetadata);
167
166
  exports.ArrayProperty = ArrayProperty;
168
167
  /**
169
168
  * A property that is an array, but only of a single value type. This is an {@link ArrayProperty} but with a validator for the type.
@@ -171,7 +170,7 @@ exports.ArrayProperty = ArrayProperty;
171
170
  * @param config
172
171
  * @param additionalMetadata
173
172
  */
174
- const SingleTypeArrayProperty = (valueType, config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Array, Object.assign(Object.assign({ defaultValue: [] }, config), { isArray: true, validators: (0, lib_1.mergeValidators)(config,
173
+ const SingleTypeArrayProperty = (valueType, config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Array, Object.assign(Object.assign({ defaultValue: [] }, config), { isArray: true, validators: (0, lib_1.mergeValidators)(config,
175
174
  // @ts-ignore
176
175
  (0, validation_1.arrayType)(valueType)) }), additionalMetadata);
177
176
  exports.SingleTypeArrayProperty = SingleTypeArrayProperty;
@@ -180,7 +179,7 @@ exports.SingleTypeArrayProperty = SingleTypeArrayProperty;
180
179
  * @param config
181
180
  * @param additionalMetadata
182
181
  */
183
- const ObjectProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Object, (0, merge_1.default)(config, {
182
+ const ObjectProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Object, (0, merge_1.default)(config, {
184
183
  validators: (0, lib_1.mergeValidators)(config, (0, validation_1.isType)('object')),
185
184
  }), additionalMetadata);
186
185
  exports.ObjectProperty = ObjectProperty;
@@ -189,7 +188,7 @@ exports.ObjectProperty = ObjectProperty;
189
188
  * @param config - Additional Configurations
190
189
  * @param additionalMetadata - Additional Metadata
191
190
  */
192
- const TextProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Text, (0, merge_1.default)(config, {
191
+ const TextProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Text, (0, merge_1.default)(config, {
193
192
  isString: true,
194
193
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonTextValidators)(config)),
195
194
  }), additionalMetadata);
@@ -199,7 +198,7 @@ exports.TextProperty = TextProperty;
199
198
  * @param config - Additional configurations
200
199
  * @param additionalMetadata - Additional metadata
201
200
  */
202
- const BigTextProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.BigText, (0, merge_1.default)(config, {
201
+ const BigTextProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.BigText, (0, merge_1.default)(config, {
203
202
  isString: true,
204
203
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonTextValidators)(config)),
205
204
  }), additionalMetadata);
@@ -209,7 +208,7 @@ exports.BigTextProperty = BigTextProperty;
209
208
  * @param config
210
209
  * @param additionalMetadata
211
210
  */
212
- const IntegerProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Integer, (0, merge_1.default)(config, {
211
+ const IntegerProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Integer, (0, merge_1.default)(config, {
213
212
  isInteger: true,
214
213
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config)),
215
214
  }), additionalMetadata);
@@ -220,7 +219,7 @@ exports.IntegerProperty = IntegerProperty;
220
219
  * @param config
221
220
  * @param additionalMetadata
222
221
  */
223
- const YearProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Integer, (0, merge_1.default)(config, {
222
+ const YearProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Integer, (0, merge_1.default)(config, {
224
223
  isInteger: true,
225
224
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config), (0, validation_1.minNumber)(0), (0, validation_1.maxNumber)(MAX_YEAR)),
226
225
  }), additionalMetadata);
@@ -230,7 +229,7 @@ exports.YearProperty = YearProperty;
230
229
  * @param config
231
230
  * @param additionalMetadata
232
231
  */
233
- const NumberProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Number, (0, merge_1.default)(config, {
232
+ const NumberProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Number, (0, merge_1.default)(config, {
234
233
  isNumber: true,
235
234
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config)),
236
235
  }), additionalMetadata);
@@ -242,7 +241,7 @@ exports.NumberProperty = NumberProperty;
242
241
  * @param config
243
242
  * @param additionalMetadata
244
243
  */
245
- const ConstantValueProperty = (valueType, value, config = {}, additionalMetadata = {}) => Property(valueType, (0, merge_1.default)(config, {
244
+ const ConstantValueProperty = (valueType, value, config = {}, additionalMetadata = {}) => (0, exports.Property)(valueType, (0, merge_1.default)(config, {
246
245
  value,
247
246
  }), additionalMetadata);
248
247
  exports.ConstantValueProperty = ConstantValueProperty;
@@ -251,7 +250,7 @@ exports.ConstantValueProperty = ConstantValueProperty;
251
250
  * @param config
252
251
  * @param additionalMetadata
253
252
  */
254
- const EmailProperty = (config = {}, additionalMetadata = {}) => TextProperty((0, merge_1.default)(config, {
253
+ const EmailProperty = (config = {}, additionalMetadata = {}) => (0, exports.TextProperty)((0, merge_1.default)(config, {
255
254
  type: types_1.PropertyType.Email,
256
255
  validators: (0, lib_1.mergeValidators)(config, (0, validation_1.meetsRegex)(EMAIL_REGEX)),
257
256
  }), additionalMetadata);
@@ -261,7 +260,7 @@ exports.EmailProperty = EmailProperty;
261
260
  * @param config
262
261
  * @param additionalMetadata
263
262
  */
264
- const BooleanProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Boolean, (0, merge_1.default)(config, {
263
+ const BooleanProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Boolean, (0, merge_1.default)(config, {
265
264
  isBoolean: true,
266
265
  }), additionalMetadata);
267
266
  exports.BooleanProperty = BooleanProperty;
@@ -271,13 +270,13 @@ exports.BooleanProperty = BooleanProperty;
271
270
  * @param config - Additional configurations. NOTE: required is ALWAYS true.
272
271
  * @param additionalMetadata - Any additional metadata.
273
272
  */
274
- const PrimaryKeyUuidProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.UniqueId, (0, merge_1.default)(config, {
273
+ const PrimaryKeyUuidProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.UniqueId, (0, merge_1.default)(config, {
275
274
  required: true,
276
275
  isString: true,
277
276
  validators: (0, lib_1.mergeValidators)(config, validation_1.isValidUuid),
278
277
  lazyLoadMethod: (value) => {
279
278
  if (!value) {
280
- return (0, uuid_1.v4)();
279
+ return (0, utils_1.createUuid)();
281
280
  }
282
281
  return value;
283
282
  },
@@ -290,13 +289,13 @@ exports.PrimaryKeyUuidProperty = PrimaryKeyUuidProperty;
290
289
  * @param config - Additional configurations.
291
290
  * @param additionalMetadata - Any additional metadata.
292
291
  */
293
- const UuidProperty = (config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.UniqueId, (0, merge_1.default)(config, {
292
+ const UuidProperty = (config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.UniqueId, (0, merge_1.default)(config, {
294
293
  isString: true,
295
294
  validators: (0, lib_1.mergeValidators)(config, config.required ? validation_1.isValidUuid : (0, validation_1.optionalValidator)(validation_1.isValidUuid)),
296
295
  lazyLoadMethod: (value) => {
297
296
  if (!value) {
298
297
  if (config.autoNow) {
299
- return (0, uuid_1.v4)();
298
+ return (0, utils_1.createUuid)();
300
299
  }
301
300
  }
302
301
  return value;
@@ -320,7 +319,7 @@ exports.UuidProperty = UuidProperty;
320
319
  * @param config
321
320
  * @param additionalMetadata
322
321
  */
323
- const ModelReferenceProperty = (model, config = {}, additionalMetadata = {}) => AdvancedModelReferenceProperty(model, config, additionalMetadata);
322
+ const ModelReferenceProperty = (model, config = {}, additionalMetadata = {}) => (0, exports.AdvancedModelReferenceProperty)(model, config, additionalMetadata);
324
323
  exports.ModelReferenceProperty = ModelReferenceProperty;
325
324
  /**
326
325
  * The full implementation of a ModelReference, useful for typing certain extended functionalities.
@@ -395,7 +394,7 @@ const AdvancedModelReferenceProperty = (model, config = {}, additionalMetadata =
395
394
  }
396
395
  return _getId(instanceValues)();
397
396
  });
398
- const p = (0, merge_1.default)(Property(types_1.PropertyType.ModelReference, (0, merge_1.default)({}, config, {
397
+ const p = (0, merge_1.default)((0, exports.Property)(types_1.PropertyType.ModelReference, (0, merge_1.default)({}, config, {
399
398
  validators,
400
399
  lazyLoadMethodAtomic,
401
400
  }), additionalMetadata), {
@@ -419,7 +418,7 @@ exports.AdvancedModelReferenceProperty = AdvancedModelReferenceProperty;
419
418
  * @param additionalMetadata _ Any additional metadata.
420
419
  */
421
420
  const DenormalizedProperty = (propertyType, calculate, config = {}, additionalMetadata = {}) => {
422
- const property = Property(propertyType, (0, merge_1.default)(config, {
421
+ const property = (0, exports.Property)(propertyType, (0, merge_1.default)(config, {
423
422
  isDenormalized: true,
424
423
  lazyLoadMethodAtomic: (value, modelData, modelInstance) => __awaiter(void 0, void 0, void 0, function* () {
425
424
  if (value !== undefined) {
@@ -439,7 +438,7 @@ exports.DenormalizedProperty = DenormalizedProperty;
439
438
  * @param config - Any configs
440
439
  * @param additionalMetadata - Optional Metadata
441
440
  */
442
- const DenormalizedTextProperty = (calculate, config = {}, additionalMetadata = {}) => DenormalizedProperty(types_1.PropertyType.Text, calculate, (0, merge_1.default)(config, {
441
+ const DenormalizedTextProperty = (calculate, config = {}, additionalMetadata = {}) => (0, exports.DenormalizedProperty)(types_1.PropertyType.Text, calculate, (0, merge_1.default)(config, {
443
442
  isString: true,
444
443
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonTextValidators)(config)),
445
444
  }), additionalMetadata);
@@ -450,7 +449,7 @@ exports.DenormalizedTextProperty = DenormalizedTextProperty;
450
449
  * @param config - Any configs
451
450
  * @param additionalMetadata - Optional Metadata
452
451
  */
453
- const DenormalizedNumberProperty = (calculate, config = {}, additionalMetadata = {}) => DenormalizedProperty(types_1.PropertyType.Number, calculate, (0, merge_1.default)(config, {
452
+ const DenormalizedNumberProperty = (calculate, config = {}, additionalMetadata = {}) => (0, exports.DenormalizedProperty)(types_1.PropertyType.Number, calculate, (0, merge_1.default)(config, {
454
453
  isNumber: true,
455
454
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config)),
456
455
  }), additionalMetadata);
@@ -461,7 +460,7 @@ exports.DenormalizedNumberProperty = DenormalizedNumberProperty;
461
460
  * @param config - Any configs
462
461
  * @param additionalMetadata - Optional Metadata
463
462
  */
464
- const DenormalizedIntegerProperty = (calculate, config = {}, additionalMetadata = {}) => DenormalizedProperty(types_1.PropertyType.Integer, calculate, (0, merge_1.default)(config, {
463
+ const DenormalizedIntegerProperty = (calculate, config = {}, additionalMetadata = {}) => (0, exports.DenormalizedProperty)(types_1.PropertyType.Integer, calculate, (0, merge_1.default)(config, {
465
464
  isInteger: true,
466
465
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config)),
467
466
  }), additionalMetadata);
@@ -480,7 +479,7 @@ exports.DenormalizedIntegerProperty = DenormalizedIntegerProperty;
480
479
  * @param config
481
480
  * @param additionalMetadata
482
481
  */
483
- const NaturalIdProperty = (propertyKeys, joiner, config = {}, additionalMetadata = {}) => Property(types_1.PropertyType.Text, (0, merge_1.default)(config, {
482
+ const NaturalIdProperty = (propertyKeys, joiner, config = {}, additionalMetadata = {}) => (0, exports.Property)(types_1.PropertyType.Text, (0, merge_1.default)(config, {
484
483
  isString: true,
485
484
  validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonTextValidators)(config)),
486
485
  lazyLoadMethodAtomic: (value, model, modelInstance) => __awaiter(void 0, void 0, void 0, function* () {
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/types.d.ts CHANGED
@@ -29,7 +29,7 @@ type JsonObj = Readonly<{
29
29
  /**
30
30
  * A description of valid json values.
31
31
  */
32
- type JsonAble = Arrayable<JsonObj> | readonly (number | string | boolean)[] | readonly JsonAble[] | number | string | boolean | null | undefined;
32
+ type JsonAble = Arrayable<JsonObj> | readonly (number | string | boolean)[] | number | string | boolean | null | undefined;
33
33
  /**
34
34
  * This is a fully Json compliant version of a DataDescription
35
35
  */
package/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAomBA;;GAEG;AACH,IAAK,SAMJ;AAND,WAAK,SAAS;IACZ,8BAAiB,CAAA;IACjB,kCAAqB,CAAA;IACrB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;AACnB,CAAC,EANI,SAAS,yBAAT,SAAS,QAMb;AAoTD;;;GAGG;AACH,IAAK,YAaJ;AAbD,WAAK,YAAY;IACf,qCAAqB,CAAA;IACrB,6BAAa,CAAA;IACb,qCAAqB,CAAA;IACrB,+BAAe,CAAA;IACf,iDAAiC,CAAA;IACjC,mCAAmB,CAAA;IACnB,6BAAa,CAAA;IACb,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,mCAAmB,CAAA;AACrB,CAAC,EAbI,YAAY,4BAAZ,YAAY,QAahB;AAED;;GAEG;AACH,IAAK,kBAMJ;AAND,WAAK,kBAAkB;IACrB,yCAAmB,CAAA;IACnB,uCAAiB,CAAA;IACjB,uCAAiB,CAAA;IACjB,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;AACrB,CAAC,EANI,kBAAkB,kCAAlB,kBAAkB,QAMtB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAmmBA;;GAEG;AACH,IAAK,SAMJ;AAND,WAAK,SAAS;IACZ,8BAAiB,CAAA;IACjB,kCAAqB,CAAA;IACrB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;AACnB,CAAC,EANI,SAAS,yBAAT,SAAS,QAMb;AAoTD;;;GAGG;AACH,IAAK,YAaJ;AAbD,WAAK,YAAY;IACf,qCAAqB,CAAA;IACrB,6BAAa,CAAA;IACb,qCAAqB,CAAA;IACrB,+BAAe,CAAA;IACf,iDAAiC,CAAA;IACjC,mCAAmB,CAAA;IACnB,6BAAa,CAAA;IACb,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,mCAAmB,CAAA;AACrB,CAAC,EAbI,YAAY,4BAAZ,YAAY,QAahB;AAED;;GAEG;AACH,IAAK,kBAMJ;AAND,WAAK,kBAAkB;IACrB,yCAAmB,CAAA;IACnB,uCAAiB,CAAA;IACjB,uCAAiB,CAAA;IACjB,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;AACrB,CAAC,EANI,kBAAkB,kCAAlB,kBAAkB,QAMtB"}
package/utils.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ declare const getRandomValues: () => Uint8Array;
2
+ declare const createUuid: () => string;
1
3
  declare const toTitleCase: (string: string) => string;
2
4
  declare const loweredTitleCase: (string: string) => string;
3
5
  declare const isPromise: <T>(something: any) => something is Promise<T>;
@@ -6,4 +8,4 @@ declare const createHeadAndTail: (values: readonly string[], joiner: string) =>
6
8
  declare const flowFindFirst: <T, TResult>(funcs: ((t: T) => undefined | TResult)[]) => (input: T) => string | TResult;
7
9
  declare const memoizeSync: <T, A extends Array<any>>(method: (...args: A) => T) => (...args: A) => T;
8
10
  declare const memoizeAsync: <T, A extends Array<any>>(method: (...args: A) => T) => (...args: A) => Promise<T>;
9
- export { loweredTitleCase, toTitleCase, isPromise, createHeadAndTail, singularize, flowFindFirst, memoizeSync, memoizeAsync, };
11
+ export { getRandomValues, loweredTitleCase, toTitleCase, createUuid, isPromise, createHeadAndTail, singularize, flowFindFirst, memoizeSync, memoizeAsync, };
package/utils.js CHANGED
@@ -12,9 +12,37 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.memoizeAsync = exports.memoizeSync = exports.flowFindFirst = exports.singularize = exports.createHeadAndTail = exports.isPromise = exports.toTitleCase = exports.loweredTitleCase = void 0;
15
+ exports.memoizeAsync = exports.memoizeSync = exports.flowFindFirst = exports.singularize = exports.createHeadAndTail = exports.isPromise = exports.createUuid = exports.toTitleCase = exports.loweredTitleCase = exports.getRandomValues = void 0;
16
+ // @ts-ignore
17
+ const get_random_values_1 = __importDefault(require("get-random-values"));
16
18
  const async_lock_1 = __importDefault(require("async-lock"));
17
- const uuid_1 = require("uuid");
19
+ const HEX = 16;
20
+ const FOUR = 4;
21
+ const FIFTEEN = 15;
22
+ const getRandomValues = () => {
23
+ const array = new Uint8Array(1);
24
+ if (typeof window !== 'undefined') {
25
+ if (window.crypto) {
26
+ return window.crypto.getRandomValues(array);
27
+ }
28
+ // @ts-ignore
29
+ if (window.msCrypto) {
30
+ // @ts-ignore
31
+ return window.msCrypto.getRandomValues(array);
32
+ }
33
+ }
34
+ return (0, get_random_values_1.default)(array);
35
+ };
36
+ exports.getRandomValues = getRandomValues;
37
+ const createUuid = () => {
38
+ // @ts-ignore
39
+ // eslint-disable-next-line no-magic-numbers,require-unicode-regexp
40
+ return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c) => {
41
+ const value = getRandomValues()[0] & (FIFTEEN >> (c / FOUR));
42
+ return (c ^ value).toString(HEX);
43
+ });
44
+ };
45
+ exports.createUuid = createUuid;
18
46
  const toTitleCase = (string) => {
19
47
  return `${string.slice(0, 1).toUpperCase()}${string.slice(1)}`;
20
48
  };
@@ -76,7 +104,7 @@ const memoizeSync = (method) => {
76
104
  };
77
105
  exports.memoizeSync = memoizeSync;
78
106
  const memoizeAsync = (method) => {
79
- const key = (0, uuid_1.v4)();
107
+ const key = createUuid();
80
108
  const lock = new async_lock_1.default();
81
109
  /* eslint-disable functional/no-let */
82
110
  let value = undefined;