functional-models 3.7.0 → 3.8.1
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/orm/internal-libs.d.ts +2 -0
- package/orm/internal-libs.js +24 -0
- package/orm/internal-libs.js.map +1 -0
- package/orm/properties.d.ts +23 -34
- package/orm/properties.js +30 -7
- package/orm/properties.js.map +1 -1
- package/orm/types.d.ts +69 -37
- package/orm/types.js +1 -2
- package/orm/types.js.map +1 -1
- package/package.json +3 -2
- package/properties.d.ts +24 -24
- package/properties.js +23 -23
- package/properties.js.map +1 -1
- package/utils.d.ts +2 -1
- package/utils.js +2 -1
- package/utils.js.map +1 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getPrimaryKeyGenerator = void 0;
|
|
4
|
+
const types_js_1 = require("../types.js");
|
|
5
|
+
const utils_js_1 = require("../utils.js");
|
|
6
|
+
const _getModelIdPropertyType = (config = {}) => {
|
|
7
|
+
return config.dataType || types_js_1.PropertyType.UniqueId;
|
|
8
|
+
};
|
|
9
|
+
const getPrimaryKeyGenerator = (config = {}) => {
|
|
10
|
+
const custom = config.primaryKeyGenerator;
|
|
11
|
+
if (custom) {
|
|
12
|
+
return custom;
|
|
13
|
+
}
|
|
14
|
+
const idType = _getModelIdPropertyType(config);
|
|
15
|
+
switch (idType) {
|
|
16
|
+
case types_js_1.PropertyType.Integer:
|
|
17
|
+
return () => Promise.resolve((0, utils_js_1.getRandomValues)()[0]);
|
|
18
|
+
default: {
|
|
19
|
+
return () => Promise.resolve((0, utils_js_1.createUuid)());
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
exports.getPrimaryKeyGenerator = getPrimaryKeyGenerator;
|
|
24
|
+
//# sourceMappingURL=internal-libs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal-libs.js","sourceRoot":"","sources":["../../src/orm/internal-libs.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC1C,0CAAyD;AAOzD,MAAM,uBAAuB,GAAG,CAC9B,SAAyC,EAAE,EACnB,EAAE;IAC1B,OAAO,MAAM,CAAC,QAAQ,IAAI,uBAAY,CAAC,QAAQ,CAAA;AACjD,CAAC,CAAA;AAEM,MAAM,sBAAsB,GAAG,CACpC,SAA4C,EAAE,EACzB,EAAE;IACvB,MAAM,MAAM,GAAG,MAAM,CAAC,mBAAmB,CAAA;IACzC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAA;IACf,CAAC;IACD,MAAM,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAA;IAC9C,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,uBAAY,CAAC,OAAO;YACvB,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAA,0BAAe,GAAE,CAAC,CAAC,CAAE,CAAC,CAAA;QACrD,OAAO,CAAC,CAAC,CAAC;YACR,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAA,qBAAU,GAAE,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAfY,QAAA,sBAAsB,0BAelC"}
|
package/orm/properties.d.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { DateValueType, PropertyConfig, Arrayable, DataValue, MaybeFunction, ModelType, DataDescription } from '../types';
|
|
2
|
-
import { OrmPropertyConfig } from './types';
|
|
1
|
+
import { DateValueType, PropertyConfig, Arrayable, DataValue, MaybeFunction, ModelType, DataDescription, ModelInstance, PropertyType } from '../types';
|
|
2
|
+
import { OrmPropertyConfig, DatabaseKeyPropertyConfig } from './types';
|
|
3
3
|
/**
|
|
4
4
|
* A property that automatically updates whenever the model instance is saved.
|
|
5
5
|
* @param config
|
|
6
6
|
*/
|
|
7
|
-
declare const LastModifiedDateProperty: (config?: PropertyConfig<DateValueType>) => Readonly<{
|
|
7
|
+
export declare const LastModifiedDateProperty: (config?: PropertyConfig<DateValueType>) => Readonly<{
|
|
8
8
|
getConfig: () => object;
|
|
9
9
|
getChoices: () => readonly import("../types").ChoiceTypes[];
|
|
10
10
|
getDefaultValue: () => DateValueType | undefined;
|
|
11
11
|
getConstantValue: () => DateValueType | undefined;
|
|
12
|
-
getPropertyType: () =>
|
|
12
|
+
getPropertyType: () => PropertyType | string;
|
|
13
13
|
createGetter: (value: DateValueType, modelData: Readonly<{
|
|
14
14
|
[s: string]: any;
|
|
15
|
-
}>, modelInstance:
|
|
15
|
+
}>, modelInstance: ModelInstance<Readonly<{
|
|
16
16
|
[s: string]: any;
|
|
17
17
|
}>, object, object>) => import("../types").ValueGetter<DateValueType, Readonly<{
|
|
18
18
|
[s: string]: any;
|
|
@@ -24,38 +24,21 @@ declare const LastModifiedDateProperty: (config?: PropertyConfig<DateValueType>)
|
|
|
24
24
|
[s: string]: any;
|
|
25
25
|
}>>;
|
|
26
26
|
}>;
|
|
27
|
-
/**
|
|
28
|
-
* A property that represents a key in a database.
|
|
29
|
-
* By default it is a "uuid" type, but if you want to use an arbitrary string, or an integer type you can set the `dataType` property.
|
|
30
|
-
* @interface
|
|
31
|
-
*/
|
|
32
|
-
type DatabaseKeyPropertyConfig<TValue extends string | number> = PropertyConfig<TValue> & Readonly<{
|
|
33
|
-
/**
|
|
34
|
-
* Sets the type of the foreign key.
|
|
35
|
-
* @default 'uuid'
|
|
36
|
-
*/
|
|
37
|
-
dataType?: 'uuid' | 'string' | 'integer';
|
|
38
|
-
/**
|
|
39
|
-
* If true, the key will be automatically generated if not provided. Only applies to uuids.
|
|
40
|
-
* @default true
|
|
41
|
-
*/
|
|
42
|
-
auto?: boolean;
|
|
43
|
-
}>;
|
|
44
27
|
/**
|
|
45
28
|
* A property that represents a foreign key to another model in a database.
|
|
46
29
|
* By default it is a "uuid" type, but if you want to use an arbitrary string, or an integer type you can set the `dataType` property.
|
|
47
30
|
* NOTE: auto is ignored in config.
|
|
48
31
|
* @param config - Additional configurations.
|
|
49
32
|
*/
|
|
50
|
-
declare const ForeignKeyProperty: <TValue extends string | number, TModel extends DataDescription>(model: MaybeFunction<ModelType<TModel>>, config?: DatabaseKeyPropertyConfig<TValue>) => (Readonly<{
|
|
33
|
+
export declare const ForeignKeyProperty: <TValue extends string | number, TModel extends DataDescription>(model: MaybeFunction<ModelType<TModel>>, config?: Omit<DatabaseKeyPropertyConfig<TValue>, "auto" | "primaryKeyGenerator">) => (Readonly<{
|
|
51
34
|
getConfig: () => object;
|
|
52
35
|
getChoices: () => readonly import("../types").ChoiceTypes[];
|
|
53
36
|
getDefaultValue: () => string | undefined;
|
|
54
37
|
getConstantValue: () => string | undefined;
|
|
55
|
-
getPropertyType: () =>
|
|
38
|
+
getPropertyType: () => PropertyType | string;
|
|
56
39
|
createGetter: (value: string, modelData: Readonly<{
|
|
57
40
|
[s: string]: any;
|
|
58
|
-
}>, modelInstance:
|
|
41
|
+
}>, modelInstance: ModelInstance<Readonly<{
|
|
59
42
|
[s: string]: any;
|
|
60
43
|
}>, object, object>) => import("../types").ValueGetter<string, Readonly<{
|
|
61
44
|
[s: string]: any;
|
|
@@ -71,10 +54,10 @@ declare const ForeignKeyProperty: <TValue extends string | number, TModel extend
|
|
|
71
54
|
getChoices: () => readonly import("../types").ChoiceTypes[];
|
|
72
55
|
getDefaultValue: () => number | undefined;
|
|
73
56
|
getConstantValue: () => number | undefined;
|
|
74
|
-
getPropertyType: () =>
|
|
57
|
+
getPropertyType: () => PropertyType | string;
|
|
75
58
|
createGetter: (value: number, modelData: Readonly<{
|
|
76
59
|
[s: string]: any;
|
|
77
|
-
}>, modelInstance:
|
|
60
|
+
}>, modelInstance: ModelInstance<Readonly<{
|
|
78
61
|
[s: string]: any;
|
|
79
62
|
}>, object, object>) => import("../types").ValueGetter<number, Readonly<{
|
|
80
63
|
[s: string]: any;
|
|
@@ -89,15 +72,22 @@ declare const ForeignKeyProperty: <TValue extends string | number, TModel extend
|
|
|
89
72
|
getReferencedId: (instanceValues: TValue) => TValue;
|
|
90
73
|
getReferencedModel: () => ModelType<TModel>;
|
|
91
74
|
};
|
|
92
|
-
|
|
75
|
+
/**
|
|
76
|
+
* A property that represents a primary key in a database.
|
|
77
|
+
* By default it is a "uuid" type, but if you want to use an arbitrary string, or an integer type you can set the `dataType` property.
|
|
78
|
+
* Includes an optional primaryKeyGenerator function that can be used to generate a primary key. This can allow primary keys that are generated at runtime, or grabbed from a database.
|
|
79
|
+
* @param config - Additional configurations.
|
|
80
|
+
* @returns
|
|
81
|
+
*/
|
|
82
|
+
export declare const PrimaryKeyProperty: <TValue extends string | number>(config?: DatabaseKeyPropertyConfig<TValue>) => Readonly<{
|
|
93
83
|
getConfig: () => object;
|
|
94
84
|
getChoices: () => readonly import("../types").ChoiceTypes[];
|
|
95
85
|
getDefaultValue: () => string | undefined;
|
|
96
86
|
getConstantValue: () => string | undefined;
|
|
97
|
-
getPropertyType: () =>
|
|
87
|
+
getPropertyType: () => PropertyType | string;
|
|
98
88
|
createGetter: (value: string, modelData: Readonly<{
|
|
99
89
|
[s: string]: any;
|
|
100
|
-
}>, modelInstance:
|
|
90
|
+
}>, modelInstance: ModelInstance<Readonly<{
|
|
101
91
|
[s: string]: any;
|
|
102
92
|
}>, object, object>) => import("../types").ValueGetter<string, Readonly<{
|
|
103
93
|
[s: string]: any;
|
|
@@ -113,10 +103,10 @@ declare const PrimaryKeyProperty: <TValue extends string | number>(config?: Data
|
|
|
113
103
|
getChoices: () => readonly import("../types").ChoiceTypes[];
|
|
114
104
|
getDefaultValue: () => number | undefined;
|
|
115
105
|
getConstantValue: () => number | undefined;
|
|
116
|
-
getPropertyType: () =>
|
|
106
|
+
getPropertyType: () => PropertyType | string;
|
|
117
107
|
createGetter: (value: number, modelData: Readonly<{
|
|
118
108
|
[s: string]: any;
|
|
119
|
-
}>, modelInstance:
|
|
109
|
+
}>, modelInstance: ModelInstance<Readonly<{
|
|
120
110
|
[s: string]: any;
|
|
121
111
|
}>, object, object>) => import("../types").ValueGetter<number, Readonly<{
|
|
122
112
|
[s: string]: any;
|
|
@@ -132,5 +122,4 @@ declare const PrimaryKeyProperty: <TValue extends string | number>(config?: Data
|
|
|
132
122
|
* Creates an orm based property config.
|
|
133
123
|
* @param config - Additional configurations.
|
|
134
124
|
*/
|
|
135
|
-
declare const ormPropertyConfig: <T extends Arrayable<DataValue>>(config?: OrmPropertyConfig<T>) => PropertyConfig<T>;
|
|
136
|
-
export { ormPropertyConfig, LastModifiedDateProperty, ForeignKeyProperty, PrimaryKeyProperty, };
|
|
125
|
+
export declare const ormPropertyConfig: <T extends Arrayable<DataValue>>(config?: OrmPropertyConfig<T>) => PropertyConfig<T>;
|
package/orm/properties.js
CHANGED
|
@@ -3,11 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.ormPropertyConfig = exports.PrimaryKeyProperty = exports.ForeignKeyProperty = exports.LastModifiedDateProperty = void 0;
|
|
7
7
|
const merge_1 = __importDefault(require("lodash/merge"));
|
|
8
8
|
const identity_1 = __importDefault(require("lodash/identity"));
|
|
9
|
+
const types_1 = require("../types");
|
|
9
10
|
const properties_1 = require("../properties");
|
|
10
11
|
const validation_1 = require("./validation");
|
|
12
|
+
const internal_libs_1 = require("./internal-libs");
|
|
11
13
|
const _defaultPropertyConfig = {
|
|
12
14
|
unique: undefined,
|
|
13
15
|
};
|
|
@@ -34,12 +36,12 @@ const ForeignKeyProperty = (model, config = {}) => {
|
|
|
34
36
|
return model;
|
|
35
37
|
};
|
|
36
38
|
const _getProperty = () => {
|
|
37
|
-
if (config.dataType ===
|
|
39
|
+
if (config.dataType === types_1.PropertyType.UniqueId) {
|
|
38
40
|
return (0, properties_1.UuidProperty)((0, merge_1.default)(config, {
|
|
39
41
|
autoNow: false,
|
|
40
42
|
}));
|
|
41
43
|
}
|
|
42
|
-
if (config.dataType ===
|
|
44
|
+
if (config.dataType === types_1.PropertyType.Integer) {
|
|
43
45
|
return (0, properties_1.IntegerProperty)(config);
|
|
44
46
|
}
|
|
45
47
|
return (0, properties_1.TextProperty)(config);
|
|
@@ -53,18 +55,39 @@ const ForeignKeyProperty = (model, config = {}) => {
|
|
|
53
55
|
});
|
|
54
56
|
};
|
|
55
57
|
exports.ForeignKeyProperty = ForeignKeyProperty;
|
|
58
|
+
/**
|
|
59
|
+
* A property that represents a primary key in a database.
|
|
60
|
+
* By default it is a "uuid" type, but if you want to use an arbitrary string, or an integer type you can set the `dataType` property.
|
|
61
|
+
* Includes an optional primaryKeyGenerator function that can be used to generate a primary key. This can allow primary keys that are generated at runtime, or grabbed from a database.
|
|
62
|
+
* @param config - Additional configurations.
|
|
63
|
+
* @returns
|
|
64
|
+
*/
|
|
56
65
|
const PrimaryKeyProperty = (config = {}) => {
|
|
57
66
|
const _getProperty = () => {
|
|
58
67
|
const auto = config.auto === undefined ? true : config.auto ? true : false;
|
|
59
|
-
|
|
68
|
+
const lazyLoadMethod = (value, modelData, instance) => {
|
|
69
|
+
if (config.primaryKeyGenerator) {
|
|
70
|
+
return config.primaryKeyGenerator(value, modelData, instance);
|
|
71
|
+
}
|
|
72
|
+
if (auto) {
|
|
73
|
+
return (0, internal_libs_1.getPrimaryKeyGenerator)(config)(value, modelData, instance);
|
|
74
|
+
}
|
|
75
|
+
return value;
|
|
76
|
+
};
|
|
77
|
+
if (config.dataType === types_1.PropertyType.UniqueId) {
|
|
60
78
|
return (0, properties_1.UuidProperty)((0, merge_1.default)(config, {
|
|
61
79
|
autoNow: auto,
|
|
80
|
+
lazyLoadMethod,
|
|
62
81
|
}));
|
|
63
82
|
}
|
|
64
|
-
if (config.dataType ===
|
|
65
|
-
return (0, properties_1.IntegerProperty)(config
|
|
83
|
+
if (config.dataType === types_1.PropertyType.Integer) {
|
|
84
|
+
return (0, properties_1.IntegerProperty)((0, merge_1.default)(config, {
|
|
85
|
+
lazyLoadMethod,
|
|
86
|
+
}));
|
|
66
87
|
}
|
|
67
|
-
return (0, properties_1.TextProperty)(config
|
|
88
|
+
return (0, properties_1.TextProperty)((0, merge_1.default)(config, {
|
|
89
|
+
lazyLoadMethod,
|
|
90
|
+
}));
|
|
68
91
|
};
|
|
69
92
|
return _getProperty();
|
|
70
93
|
};
|
package/orm/properties.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../../src/orm/properties.ts"],"names":[],"mappings":";;;;;;AAAA,yDAAgC;AAChC,+DAAsC;
|
|
1
|
+
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../../src/orm/properties.ts"],"names":[],"mappings":"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"}
|
package/orm/types.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Arrayable, DataValue, Maybe, ModelInstance, ModelType, DataDescription, PrimaryKeyType, MinimalModelDefinition, PropertyConfig, ValidatorContext, ToObjectResult, ModelInstanceFetcher, ModelFactoryOptions } from '../types';
|
|
1
|
+
import { Arrayable, DataValue, Maybe, ModelInstance, ModelType, DataDescription, PrimaryKeyType, MinimalModelDefinition, PropertyConfig, ValidatorContext, ToObjectResult, ModelInstanceFetcher, ModelFactoryOptions, CreateParams, PropertyType } from '../types';
|
|
2
2
|
/**
|
|
3
3
|
* Equals symbols for doing database matching
|
|
4
4
|
*/
|
|
5
|
-
declare enum EqualitySymbol {
|
|
5
|
+
export declare enum EqualitySymbol {
|
|
6
6
|
eq = "=",
|
|
7
7
|
lt = "<",
|
|
8
8
|
lte = "<=",
|
|
@@ -13,7 +13,7 @@ declare enum EqualitySymbol {
|
|
|
13
13
|
/**
|
|
14
14
|
* The value types that map to database types.
|
|
15
15
|
*/
|
|
16
|
-
declare enum DatastoreValueType {
|
|
16
|
+
export declare enum DatastoreValueType {
|
|
17
17
|
string = "string",
|
|
18
18
|
number = "number",
|
|
19
19
|
date = "date",
|
|
@@ -23,7 +23,7 @@ declare enum DatastoreValueType {
|
|
|
23
23
|
/**
|
|
24
24
|
* A list of allowable equality symbols.
|
|
25
25
|
*/
|
|
26
|
-
declare const AllowableEqualitySymbols: EqualitySymbol[];
|
|
26
|
+
export declare const AllowableEqualitySymbols: EqualitySymbol[];
|
|
27
27
|
/**
|
|
28
28
|
* A function that can save.
|
|
29
29
|
*/
|
|
@@ -39,16 +39,16 @@ type DeleteMethod<TModelExtensions extends object = object, TModelInstanceExtens
|
|
|
39
39
|
/**
|
|
40
40
|
* A function that allows overriding the save functionality for a specific model.
|
|
41
41
|
*/
|
|
42
|
-
type SaveOverride<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = <TData extends DataDescription>(existingSave: SaveMethod<TModelExtensions, TModelInstanceExtensions>, instance: ModelInstance<TData, TModelExtensions, TModelInstanceExtensions>) => Promise<OrmModelInstance<TData, TModelExtensions, TModelInstanceExtensions>>;
|
|
42
|
+
export type SaveOverride<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = <TData extends DataDescription>(existingSave: SaveMethod<TModelExtensions, TModelInstanceExtensions>, instance: ModelInstance<TData, TModelExtensions, TModelInstanceExtensions>) => Promise<OrmModelInstance<TData, TModelExtensions, TModelInstanceExtensions>>;
|
|
43
43
|
/**
|
|
44
44
|
* A function that allows overriding the delete functionality for a specific model.
|
|
45
45
|
*/
|
|
46
|
-
type DeleteOverride<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = <TData extends DataDescription>(existingDelete: DeleteMethod<TModelExtensions, TModelInstanceExtensions>, instance: ModelInstance<TData, TModelExtensions, TModelInstanceExtensions>) => Promise<void>;
|
|
46
|
+
export type DeleteOverride<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = <TData extends DataDescription>(existingDelete: DeleteMethod<TModelExtensions, TModelInstanceExtensions>, instance: ModelInstance<TData, TModelExtensions, TModelInstanceExtensions>) => Promise<void>;
|
|
47
47
|
/**
|
|
48
48
|
* A result of an ORM search.
|
|
49
49
|
* @interface
|
|
50
50
|
*/
|
|
51
|
-
type OrmSearchResult<TData extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
51
|
+
export type OrmSearchResult<TData extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
52
52
|
/**
|
|
53
53
|
* A list of instances
|
|
54
54
|
*/
|
|
@@ -62,7 +62,7 @@ type OrmSearchResult<TData extends DataDescription, TModelExtensions extends obj
|
|
|
62
62
|
* ORM based ModelFactory extensions.
|
|
63
63
|
* @interface
|
|
64
64
|
*/
|
|
65
|
-
type OrmModelFactoryOptionsExtensions<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
65
|
+
export type OrmModelFactoryOptionsExtensions<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
66
66
|
/**
|
|
67
67
|
* Optional: The save function to override.
|
|
68
68
|
*/
|
|
@@ -76,7 +76,7 @@ type OrmModelFactoryOptionsExtensions<TModelExtensions extends object = object,
|
|
|
76
76
|
* Extensions to the Model type
|
|
77
77
|
* @interface
|
|
78
78
|
*/
|
|
79
|
-
type OrmModelExtensions<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
79
|
+
export type OrmModelExtensions<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
80
80
|
/**
|
|
81
81
|
* Save the model
|
|
82
82
|
* @param instance - The instance to save.
|
|
@@ -126,7 +126,7 @@ type OrmModelExtensions<TModelExtensions extends object = object, TModelInstance
|
|
|
126
126
|
* Instance overrides that give it ORM functions.
|
|
127
127
|
* @interface
|
|
128
128
|
*/
|
|
129
|
-
type OrmModelInstanceExtensions<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
129
|
+
export type OrmModelInstanceExtensions<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
130
130
|
/**
|
|
131
131
|
* Save this model.
|
|
132
132
|
*/
|
|
@@ -153,12 +153,12 @@ type OrmModelConfigurations = Readonly<{
|
|
|
153
153
|
* A minimum orm model definition
|
|
154
154
|
* @interface
|
|
155
155
|
*/
|
|
156
|
-
type MinimumOrmModelDefinition<TData extends DataDescription> = MinimalModelDefinition<TData> & OrmModelConfigurations;
|
|
156
|
+
export type MinimumOrmModelDefinition<TData extends DataDescription> = MinimalModelDefinition<TData> & OrmModelConfigurations;
|
|
157
157
|
/**
|
|
158
158
|
* A model factory that produces ORM based models.
|
|
159
159
|
*
|
|
160
160
|
*/
|
|
161
|
-
type OrmModelFactory<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object, TModelOptionsExtensions extends object = object> = <TData extends DataDescription>(
|
|
161
|
+
export type OrmModelFactory<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object, TModelOptionsExtensions extends object = object> = <TData extends DataDescription>(
|
|
162
162
|
/**
|
|
163
163
|
* The model definition for the model
|
|
164
164
|
*/
|
|
@@ -171,7 +171,7 @@ options?: ModelFactoryOptions<TData, OrmModelFactoryOptionsExtensions<TModelExte
|
|
|
171
171
|
* A search result from a datastore
|
|
172
172
|
* @interface
|
|
173
173
|
*/
|
|
174
|
-
type DatastoreSearchResult<T extends DataDescription> = Readonly<{
|
|
174
|
+
export type DatastoreSearchResult<T extends DataDescription> = Readonly<{
|
|
175
175
|
/**
|
|
176
176
|
* An array of objects that represent the data from the datastore.
|
|
177
177
|
*/
|
|
@@ -185,17 +185,17 @@ type DatastoreSearchResult<T extends DataDescription> = Readonly<{
|
|
|
185
185
|
* A model that has ORM functions attached.
|
|
186
186
|
* @interface
|
|
187
187
|
*/
|
|
188
|
-
type OrmModel<TData extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = ModelType<TData, OrmModelExtensions<TModelExtensions, TModelInstanceExtensions>, OrmModelInstanceExtensions<TModelExtensions, TModelInstanceExtensions>>;
|
|
188
|
+
export type OrmModel<TData extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = ModelType<TData, OrmModelExtensions<TModelExtensions, TModelInstanceExtensions>, OrmModelInstanceExtensions<TModelExtensions, TModelInstanceExtensions>>;
|
|
189
189
|
/**
|
|
190
190
|
* A Model Instance with ORM functions attached.
|
|
191
191
|
* @interface
|
|
192
192
|
*/
|
|
193
|
-
type OrmModelInstance<TData extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = ModelInstance<TData, OrmModelExtensions<TModelExtensions, TModelInstanceExtensions>, OrmModelInstanceExtensions<TModelExtensions, TModelInstanceExtensions>>;
|
|
193
|
+
export type OrmModelInstance<TData extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = ModelInstance<TData, OrmModelExtensions<TModelExtensions, TModelInstanceExtensions>, OrmModelInstanceExtensions<TModelExtensions, TModelInstanceExtensions>>;
|
|
194
194
|
/**
|
|
195
195
|
* An interface that describes a datastore. By implementing this interface, databases can be swapped.
|
|
196
196
|
* @interface
|
|
197
197
|
*/
|
|
198
|
-
type DatastoreAdapter = Readonly<{
|
|
198
|
+
export type DatastoreAdapter = Readonly<{
|
|
199
199
|
/**
|
|
200
200
|
* Saving a model.
|
|
201
201
|
* @param instance
|
|
@@ -246,7 +246,7 @@ type DatastoreAdapter = Readonly<{
|
|
|
246
246
|
* A search that describes a property and its value.
|
|
247
247
|
* @interface
|
|
248
248
|
*/
|
|
249
|
-
type PropertyQuery = Readonly<{
|
|
249
|
+
export type PropertyQuery = Readonly<{
|
|
250
250
|
/**
|
|
251
251
|
* Distinguishes this as a property query.
|
|
252
252
|
*/
|
|
@@ -275,7 +275,7 @@ type PropertyQuery = Readonly<{
|
|
|
275
275
|
/**
|
|
276
276
|
* A property search for a string value.
|
|
277
277
|
*/
|
|
278
|
-
type StringPropertyQuery = PropertyQuery & {
|
|
278
|
+
export type StringPropertyQuery = PropertyQuery & {
|
|
279
279
|
valueType: DatastoreValueType.string;
|
|
280
280
|
equalitySymbol: EqualitySymbol.eq | EqualitySymbol.ne;
|
|
281
281
|
options: PropertyOptions;
|
|
@@ -284,7 +284,7 @@ type StringPropertyQuery = PropertyQuery & {
|
|
|
284
284
|
* A search that looks at dated objects after the given date.
|
|
285
285
|
* @interface
|
|
286
286
|
*/
|
|
287
|
-
type DatesAfterQuery = Readonly<{
|
|
287
|
+
export type DatesAfterQuery = Readonly<{
|
|
288
288
|
/**
|
|
289
289
|
* Distinguishes this query
|
|
290
290
|
*/
|
|
@@ -315,7 +315,7 @@ type DatesAfterQuery = Readonly<{
|
|
|
315
315
|
* A search query that looks at dates before the given date.
|
|
316
316
|
* @interface
|
|
317
317
|
*/
|
|
318
|
-
type DatesBeforeQuery = Readonly<{
|
|
318
|
+
export type DatesBeforeQuery = Readonly<{
|
|
319
319
|
/**
|
|
320
320
|
* Distinguishes this query
|
|
321
321
|
*/
|
|
@@ -346,7 +346,7 @@ type DatesBeforeQuery = Readonly<{
|
|
|
346
346
|
* Additional configurations for ORM based properties.
|
|
347
347
|
* @interface
|
|
348
348
|
*/
|
|
349
|
-
type OrmPropertyConfig<T extends Arrayable<DataValue>> = PropertyConfig<T> & Readonly<{
|
|
349
|
+
export type OrmPropertyConfig<T extends Arrayable<DataValue>> = PropertyConfig<T> & Readonly<{
|
|
350
350
|
/**
|
|
351
351
|
* Validator: Checks to make sure that there is only one instance in a datastore that has this property's value.
|
|
352
352
|
* NOTE: The value is a property KEY. Not true or false.
|
|
@@ -357,7 +357,7 @@ type OrmPropertyConfig<T extends Arrayable<DataValue>> = PropertyConfig<T> & Rea
|
|
|
357
357
|
* Additional context that is provided for ORM based instance.
|
|
358
358
|
* @interface
|
|
359
359
|
*/
|
|
360
|
-
type OrmValidatorContext = Readonly<{
|
|
360
|
+
export type OrmValidatorContext = Readonly<{
|
|
361
361
|
/**
|
|
362
362
|
* IMPORTANT: Sometimes you do not want to do any ORM based validation because of speed.
|
|
363
363
|
* This disables any orm based validation, and only runs non-orm validation.
|
|
@@ -367,7 +367,7 @@ type OrmValidatorContext = Readonly<{
|
|
|
367
367
|
/**
|
|
368
368
|
* Options for a property query.
|
|
369
369
|
*/
|
|
370
|
-
type PropertyOptions = {
|
|
370
|
+
export type PropertyOptions = {
|
|
371
371
|
/**
|
|
372
372
|
* Is this a case sensitive search?
|
|
373
373
|
*/
|
|
@@ -398,7 +398,7 @@ type PropertyOptions = {
|
|
|
398
398
|
* that can retrieve referenced models as needed. See {@see "functional-models.ModelReference"}
|
|
399
399
|
* @interface
|
|
400
400
|
*/
|
|
401
|
-
type Orm = {
|
|
401
|
+
export type Orm = {
|
|
402
402
|
/**
|
|
403
403
|
* A model factory that can produce {@link OrmModel}
|
|
404
404
|
*/
|
|
@@ -411,19 +411,19 @@ type Orm = {
|
|
|
411
411
|
/**
|
|
412
412
|
* The sort order.
|
|
413
413
|
*/
|
|
414
|
-
declare enum SortOrder {
|
|
414
|
+
export declare enum SortOrder {
|
|
415
415
|
asc = "asc",
|
|
416
416
|
dsc = "dsc"
|
|
417
417
|
}
|
|
418
418
|
/**
|
|
419
419
|
* The number of instances to receive back from a query.
|
|
420
420
|
*/
|
|
421
|
-
type MaxMatchStatement = number;
|
|
421
|
+
export type MaxMatchStatement = number;
|
|
422
422
|
/**
|
|
423
423
|
* Defines how a sort should happen. Which column and what order.
|
|
424
424
|
* @interface
|
|
425
425
|
*/
|
|
426
|
-
type SortStatement = {
|
|
426
|
+
export type SortStatement = {
|
|
427
427
|
/**
|
|
428
428
|
* The property's key/name. Also could be a "column"
|
|
429
429
|
*/
|
|
@@ -436,12 +436,12 @@ type SortStatement = {
|
|
|
436
436
|
/**
|
|
437
437
|
* Pagination can be anything.
|
|
438
438
|
*/
|
|
439
|
-
type PaginationQuery = any;
|
|
439
|
+
export type PaginationQuery = any;
|
|
440
440
|
/**
|
|
441
441
|
* A query to a search function.
|
|
442
442
|
* @interface
|
|
443
443
|
*/
|
|
444
|
-
type OrmSearch = {
|
|
444
|
+
export type OrmSearch = {
|
|
445
445
|
/**
|
|
446
446
|
* Optional: A number of max records to return.
|
|
447
447
|
*/
|
|
@@ -462,15 +462,15 @@ type OrmSearch = {
|
|
|
462
462
|
/**
|
|
463
463
|
* Statements that make up the meat of QueryTokens
|
|
464
464
|
*/
|
|
465
|
-
type Query = PropertyQuery | DatesAfterQuery | DatesBeforeQuery | StringPropertyQuery;
|
|
465
|
+
export type Query = PropertyQuery | DatesAfterQuery | DatesBeforeQuery | StringPropertyQuery;
|
|
466
466
|
/**
|
|
467
467
|
* A token type that links two queries together.
|
|
468
468
|
*/
|
|
469
|
-
type BooleanQuery = 'AND' | 'OR';
|
|
469
|
+
export type BooleanQuery = 'AND' | 'OR';
|
|
470
470
|
/**
|
|
471
471
|
* A generic structure of querys.
|
|
472
472
|
*/
|
|
473
|
-
type QueryTokens = readonly QueryTokens[][] | readonly QueryTokens[] | BooleanQuery | Query;
|
|
473
|
+
export type QueryTokens = readonly QueryTokens[][] | readonly QueryTokens[] | BooleanQuery | Query;
|
|
474
474
|
/**
|
|
475
475
|
* Builder functions that are not property related.
|
|
476
476
|
* @interface
|
|
@@ -501,7 +501,7 @@ type NonQueryBuilder = Readonly<{
|
|
|
501
501
|
* An in between or ending type to a builder creating a SearchQuery
|
|
502
502
|
* @interface
|
|
503
503
|
*/
|
|
504
|
-
type BuilderV2Link = NonQueryBuilder & Readonly<{
|
|
504
|
+
export type BuilderV2Link = NonQueryBuilder & Readonly<{
|
|
505
505
|
/**
|
|
506
506
|
* Links together two or more {@link Query} or complex queries.
|
|
507
507
|
*/
|
|
@@ -515,17 +515,17 @@ type BuilderV2Link = NonQueryBuilder & Readonly<{
|
|
|
515
515
|
* A function that can either take a builder or raw QueryTokens[] and create a sub-query.
|
|
516
516
|
* @param builder - Can be either a BuilderV2 or a hand written Query
|
|
517
517
|
**/
|
|
518
|
-
type SubBuilderFunction = (builder: QueryBuilder) => Omit<OrmSearch, 'take' | 'sort' | 'page'> | (QueryBuilder | BuilderV2Link);
|
|
518
|
+
export type SubBuilderFunction = (builder: QueryBuilder) => Omit<OrmSearch, 'take' | 'sort' | 'page'> | (QueryBuilder | BuilderV2Link);
|
|
519
519
|
/**
|
|
520
520
|
* A search builder is a structured way to create a complex query.
|
|
521
521
|
* @interface
|
|
522
522
|
*/
|
|
523
|
-
type QueryBuilder = InnerBuilderV2 & NonQueryBuilder;
|
|
523
|
+
export type QueryBuilder = InnerBuilderV2 & NonQueryBuilder;
|
|
524
524
|
/**
|
|
525
525
|
* A builder for version 3.0 search queries.
|
|
526
526
|
* @interface
|
|
527
527
|
*/
|
|
528
|
-
type InnerBuilderV2 = {
|
|
528
|
+
export type InnerBuilderV2 = {
|
|
529
529
|
/**
|
|
530
530
|
* Creates a query that has nested property queries.
|
|
531
531
|
* @param subBuilderFunc - A function that can return a Builder
|
|
@@ -561,4 +561,36 @@ type InnerBuilderV2 = {
|
|
|
561
561
|
*/
|
|
562
562
|
property: (key: string, value: any, options?: Partial<PropertyOptions>) => BuilderV2Link;
|
|
563
563
|
};
|
|
564
|
-
|
|
564
|
+
/**
|
|
565
|
+
* The types of primary key properties.
|
|
566
|
+
*/
|
|
567
|
+
export type PrimaryKeyPropertyType = PropertyType.UniqueId | PropertyType.Text | PropertyType.Integer;
|
|
568
|
+
/**
|
|
569
|
+
* A function that can generate a primary key for a model.
|
|
570
|
+
* @param model - The model to generate a primary key for.
|
|
571
|
+
* @returns A promise that resolves to the primary key.
|
|
572
|
+
*/
|
|
573
|
+
export type PrimaryKeyGenerator = <TValue extends string | number, TData extends DataDescription>(value: TValue, modelData: CreateParams<TData>, instance: ModelInstance<TData>) => Promise<PrimaryKeyType>;
|
|
574
|
+
/**
|
|
575
|
+
* A property that represents a key in a database.
|
|
576
|
+
* By default it is a "uuid" type, but if you want to use an arbitrary string, or an integer type you can set the `dataType` property.
|
|
577
|
+
* @interface
|
|
578
|
+
*/
|
|
579
|
+
export type DatabaseKeyPropertyConfig<TValue extends string | number> = PropertyConfig<TValue> & Readonly<{
|
|
580
|
+
/**
|
|
581
|
+
* Sets the type of the key.
|
|
582
|
+
* @default PrimaryKeyDataType.Uuid
|
|
583
|
+
*/
|
|
584
|
+
dataType?: PrimaryKeyPropertyType;
|
|
585
|
+
/**
|
|
586
|
+
* If true, the key will be automatically generated if not provided. Only applies to uuids and integers
|
|
587
|
+
* @default true
|
|
588
|
+
*/
|
|
589
|
+
auto?: boolean;
|
|
590
|
+
/**
|
|
591
|
+
* Optional: A custom primary key generator function to use for models. If the property type is UniqueId (default) then this will produce random UUID. If the property type is a number, a random number will be generated.
|
|
592
|
+
* If using a SQL-like database that uses numbers, its HIGHLY recommended to get a number from the database itself.
|
|
593
|
+
*/
|
|
594
|
+
primaryKeyGenerator?: PrimaryKeyGenerator;
|
|
595
|
+
}>;
|
|
596
|
+
export {};
|
package/orm/types.js
CHANGED
|
@@ -33,8 +33,7 @@ var DatastoreValueType;
|
|
|
33
33
|
/**
|
|
34
34
|
* A list of allowable equality symbols.
|
|
35
35
|
*/
|
|
36
|
-
|
|
37
|
-
exports.AllowableEqualitySymbols = AllowableEqualitySymbols;
|
|
36
|
+
exports.AllowableEqualitySymbols = Object.values(EqualitySymbol);
|
|
38
37
|
/**
|
|
39
38
|
* The sort order.
|
|
40
39
|
*/
|
package/orm/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/orm/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/orm/types.ts"],"names":[],"mappings":";;;AAkBA;;GAEG;AACH,IAAY,cAaX;AAbD,WAAY,cAAc;IACxB,SAAS;IACT,0BAAQ,CAAA;IACR,YAAY;IACZ,0BAAQ,CAAA;IACR,wBAAwB;IACxB,4BAAU,CAAA;IACV,eAAe;IACf,0BAAQ,CAAA;IACR,2BAA2B;IAC3B,4BAAU,CAAA;IACV,eAAe;IACf,2BAAS,CAAA;AACX,CAAC,EAbW,cAAc,8BAAd,cAAc,QAazB;AAED;;GAEG;AACH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,uCAAiB,CAAA;IACjB,uCAAiB,CAAA;IACjB,mCAAa,CAAA;IACb,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;AACrB,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B;AAED;;GAEG;AACU,QAAA,wBAAwB,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;AAwkBrE;;GAEG;AACH,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,wBAAW,CAAA;AACb,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "functional-models",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.8.1",
|
|
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",
|
|
@@ -86,9 +86,10 @@
|
|
|
86
86
|
"dependencies": {
|
|
87
87
|
"async-lock": "^1.3.0",
|
|
88
88
|
"get-random-values": "^1.2.2",
|
|
89
|
-
"lodash": "^4.17.
|
|
89
|
+
"lodash": "^4.17.23",
|
|
90
90
|
"modern-async": "^2.0.4",
|
|
91
91
|
"openapi-types": "^12.1.3",
|
|
92
|
+
"uuid": "^13.0.0",
|
|
92
93
|
"zod": "^4.1.11"
|
|
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 {
|
|
595
|
+
export {};
|
package/properties.js
CHANGED
|
@@ -12,7 +12,7 @@ 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.
|
|
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
18
|
const validation_1 = require("./validation");
|
|
@@ -114,7 +114,7 @@ const isDate = (value) => {
|
|
|
114
114
|
* @param config - A configuration that enables overriding of date formatting
|
|
115
115
|
* @param additionalMetadata
|
|
116
116
|
*/
|
|
117
|
-
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)({
|
|
118
118
|
lazyLoadMethod: (value) => {
|
|
119
119
|
if (isDate(value)) {
|
|
120
120
|
if (config.formatFunction) {
|
|
@@ -138,7 +138,7 @@ exports.DateProperty = DateProperty;
|
|
|
138
138
|
* @param config - A configuration that enables overriding of date and time formatting
|
|
139
139
|
* @param additionalMetadata
|
|
140
140
|
*/
|
|
141
|
-
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)({
|
|
142
142
|
lazyLoadMethod: (value) => {
|
|
143
143
|
if (isDate(value)) {
|
|
144
144
|
if (config.formatFunction) {
|
|
@@ -162,7 +162,7 @@ exports.DatetimeProperty = DatetimeProperty;
|
|
|
162
162
|
* @param config
|
|
163
163
|
* @param additionalMetadata
|
|
164
164
|
*/
|
|
165
|
-
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);
|
|
166
166
|
exports.ArrayProperty = ArrayProperty;
|
|
167
167
|
/**
|
|
168
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.
|
|
@@ -170,7 +170,7 @@ exports.ArrayProperty = ArrayProperty;
|
|
|
170
170
|
* @param config
|
|
171
171
|
* @param additionalMetadata
|
|
172
172
|
*/
|
|
173
|
-
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,
|
|
174
174
|
// @ts-ignore
|
|
175
175
|
(0, validation_1.arrayType)(valueType)) }), additionalMetadata);
|
|
176
176
|
exports.SingleTypeArrayProperty = SingleTypeArrayProperty;
|
|
@@ -179,7 +179,7 @@ exports.SingleTypeArrayProperty = SingleTypeArrayProperty;
|
|
|
179
179
|
* @param config
|
|
180
180
|
* @param additionalMetadata
|
|
181
181
|
*/
|
|
182
|
-
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, {
|
|
183
183
|
validators: (0, lib_1.mergeValidators)(config, (0, validation_1.isType)('object')),
|
|
184
184
|
}), additionalMetadata);
|
|
185
185
|
exports.ObjectProperty = ObjectProperty;
|
|
@@ -188,7 +188,7 @@ exports.ObjectProperty = ObjectProperty;
|
|
|
188
188
|
* @param config - Additional Configurations
|
|
189
189
|
* @param additionalMetadata - Additional Metadata
|
|
190
190
|
*/
|
|
191
|
-
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, {
|
|
192
192
|
isString: true,
|
|
193
193
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonTextValidators)(config)),
|
|
194
194
|
}), additionalMetadata);
|
|
@@ -198,7 +198,7 @@ exports.TextProperty = TextProperty;
|
|
|
198
198
|
* @param config - Additional configurations
|
|
199
199
|
* @param additionalMetadata - Additional metadata
|
|
200
200
|
*/
|
|
201
|
-
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, {
|
|
202
202
|
isString: true,
|
|
203
203
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonTextValidators)(config)),
|
|
204
204
|
}), additionalMetadata);
|
|
@@ -208,7 +208,7 @@ exports.BigTextProperty = BigTextProperty;
|
|
|
208
208
|
* @param config
|
|
209
209
|
* @param additionalMetadata
|
|
210
210
|
*/
|
|
211
|
-
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, {
|
|
212
212
|
isInteger: true,
|
|
213
213
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config)),
|
|
214
214
|
}), additionalMetadata);
|
|
@@ -219,7 +219,7 @@ exports.IntegerProperty = IntegerProperty;
|
|
|
219
219
|
* @param config
|
|
220
220
|
* @param additionalMetadata
|
|
221
221
|
*/
|
|
222
|
-
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, {
|
|
223
223
|
isInteger: true,
|
|
224
224
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config), (0, validation_1.minNumber)(0), (0, validation_1.maxNumber)(MAX_YEAR)),
|
|
225
225
|
}), additionalMetadata);
|
|
@@ -229,7 +229,7 @@ exports.YearProperty = YearProperty;
|
|
|
229
229
|
* @param config
|
|
230
230
|
* @param additionalMetadata
|
|
231
231
|
*/
|
|
232
|
-
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, {
|
|
233
233
|
isNumber: true,
|
|
234
234
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config)),
|
|
235
235
|
}), additionalMetadata);
|
|
@@ -241,7 +241,7 @@ exports.NumberProperty = NumberProperty;
|
|
|
241
241
|
* @param config
|
|
242
242
|
* @param additionalMetadata
|
|
243
243
|
*/
|
|
244
|
-
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, {
|
|
245
245
|
value,
|
|
246
246
|
}), additionalMetadata);
|
|
247
247
|
exports.ConstantValueProperty = ConstantValueProperty;
|
|
@@ -250,7 +250,7 @@ exports.ConstantValueProperty = ConstantValueProperty;
|
|
|
250
250
|
* @param config
|
|
251
251
|
* @param additionalMetadata
|
|
252
252
|
*/
|
|
253
|
-
const EmailProperty = (config = {}, additionalMetadata = {}) => TextProperty((0, merge_1.default)(config, {
|
|
253
|
+
const EmailProperty = (config = {}, additionalMetadata = {}) => (0, exports.TextProperty)((0, merge_1.default)(config, {
|
|
254
254
|
type: types_1.PropertyType.Email,
|
|
255
255
|
validators: (0, lib_1.mergeValidators)(config, (0, validation_1.meetsRegex)(EMAIL_REGEX)),
|
|
256
256
|
}), additionalMetadata);
|
|
@@ -260,7 +260,7 @@ exports.EmailProperty = EmailProperty;
|
|
|
260
260
|
* @param config
|
|
261
261
|
* @param additionalMetadata
|
|
262
262
|
*/
|
|
263
|
-
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, {
|
|
264
264
|
isBoolean: true,
|
|
265
265
|
}), additionalMetadata);
|
|
266
266
|
exports.BooleanProperty = BooleanProperty;
|
|
@@ -270,7 +270,7 @@ exports.BooleanProperty = BooleanProperty;
|
|
|
270
270
|
* @param config - Additional configurations. NOTE: required is ALWAYS true.
|
|
271
271
|
* @param additionalMetadata - Any additional metadata.
|
|
272
272
|
*/
|
|
273
|
-
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, {
|
|
274
274
|
required: true,
|
|
275
275
|
isString: true,
|
|
276
276
|
validators: (0, lib_1.mergeValidators)(config, validation_1.isValidUuid),
|
|
@@ -289,7 +289,7 @@ exports.PrimaryKeyUuidProperty = PrimaryKeyUuidProperty;
|
|
|
289
289
|
* @param config - Additional configurations.
|
|
290
290
|
* @param additionalMetadata - Any additional metadata.
|
|
291
291
|
*/
|
|
292
|
-
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, {
|
|
293
293
|
isString: true,
|
|
294
294
|
validators: (0, lib_1.mergeValidators)(config, config.required ? validation_1.isValidUuid : (0, validation_1.optionalValidator)(validation_1.isValidUuid)),
|
|
295
295
|
lazyLoadMethod: (value) => {
|
|
@@ -319,7 +319,7 @@ exports.UuidProperty = UuidProperty;
|
|
|
319
319
|
* @param config
|
|
320
320
|
* @param additionalMetadata
|
|
321
321
|
*/
|
|
322
|
-
const ModelReferenceProperty = (model, config = {}, additionalMetadata = {}) => AdvancedModelReferenceProperty(model, config, additionalMetadata);
|
|
322
|
+
const ModelReferenceProperty = (model, config = {}, additionalMetadata = {}) => (0, exports.AdvancedModelReferenceProperty)(model, config, additionalMetadata);
|
|
323
323
|
exports.ModelReferenceProperty = ModelReferenceProperty;
|
|
324
324
|
/**
|
|
325
325
|
* The full implementation of a ModelReference, useful for typing certain extended functionalities.
|
|
@@ -394,7 +394,7 @@ const AdvancedModelReferenceProperty = (model, config = {}, additionalMetadata =
|
|
|
394
394
|
}
|
|
395
395
|
return _getId(instanceValues)();
|
|
396
396
|
});
|
|
397
|
-
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, {
|
|
398
398
|
validators,
|
|
399
399
|
lazyLoadMethodAtomic,
|
|
400
400
|
}), additionalMetadata), {
|
|
@@ -418,7 +418,7 @@ exports.AdvancedModelReferenceProperty = AdvancedModelReferenceProperty;
|
|
|
418
418
|
* @param additionalMetadata _ Any additional metadata.
|
|
419
419
|
*/
|
|
420
420
|
const DenormalizedProperty = (propertyType, calculate, config = {}, additionalMetadata = {}) => {
|
|
421
|
-
const property = Property(propertyType, (0, merge_1.default)(config, {
|
|
421
|
+
const property = (0, exports.Property)(propertyType, (0, merge_1.default)(config, {
|
|
422
422
|
isDenormalized: true,
|
|
423
423
|
lazyLoadMethodAtomic: (value, modelData, modelInstance) => __awaiter(void 0, void 0, void 0, function* () {
|
|
424
424
|
if (value !== undefined) {
|
|
@@ -438,7 +438,7 @@ exports.DenormalizedProperty = DenormalizedProperty;
|
|
|
438
438
|
* @param config - Any configs
|
|
439
439
|
* @param additionalMetadata - Optional Metadata
|
|
440
440
|
*/
|
|
441
|
-
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, {
|
|
442
442
|
isString: true,
|
|
443
443
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonTextValidators)(config)),
|
|
444
444
|
}), additionalMetadata);
|
|
@@ -449,7 +449,7 @@ exports.DenormalizedTextProperty = DenormalizedTextProperty;
|
|
|
449
449
|
* @param config - Any configs
|
|
450
450
|
* @param additionalMetadata - Optional Metadata
|
|
451
451
|
*/
|
|
452
|
-
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, {
|
|
453
453
|
isNumber: true,
|
|
454
454
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config)),
|
|
455
455
|
}), additionalMetadata);
|
|
@@ -460,7 +460,7 @@ exports.DenormalizedNumberProperty = DenormalizedNumberProperty;
|
|
|
460
460
|
* @param config - Any configs
|
|
461
461
|
* @param additionalMetadata - Optional Metadata
|
|
462
462
|
*/
|
|
463
|
-
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, {
|
|
464
464
|
isInteger: true,
|
|
465
465
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonNumberValidators)(config)),
|
|
466
466
|
}), additionalMetadata);
|
|
@@ -479,7 +479,7 @@ exports.DenormalizedIntegerProperty = DenormalizedIntegerProperty;
|
|
|
479
479
|
* @param config
|
|
480
480
|
* @param additionalMetadata
|
|
481
481
|
*/
|
|
482
|
-
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, {
|
|
483
483
|
isString: true,
|
|
484
484
|
validators: (0, lib_1.mergeValidators)(config, ...(0, lib_1.getCommonTextValidators)(config)),
|
|
485
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/utils.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
declare const getRandomValues: () => Uint8Array;
|
|
1
2
|
declare const createUuid: () => string;
|
|
2
3
|
declare const toTitleCase: (string: string) => string;
|
|
3
4
|
declare const loweredTitleCase: (string: string) => string;
|
|
@@ -7,4 +8,4 @@ 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
|
-
export { loweredTitleCase, toTitleCase, createUuid, isPromise, createHeadAndTail, singularize, flowFindFirst, memoizeSync, memoizeAsync, };
|
|
11
|
+
export { getRandomValues, loweredTitleCase, toTitleCase, createUuid, isPromise, createHeadAndTail, singularize, flowFindFirst, memoizeSync, memoizeAsync, };
|
package/utils.js
CHANGED
|
@@ -12,7 +12,7 @@ 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.createUuid = 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
16
|
// @ts-ignore
|
|
17
17
|
const get_random_values_1 = __importDefault(require("get-random-values"));
|
|
18
18
|
const async_lock_1 = __importDefault(require("async-lock"));
|
|
@@ -33,6 +33,7 @@ const getRandomValues = () => {
|
|
|
33
33
|
}
|
|
34
34
|
return (0, get_random_values_1.default)(array);
|
|
35
35
|
};
|
|
36
|
+
exports.getRandomValues = getRandomValues;
|
|
36
37
|
const createUuid = () => {
|
|
37
38
|
// @ts-ignore
|
|
38
39
|
// eslint-disable-next-line no-magic-numbers,require-unicode-regexp
|
package/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,aAAa;AACb,0EAAmD;AACnD,4DAAkC;AAElC,MAAM,GAAG,GAAG,EAAE,CAAA;AACd,MAAM,IAAI,GAAG,CAAC,CAAA;AACd,MAAM,OAAO,GAAG,EAAE,CAAA;AAElB,MAAM,eAAe,GAAG,GAAe,EAAE;IACvC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;IAC/B,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;QAC7C,CAAC;QACD,aAAa;QACb,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,aAAa;YACb,OAAO,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,IAAA,2BAAmB,EAAC,KAAK,CAAC,CAAA;AACnC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|