functional-models 3.0.1 → 3.0.2
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/models.js +0 -1
- package/models.js.map +1 -1
- package/package.json +1 -1
- package/types.d.ts +6 -11
- package/types.js.map +1 -1
package/models.js
CHANGED
|
@@ -136,7 +136,6 @@ const Model = (minimalModelDefinitions, options) => {
|
|
|
136
136
|
getName: () => (0, lib_1.getModelName)(modelDefinition.namespace, modelDefinition.pluralName),
|
|
137
137
|
getModelDefinition: (0, utils_1.memoizeSync)(() => modelDefinition),
|
|
138
138
|
getPrimaryKey,
|
|
139
|
-
getOptions: () => (Object.assign({}, theOptions)),
|
|
140
139
|
getApiInfo,
|
|
141
140
|
};
|
|
142
141
|
return model;
|
package/models.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":";;;;;;AAAA,yDAAgC;AAChC,mDAA4C;AAC5C,6CAAmD;AAqBnD,+BAKc;AACd,mCAA6E;AAE7E,MAAM,eAAe,GAAG,
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":";;;;;;AAAA,yDAAgC;AAChC,mDAA4C;AAC5C,6CAAmD;AAqBnD,+BAKc;AACd,mCAA6E;AAE7E,MAAM,eAAe,GAAG,GAEI,EAAE,CAAC,CAAC;IAC9B,uBAAuB,EAAE,SAAS;CACnC,CAAC,CAAA;AAEF,MAAM,eAAe,GAAG,CACtB,OAAgC,EAChC,EAAE;IACF,MAAM,CAAC,GAA2B,IAAA,eAAK,EAAC,EAAE,EAAE,eAAe,EAAE,EAAE,OAAO,CAAC,CAAA;IACvE,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CACzB,OAAkC,EACd,EAAE;IACtB,uBACE,YAAY,EAAE,IAAA,mBAAW,EAAC,OAAO,CAAC,UAAU,CAAC,EAC7C,WAAW,EAAE,IAAA,mBAAW,EAAC,OAAO,CAAC,UAAU,CAAC,EAC5C,WAAW,EAAE,EAAE,EACf,cAAc,EAAE,IAAI,EACpB,eAAe,EAAE,EAAE,IAChB,OAAO,EACX;AACH,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAC/B,eAA0C,EAC1C,EAAE;IACF,MAAM,kBAAkB;IACtB,aAAa;IACb,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,cAAc,IAAI,IAAI,CAAC,CAAA;IACpE,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,yCAAyC,eAAe,CAAC,cAAc,EAAE,CAC1E,CAAA;IACH,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;AACH,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,KAAK,GAAiB,CAC1B,uBAAkD,EAClD,OAAgC,EAClB,EAAE;IAChB,wBAAwB,CAAC,uBAAuB,CAAC,CAAA;IACjD;;;;;;OAMG;IACH,6CAA6C;IAC7C,IAAI,KAAK,GAA2B,IAAI,CAAA;IACxC,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;IAC3C,MAAM,eAAe,GAAG,kBAAkB,CAAC,uBAAuB,CAAC,CAAA;IAEnE,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,cAAc,CAAA;IAC9D,MAAM,aAAa,GAAG,CAAC,eAAoB,EAAE,EAAE;QAC7C,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAA;QACzD,OAAO,QAAQ,EAAE,CAAA;IACnB,CAAC,CAAA;IAED,MAAM,MAAM,GAAG,CACb,cAAqD,EACrD,EAAE;QACF,6CAA6C;QAC7C,IAAI,QAAQ,GAA+B,IAAI,CAAA;QAC/C,MAAM,iBAAiB,GAIlB;YACH,GAAG,EAAE,EAAyD;YAC9D,UAAU,EAAE,EAAE;YACd,UAAU,EAAE,EAAE;SACf,CAAA;QAED,MAAM,IAAI,GAAsC,MAAM,CAAC,OAAO,CAC5D,eAAe,CAAC,UAAU,CAC3B,CAAA;QACD,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE;YACvB,MAAM,cAAc,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE,CACtC,QAAQ,CAAC,YAAY;YACnB,YAAY;YACZ,cAAc,CAAC,GAAG,CAAC,EACnB,cAAc;YACd,mEAAmE;YACnE,QAA8B,CAC/B,EAAE,CACJ,CAAA;YACD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;YAC/D,MAAM,4BAA4B,GAAG;gBACnC,GAAG,EAAE;oBACH,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,cAAc,EAAE;iBAC9B;gBACD,UAAU,EAAE;oBACV,CAAC,GAAG,CAAC,EAAE,iBAAiB;iBACzB;aACF,CAAA;YACD,MAAM,YAAY,GAAG,QAGpB,CAAA;YACD,MAAM,kBAAkB,GAAG,YAAY,CAAC,eAAe;gBACrD,CAAC,CAAC;oBACE,UAAU,EAAE;wBACV,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CACV,YAAY,CAAC,eAAe;wBAC1B,aAAa;wBACb,cAAc,CAAC,GAAG,CAAwB,CAC3C;qBACJ;iBACF;gBACH,CAAC,CAAC,EAAE,CAAA;YAEN,OAAO,IAAA,eAAK,EACV,GAAG,EACH,4BAA4B,EAC5B,kBAAkB,CAKlB,CAAA;QACJ,CAAC,EACD,iBAIE,CACH,CAAA;QAED,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,KAAqB,CAAA;QAE5C,sEAAsE;QACtE,wCAAwC;QACxC,aAAa;QACb,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,GAAG,EAAE;YAC9B,OAAO,IAAA,0BAAU,EAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAA;QAC1C,CAAC,CAAwB,CAAA;QAEzB,MAAM,QAAQ,GAAG,IAAA,oBAAY,EAAC,CAAC,OAAO,GAAG,EAAE,EAAE,EAAE;YAC7C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjC,OAAO,IAAA,iCAAoB,EACzB,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,eAAe,CAChC,CAAC,QAA4B,EAAE,OAAO,CAAC,CAAA;YAC1C,CAAC,CAAwC,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,UAAU,CAAA;QACtD,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,UAAU,CAAA;QAEtD,aAAa;QACb,QAAQ,GAAG;YACT,GAAG,EAAE,eAAe,CAAC,GAAG;YACxB,aAAa;YACb,aAAa;YACb,QAAQ;YACR,KAAK;YACL,aAAa,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC;YACnD,QAAQ;SACW,CAAA;QAErB,IAAI,UAAU,CAAC,uBAAuB,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,uBAAuB,CAAC;gBAC9D,CAAC,CAAC,UAAU,CAAC,uBAAuB;gBACpC,CAAC,CAAC,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAA;YACxC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAA4B,CAAC,CAAC,CAAA;QACxD,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,IAAA,mBAAW,EAAC,GAAG,EAAE;QAClC,OAAO,IAAA,4BAAsB,EAC3B,eAAe,CAAC,UAAU,EAC1B,eAAe,CAAC,SAAS,EACzB,eAAe,CAAC,GAAG,CACpB,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,2DAA2D;IAC3D,KAAK,GAAG;QACN;;WAEG;QACH,MAAM;QACN,OAAO,EAAE,GAAG,EAAE,CACZ,IAAA,kBAAY,EAAC,eAAe,CAAC,SAAS,EAAE,eAAe,CAAC,UAAU,CAAC;QACrE,kBAAkB,EAAE,IAAA,mBAAW,EAAC,GAAG,EAAE,CAAC,eAAe,CAAC;QACtD,aAAa;QACb,UAAU;KACX,CAAA;IACD,OAAO,KAAqB,CAAA;AAC9B,CAAC,CAAA;AAWQ,sBAAK;AATd;;;;GAIG;AACH,MAAM,cAAc,GAAG,CAAC,QAAkB,EAAW,EAAE;IACrD,OAAO,QAAQ,CAAC,MAAM,KAAK,iBAAW,IAAI,QAAQ,CAAC,QAAQ,KAAK,mBAAa,CAAA;AAC/E,CAAC,CAAA;AAEe,wCAAc"}
|
package/package.json
CHANGED
package/types.d.ts
CHANGED
|
@@ -389,7 +389,7 @@ type PrimaryKeyType = string | number;
|
|
|
389
389
|
* @param modelDefinition - The minimal model definitions needed.
|
|
390
390
|
* @param options - Additional model options.
|
|
391
391
|
*/
|
|
392
|
-
type ModelFactory<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object,
|
|
392
|
+
type ModelFactory<TModelExtensions extends object = object, TModelInstanceExtensions extends object = object, TModelFactoryOptionsExtensions extends object = object> = <TData extends DataDescription>(modelDefinition: MinimalModelDefinition<TData>, options?: ModelFactoryOptions<TData, TModelFactoryOptionsExtensions>) => ModelType<TData, TModelExtensions, TModelInstanceExtensions>;
|
|
393
393
|
/**
|
|
394
394
|
* Input parameters to a model's create function.
|
|
395
395
|
*/
|
|
@@ -541,10 +541,9 @@ type MinimalModelDefinition<TData extends DataDescription> = Partial<ModelDefini
|
|
|
541
541
|
* @typeParam TData - The type of data
|
|
542
542
|
* @typeParam TModelExtensions - Extensions on the model.
|
|
543
543
|
* @typeParam TModelInstanceExtensions - Extensions on the instances produced by this model.
|
|
544
|
-
* @typeParam TModelOptionsExtensions - Extensions to the options of a model.
|
|
545
544
|
* @interface
|
|
546
545
|
*/
|
|
547
|
-
type ModelType<TData extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object
|
|
546
|
+
type ModelType<TData extends DataDescription, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object> = Readonly<{
|
|
548
547
|
/**
|
|
549
548
|
* This is a unique name combining namespace + pluralName. This can be used as a key to uniquely identify
|
|
550
549
|
* this model across an entire system.
|
|
@@ -565,10 +564,6 @@ type ModelType<TData extends DataDescription, TModelExtensions extends object =
|
|
|
565
564
|
* @param instanceData The underlying instance data that has the primary key.
|
|
566
565
|
*/
|
|
567
566
|
getPrimaryKey: (instanceData: TData | ToObjectResult<TData>) => PrimaryKeyType;
|
|
568
|
-
/**
|
|
569
|
-
* Gets the options that were passed into the model.
|
|
570
|
-
*/
|
|
571
|
-
getOptions: () => object & ModelOptions<TData> & TModelOptionsExtensions;
|
|
572
567
|
/**
|
|
573
568
|
* Gets the Api Information on the model.
|
|
574
569
|
*
|
|
@@ -645,12 +640,12 @@ type ModelCreatedCallback<TData extends DataDescription, TModelExtensions extend
|
|
|
645
640
|
* Options to pass into model generation.
|
|
646
641
|
* @interface
|
|
647
642
|
*/
|
|
648
|
-
type
|
|
643
|
+
type ModelFactoryOptions<TData extends DataDescription, TModelFactoryOptionsExtensions extends object = object> = Record<string, any> & Readonly<{
|
|
649
644
|
/**
|
|
650
645
|
* 1 or more (array) of callback functions for when models get created.
|
|
651
646
|
*/
|
|
652
|
-
instanceCreatedCallback?: Arrayable<ModelCreatedCallback<TData
|
|
653
|
-
}
|
|
647
|
+
instanceCreatedCallback?: Arrayable<ModelCreatedCallback<TData>>;
|
|
648
|
+
}> & TModelFactoryOptionsExtensions;
|
|
654
649
|
/**
|
|
655
650
|
* A function that can calculate a denormalized value. This is very useful for property values that have very complicated and often expensive calculations (but should be calculated once).
|
|
656
651
|
* NOTE: The data that comes in (to be normalized) via the modelData, is the raw data passed into create(). If other functions must fire to create values, they will not be present. Example: Foreign keys.
|
|
@@ -690,4 +685,4 @@ declare enum PrimitiveValueType {
|
|
|
690
685
|
* Dates can either be a Date or a string
|
|
691
686
|
*/
|
|
692
687
|
type DateValueType = Date | string;
|
|
693
|
-
export { PrimitiveValueType, PropertyType, MaybeFunction, Maybe, MaybePromise, Nullable, Arrayable, JsonAble, ToObjectFunction, ToObjectResult, ModelInstance, ModelType, PropertyValidatorComponent, PropertyValidatorComponentSync, PropertyValidatorComponentAsync, PropertyValidator, ModelValidatorComponent, PropertyInstance, PropertyConfig, DataValue, ValueGetter, ModelReference, ModelDefinition,
|
|
688
|
+
export { PrimitiveValueType, PropertyType, MaybeFunction, Maybe, MaybePromise, Nullable, Arrayable, JsonAble, ToObjectFunction, ToObjectResult, ModelInstance, ModelType, PropertyValidatorComponent, PropertyValidatorComponentSync, PropertyValidatorComponentAsync, PropertyValidator, ModelValidatorComponent, PropertyInstance, PropertyConfig, DataValue, ValueGetter, ModelReference, ModelDefinition, ModelFactoryOptions, ModelReferencePropertyInstance, PropertyGetters, PropertyValidators, PropertyValidatorComponentTypeAdvanced, DataDescription, ModelReferenceFunctions, ModelErrors, PrimaryKeyType, ModelFactory, ModelInstanceFetcher, CreateParams, ValidatorContext, ValuePropertyValidatorComponent, ValidationErrors, ComponentValidationErrorResponse, JsonifiedData, JsonObj, CalculateDenormalization, PropertiesList, MinimalModelDefinition, ChoiceTypes, PropertyConfigOptions, CommonValidators, DateValueType, ApiInfo, RestInfo, ApiMethod, RemovePromises, FlattenModelReferences, Unpromise, ApiInfoPartialRest, RestInfoMinimum, };
|
package/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAylBA;;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;AAgTD;;;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"}
|