@decaf-ts/db-decorators 0.8.5 → 0.8.6

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/README.md CHANGED
@@ -28,7 +28,7 @@ The db-decorators library provides a comprehensive set of TypeScript decorators
28
28
 
29
29
  Documentation available [here](https://decaf-ts.github.io/db-decorators/)
30
30
 
31
- Minimal size: 7.9 KB kb gzipped
31
+ Minimal size: 8 KB kb gzipped
32
32
 
33
33
 
34
34
 
@@ -1 +1 @@
1
- {"version":3,"file":"db-decorators.cjs","sources":["../src/model/constants.ts","../src/validation/constants.ts","../src/validation/validators/ReadOnlyValidator.ts","../src/validation/validators/TimestampValidator.ts","../src/validation/validators/UpdateValidator.ts","../src/operations/constants.ts","../src/validation/validation.ts","../src/operations/OperationsRegistry.ts","../src/operations/Operations.ts","../src/repository/errors.ts","../src/operations/decorators.ts","../src/model/decorators.ts","../src/validation/decorators.ts","../src/model/validation.ts","../src/repository/utils.ts","../src/overrides/overrides.ts","../src/repository/constants.ts","../src/repository/Context.ts","../src/repository/wrappers.ts","../src/index.ts","../src/repository/Repository.ts","../src/identity/decorators.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["DBKeys","REFLECT","ModelKeys","MODEL","REPOSITORY","CLASS","ID","INDEX","UNIQUE","SERIALIZE","READONLY","TIMESTAMP","TRANSIENT","HASH","COMPOSED","GENERATED","VERSION","ORIGINAL","DefaultSeparator","DEFAULT_TIMESTAMP_FORMAT","DEFAULT_ERROR_MESSAGES","INVALID","REQUIRED","DATE","UpdateValidationKeys","ReadOnlyValidator","Validator","constructor","super","hasErrors","value","args","updateHasErrors","oldValue","message","undefined","isEqual","this","getMessage","exports","__decorate","validator","TimestampValidator","Date","e","UpdateValidator","DecoratorMessages","DEFAULT","acceptedTypes","OperationKeys","ModelOperations","BulkCrudOperationKeys","Validation","updateKey","key","DBOperations","CREATE","READ","UPDATE","DELETE","CREATE_UPDATE","READ_CREATE","ALL","OperationsRegistry","cache","get","target","propKey","operation","accum","owner","resolveOwner","name","resolveTargetName","handlers","selectHandlers","length","unshift","Object","prototype","getPrototypeOf","proto","register","handler","handlerName","Operations","getHandlerName","flavour","resolveFlavour","Decoration","defaultFlavour","Metadata","flavourOf","byOperation","bucket","firstBucket","values","keys","Hashing","hash","toString","str","targetName","registry","getOpRegistry","BaseError","Error","msg","code","stack","BadRequestError","ValidationError","InternalError","SerializationError","NotFoundError","ConflictError","DefaultGroupSort","priority","getHandlerArgs","dec","prop","m","props","getHandlersDecorators","model","decorators","prefix","decs","handlerArgs","argsEntry","data","push","groupDecorators","grouped","reduce","acc","group","set","Symbol","groupKey","has","existing","Map","groups","Array","from","forEach","combined","map","d","i","sort","a","b","groupPriority","c","sortDecorators","onCreateUpdate","groupsort","on","onUpdate","onCreate","op","ON","after","AFTER","baseOp","dataToAdd","propertyKey","compoundKey","readOperation","handlerKey","mergeData","filter","handle","propMetadata","OPERATIONS","apply","storeHandlerMetadata","params","metadata","generated","type","hashOnCreateUpdate","context","oldModel","composedFromCreateUpdate","suffix","separator","filterEmpty","hashResult","composed","arg","isArray","includes","JSON","stringify","join","composedFrom","for","define","decorator","property","versionCreateUpdate","Model","shouldGenerate","readonly","meta","description","async","innerValidationDecorator","timestampHandler","timestamp","serializeOnCreateUpdate","serializeAfterAll","parse","getValidatableUpdateProps","propsToIgnore","decoratedProperties","hasOwnProperty","call","validationFor","validateDecorator","newModel","toConditionalPromise","decoratorProps","maybeError","validateDecorators","result","decoratorKey","validationErrors","ValidationKeys","LIST","newPropValue","oldPropValue","newValues","Set","oldValues","allowedTypes","class","clazz","customTypes","flat","t","String","toLowerCase","errs","childValue","isModel","id","pk","oldListModel","find","el","Promise","all","then","every","r","allEmpty","promises","resolvedValues","res","val","validateCompare","ValidatableUpdateProps","nestedErrors","propValue","designTypes","getPropDesignTypes","some","TYPE","propErrors","isConstr","isPropertyModel","instance","Constr","designTypeNames","nestedPropsToIgnore","getChildNestedPropsToIgnore","entries","error","ModelErrorDefinition","merged","allSettled","results","parentProp","nestedErrPromise","nestedPropDecErrors","nestedProp","nestedPropDecError","status","reason","reduceErrorsToPrint","errors","enforceDBDecorators","repo","getDbDecorators","sortedDecorators","UPDATE_ALL","logger","extraPrefix","replace","obj","isTransient","decoratorValidation","previousVersion","exclusions","isAsync","validate","resolve","resolvedErrs","segregate","validatableProperties","transientProps","transient","build","keyValue","constr","idProp","bind","pkProps","merge","extract","assign","saveOperation","decoration","ctx","DefaultRepositoryFlags","parentContext","childContexts","ignoredValidationProperties","callArgs","writeOperation","affectedTables","breakOnHandlerError","rebuildWithTransient","ignoreValidation","ignoreHandlers","ignoreDevSafeGuards","mergeForUpdate","applyUpdateValidation","allowGenerationOverride","DefaultContextFactory","Context","accumulate","Logging","ObjectAccumulator","defineProperty","writable","enumerable","configurable","factory","parent","childFrom","overrides","contextual","last","pop","getContext","wrapMethodWithContext","before","method","methodName","Proxy","thisArg","argArray","transformedArgs","wrapMethodWithContextForUpdate","o","PACKAGE_NAME","registerLibrary","BLOCK","operations","_class","self","create","read","delete","update","createAll","models","createPrefix","contextArgs","createSuffix","createAllPrefix","ignoreValidate","createAllSuffix","readAll","readSuffix","readPrefix","readAllPrefix","k","readAllSuffix","updateAll","updateSuffix","updatePrefix","updateAllPrefix","ids","oldModels","modelsValidation","updateAllSuffix","deleteAll","deleteSuffix","deletePrefix","deleteAllPrefix","deleteAllSuffix","required","afterName","beforeName","format","decorationKey","updateValidationKey","date","indexOf","attribute","Number"],"mappings":"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"}
1
+ {"version":3,"file":"db-decorators.cjs","sources":["../src/model/constants.ts","../src/validation/constants.ts","../src/validation/validators/ReadOnlyValidator.ts","../src/validation/validators/TimestampValidator.ts","../src/validation/validators/UpdateValidator.ts","../src/operations/constants.ts","../src/validation/validation.ts","../src/operations/OperationsRegistry.ts","../src/operations/Operations.ts","../src/repository/errors.ts","../src/operations/decorators.ts","../src/model/decorators.ts","../src/validation/decorators.ts","../src/model/validation.ts","../src/repository/utils.ts","../src/overrides/overrides.ts","../src/repository/constants.ts","../src/repository/Context.ts","../src/repository/wrappers.ts","../src/index.ts","../src/repository/Repository.ts","../src/identity/decorators.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["DBKeys","REFLECT","ModelKeys","MODEL","REPOSITORY","CLASS","ID","INDEX","UNIQUE","SERIALIZE","READONLY","TIMESTAMP","TRANSIENT","HASH","COMPOSED","GENERATED","VERSION","ORIGINAL","DefaultSeparator","DEFAULT_TIMESTAMP_FORMAT","DEFAULT_ERROR_MESSAGES","INVALID","REQUIRED","DATE","UpdateValidationKeys","ReadOnlyValidator","Validator","constructor","super","hasErrors","value","args","updateHasErrors","oldValue","message","undefined","isEqual","this","getMessage","exports","__decorate","validator","TimestampValidator","Date","e","UpdateValidator","DecoratorMessages","DEFAULT","acceptedTypes","OperationKeys","ModelOperations","BulkCrudOperationKeys","Validation","updateKey","key","DBOperations","CREATE","READ","UPDATE","DELETE","CREATE_UPDATE","READ_CREATE","ALL","OperationsRegistry","cache","get","target","propKey","operation","accum","owner","resolveOwner","name","resolveTargetName","handlers","selectHandlers","length","unshift","Object","prototype","getPrototypeOf","proto","register","handler","handlerName","Operations","getHandlerName","flavour","resolveFlavour","Decoration","defaultFlavour","Metadata","flavourOf","byOperation","bucket","firstBucket","values","keys","Hashing","hash","toString","str","targetName","registry","getOpRegistry","BaseError","Error","msg","code","stack","BadRequestError","ValidationError","InternalError","SerializationError","NotFoundError","ConflictError","DefaultGroupSort","priority","getHandlerArgs","dec","prop","m","props","getHandlersDecorators","model","decorators","prefix","decs","handlerArgs","argsEntry","data","push","groupDecorators","grouped","reduce","acc","group","set","Symbol","groupKey","has","existing","Map","groups","Array","from","forEach","combined","map","d","i","sort","a","b","groupPriority","c","sortDecorators","onCreateUpdate","groupsort","on","onUpdate","onCreate","op","ON","after","AFTER","baseOp","dataToAdd","propertyKey","compoundKey","readOperation","handlerKey","mergeData","filter","handle","propMetadata","OPERATIONS","apply","storeHandlerMetadata","params","metadata","generated","type","hashOnCreateUpdate","context","oldModel","composedFromCreateUpdate","suffix","separator","filterEmpty","hashResult","composed","arg","isArray","includes","JSON","stringify","join","composedFrom","for","define","decorator","property","versionCreateUpdate","Model","shouldGenerate","readonly","meta","description","async","innerValidationDecorator","timestampHandler","timestamp","serializeOnCreateUpdate","serializeAfterAll","parse","getValidatableUpdateProps","propsToIgnore","decoratedProperties","hasOwnProperty","call","validationFor","validateDecorator","newModel","toConditionalPromise","decoratorProps","maybeError","validateDecorators","result","decoratorKey","validationErrors","ValidationKeys","LIST","newPropValue","oldPropValue","newValues","Set","oldValues","allowedTypes","class","clazz","customTypes","flat","t","String","toLowerCase","errs","childValue","isModel","id","pk","oldListModel","find","el","Promise","all","then","every","r","allEmpty","promises","resolvedValues","res","val","validateCompare","ValidatableUpdateProps","nestedErrors","propValue","designTypes","getPropDesignTypes","some","TYPE","propErrors","isConstr","isPropertyModel","instance","Constr","designTypeNames","nestedPropsToIgnore","getChildNestedPropsToIgnore","entries","error","ModelErrorDefinition","merged","allSettled","results","parentProp","nestedErrPromise","nestedPropDecErrors","nestedProp","nestedPropDecError","status","reason","reduceErrorsToPrint","errors","enforceDBDecorators","repo","getDbDecorators","sortedDecorators","UPDATE_ALL","logger","extraPrefix","replace","obj","isTransient","decoratorValidation","previousVersion","exclusions","isAsync","validate","resolve","resolvedErrs","segregate","validatableProperties","transientProps","transient","build","keyValue","constr","idProp","bind","pkProps","merge","extract","assign","saveOperation","decoration","ctx","DefaultRepositoryFlags","parentContext","childContexts","ignoredValidationProperties","callArgs","writeOperation","affectedTables","breakOnHandlerError","rebuildWithTransient","ignoreValidation","ignoreHandlers","ignoreDevSafeGuards","mergeForUpdate","applyUpdateValidation","allowGenerationOverride","DefaultContextFactory","Context","accumulate","Logging","ObjectAccumulator","defineProperty","writable","enumerable","configurable","factory","parent","childFrom","overrides","contextual","last","pop","getContext","wrapMethodWithContext","before","method","methodName","Proxy","thisArg","argArray","transformedArgs","wrapMethodWithContextForUpdate","o","PACKAGE_NAME","registerLibrary","BLOCK","operations","_class","self","create","read","delete","update","createAll","models","createPrefix","contextArgs","createSuffix","createAllPrefix","ignoreValidate","createAllSuffix","readAll","readSuffix","readPrefix","readAllPrefix","k","readAllSuffix","updateAll","updateSuffix","updatePrefix","updateAllPrefix","ids","oldModels","modelsValidation","updateAllSuffix","deleteAll","deleteSuffix","deletePrefix","deleteAllPrefix","deleteAllSuffix","required","afterName","beforeName","format","decorationKey","updateValidationKey","date","indexOf","attribute","Number"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"db-decorators.js","sources":["../src/model/constants.ts","../src/validation/constants.ts","../src/validation/validators/ReadOnlyValidator.ts","../src/validation/validators/TimestampValidator.ts","../src/validation/validators/UpdateValidator.ts","../src/operations/constants.ts","../src/validation/validation.ts","../src/operations/OperationsRegistry.ts","../src/operations/Operations.ts","../src/repository/errors.ts","../src/operations/decorators.ts","../src/model/decorators.ts","../src/validation/decorators.ts","../src/identity/decorators.ts","../src/model/validation.ts","../src/repository/utils.ts","../src/overrides/overrides.ts","../src/repository/constants.ts","../src/repository/Context.ts","../src/repository/wrappers.ts","../src/repository/Repository.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["DBKeys","REFLECT","ModelKeys","MODEL","REPOSITORY","CLASS","ID","INDEX","UNIQUE","SERIALIZE","READONLY","TIMESTAMP","TRANSIENT","HASH","COMPOSED","GENERATED","VERSION","ORIGINAL","DefaultSeparator","DEFAULT_TIMESTAMP_FORMAT","DEFAULT_ERROR_MESSAGES","INVALID","REQUIRED","DATE","UpdateValidationKeys","ReadOnlyValidator","Validator","constructor","super","hasErrors","value","args","updateHasErrors","oldValue","message","undefined","isEqual","this","getMessage","__decorate","validator","TimestampValidator","Date","e","UpdateValidator","DecoratorMessages","DEFAULT","acceptedTypes","OperationKeys","ModelOperations","BulkCrudOperationKeys","Validation","updateKey","key","DBOperations","CREATE","READ","UPDATE","DELETE","CREATE_UPDATE","READ_CREATE","ALL","OperationsRegistry","cache","get","target","propKey","operation","accum","owner","resolveOwner","name","resolveTargetName","handlers","selectHandlers","length","unshift","Object","prototype","getPrototypeOf","proto","register","handler","handlerName","Operations","getHandlerName","flavour","resolveFlavour","Decoration","defaultFlavour","Metadata","flavourOf","byOperation","bucket","firstBucket","values","keys","Hashing","hash","toString","str","targetName","registry","getOpRegistry","BaseError","Error","msg","code","stack","BadRequestError","ValidationError","InternalError","SerializationError","NotFoundError","ConflictError","DefaultGroupSort","priority","getHandlerArgs","dec","prop","m","props","getHandlersDecorators","model","decorators","prefix","decs","handlerArgs","argsEntry","data","push","groupDecorators","grouped","reduce","acc","group","set","Symbol","groupKey","has","existing","Map","groups","Array","from","forEach","combined","map","d","i","sort","a","b","groupPriority","c","sortDecorators","onCreateUpdate","groupsort","on","onUpdate","onCreate","onRead","onDelete","onAny","op","ON","afterCreateUpdate","after","afterUpdate","afterCreate","afterRead","afterDelete","afterAny","AFTER","baseOp","dataToAdd","propertyKey","compoundKey","readOperation","handlerKey","mergeData","filter","handle","propMetadata","OPERATIONS","apply","storeHandlerMetadata","params","metadata","BlockOperations","operations","BLOCK","includes","BlockOperationIf","generated","type","hashOnCreateUpdate","context","oldModel","composedFromCreateUpdate","suffix","separator","filterEmpty","hashResult","composed","arg","isArray","JSON","stringify","join","composedFrom","for","define","decorator","property","composedFromKeys","versionCreateUpdate","Model","shouldGenerate","version","Number","transient","attribute","readonly","meta","description","async","innerValidationDecorator","timestampHandler","timestamp","format","decorationKey","updateValidationKey","date","required","indexOf","serializeOnCreateUpdate","serializeAfterAll","parse","serialize","String","id","getValidatableUpdateProps","propsToIgnore","decoratedProperties","hasOwnProperty","call","validationFor","validateDecorator","newModel","toConditionalPromise","decoratorProps","maybeError","validateDecorators","result","decoratorKey","validationErrors","ValidationKeys","LIST","newPropValue","oldPropValue","newValues","Set","oldValues","allowedTypes","class","clazz","customTypes","flat","t","toLowerCase","errs","childValue","isModel","pk","oldListModel","find","el","Promise","all","then","every","r","allEmpty","promises","resolvedValues","res","val","validateCompare","ValidatableUpdateProps","nestedErrors","propValue","designTypes","getPropDesignTypes","some","TYPE","propErrors","isConstr","isPropertyModel","instance","Constr","designTypeNames","nestedPropsToIgnore","getChildNestedPropsToIgnore","entries","error","ModelErrorDefinition","merged","allSettled","results","parentProp","nestedErrPromise","nestedPropDecErrors","nestedProp","nestedPropDecError","status","reason","reduceErrorsToPrint","errors","enforceDBDecorators","repo","getDbDecorators","sortedDecorators","UPDATE_ALL","logger","extraPrefix","replace","obj","isTransient","previousVersion","exclusions","isAsync","validate","resolve","resolvedErrs","segregate","validatableProperties","transientProps","build","keyValue","constr","idProp","bind","pkProps","merge","extract","assign","saveOperation","ctx","DefaultRepositoryFlags","parentContext","childContexts","ignoredValidationProperties","callArgs","writeOperation","affectedTables","breakOnHandlerError","rebuildWithTransient","ignoreValidation","ignoreHandlers","ignoreDevSafeGuards","mergeForUpdate","applyUpdateValidation","allowGenerationOverride","DefaultContextFactory","Context","accumulate","Logging","ObjectAccumulator","defineProperty","writable","enumerable","configurable","factory","parent","childFrom","overrides","contextual","last","pop","getContext","prefixMethod","afterName","Proxy","thisArg","argArray","suffixMethod","before","beforeName","wrapMethodWithContext","method","methodName","transformedArgs","wrapMethodWithContextForUpdate","o","Repository","_class","self","create","read","delete","update","createAll","models","createPrefix","contextArgs","createSuffix","createAllPrefix","ignoreValidate","createAllSuffix","readAll","readSuffix","readPrefix","readAllPrefix","k","readAllSuffix","updateAll","updateSuffix","updatePrefix","updateAllPrefix","ids","oldModels","modelsValidation","updateAllSuffix","deleteAll","deleteSuffix","deletePrefix","deleteAllPrefix","deleteAllSuffix","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
1
+ {"version":3,"file":"db-decorators.js","sources":["../src/model/constants.ts","../src/validation/constants.ts","../src/validation/validators/ReadOnlyValidator.ts","../src/validation/validators/TimestampValidator.ts","../src/validation/validators/UpdateValidator.ts","../src/operations/constants.ts","../src/validation/validation.ts","../src/operations/OperationsRegistry.ts","../src/operations/Operations.ts","../src/repository/errors.ts","../src/operations/decorators.ts","../src/model/decorators.ts","../src/validation/decorators.ts","../src/identity/decorators.ts","../src/model/validation.ts","../src/repository/utils.ts","../src/overrides/overrides.ts","../src/repository/constants.ts","../src/repository/Context.ts","../src/repository/wrappers.ts","../src/repository/Repository.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["DBKeys","REFLECT","ModelKeys","MODEL","REPOSITORY","CLASS","ID","INDEX","UNIQUE","SERIALIZE","READONLY","TIMESTAMP","TRANSIENT","HASH","COMPOSED","GENERATED","VERSION","ORIGINAL","DefaultSeparator","DEFAULT_TIMESTAMP_FORMAT","DEFAULT_ERROR_MESSAGES","INVALID","REQUIRED","DATE","UpdateValidationKeys","ReadOnlyValidator","Validator","constructor","super","hasErrors","value","args","updateHasErrors","oldValue","message","undefined","isEqual","this","getMessage","__decorate","validator","TimestampValidator","Date","e","UpdateValidator","DecoratorMessages","DEFAULT","acceptedTypes","OperationKeys","ModelOperations","BulkCrudOperationKeys","Validation","updateKey","key","DBOperations","CREATE","READ","UPDATE","DELETE","CREATE_UPDATE","READ_CREATE","ALL","OperationsRegistry","cache","get","target","propKey","operation","accum","owner","resolveOwner","name","resolveTargetName","handlers","selectHandlers","length","unshift","Object","prototype","getPrototypeOf","proto","register","handler","handlerName","Operations","getHandlerName","flavour","resolveFlavour","Decoration","defaultFlavour","Metadata","flavourOf","byOperation","bucket","firstBucket","values","keys","Hashing","hash","toString","str","targetName","registry","getOpRegistry","BaseError","Error","msg","code","stack","BadRequestError","ValidationError","InternalError","SerializationError","NotFoundError","ConflictError","DefaultGroupSort","priority","getHandlerArgs","dec","prop","m","props","getHandlersDecorators","model","decorators","prefix","decs","handlerArgs","argsEntry","data","push","groupDecorators","grouped","reduce","acc","group","set","Symbol","groupKey","has","existing","Map","groups","Array","from","forEach","combined","map","d","i","sort","a","b","groupPriority","c","sortDecorators","onCreateUpdate","groupsort","on","onUpdate","onCreate","onRead","onDelete","onAny","op","ON","afterCreateUpdate","after","afterUpdate","afterCreate","afterRead","afterDelete","afterAny","AFTER","baseOp","dataToAdd","propertyKey","compoundKey","readOperation","handlerKey","mergeData","filter","handle","propMetadata","OPERATIONS","apply","storeHandlerMetadata","params","metadata","BlockOperations","operations","BLOCK","includes","BlockOperationIf","generated","type","hashOnCreateUpdate","context","oldModel","composedFromCreateUpdate","suffix","separator","filterEmpty","hashResult","composed","arg","isArray","JSON","stringify","join","composedFrom","for","define","decorator","property","composedFromKeys","versionCreateUpdate","Model","shouldGenerate","version","Number","transient","attribute","readonly","meta","description","async","innerValidationDecorator","timestampHandler","timestamp","format","decorationKey","updateValidationKey","date","required","indexOf","serializeOnCreateUpdate","serializeAfterAll","parse","serialize","String","id","getValidatableUpdateProps","propsToIgnore","decoratedProperties","hasOwnProperty","call","validationFor","validateDecorator","newModel","toConditionalPromise","decoratorProps","maybeError","validateDecorators","result","decoratorKey","validationErrors","ValidationKeys","LIST","newPropValue","oldPropValue","newValues","Set","oldValues","allowedTypes","class","clazz","customTypes","flat","t","toLowerCase","errs","childValue","isModel","pk","oldListModel","find","el","Promise","all","then","every","r","allEmpty","promises","resolvedValues","res","val","validateCompare","ValidatableUpdateProps","nestedErrors","propValue","designTypes","getPropDesignTypes","some","TYPE","propErrors","isConstr","isPropertyModel","instance","Constr","designTypeNames","nestedPropsToIgnore","getChildNestedPropsToIgnore","entries","error","ModelErrorDefinition","merged","allSettled","results","parentProp","nestedErrPromise","nestedPropDecErrors","nestedProp","nestedPropDecError","status","reason","reduceErrorsToPrint","errors","enforceDBDecorators","repo","getDbDecorators","sortedDecorators","UPDATE_ALL","logger","extraPrefix","replace","obj","isTransient","previousVersion","exclusions","isAsync","validate","resolve","resolvedErrs","segregate","validatableProperties","transientProps","build","keyValue","constr","idProp","bind","pkProps","merge","extract","assign","saveOperation","ctx","DefaultRepositoryFlags","parentContext","childContexts","ignoredValidationProperties","callArgs","writeOperation","affectedTables","breakOnHandlerError","rebuildWithTransient","ignoreValidation","ignoreHandlers","ignoreDevSafeGuards","mergeForUpdate","applyUpdateValidation","allowGenerationOverride","DefaultContextFactory","Context","accumulate","Logging","ObjectAccumulator","defineProperty","writable","enumerable","configurable","factory","parent","childFrom","overrides","contextual","last","pop","getContext","prefixMethod","afterName","Proxy","thisArg","argArray","suffixMethod","before","beforeName","wrapMethodWithContext","method","methodName","transformedArgs","wrapMethodWithContextForUpdate","o","Repository","_class","self","create","read","delete","update","createAll","models","createPrefix","contextArgs","createSuffix","createAllPrefix","ignoreValidate","createAllSuffix","readAll","readSuffix","readPrefix","readAllPrefix","k","readAllSuffix","updateAll","updateSuffix","updatePrefix","updateAllPrefix","ids","oldModels","modelsValidation","updateAllSuffix","deleteAll","deleteSuffix","deletePrefix","deleteAllPrefix","deleteAllSuffix","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { Contextual, FlagsOf } from "../interfaces/Contextual";
3
3
  import { OperationKeys } from "../operations/constants";
4
4
  import { Model } from "@decaf-ts/decorator-validation";
5
5
  import { ObjectAccumulator } from "typed-object-accumulator";
6
- import { FlagsOfContext, LoggerOfFlags, RepositoryFlags } from "./types";
6
+ import { ContextFlags, FlagsOfContext, LoggerOfFlags, RepositoryFlags } from "./types";
7
7
  import { Constructor } from "@decaf-ts/decoration";
8
8
  /**
9
9
  * @description Factory type for creating context instances.
@@ -79,7 +79,7 @@ export declare const DefaultContextFactory: ContextFactory<any>;
79
79
  * end
80
80
  * Ctx-->>C: requested value
81
81
  */
82
- export declare class Context<F extends RepositoryFlags<any> = RepositoryFlags> {
82
+ export declare class Context<F extends ContextFlags<any> = RepositoryFlags<any>> {
83
83
  constructor();
84
84
  static factory: ContextFactory<any>;
85
85
  readonly cache: RepositoryFlags<any> & ObjectAccumulator<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../src/repository/Context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../src/repository/Context.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,10 @@ import { IRepository } from "../interfaces/index";
13
13
  * @memberOf module:db-decorators
14
14
  */
15
15
  export type ModelExtension<M extends Model = Model> = M extends Model ? M : never;
16
+ export type ContextFlags<LOG extends Logger> = {
17
+ logger: LOG;
18
+ timestamp: Date;
19
+ };
16
20
  /**
17
21
  * @description Configuration flags for repository operations.
18
22
  * @summary Defines the configuration options that control repository behavior during operations.
@@ -30,14 +34,13 @@ export type ModelExtension<M extends Model = Model> = M extends Model ? M : neve
30
34
  * @property {boolean} rebuildWithTransient - Whether to include transient properties when rebuilding models
31
35
  * @memberOf module:db-decorators
32
36
  */
33
- export interface RepositoryFlags<LOG extends Logger = Logger> {
37
+ export interface RepositoryFlags<LOG extends Logger = Logger> extends ContextFlags<LOG> {
34
38
  parentContext?: Context<any>;
35
39
  childContexts?: Context<any>[];
36
40
  callArgs?: any[];
37
41
  ignoredValidationProperties: string[];
38
42
  affectedTables: (string | Constructor<ModelExtension>)[] | string | Constructor<ModelExtension>;
39
43
  writeOperation: boolean;
40
- timestamp: Date;
41
44
  operation?: OperationKeys;
42
45
  breakOnHandlerError: boolean;
43
46
  rebuildWithTransient: boolean;
@@ -46,11 +49,10 @@ export interface RepositoryFlags<LOG extends Logger = Logger> {
46
49
  ignoreDevSafeGuards: boolean;
47
50
  mergeForUpdate: boolean;
48
51
  applyUpdateValidation: boolean;
49
- logger: LOG;
50
52
  correlationId?: string;
51
53
  allowGenerationOverride: boolean;
52
54
  }
53
- export type LoggerOfFlags<R extends RepositoryFlags<any>> = R extends RepositoryFlags<infer L> ? L : never;
55
+ export type LoggerOfFlags<R extends ContextFlags<any>> = R extends ContextFlags<infer L> ? L : never;
54
56
  export type FlagsOfContext<C extends Context<any>> = C extends Context<infer F> ? F : never;
55
57
  export type LoggerOfContext<C extends Context<any>> = LoggerOfFlags<FlagsOfContext<C>>;
56
58
  export type ContextOfRepository<R extends IRepository<any, any>> = R extends IRepository<any, infer C> ? C : never;
@@ -3,7 +3,7 @@ import { Contextual, FlagsOf } from "../interfaces/Contextual";
3
3
  import { OperationKeys } from "../operations/constants";
4
4
  import { Model } from "@decaf-ts/decorator-validation";
5
5
  import { ObjectAccumulator } from "typed-object-accumulator";
6
- import { FlagsOfContext, LoggerOfFlags, RepositoryFlags } from "./types";
6
+ import { ContextFlags, FlagsOfContext, LoggerOfFlags, RepositoryFlags } from "./types";
7
7
  import { Constructor } from "@decaf-ts/decoration";
8
8
  /**
9
9
  * @description Factory type for creating context instances.
@@ -79,7 +79,7 @@ export declare const DefaultContextFactory: ContextFactory<any>;
79
79
  * end
80
80
  * Ctx-->>C: requested value
81
81
  */
82
- export declare class Context<F extends RepositoryFlags<any> = RepositoryFlags> {
82
+ export declare class Context<F extends ContextFlags<any> = RepositoryFlags<any>> {
83
83
  constructor();
84
84
  static factory: ContextFactory<any>;
85
85
  readonly cache: RepositoryFlags<any> & ObjectAccumulator<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../src/repository/Context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../src/repository/Context.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,10 @@ import { IRepository } from "../interfaces/index";
13
13
  * @memberOf module:db-decorators
14
14
  */
15
15
  export type ModelExtension<M extends Model = Model> = M extends Model ? M : never;
16
+ export type ContextFlags<LOG extends Logger> = {
17
+ logger: LOG;
18
+ timestamp: Date;
19
+ };
16
20
  /**
17
21
  * @description Configuration flags for repository operations.
18
22
  * @summary Defines the configuration options that control repository behavior during operations.
@@ -30,14 +34,13 @@ export type ModelExtension<M extends Model = Model> = M extends Model ? M : neve
30
34
  * @property {boolean} rebuildWithTransient - Whether to include transient properties when rebuilding models
31
35
  * @memberOf module:db-decorators
32
36
  */
33
- export interface RepositoryFlags<LOG extends Logger = Logger> {
37
+ export interface RepositoryFlags<LOG extends Logger = Logger> extends ContextFlags<LOG> {
34
38
  parentContext?: Context<any>;
35
39
  childContexts?: Context<any>[];
36
40
  callArgs?: any[];
37
41
  ignoredValidationProperties: string[];
38
42
  affectedTables: (string | Constructor<ModelExtension>)[] | string | Constructor<ModelExtension>;
39
43
  writeOperation: boolean;
40
- timestamp: Date;
41
44
  operation?: OperationKeys;
42
45
  breakOnHandlerError: boolean;
43
46
  rebuildWithTransient: boolean;
@@ -46,11 +49,10 @@ export interface RepositoryFlags<LOG extends Logger = Logger> {
46
49
  ignoreDevSafeGuards: boolean;
47
50
  mergeForUpdate: boolean;
48
51
  applyUpdateValidation: boolean;
49
- logger: LOG;
50
52
  correlationId?: string;
51
53
  allowGenerationOverride: boolean;
52
54
  }
53
- export type LoggerOfFlags<R extends RepositoryFlags<any>> = R extends RepositoryFlags<infer L> ? L : never;
55
+ export type LoggerOfFlags<R extends ContextFlags<any>> = R extends ContextFlags<infer L> ? L : never;
54
56
  export type FlagsOfContext<C extends Context<any>> = C extends Context<infer F> ? F : never;
55
57
  export type LoggerOfContext<C extends Context<any>> = LoggerOfFlags<FlagsOfContext<C>>;
56
58
  export type ContextOfRepository<R extends IRepository<any, any>> = R extends IRepository<any, infer C> ? C : never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decaf-ts/db-decorators",
3
- "version": "0.8.5",
3
+ "version": "0.8.6",
4
4
  "description": "Agnostic database decorators and repository",
5
5
  "type": "module",
6
6
  "exports": {