@typegoose/typegoose
Advanced tools
Comparing version 7.2.0 to 7.3.0-0
import type { Types } from 'mongoose'; | ||
import type { AnyParamConstructor, DocumentType, RefType } from './types'; | ||
export declare abstract class TimeStamps { | ||
createdAt: Readonly<Date>; | ||
updatedAt: Readonly<Date>; | ||
createdAt?: Date; | ||
updatedAt?: Date; | ||
} | ||
@@ -7,0 +7,0 @@ /** |
@@ -6,17 +6,14 @@ "use strict"; | ||
const modelOptions_1 = require("./modelOptions"); | ||
let TimeStamps = /** @class */ (() => { | ||
let TimeStamps = | ||
let TimeStamps = | ||
/** | ||
* This class can be used for already existing type information for the Timestamps | ||
*/ | ||
class TimeStamps { | ||
}; | ||
TimeStamps = tslib_1.__decorate([ | ||
modelOptions_1.modelOptions({ schemaOptions: { timestamps: true } }) | ||
/** | ||
* This class can be used for already existing type information for the Timestamps | ||
*/ | ||
class TimeStamps { | ||
}; | ||
TimeStamps = tslib_1.__decorate([ | ||
modelOptions_1.modelOptions({ schemaOptions: { timestamps: true } }) | ||
/** | ||
* This class can be used for already existing type information for the Timestamps | ||
*/ | ||
], TimeStamps); | ||
return TimeStamps; | ||
})(); | ||
], TimeStamps); | ||
exports.TimeStamps = TimeStamps; | ||
@@ -35,2 +32,2 @@ /** | ||
exports.FindOrCreate = FindOrCreate; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdENsYXNzZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGVmYXVsdENsYXNzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLGlEQUE4QztBQU85QztJQUFBLElBQXNCLFVBQVU7SUFIaEM7O09BRUc7SUFDSCxNQUFzQixVQUFVO0tBRy9CLENBQUE7SUFIcUIsVUFBVTtRQUovQiwyQkFBWSxDQUFDLEVBQUUsYUFBYSxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUM7UUFDdEQ7O1dBRUc7T0FDbUIsVUFBVSxDQUcvQjtJQUFELGlCQUFDO0tBQUE7QUFIcUIsZ0NBQVU7QUFLaEM7O0dBRUc7QUFDSCxNQUFzQixJQUFJO0NBTXpCO0FBTkQsb0JBTUM7QUFPRDs7R0FFRztBQUNILE1BQXNCLFlBQVk7Q0FLakM7QUFMRCxvQ0FLQyJ9 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdENsYXNzZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGVmYXVsdENsYXNzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLGlEQUE4QztBQU85QyxJQUFzQixVQUFVO0FBSGhDOztHQUVHO0FBQ0gsTUFBc0IsVUFBVTtDQUcvQixDQUFBO0FBSHFCLFVBQVU7SUFKL0IsMkJBQVksQ0FBQyxFQUFFLGFBQWEsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDO0lBQ3REOztPQUVHO0dBQ21CLFVBQVUsQ0FHL0I7QUFIcUIsZ0NBQVU7QUFLaEM7O0dBRUc7QUFDSCxNQUFzQixJQUFJO0NBTXpCO0FBTkQsb0JBTUM7QUFPRDs7R0FFRztBQUNILE1BQXNCLFlBQVk7Q0FLakM7QUFMRCxvQ0FLQyJ9 |
import type { Query } from 'mongoose'; | ||
import type { DocumentType, EmptyVoidFn } from './types'; | ||
declare type NDA<T> = number | DocumentType<T> | DocumentType<T>[]; | ||
declare type ClassDecorator = (target: any) => void; | ||
declare type HookNextErrorFn = (err?: Error) => void; | ||
@@ -6,0 +5,0 @@ declare type PreFnWithDocumentType<T> = (this: DocumentType<T>, next: HookNextErrorFn) => void; |
@@ -49,2 +49,2 @@ "use strict"; | ||
exports.Post = hooks.post; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaG9va3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsb0RBQXFEO0FBQ3JELDRDQUFzRDtBQUN0RCwrQ0FBdUM7QUEwRHZDLGlGQUFpRjtBQUNqRixNQUFNLEtBQUssR0FBVTtJQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJO1FBQ1QsT0FBTyxDQUFDLE1BQVcsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUNELElBQUksQ0FBQyxHQUFHLElBQUk7UUFDVixPQUFPLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzRCxDQUFDO0NBQ0YsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsU0FBUyxVQUFVLENBQUMsTUFBVyxFQUFFLFFBQXdCLEVBQUUsSUFBVzs7SUFDcEUsdURBQXVEO0lBQ3ZELE1BQU0sT0FBTyxHQUFVLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRSxpQkFBUyxDQUNQLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLFVBQVUsRUFDN0IsSUFBSSxTQUFTLENBQUMsSUFBSSxlQUFPLENBQUMsTUFBTSxDQUFDLElBQUksUUFBUSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLENBQ3JHLENBQUM7SUFDRixNQUFNLElBQUksR0FBZ0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWxDLG9CQUFNLENBQUMsSUFBSSxDQUFDLDhDQUE4QyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsZUFBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBRTFHLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLFFBQVEsUUFBUSxFQUFFO1lBQ2hCLEtBQUssTUFBTTtnQkFDVCxNQUFNLFNBQVMsR0FBa0IsS0FBSyxDQUFDLElBQUksT0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLHlCQUFhLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxtQ0FBSSxFQUFFLENBQUMsQ0FBQztnQkFDeEcsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO2dCQUNqQyxPQUFPLENBQUMsY0FBYyxDQUFDLHlCQUFhLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDbkUsTUFBTTtZQUNSLEtBQUssS0FBSztnQkFDUixNQUFNLFFBQVEsR0FBa0IsS0FBSyxDQUFDLElBQUksT0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLHlCQUFhLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxtQ0FBSSxFQUFFLENBQUMsQ0FBQztnQkFDdEcsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO2dCQUNoQyxPQUFPLENBQUMsY0FBYyxDQUFDLHlCQUFhLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDakUsTUFBTTtTQUNUO0tBQ0Y7QUFDSCxDQUFDO0FBRVksUUFBQSxHQUFHLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQztBQUNoQixRQUFBLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO0FBRS9CLHdCQUF3QjtBQUNYLFFBQUEsR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7QUFDaEIsUUFBQSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyJ9 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaG9va3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsb0RBQXFEO0FBQ3JELDRDQUFzRDtBQUN0RCwrQ0FBdUM7QUF5RHZDLGlGQUFpRjtBQUNqRixNQUFNLEtBQUssR0FBVTtJQUNuQixHQUFHLENBQUMsR0FBRyxJQUFJO1FBQ1QsT0FBTyxDQUFDLE1BQVcsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUNELElBQUksQ0FBQyxHQUFHLElBQUk7UUFDVixPQUFPLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzRCxDQUFDO0NBQ0YsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsU0FBUyxVQUFVLENBQUMsTUFBVyxFQUFFLFFBQXdCLEVBQUUsSUFBVzs7SUFDcEUsdURBQXVEO0lBQ3ZELE1BQU0sT0FBTyxHQUFVLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRSxpQkFBUyxDQUNQLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLFVBQVUsRUFDN0IsSUFBSSxTQUFTLENBQUMsSUFBSSxlQUFPLENBQUMsTUFBTSxDQUFDLElBQUksUUFBUSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLENBQ3JHLENBQUM7SUFDRixNQUFNLElBQUksR0FBZ0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWxDLG9CQUFNLENBQUMsSUFBSSxDQUFDLDhDQUE4QyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsZUFBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBRTFHLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1FBQzVCLFFBQVEsUUFBUSxFQUFFO1lBQ2hCLEtBQUssTUFBTTtnQkFDVCxNQUFNLFNBQVMsR0FBa0IsS0FBSyxDQUFDLElBQUksT0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLHlCQUFhLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxtQ0FBSSxFQUFFLENBQUMsQ0FBQztnQkFDeEcsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO2dCQUNqQyxPQUFPLENBQUMsY0FBYyxDQUFDLHlCQUFhLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDbkUsTUFBTTtZQUNSLEtBQUssS0FBSztnQkFDUixNQUFNLFFBQVEsR0FBa0IsS0FBSyxDQUFDLElBQUksT0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLHlCQUFhLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxtQ0FBSSxFQUFFLENBQUMsQ0FBQztnQkFDdEcsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO2dCQUNoQyxPQUFPLENBQUMsY0FBYyxDQUFDLHlCQUFhLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDakUsTUFBTTtTQUNUO0tBQ0Y7QUFDSCxDQUFDO0FBRVksUUFBQSxHQUFHLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQztBQUNoQixRQUFBLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO0FBRS9CLHdCQUF3QjtBQUNYLFFBQUEsR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7QUFDaEIsUUFBQSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyJ9 |
@@ -8,7 +8,7 @@ import type { IndexOptions } from './types'; | ||
* ``` | ||
* @index({ article: 1, user: 1 }, { unique: true }) | ||
* class Name {} | ||
* @index({ article: 1, user: 1 }, { unique: true }) | ||
* class Name {} | ||
* ``` | ||
*/ | ||
export declare function index<T = {}>(fields: T, options?: IndexOptions<T>): (target: any) => void; | ||
export declare function index<T = {}>(fields: T, options?: IndexOptions<T>): ClassDecorator; | ||
export { index as Index }; |
@@ -13,4 +13,4 @@ "use strict"; | ||
* ``` | ||
* @index({ article: 1, user: 1 }, { unique: true }) | ||
* class Name {} | ||
* @index({ article: 1, user: 1 }, { unique: true }) | ||
* class Name {} | ||
* ``` | ||
@@ -17,0 +17,0 @@ */ |
@@ -46,3 +46,8 @@ /** | ||
*/ | ||
QueryMethod = "typegoose:queryMethod" | ||
QueryMethod = "typegoose:queryMethod", | ||
/** | ||
* Storage location for Nested Discriminators | ||
* -> Use only for a class | ||
*/ | ||
NestedDiscriminators = "typegoose:nestedDiscriminators" | ||
} | ||
@@ -49,0 +54,0 @@ /** This Enum is meant for baseProp to decide for diffrent props (like if it is an arrayProp or prop or mapProp) */ |
@@ -51,2 +51,7 @@ "use strict"; | ||
DecoratorKeys["QueryMethod"] = "typegoose:queryMethod"; | ||
/** | ||
* Storage location for Nested Discriminators | ||
* -> Use only for a class | ||
*/ | ||
DecoratorKeys["NestedDiscriminators"] = "typegoose:nestedDiscriminators"; | ||
})(DecoratorKeys = exports.DecoratorKeys || (exports.DecoratorKeys = {})); | ||
@@ -67,2 +72,2 @@ /** This Enum is meant for baseProp to decide for diffrent props (like if it is an arrayProp or prop or mapProp) */ | ||
})(Severity = exports.Severity || (exports.Severity = {})); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVybmFsL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILElBQVksYUEyQ1g7QUEzQ0QsV0FBWSxhQUFhO0lBQ3ZCLGtEQUFrRDtJQUNsRCxxQ0FBb0IsQ0FBQTtJQUNwQjs7O09BR0c7SUFDSCxtREFBa0MsQ0FBQTtJQUNsQzs7O09BR0c7SUFDSCxtREFBa0MsQ0FBQTtJQUNsQzs7O09BR0c7SUFDSCw0Q0FBMkIsQ0FBQTtJQUMzQjs7O09BR0c7SUFDSCw4Q0FBNkIsQ0FBQTtJQUM3Qjs7O09BR0c7SUFDSCxnREFBK0IsQ0FBQTtJQUMvQjs7O09BR0c7SUFDSCxrREFBaUMsQ0FBQTtJQUNqQzs7O09BR0c7SUFDSCw4REFBNkMsQ0FBQTtJQUM3Qzs7O09BR0c7SUFDSCxzREFBcUMsQ0FBQTtBQUN2QyxDQUFDLEVBM0NXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBMkN4QjtBQUVELG1IQUFtSDtBQUNuSCxJQUFZLFFBSVg7QUFKRCxXQUFZLFFBQVE7SUFDbEIseUNBQUssQ0FBQTtJQUNMLHFDQUFHLENBQUE7SUFDSCx1Q0FBSSxDQUFBO0FBQ04sQ0FBQyxFQUpXLFFBQVEsR0FBUixnQkFBUSxLQUFSLGdCQUFRLFFBSW5CO0FBRUQsd0NBQXdDO0FBQ3hDLElBQVksUUFJWDtBQUpELFdBQVksUUFBUTtJQUNsQix5Q0FBSyxDQUFBO0lBQ0wsdUNBQUksQ0FBQTtJQUNKLHlDQUFLLENBQUE7QUFDUCxDQUFDLEVBSlcsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFJbkIifQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVybmFsL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILElBQVksYUFnRFg7QUFoREQsV0FBWSxhQUFhO0lBQ3ZCLGtEQUFrRDtJQUNsRCxxQ0FBb0IsQ0FBQTtJQUNwQjs7O09BR0c7SUFDSCxtREFBa0MsQ0FBQTtJQUNsQzs7O09BR0c7SUFDSCxtREFBa0MsQ0FBQTtJQUNsQzs7O09BR0c7SUFDSCw0Q0FBMkIsQ0FBQTtJQUMzQjs7O09BR0c7SUFDSCw4Q0FBNkIsQ0FBQTtJQUM3Qjs7O09BR0c7SUFDSCxnREFBK0IsQ0FBQTtJQUMvQjs7O09BR0c7SUFDSCxrREFBaUMsQ0FBQTtJQUNqQzs7O09BR0c7SUFDSCw4REFBNkMsQ0FBQTtJQUM3Qzs7O09BR0c7SUFDSCxzREFBcUMsQ0FBQTtJQUNyQzs7O09BR0c7SUFDSCx3RUFBdUQsQ0FBQTtBQUN6RCxDQUFDLEVBaERXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBZ0R4QjtBQUVELG1IQUFtSDtBQUNuSCxJQUFZLFFBSVg7QUFKRCxXQUFZLFFBQVE7SUFDbEIseUNBQUssQ0FBQTtJQUNMLHFDQUFHLENBQUE7SUFDSCx1Q0FBSSxDQUFBO0FBQ04sQ0FBQyxFQUpXLFFBQVEsR0FBUixnQkFBUSxLQUFSLGdCQUFRLFFBSW5CO0FBRUQsd0NBQXdDO0FBQ3hDLElBQVksUUFJWDtBQUpELFdBQVksUUFBUTtJQUNsQix5Q0FBSyxDQUFBO0lBQ0wsdUNBQUksQ0FBQTtJQUNKLHlDQUFLLENBQUE7QUFDUCxDQUFDLEVBSlcsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFJbkIifQ== |
@@ -13,5 +13,2 @@ export declare class InvalidPropError extends Error { | ||
} | ||
export declare class NoMetadataError extends Error { | ||
constructor(key: string); | ||
} | ||
/** Not All Virtual Populate Elements Error */ | ||
@@ -18,0 +15,0 @@ export declare class NotAllVPOPElementsError extends Error { |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.NoValidClass = exports.NotAllVPOPElementsError = exports.NoMetadataError = exports.NotStringTypeError = exports.NotNumberTypeError = exports.InvalidTypeError = exports.InvalidPropError = void 0; | ||
exports.NoValidClass = exports.NotAllVPOPElementsError = exports.NotStringTypeError = exports.NotNumberTypeError = exports.InvalidTypeError = exports.InvalidPropError = void 0; | ||
const util_1 = require("util"); | ||
@@ -42,10 +42,2 @@ const utils_1 = require("./utils"); | ||
exports.NotStringTypeError = NotStringTypeError; | ||
class NoMetadataError extends Error { | ||
constructor(key) { | ||
super(`There is no metadata for the "${key}" property.\n` + | ||
'Check if emitDecoratorMetadata is enabled in tsconfig.json ' + | ||
'or check if you\'ve declared a sub document\'s class after usage.'); | ||
} | ||
} | ||
exports.NoMetadataError = NoMetadataError; | ||
/** Not All Virtual Populate Elements Error */ | ||
@@ -64,2 +56,2 @@ class NotAllVPOPElementsError extends Error { | ||
exports.NoValidClass = NoValidClass; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVybmFsL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBOEI7QUFDOUIsbUNBQTRDO0FBRTVDLE1BQWEsZ0JBQWlCLFNBQVEsS0FBSztJQUN6QyxZQUFZLFVBQWtCLEVBQUUsR0FBVztRQUN6QyxLQUFLLENBQUMsYUFBYSxVQUFVLElBQUksR0FBRyx1QkFBdUIsQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDRjtBQUpELDRDQUlDO0FBRUQsTUFBYSxnQkFBaUIsU0FBUSxLQUFLO0lBQ3pDLFlBQVksVUFBa0IsRUFBRSxHQUFXLEVBQUUsSUFBYTtRQUN4RCxLQUFLLENBQUMsSUFBSSxVQUFVLElBQUksR0FBRyxrQ0FBa0MsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUN4RSxDQUFDO0NBQ0Y7QUFKRCw0Q0FJQztBQUVELE1BQWEsa0JBQW1CLFNBQVEsS0FBSztJQUMzQyxZQUFZLFVBQWtCLEVBQUUsR0FBVyxFQUFFLE9BQWdCLEVBQUUsU0FBa0I7UUFDL0UsSUFBSSxPQUFPLElBQUksU0FBUyxFQUFFO1lBQ3hCLEtBQUssQ0FBQyxhQUFNLENBQ1YsMkZBQTJGO2tCQUN6RixrQ0FBa0MsRUFDcEMsVUFBVSxFQUFFLEdBQUcsRUFDZixPQUFPLEVBQUUsT0FBTyxTQUFTLENBQzFCLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxLQUFLLENBQUMsWUFBWSxVQUFVLElBQUksR0FBRyw2QkFBNkIsQ0FBQyxDQUFDO1NBQ25FO0lBQ0gsQ0FBQztDQUNGO0FBYkQsZ0RBYUM7QUFFRCxNQUFhLGtCQUFtQixTQUFRLEtBQUs7SUFDM0MsWUFBWSxVQUFrQixFQUFFLEdBQVcsRUFBRSxPQUFnQixFQUFFLFNBQWtCO1FBQy9FLElBQUksT0FBTyxJQUFJLFNBQVMsRUFBRTtZQUN4QixLQUFLLENBQUMsYUFBTSxDQUNWLHlEQUF5RDtrQkFDdkQsa0NBQWtDLEVBQ3BDLFVBQVUsRUFBRSxHQUFHLEVBQ2YsT0FBTyxFQUFFLE9BQU8sU0FBUyxDQUMxQixDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsS0FBSyxDQUFDLFlBQVksVUFBVSxJQUFJLEdBQUcsNkJBQTZCLENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7Q0FDRjtBQWJELGdEQWFDO0FBRUQsTUFBYSxlQUFnQixTQUFRLEtBQUs7SUFDeEMsWUFBWSxHQUFXO1FBQ3JCLEtBQUssQ0FDSCxpQ0FBaUMsR0FBRyxlQUFlO1lBQ25ELDZEQUE2RDtZQUM3RCxtRUFBbUUsQ0FDcEUsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQVJELDBDQVFDO0FBRUQsOENBQThDO0FBQzlDLE1BQWEsdUJBQXdCLFNBQVEsS0FBSztJQUNoRCxZQUFZLElBQVksRUFBRSxHQUFXO1FBQ25DLEtBQUssQ0FBQyxJQUFJLElBQUksSUFBSSxHQUFHLDhEQUE4RCx5QkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JILENBQUM7Q0FDRjtBQUpELDBEQUlDO0FBRUQsTUFBYSxZQUFhLFNBQVEsU0FBUztJQUN6QyxZQUFZLEVBQU87UUFDakIsS0FBSyxDQUFDLElBQUksRUFBRSxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRjtBQUpELG9DQUlDIn0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVybmFsL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBOEI7QUFDOUIsbUNBQTRDO0FBRTVDLE1BQWEsZ0JBQWlCLFNBQVEsS0FBSztJQUN6QyxZQUFZLFVBQWtCLEVBQUUsR0FBVztRQUN6QyxLQUFLLENBQUMsYUFBYSxVQUFVLElBQUksR0FBRyx1QkFBdUIsQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDRjtBQUpELDRDQUlDO0FBRUQsTUFBYSxnQkFBaUIsU0FBUSxLQUFLO0lBQ3pDLFlBQVksVUFBa0IsRUFBRSxHQUFXLEVBQUUsSUFBYTtRQUN4RCxLQUFLLENBQUMsSUFBSSxVQUFVLElBQUksR0FBRyxrQ0FBa0MsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUN4RSxDQUFDO0NBQ0Y7QUFKRCw0Q0FJQztBQUVELE1BQWEsa0JBQW1CLFNBQVEsS0FBSztJQUMzQyxZQUFZLFVBQWtCLEVBQUUsR0FBVyxFQUFFLE9BQWdCLEVBQUUsU0FBa0I7UUFDL0UsSUFBSSxPQUFPLElBQUksU0FBUyxFQUFFO1lBQ3hCLEtBQUssQ0FBQyxhQUFNLENBQ1YsMkZBQTJGO2tCQUN6RixrQ0FBa0MsRUFDcEMsVUFBVSxFQUFFLEdBQUcsRUFDZixPQUFPLEVBQUUsT0FBTyxTQUFTLENBQzFCLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxLQUFLLENBQUMsWUFBWSxVQUFVLElBQUksR0FBRyw2QkFBNkIsQ0FBQyxDQUFDO1NBQ25FO0lBQ0gsQ0FBQztDQUNGO0FBYkQsZ0RBYUM7QUFFRCxNQUFhLGtCQUFtQixTQUFRLEtBQUs7SUFDM0MsWUFBWSxVQUFrQixFQUFFLEdBQVcsRUFBRSxPQUFnQixFQUFFLFNBQWtCO1FBQy9FLElBQUksT0FBTyxJQUFJLFNBQVMsRUFBRTtZQUN4QixLQUFLLENBQUMsYUFBTSxDQUNWLHlEQUF5RDtrQkFDdkQsa0NBQWtDLEVBQ3BDLFVBQVUsRUFBRSxHQUFHLEVBQ2YsT0FBTyxFQUFFLE9BQU8sU0FBUyxDQUMxQixDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsS0FBSyxDQUFDLFlBQVksVUFBVSxJQUFJLEdBQUcsNkJBQTZCLENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7Q0FDRjtBQWJELGdEQWFDO0FBRUQsOENBQThDO0FBQzlDLE1BQWEsdUJBQXdCLFNBQVEsS0FBSztJQUNoRCxZQUFZLElBQVksRUFBRSxHQUFXO1FBQ25DLEtBQUssQ0FBQyxJQUFJLElBQUksSUFBSSxHQUFHLDhEQUE4RCx5QkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JILENBQUM7Q0FDRjtBQUpELDBEQUlDO0FBRUQsTUFBYSxZQUFhLFNBQVEsU0FBUztJQUN6QyxZQUFZLEVBQU87UUFDakIsS0FBSyxDQUFDLElBQUksRUFBRSxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRjtBQUpELG9DQUlDIn0= |
@@ -5,6 +5,8 @@ "use strict"; | ||
const mongoose = require("mongoose"); | ||
const util_1 = require("util"); | ||
const logSettings_1 = require("../logSettings"); | ||
const prop_1 = require("../prop"); | ||
const typegoose_1 = require("../typegoose"); | ||
const constants_1 = require("./constants"); | ||
const data_1 = require("./data"); | ||
const processProp_1 = require("./processProp"); | ||
const utils_1 = require("./utils"); | ||
@@ -36,3 +38,3 @@ /** | ||
for (const decorator of decorators.values()) { | ||
prop_1._buildPropMetadata(decorator); | ||
processProp_1.processProp(decorator); | ||
} | ||
@@ -52,2 +54,20 @@ } | ||
if (isFinalSchema) { | ||
/** Get Metadata for Nested Discriminators */ | ||
const disMap = Reflect.getMetadata(constants_1.DecoratorKeys.NestedDiscriminators, cl); | ||
if (disMap instanceof Map) { | ||
for (const [key, discriminators] of disMap) { | ||
logSettings_1.logger.debug('Applying Nested Discriminators for:', key, discriminators); | ||
const path = sch.path(key); | ||
utils_1.assertion(!utils_1.isNullOrUndefined(path), new Error(util_1.format('Path "%s" does not exist on Schema of "%s"', key, name))); | ||
utils_1.assertion(typeof path.discriminator === 'function', new Error(util_1.format('There is no function called "discriminator" on schema-path "%s" on Schema of "%s"', key, name))); | ||
for (const { type: child, value: childName } of discriminators) { | ||
const childSch = utils_1.getName(child) === name ? sch : typegoose_1.buildSchema(child); | ||
const discriminatorKey = childSch.get('discriminatorKey'); | ||
if (childSch.path(discriminatorKey)) { | ||
childSch.paths[discriminatorKey].options.$skipDiscriminatorCheck = true; | ||
} | ||
path.discriminator(utils_1.getName(child), childSch, childName); | ||
} | ||
} | ||
} | ||
// Hooks | ||
@@ -68,3 +88,2 @@ { | ||
const virtuals = Reflect.getMetadata(constants_1.DecoratorKeys.VirtualPopulate, cl); | ||
/** Simplify the usage */ | ||
if (virtuals instanceof Map) { | ||
@@ -110,2 +129,2 @@ for (const [key, options] of virtuals) { | ||
exports._buildSchema = _buildSchema; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVybmFsL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxQ0FBcUM7QUFFckMsZ0RBQXdDO0FBQ3hDLGtDQUE2QztBQVc3QywyQ0FBNEM7QUFDNUMsaUNBQStDO0FBQy9DLG1DQUFxSDtBQUVySDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixZQUFZLENBQzFCLEVBQUssRUFDTCxHQUFxQixFQUNyQixHQUE0QixFQUM1QixnQkFBeUIsSUFBSTs7SUFFN0Isd0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFckIsZ0NBQXdCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyw0REFBNEQ7SUFFMUYsdUJBQXVCO0lBQ3ZCLEdBQUcsR0FBRywwQkFBa0IsQ0FBQyx5QkFBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTNGLE1BQU0sSUFBSSxHQUFHLGVBQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUV6QixvQkFBTSxDQUFDLEtBQUssQ0FBQywwQ0FBMEMsRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFFcEUseUJBQXlCO0lBQ3pCLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7SUFDL0IsTUFBTSxJQUFJLFNBQWtCLE9BQU8sQ0FBQyxXQUFXLENBQUMseUJBQWEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLG1DQUFJLEVBQUUsQ0FBQztJQUN0RixNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsTUFBTSxPQUFDLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxhQUFhLG1DQUFJLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUVwRSxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMs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 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVybmFsL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxQ0FBcUM7QUFFckMsK0JBQThCO0FBQzlCLGdEQUF3QztBQUN4Qyw0Q0FBMkM7QUFhM0MsMkNBQTRDO0FBQzVDLGlDQUErQztBQUMvQywrQ0FBNEM7QUFDNUMsbUNBQWdJO0FBRWhJOzs7Ozs7Ozs7R0FTRztBQUNILFNBQWdCLFlBQVksQ0FDMUIsRUFBSyxFQUNMLEdBQXFCLEVBQ3JCLEdBQTRCLEVBQzVCLGdCQUF5QixJQUFJOztJQUU3Qix3QkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVyQixnQ0FBd0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDREQUE0RDtJQUUxRix1QkFBdUI7SUFDdkIsR0FBRyxHQUFHLDBCQUFrQixDQUFDLHlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFM0YsTUFBTSxJQUFJLEdBQUcsZUFBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXpCLG9CQUFNLENBQUMsS0FBSyxDQUFDLDBDQUEwQyxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUVwRSx5QkFBeUI7SUFDekIsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUMvQixNQUFNLElBQUksU0FBa0IsT0FBTyxDQUFDLFdBQVcsQ0FBQyx5QkFBYSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsbUNBQUksRUFBRSxDQUFDO0lBQ3RGLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxNQUFNLE9BQUMsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLGFBQWEsbUNBQUksRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRXBF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 |
@@ -421,3 +421,3 @@ "use strict"; | ||
case constants_1.Severity.WARN: | ||
logSettings_1.logger.warn('Implicitly setting "Mixed" is not allowed! (%s, %s)', name, key); | ||
logSettings_1.logger.warn('Setting "Mixed" for property "%s.%s"\nLook here for how to disable this message: https://typegoose.github.io/typegoose/docs/decorators/modelOptions/#allowmixed', name, key); | ||
break; | ||
@@ -427,3 +427,3 @@ case constants_1.Severity.ALLOW: | ||
case constants_1.Severity.ERROR: | ||
throw new TypeError(util_1.format('Implicitly setting "Mixed" is not allowed! (%s, %s)', name, key)); | ||
throw new TypeError(util_1.format('Setting "Mixed" is not allowed! (%s, %s)', name, key)); | ||
} | ||
@@ -514,2 +514,2 @@ return; // always return, if "allowMixed" is not "ERROR" | ||
exports.isConstructor = isConstructor; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJuYWwvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQXlDO0FBQ3pDLHFDQUFxQztBQUNyQywrQkFBOEI7QUFFOUIsZ0RBQXdDO0FBYXhDLDJDQUFnRTtBQUNoRSxpQ0FBOEQ7QUFDOUQscUNBQXdDO0FBRXhDOzs7O0dBSUc7QUFDSCxTQUFnQixXQUFXLENBQUMsSUFBUztJQUNuQyxJQUFJLFFBQU8sSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLElBQUksQ0FBQSxLQUFLLFFBQVEsRUFBRTtRQUNsQyxrRkFBa0Y7UUFDbEYsc0RBQXNEO1FBQ3RELE9BQU8sQ0FDTCxNQUFNLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNyRSxtRUFBbUU7WUFDbkUsaUVBQWlFO1lBQ2pFLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDakYsQ0FBQztLQUNIO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBYkQsa0NBYUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsV0FBVyxDQUFDLElBQVM7SUFDbkMsSUFBSSxRQUFPLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxJQUFJLENBQUEsS0FBSyxRQUFRLEVBQUU7UUFDbEMsMkVBQTJFO1FBQzNFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3pFLFFBQVEsQ0FBQyxFQUFFO2dCQUNULEtBQUssS0FBSyxDQUFDO2dCQUNYLEtBQUssTUFBTSxDQUFDO2dCQUNaLEtBQUssUUFBUSxDQUFDO2dCQUNkLEtBQUssU0FBUztvQkFDWixPQUFPLEtBQUssQ0FBQztnQkFDZjtvQkFDRSxPQUFPLElBQUksQ0FBQzthQUNmO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCwrR0FBK0c7UUFDL0csc0RBQXNEO1FBQ3RELE9BQU8sQ0FDTCxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDdkIsbUVBQW1FO1lBQ25FLGlFQUFpRTtZQUNqRSxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQ2pGLENBQUM7S0FDSDtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQTFCRCxrQ0EwQkM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLFFBQVEsQ0FBQyxJQUFTLEVBQUUsT0FBZ0IsS0FBSztJQUN2RCxJQUFJLFFBQU8sSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLElBQUksQ0FBQSxLQUFLLFFBQVEsRUFBRTtRQUNsQyxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQy9CLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDckIsT0FBTyxJQUFJLEVBQUU7WUFDWCxJQUFJLElBQUksS0FBSyxRQUFRLElBQUksSUFBSSxLQUFLLE9BQU8sRUFBRTtnQkFDekMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUNELElBQUksSUFBSSxFQUFFO2dCQUNSLE1BQU07YUFDUDtZQUNELFNBQVMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzdDLElBQUksR0FBRyxTQUFTLGFBQVQsU0FBUyx1QkFBVCxTQUFTLENBQUUsV0FBVyxDQUFDLElBQUksQ0FBQztTQUNwQztLQUNGO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBakJELDRCQWlCQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixRQUFRLENBQUMsSUFBUzs7SUFDaEMsTUFBTSxJQUFJLFNBQUcsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLElBQUksbUNBQUksRUFBRSxDQUFDO0lBRTlCLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxJQUFJLEtBQUssUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztBQUN6RSxDQUFDO0FBSkQsNEJBSUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsUUFBUSxDQUFDLElBQVM7O0lBQ2hDLE1BQU0sSUFBSSxTQUFHLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxJQUFJLG1DQUFJLEVBQUUsQ0FBQztJQUU5QixPQUFPLElBQUksS0FBSyxRQUFRLElBQUksSUFBSSxLQUFLLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7QUFDekUsQ0FBQztBQUpELDRCQUlDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQixZQUFZLENBQUMsSUFBWSxFQUFFLEdBQVcsRUFBRSxNQUFnQjtJQUN0RSxNQUFNLFVBQVUsR0FBRyxDQUFDLGNBQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUUsQ0FBQyxDQUFDLENBQUMsY0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUUsQ0FBQztJQUU5RixRQUFRLE1BQU0sRUFBRTtRQUNkLEtBQUssb0JBQVEsQ0FBQyxLQUFLO1lBQ2pCLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZCLE1BQU07UUFDUixLQUFLLG9CQUFRLENBQUMsR0FBRyxDQUFDO1FBQ2xCLEtBQUssb0JBQVEsQ0FBQyxJQUFJO1lBQ2hCLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDckIsTUFBTTtRQUNSO1lBQ0UsTUFBTSxJQUFJLFNBQVMsQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO0tBQ2hGO0lBRUQsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQztBQWhCRCxvQ0FnQkM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixtQkFBbUIsQ0FBQyxRQUEyQjtJQUM3RCxNQUFNLFNBQVMsR0FBSSxRQUFRLENBQUMsV0FBK0MsQ0FBQyxTQUFTLENBQUM7SUFFdEYsT0FBTyxtQkFBWSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUNyQyxDQUFDO0FBSkQsa0RBSUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixRQUFRLENBQ3RCLEtBS087SUFFUCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtRQUM3QixPQUFPLG1CQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ2hDO0lBQ0QsSUFBSSxRQUFPLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxhQUFhLENBQUEsS0FBSyxRQUFRLEVBQUU7UUFDNUMsT0FBTyxtQkFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7S0FDOUM7SUFFRCxJQUFJLFFBQU8sS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGFBQWEsQ0FBQSxLQUFLLFVBQVUsRUFBRTtRQUM5QyxPQUFPLG1CQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO0tBQ2hEO0lBRUQsTUFBTSxJQUFJLGNBQWMsQ0FBQyx3R0FBd0csQ0FBQyxDQUFDO0FBQ3JJLENBQUM7QUFwQkQsNEJBb0JDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsT0FBNkI7O0lBQ2hFLE9BQU8sQ0FBQyxpQkFBaUIsYUFBQyxPQUFPLENBQUMsS0FBSyxtQ0FBSSxPQUFPLENBQUMsU0FBUyxtQ0FBSSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDckYsQ0FBQztBQUZELG9EQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IscUJBQXFCLENBQUMsT0FBNkI7O0lBQ2pFLE9BQU8sQ0FBQyxpQkFBaUIsYUFBQyxPQUFPLENBQUMsU0FBUyxtQ0FBSSxPQUFPLENBQUMsU0FBUyxtQ0FBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDcEYsQ0FBQztBQUZELHNEQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsT0FBNkI7O0lBQ2hFLE9BQU8sQ0FBQyxpQkFBaUIsT0FBQyxPQUFPLENBQUMsR0FBRyxtQ0FBSSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDeEQsQ0FBQztBQUZELG9EQUVDO0FBRUQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLENBQUM7QUFFdEQ7OztHQUdHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQUMsT0FBWTtJQUMzQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdEUsQ0FBQztBQUZELDRDQUVDO0FBRVksUUFBQSxpQkFBaUIsR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsOEJBQThCO0FBQ3hGLHlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUU5Qjs7O0dBR0c7QUFDSCxTQUFnQixxQkFBcUIsQ0FBQyxPQUF1QjtJQUMzRCxPQUFPLHlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUMxRSxDQUFDO0FBRkQsc0RBRUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLEdBQWtCLEVBQUUsS0FBYyxFQUFFLEVBQWdCO0lBQ2pGLElBQUksaUJBQWlCLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDNUIsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUVELE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUUxQyxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBVEQsd0NBU0M7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsU0FBZ0IsYUFBYSxDQUFVLEdBQWtCLEVBQUUsS0FBYyxFQUFFLEVBQWdCO0lBQ3pGLFNBQVMsQ0FBQyxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUUsSUFBSSxTQUFTLENBQUMsSUFBSSxHQUFHLHlDQUF5QyxDQUFDLENBQUMsQ0FBQztJQUNwRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVyQixpSEFBaUg7SUFDakgsT0FBTyxrQkFBUyxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQ2hILFlBQVksQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQzdCLENBQUM7QUFDSixDQUFDO0FBUkQsc0NBUUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBUyxZQUFZLENBQUMsR0FBb0IsRUFBRSxHQUFZO0lBQ3RELElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO1FBQzNCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsSUFBSSx5Q0FBeUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDdkQsT0FBTyxHQUFHLENBQUM7S0FDWjtJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0Isa0JBQWtCLENBQXFDLEtBQXlDLEVBQUUsRUFBSztJQUNySCxPQUFPLGFBQWEsQ0FBZ0IseUJBQWEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDO0FBQzlHLENBQUM7QUFGRCxnREFFQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixjQUFjLENBQUMsTUFBVzs7SUFDeEMsT0FBTyxPQUFBLE1BQU0sQ0FBQyxXQUFXLDBDQUFFLElBQUksTUFBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztBQUMvRSxDQUFDO0FBRkQsd0NBRUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsT0FBTyxDQUFxQyxFQUFLOztJQUMvRCxNQUFNLElBQUksR0FBUSxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDckMsTUFBTSxPQUFPLFNBQWtCLE9BQU8sQ0FBQyxXQUFXLENBQUMseUJBQWEsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLG1DQUFJLEVBQUUsQ0FBQztJQUMzRixNQUFNLFFBQVEsR0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBRW5DLFVBQUksT0FBTyxDQUFDLE9BQU8sMENBQUUsYUFBYSxFQUFFO1FBQ2xDLE1BQU0sTUFBTSxlQUFHLE9BQU8sQ0FBQyxPQUFPLDBDQUFFLFVBQVUseUNBQUksT0FBTyxDQUFDLGFBQWEsMENBQUUsVUFBVSxDQUFDO1FBRWhGLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLElBQUksTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztLQUN4RTtJQUVELElBQUksY0FBTyxPQUFPLENBQUMsT0FBTywwQ0FBRSxVQUFVLENBQUEsS0FBSyxRQUFRLEVBQUU7UUFDbkQsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO1lBQzFDLE1BQU0sSUFBSSxTQUFTLENBQUMsOERBQThELFFBQVEsSUFBSSxDQUFDLENBQUM7U0FDakc7UUFFRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO0tBQ25DO0lBRUQsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQXBCRCwwQkFvQkM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixZQUFZLENBQUMsRUFBTztJQUNsQyxPQUFPLE9BQU8sRUFBRSxLQUFLLFVBQVUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssTUFBTSxJQUFJLEVBQUUsS0FBSyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzNJLENBQUM7QUFGRCxvQ0FFQztBQUVEOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsU0FBZ0IsZUFBZSxDQUM3QixVQUFlLEVBQ2YsSUFBZ0QsRUFDaEQsTUFBVyxFQUNYLElBQVksRUFDWixVQUFxQztJQUVyQyxvQkFBTSxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBRXZDLElBQUksQ0FBQyxDQUFDLElBQUksWUFBWSxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDdEMsVUFBVSxHQUFHLElBQUksQ0FBQztLQUNuQjtJQUVELElBQUksaUJBQWlCLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDakMsb0JBQU0sQ0FBQyxJQUFJLENBQUMsMENBQTBDLENBQUMsQ0FBQztLQUN6RDtJQUVELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsYUFBYTtJQUM1RCxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztJQUU3RSxvQ0FBb0M7SUFDcEMsTUFBTSxZQUFZLG1DQUNiLE1BQU0sQ0FBQyxLQUFLLEtBQ2YsSUFBSSxFQUFFOzRCQUVGLElBQUksRUFBRSxJQUFJLElBQ1AsTUFBTSxDQUFDLEtBQUs7U0FFbEIsR0FDRixDQUFDO0lBRUYsSUFBSSxRQUFPLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxZQUFZLENBQUEsS0FBSyxRQUFRLEVBQUU7UUFDN0MsT0FBTyxZQUFZLENBQUMsWUFBWSxDQUFDO1FBQ2pDLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUMvRCxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztTQUNuQztLQUNGO0lBQ0QsSUFBSSxRQUFPLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxZQUFZLENBQUEsS0FBSyxRQUFRLEVBQUU7UUFDN0MsT0FBTyxZQUFZLENBQUMsWUFBWSxDQUFDO1FBQ2pDLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUMvRCxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1NBQzNCO0tBQ0Y7SUFFRCxZQUFZLENBQUMsSUFBSSxHQUFHLHlCQUF5QixDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUVwRyxJQUFJLFVBQVUsRUFBRTtRQUNkLG9CQUFNLENBQUMsS0FBSyxDQUFDLDRDQUE0QyxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztLQUMvRjtJQUVELE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUM7QUFuREQsMENBbURDO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxTQUFnQixVQUFVLENBQ3hCLFVBQWUsRUFDZixJQUErRCxFQUMvRCxNQUFXLEVBQ1gsSUFBWSxFQUNaLFVBQW1CLElBQUksRUFDdkIsVUFBcUM7O0lBRXJDLG9CQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFFbEMsb0NBQW9DO0lBQ3BDLE1BQU0sR0FBRyxHQUFHO1FBQ1YsS0FBSyxFQUFFLEVBQUU7UUFDVCxLQUFLLEVBQUUsRUFBRTtLQUNWLENBQUM7SUFFRixJQUFJLENBQUMsQ0FBQyxJQUFJLFlBQVksUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3RDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUU7WUFDaEQsb0JBQU0sQ0FBQyxJQUFJLENBQUMsa0NBQWtDLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7WUFDckUsSUFBSSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1lBRWxELDBCQUEwQjtZQUMxQixJQUFJLElBQUksS0FBSyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7Z0JBQ3hDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7YUFDekI7U0FDRjtLQUNGO0lBRUQsSUFBSSxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRTtRQUNqQyxvQkFBTSxDQUFDLElBQUksQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0tBQ3BEO0lBRUQsb0NBQW9DO0lBQ3BDLElBQUksV0FBVyxTQUF5QyxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsU0FBUywwQ0FBRSxrQkFBa0IsQ0FBQztJQUU1Riw4RkFBOEY7SUFDOUYsSUFBSSxJQUFJLFlBQVksUUFBUSxDQUFDLE1BQU0sRUFBRTtRQUNuQyx1RkFBdUY7UUFDdkYsV0FBVyxHQUFJLFFBQWdCLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDO0tBQ3BGO0lBRUQsSUFBSSxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsRUFBRTtRQUNsQyxJQUFJLE9BQU8sSUFBSSxVQUFVLEVBQUU7WUFDekIsTUFBTSxJQUFJLFNBQVMsQ0FBQyxzREFBc0QsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDO1NBQ2pJO1FBRUQsT0FBTyxHQUFHLENBQUM7S0FDWjtJQUVELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsYUFBYTtJQUM1RCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFFckIsb0dBQW9HO0lBQ3BHLHVGQUF1RjtJQUN2RixJQUFJLFdBQVcsQ0FBQyxTQUFTLFlBQWEsUUFBZ0IsQ0FBQyxpQkFBaUIsRUFBRTtRQUN4RSxrRUFBa0U7UUFDbEUsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbEQsSUFBSSxNQUFNLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDbkUsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7YUFDeEI7aUJBQU07Z0JBQ0wsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7YUFDeEI7U0FDRjtLQUNGO1NBQU07UUFDTCxJQUFJLFVBQVUsRUFBRTtZQUNkLG9CQUFNLENBQUMsSUFBSSxDQUFDLDZGQUE2RixFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1NBQ2pJO0tBQ0Y7SUFFRCxJQUFJLFVBQVUsRUFBRTtRQUNkLG9CQUFNLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztLQUM5RTtJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQTNFRCxnQ0EyRUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLFNBQVMsQ0FBQyxNQUFXLEVBQUUsR0FBb0I7O0lBQ3pELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QixNQUFNLFlBQVksU0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDLHlCQUFhLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxtQ0FBSSxFQUFFLENBQUM7SUFFbkcsY0FBUSxZQUFZLGFBQVosWUFBWSx1QkFBWixZQUFZLENBQUUsT0FBTywwQ0FBRSxVQUFVLEVBQUU7UUFDekMsUUFBUTtRQUNSLEtBQUssb0JBQVEsQ0FBQyxJQUFJO1lBQ2hCLG9CQUFNLENBQUMsSUFBSSxDQUFDLHFEQUFxRCxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztZQUU5RSxNQUFNO1FBQ1IsS0FBSyxvQkFBUSxDQUFDLEtBQUs7WUFDakIsTUFBTTtRQUNSLEtBQUssb0JBQVEsQ0FBQyxLQUFLO1lBQ2pCLE1BQU0sSUFBSSxTQUFTLENBQUMsYUFBTSxDQUFDLHFEQUFxRCxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQ2pHO0lBRUQsT0FBTyxDQUFDLGdEQUFnRDtBQUMxRCxDQUFDO0FBakJELDhCQWlCQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLEdBQVk7SUFDNUMsT0FBTyxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsS0FBSyxTQUFTLENBQUM7QUFDM0MsQ0FBQztBQUZELDhDQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0Isd0JBQXdCLENBQUMsTUFBVztJQUNsRCxJQUFJLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMseUJBQWEsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDLENBQUMsRUFBRTtRQUM5RSxvQkFBTSxDQUFDLElBQUksQ0FBQyx5Q0FBeUMsRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN4RSxjQUFjLENBQUMseUJBQWEsQ0FBQyxZQUFZLEVBQUUsYUFBSSxDQUFDLG9CQUFhLEVBQUUsZUFBZSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDMUY7QUFDSCxDQUFDO0FBTEQsNERBS0M7QUFFRDs7Ozs7O0dBTUc7QUFDSCxTQUFnQix5QkFBeUIsQ0FBQyxVQUFlLEVBQUUsS0FBVSxFQUFFLElBQVksRUFBRSxHQUFXO0lBQzlGLGdDQUFnQztJQUNoQyxNQUFNLEdBQUcsR0FBRyxPQUFPLFVBQVUsQ0FBQyxHQUFHLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEUsSUFBSSxHQUFHLEdBQUcsQ0FBQyxFQUFFO1FBQ1gsTUFBTSxJQUFJLFVBQVUsQ0FBQyxhQUFNLENBQUMseUNBQXlDLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7S0FDcEY7SUFDRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQywyREFBMkQ7SUFDbEYsb0JBQU0sQ0FBQyxJQUFJLENBQUMscURBQXFELEVBQUUsR0FBRyxDQUFDLENBQUM7SUFFeEUsSUFBSSxRQUFRLEdBQVUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdELDJFQUEyRTtJQUMzRSxLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQ3hDLFFBQVEsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBQ3ZCO0lBRUQsT0FBTyxRQUFpQixDQUFDO0FBQzNCLENBQUM7QUFoQkQsOERBZ0JDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxTQUFnQixTQUFTLENBQUMsSUFBUyxFQUFFLEtBQWE7SUFDaEQsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNULE1BQU0sS0FBSyxhQUFMLEtBQUssY0FBTCxLQUFLLEdBQUksSUFBSSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQztLQUM3RDtBQUNILENBQUM7QUFKRCw4QkFJQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLGdCQUFnQixDQUFDLEdBQVE7SUFDdkMsU0FBUyxDQUFDLE9BQU8sR0FBRyxLQUFLLFVBQVUsRUFBRSxJQUFJLHFCQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUM5RCxDQUFDO0FBRkQsNENBRUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixPQUFPLENBQUMsVUFBc0I7SUFDNUMsSUFBSSxPQUFPLFVBQVUsS0FBSyxVQUFVLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDbEUsT0FBUSxVQUFtQixFQUFFLENBQUM7S0FDL0I7SUFFRCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDO0FBTkQsMEJBTUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLGFBQWEsQ0FBQyxHQUFROztJQUNwQyxPQUFPLENBQUMsaUJBQWlCLGFBQUMsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLFNBQVMsMENBQUUsV0FBVywwQ0FBRSxJQUFJLENBQUMsQ0FBQztBQUMvRCxDQUFDO0FBRkQsc0NBRUMifQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJuYWwvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQXlDO0FBQ3pDLHFDQUFxQztBQUNyQywrQkFBOEI7QUFFOUIsZ0RBQXdDO0FBYXhDLDJDQUFnRTtBQUNoRSxpQ0FBOEQ7QUFDOUQscUNBQXdDO0FBRXhDOzs7O0dBSUc7QUFDSCxTQUFnQixXQUFXLENBQUMsSUFBUztJQUNuQyxJQUFJLFFBQU8sSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLElBQUksQ0FBQSxLQUFLLFFBQVEsRUFBRTtRQUNsQyxrRkFBa0Y7UUFDbEYsc0RBQXNEO1FBQ3RELE9BQU8sQ0FDTCxNQUFNLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNyRSxtRUFBbUU7WUFDbkUsaUVBQWlFO1lBQ2pFLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FDakYsQ0FBQztLQUNIO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBYkQsa0NBYUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsV0FBVyxDQUFDLElBQVM7SUFDbkMsSUFBSSxRQUFPLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxJQUFJLENBQUEsS0FBSyxRQUFRLEVBQUU7UUFDbEMsMkVBQTJFO1FBQzNFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFB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 |
@@ -7,9 +7,9 @@ import type { IModelOptions } from './types'; | ||
* ``` | ||
* @modelOptions({ schemaOptions: { timestamps: true } }) | ||
* class Name {} | ||
* @modelOptions({ schemaOptions: { timestamps: true } }) | ||
* class Name {} | ||
* | ||
* // Note: The default Class "TimeStamps" can be used for type information and options already set | ||
* // Note: The default Class "TimeStamps" can be used for type information and options already set | ||
* ``` | ||
*/ | ||
export declare function modelOptions(options: IModelOptions): (target: any) => void; | ||
export declare function modelOptions(options: IModelOptions): ClassDecorator; | ||
export { modelOptions as ModelOptions }; |
@@ -11,6 +11,6 @@ "use strict"; | ||
* ``` | ||
* @modelOptions({ schemaOptions: { timestamps: true } }) | ||
* class Name {} | ||
* @modelOptions({ schemaOptions: { timestamps: true } }) | ||
* class Name {} | ||
* | ||
* // Note: The default Class "TimeStamps" can be used for type information and options already set | ||
* // Note: The default Class "TimeStamps" can be used for type information and options already set | ||
* ``` | ||
@@ -17,0 +17,0 @@ */ |
@@ -7,3 +7,3 @@ import type { Func } from './types'; | ||
*/ | ||
export declare function plugin<TFunc extends Func, TParams = Parameters<TFunc>[1]>(mongoosePlugin: TFunc, options?: TParams): (target: any) => void; | ||
export declare function plugin<TFunc extends Func, TParams = Parameters<TFunc>[1]>(mongoosePlugin: TFunc, options?: TParams): ClassDecorator; | ||
export { plugin as Plugins }; |
import { WhatIsIt } from './internal/constants'; | ||
import type { ArrayPropOptions, BasePropOptions, DecoratedPropertyMetadata, MapPropOptions, PropOptionsForNumber, PropOptionsForString, VirtualOptions } from './types'; | ||
import type { ArrayPropOptions, BasePropOptions, MapPropOptions, PropOptionsForNumber, PropOptionsForString, VirtualOptions } from './types'; | ||
/** | ||
* Function that is the actual processing of the prop's (used for caching) | ||
* @param input All the options needed for prop's | ||
*/ | ||
export declare function _buildPropMetadata(input: DecoratedPropertyMetadata): void; | ||
/** | ||
* Set Property Options for the property below | ||
@@ -20,3 +15,3 @@ * @param options Options | ||
*/ | ||
declare function prop(options?: BasePropOptions | ArrayPropOptions | MapPropOptions | PropOptionsForNumber | PropOptionsForString | VirtualOptions, kind?: WhatIsIt): (target: any, key: string) => void; | ||
declare function prop(options?: BasePropOptions | ArrayPropOptions | MapPropOptions | PropOptionsForNumber | PropOptionsForString | VirtualOptions, kind?: WhatIsIt): PropertyDecorator; | ||
/** | ||
@@ -28,3 +23,3 @@ * Set Property(that are Maps) Options for the property below | ||
*/ | ||
declare function mapProp(options: MapPropOptions): (target: any, key: string) => void; | ||
declare function mapProp(options: MapPropOptions): PropertyDecorator; | ||
/** | ||
@@ -36,4 +31,4 @@ * Set Property(that are Arrays) Options for the property below | ||
*/ | ||
declare function arrayProp(options: ArrayPropOptions): (target: any, key: string) => void; | ||
declare function arrayProp(options: ArrayPropOptions): PropertyDecorator; | ||
export { prop, arrayProp, mapProp }; | ||
export { prop as Prop, arrayProp as ArrayProp, mapProp as MapProp }; |
298
lib/prop.js
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.MapProp = exports.ArrayProp = exports.Prop = exports.mapProp = exports.arrayProp = exports.prop = exports._buildPropMetadata = void 0; | ||
const mongoose = require("mongoose"); | ||
exports.MapProp = exports.ArrayProp = exports.Prop = exports.mapProp = exports.arrayProp = exports.prop = void 0; | ||
const util_1 = require("util"); | ||
const constants_1 = require("./internal/constants"); | ||
const data_1 = require("./internal/data"); | ||
const errors_1 = require("./internal/errors"); | ||
const utils = require("./internal/utils"); | ||
const logSettings_1 = require("./logSettings"); | ||
const typegoose_1 = require("./typegoose"); | ||
/** | ||
* Base Function for prop & arrayProp | ||
* @param input All the options needed for prop's | ||
*/ | ||
function baseProp(input) { | ||
const { Type, key, origOptions, target, whatis } = input; | ||
if (Type === target.constructor) { | ||
// prevent "infinite" buildSchema loop / Maximum Stack size exceeded | ||
throw new TypeError('It seems like the type used is the same as the target class, which is not supported\n' + | ||
`Please look at https://github.com/typegoose/typegoose/issues/42 for more information`); | ||
} | ||
const existingMapForTarget = Reflect.getOwnMetadata(constants_1.DecoratorKeys.PropCache, target); | ||
if (utils.isNullOrUndefined(existingMapForTarget)) { | ||
Reflect.defineMetadata(constants_1.DecoratorKeys.PropCache, new Map(), target); | ||
} | ||
const mapForTarget = existingMapForTarget !== null && existingMapForTarget !== void 0 ? existingMapForTarget : Reflect.getOwnMetadata(constants_1.DecoratorKeys.PropCache, target); | ||
mapForTarget.set(key, { origOptions, Type, target, key, whatis }); | ||
logSettings_1.logger.debug('Added "%s.%s" to the Decorator Cache', utils.getName(target.constructor), key); | ||
} | ||
/** | ||
* Function that is the actual processing of the prop's (used for caching) | ||
* @param input All the options needed for prop's | ||
*/ | ||
function _buildPropMetadata(input) { | ||
var _a; | ||
let { Type } = input; | ||
const { key, origOptions, target, whatis } = input; | ||
const rawOptions = Object.assign({}, origOptions); | ||
logSettings_1.logger.debug('Starting to process "%s.%s"', utils.getName(target), key); | ||
if (!utils.isNullOrUndefined(rawOptions.type)) { | ||
logSettings_1.logger.info('Prop Option "type" is set to', rawOptions.type); | ||
Type = utils.getType(rawOptions.type); | ||
delete rawOptions.type; | ||
} | ||
if (utils.isNotDefined(Type)) { | ||
typegoose_1.buildSchema(Type); | ||
} | ||
const name = utils.getName(target); | ||
// allow setting the type asynchronously | ||
if (!utils.isNullOrUndefined(rawOptions.ref)) { | ||
rawOptions.ref = utils.getType(rawOptions.ref); | ||
utils.assertion(!utils.isNullOrUndefined(rawOptions.ref), new Error(util_1.format('Option "ref" for "%s.%s" was defined with an arrow-function, but the function returned null/undefined!', name, key))); | ||
rawOptions.ref = typeof rawOptions.ref === 'string' ? rawOptions.ref : utils.getName(rawOptions.ref); | ||
} | ||
if (utils.isWithVirtualPOP(rawOptions)) { | ||
if (!utils.includesAllVirtualPOP(rawOptions)) { | ||
throw new errors_1.NotAllVPOPElementsError(name, key); | ||
} | ||
const virtuals = new Map((_a = Reflect.getMetadata(constants_1.DecoratorKeys.VirtualPopulate, target.constructor)) !== null && _a !== void 0 ? _a : []); | ||
virtuals.set(key, rawOptions); | ||
Reflect.defineMetadata(constants_1.DecoratorKeys.VirtualPopulate, virtuals, target.constructor); | ||
return; | ||
} | ||
const schemaProp = utils.initProperty(name, key, whatis); | ||
if (!utils.isNullOrUndefined(rawOptions.set) || !utils.isNullOrUndefined(rawOptions.get)) { | ||
utils.assertion(typeof rawOptions.set === 'function', new TypeError(`"${name}.${key}" does not have a set function!`)); | ||
utils.assertion(typeof rawOptions.get === 'function', new TypeError(`"${name}.${key}" does not have a get function!`)); | ||
/* | ||
* Note: | ||
* this doesn't have a check if prop & returntype of the function is the same, | ||
* because it can't be accessed at runtime | ||
*/ | ||
schemaProp[key] = Object.assign(Object.assign(Object.assign({}, schemaProp[key]), { type: Type }), rawOptions); | ||
return; | ||
} | ||
// use "Type" if it is an suitable ref-type, otherwise default back to "ObjectId" | ||
const refType = utils.isAnRefType(Type) ? Type : mongoose.Schema.Types.ObjectId; | ||
if ('ref' in rawOptions) { | ||
utils.assertion(!utils.isNullOrUndefined(rawOptions.ref), new Error(util_1.format('Options "ref" is set, but is undefined/null! (%s.%s)', name, key))); | ||
const ref = rawOptions.ref; | ||
delete rawOptions.ref; | ||
switch (whatis) { | ||
case constants_1.WhatIsIt.ARRAY: | ||
schemaProp[key] = utils.createArrayFromDimensions(rawOptions, Object.assign(Object.assign(Object.assign({}, schemaProp[key][0]), { type: refType, ref }), rawOptions), name, key); | ||
break; | ||
case constants_1.WhatIsIt.NONE: | ||
schemaProp[key] = Object.assign(Object.assign(Object.assign({}, schemaProp[key]), { type: refType, ref }), rawOptions); | ||
break; | ||
default: | ||
throw new TypeError(util_1.format('"ref" is not supported for "%s"! (%s, %s)', whatis, utils.getName(target), key)); | ||
} | ||
return; | ||
} | ||
const refPath = rawOptions.refPath; | ||
if (refPath) { | ||
utils.assertion(typeof refPath === 'string', new TypeError(util_1.format('"refPath" for "%s, %s" should be of type String!', utils.getName(target), key))); | ||
delete rawOptions.refPath; | ||
switch (whatis) { | ||
case constants_1.WhatIsIt.ARRAY: | ||
schemaProp[key] = utils.createArrayFromDimensions(rawOptions, Object.assign(Object.assign(Object.assign({}, schemaProp[key][0]), { type: refType, refPath }), rawOptions), name, key); | ||
break; | ||
case constants_1.WhatIsIt.NONE: | ||
schemaProp[key] = Object.assign(Object.assign(Object.assign({}, schemaProp[key]), { type: refType, refPath }), rawOptions); | ||
break; | ||
default: | ||
throw new TypeError(util_1.format('"refPath" is not supported for "%s"! (%s, %s)', whatis, utils.getName(target), key)); | ||
} | ||
return; | ||
} | ||
const enumOption = rawOptions.enum; | ||
if (!utils.isNullOrUndefined(enumOption)) { | ||
// check if the supplied value is already "mongoose-consumeable" | ||
if (!Array.isArray(enumOption)) { | ||
if (Type === String || Type === mongoose.Schema.Types.String) { | ||
rawOptions.enum = Object.entries(enumOption) // get all key-value pairs of the enum | ||
// no reverse-filtering because if it is full of strings, there is no reverse mapping | ||
.map(([enumKey, enumValue]) => { | ||
// convert key-value pairs to an mongoose-usable enum | ||
// safeguard, this should never happen because TypeScript only sets "design:type" to "String" | ||
// if the enum is full of strings | ||
if (typeof enumValue !== 'string') { | ||
throw new errors_1.NotStringTypeError(name, key, enumKey, typeof enumValue); | ||
} | ||
return enumValue; | ||
}); | ||
} | ||
else if (Type === Number || Type === mongoose.Schema.Types.Number) { | ||
rawOptions.enum = Object.entries(enumOption) // get all key-value pairs of the enum | ||
// filter out the "reverse (value -> name) mappings" | ||
// https://www.typescriptlang.org/docs/handbook/enums.html#reverse-mappings | ||
.filter(([enumKey, enumValue], _i, arr) => { | ||
// safeguard, this should never happen because typescript only sets "design:type" to "Number" | ||
// if the enum is full of numbers | ||
if (utils.isNullOrUndefined(enumValue) || arr.findIndex(([k]) => k === enumValue.toString()) <= -1) { | ||
// if there is no reverse mapping, throw an error | ||
throw new errors_1.NotNumberTypeError(name, key, enumKey, typeof enumValue); | ||
} | ||
return typeof enumValue === 'number'; | ||
}) | ||
.map(([enumKey, enumValue]) => { | ||
// convert key-value pairs to an mongoose-useable enum | ||
if (typeof enumValue !== 'number') { | ||
throw new errors_1.NotNumberTypeError(name, key, enumKey, typeof enumValue); | ||
} | ||
return enumValue; | ||
}); | ||
} | ||
else { | ||
// this will happen if the enum type is not "String" or "Number" | ||
// most likely this error happened because the code got transpiled with babel or "tsc --transpile-only" | ||
throw new Error(`Invalid type used for map!, got: "${Type}" (${name}.${key})` | ||
+ 'Is the code transpiled with Babel or \'tsc --transpile-only\' or \'ts-node --transpile-only\'?\n' | ||
+ 'See https://typegoose.github.io/typegoose/docs/decorators/prop/#enum'); | ||
} | ||
} | ||
} | ||
if (!utils.isNullOrUndefined(rawOptions.addNullToEnum)) { | ||
rawOptions.enum = Array.isArray(rawOptions.enum) ? rawOptions.enum : []; | ||
rawOptions.enum.push(null); | ||
delete rawOptions.addNullToEnum; | ||
} | ||
{ | ||
// check if Type is actually a real working Type | ||
if (utils.isNullOrUndefined(Type) || typeof Type !== 'function') { | ||
throw new errors_1.InvalidTypeError(utils.getName(target), key, Type); | ||
} | ||
// check for validation inconsistencies | ||
if (utils.isWithStringValidate(rawOptions) && !utils.isString(Type)) { | ||
throw new errors_1.NotStringTypeError(name, key); | ||
} | ||
// check for transform inconsistencies | ||
if (utils.isWithStringTransform(rawOptions) && !utils.isString(Type)) { | ||
throw new errors_1.NotStringTypeError(name, key); | ||
} | ||
if (utils.isWithNumberValidate(rawOptions) && !utils.isNumber(Type)) { | ||
throw new errors_1.NotNumberTypeError(name, key); | ||
} | ||
} | ||
/** Is this Type (/Class) in the schemas Map? */ | ||
const isInSchemas = data_1.schemas.has(utils.getName(Type)); | ||
if (!isInSchemas && !utils.isPrimitive(Type) && !utils.isObject(Type)) { | ||
throw new errors_1.InvalidPropError(Type.name, key); // This seems to be never thrown! | ||
} | ||
if (utils.isPrimitive(Type)) { | ||
if (utils.isObject(Type, true)) { | ||
utils.warnMixed(target, key); | ||
} | ||
switch (whatis) { | ||
case constants_1.WhatIsIt.ARRAY: | ||
schemaProp[key] = Object.assign(Object.assign({}, schemaProp[key][0]), utils.mapArrayOptions(rawOptions, Type, target, key)); | ||
return; | ||
case constants_1.WhatIsIt.MAP: | ||
const mapped = utils.mapOptions(rawOptions, Type, target, key, true); | ||
schemaProp[key] = Object.assign(Object.assign(Object.assign({}, schemaProp[key]), mapped.outer), { type: Map, of: Object.assign({ type: Type }, mapped.inner) }); | ||
return; | ||
case constants_1.WhatIsIt.NONE: | ||
schemaProp[key] = Object.assign(Object.assign(Object.assign({}, schemaProp[key]), rawOptions), { type: Type }); | ||
return; | ||
default: | ||
throw new Error(`"${whatis}"(whatis(primitive)) is invalid for "${name}.${key}"`); | ||
} | ||
} | ||
// If the 'Type' is not a 'Primitive Type' and no subschema was found treat the type as 'Object' | ||
// so that mongoose can store it as nested document | ||
if (utils.isObject(Type) && !isInSchemas) { | ||
utils.warnMixed(target, key); | ||
logSettings_1.logger.warn('if someone can see this message, please open an new issue at https://github.com/typegoose/typegoose/issues with reproduction code for tests'); | ||
schemaProp[key] = Object.assign(Object.assign(Object.assign({}, schemaProp[key]), rawOptions), { type: mongoose.Schema.Types.Mixed }); | ||
return; | ||
} | ||
const virtualSchema = typegoose_1.buildSchema(Type); | ||
switch (whatis) { | ||
case constants_1.WhatIsIt.ARRAY: | ||
schemaProp[key] = Object.assign(Object.assign({}, schemaProp[key][0]), utils.mapArrayOptions(rawOptions, virtualSchema, target, key, Type)); | ||
return; | ||
case constants_1.WhatIsIt.MAP: | ||
const mapped = utils.mapOptions(rawOptions, virtualSchema, target, key, false, Type); | ||
schemaProp[key] = Object.assign(Object.assign(Object.assign({}, schemaProp[key]), mapped.outer), { type: Map, of: Object.assign({ type: virtualSchema }, mapped.inner) }); | ||
return; | ||
case constants_1.WhatIsIt.NONE: | ||
schemaProp[key] = Object.assign(Object.assign(Object.assign({}, schemaProp[key]), rawOptions), { type: virtualSchema }); | ||
return; | ||
default: | ||
throw new Error(`"${whatis}"(whatis(subSchema)) is invalid for "${name}.${key}"`); | ||
} | ||
} | ||
exports._buildPropMetadata = _buildPropMetadata; | ||
/** | ||
* Set Property Options for the property below | ||
@@ -243,71 +22,10 @@ * @param options Options | ||
return (target, key) => { | ||
let Type = Reflect.getMetadata(constants_1.DecoratorKeys.Type, target, key); | ||
utils.assertion(!utils.isNullOrUndefined(Type), new errors_1.NoMetadataError(key)); | ||
options = options !== null && options !== void 0 ? options : {}; | ||
if (utils.isNullOrUndefined(kind)) { | ||
if (Type === Array || | ||
Type === mongoose.Types.Array || | ||
Type === mongoose.Schema.Types.Array || | ||
Type === mongoose.Types.DocumentArray || | ||
Type === mongoose.Schema.Types.DocumentArray) { | ||
kind = constants_1.WhatIsIt.ARRAY; | ||
} | ||
else if (Type === Map || Type === mongoose.Types.Map || Type === mongoose.Schema.Types.Map) { | ||
kind = constants_1.WhatIsIt.MAP; | ||
} | ||
else { | ||
kind = constants_1.WhatIsIt.NONE; | ||
} | ||
const existingMapForTarget = Reflect.getOwnMetadata(constants_1.DecoratorKeys.PropCache, target); | ||
if (utils.isNullOrUndefined(existingMapForTarget)) { | ||
Reflect.defineMetadata(constants_1.DecoratorKeys.PropCache, new Map(), target); | ||
} | ||
if ('refType' in options) { | ||
options.type = options.refType; | ||
delete options.refType; | ||
util_1.deprecate(() => undefined, 'Option "refType" is deprecated, use option "type"', 'TDEP0003')(); | ||
} | ||
if ('of' in options) { | ||
util_1.deprecate(() => undefined, 'Option "of" is deprecated, use option "type"', 'TDEP0003')(); | ||
} | ||
if ('items' in options) { | ||
util_1.deprecate(() => undefined, 'Option "items" is deprecated, use option "type"', 'TDEP0003')(); | ||
} | ||
// soft errors & "type"-alias mapping | ||
switch (kind) { | ||
case constants_1.WhatIsIt.NONE: | ||
if ('items' in options) { | ||
logSettings_1.logger.warn('You might not want to use option "items" for an non-array @prop type (%s.%s)', utils.getName(target), key); | ||
} | ||
if ('of' in options) { | ||
logSettings_1.logger.warn('You might not want to use option "of" for an non-map @prop type (%s.%s)', utils.getName(target), key); | ||
} | ||
break; | ||
case constants_1.WhatIsIt.ARRAY: | ||
if ('items' in options) { | ||
options.type = options.items; | ||
delete options.items; | ||
} | ||
if ('of' in options) { | ||
logSettings_1.logger.warn('You might not want to use option "of" where the "design:type" is "Array" (%s.%s)', utils.getName(target), key); | ||
} | ||
// set the "Type" to undefined, if "ref" or "refPath" are defined, otherwise the "refType" will be wrong | ||
if ((('ref' in options) || ('refPath' in options)) && !('type' in options)) { | ||
Type = undefined; | ||
} | ||
break; | ||
case constants_1.WhatIsIt.MAP: | ||
if ('of' in options) { | ||
options.type = options.of; | ||
delete options.of; | ||
} | ||
if ('items' in options) { | ||
logSettings_1.logger.warn('You might not want to use option "items" where the "design:type" is "Map" (%s.%s)', utils.getName(target), key); | ||
} | ||
break; | ||
} | ||
baseProp({ | ||
Type, | ||
key, | ||
origOptions: options, | ||
target, | ||
whatis: kind | ||
}); | ||
const mapForTarget = existingMapForTarget !== null && existingMapForTarget !== void 0 ? existingMapForTarget : Reflect.getOwnMetadata(constants_1.DecoratorKeys.PropCache, target); | ||
mapForTarget.set(key, { options, target, key, whatis: kind }); | ||
logSettings_1.logger.debug('Added "%s.%s" to the Decorator Cache', utils.getName(target.constructor), key); | ||
}; | ||
@@ -339,2 +57,2 @@ } | ||
exports.ArrayProp = arrayProp; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9wcm9wLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUFxQztBQUNyQywrQkFBeUM7QUFFekMsb0RBQStEO0FBQy9ELDBDQUEwQztBQUMxQyw4Q0FPMkI7QUFDM0IsMENBQTBDO0FBQzFDLCtDQUF1QztBQUN2QywyQ0FBMEM7QUFjMUM7OztHQUdHO0FBQ0gsU0FBUyxRQUFRLENBQUMsS0FBZ0M7SUFDaEQsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFDekQsSUFBSSxJQUFJLEtBQUssTUFBTSxDQUFDLFdBQVcsRUFBRTtRQUMvQixvRUFBb0U7UUFDcEUsTUFBTSxJQUFJLFNBQVMsQ0FDakIsdUZBQXVGO1lBQ3ZGLHNGQUFzRixDQUN2RixDQUFDO0tBQ0g7SUFFRCxNQUFNLG9CQUFvQixHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMseUJBQWEsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFpQyxDQUFDO0lBQ3JILElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLEVBQUU7UUFDakQsT0FBTyxDQUFDLGNBQWMsQ0FBQyx5QkFBYSxDQUFDLFNBQVMsRUFBRSxJQUFJLEdBQUcsRUFBcUMsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUN2RztJQUNELE1BQU0sWUFBWSxHQUFHLG9CQUFvQixhQUFwQixvQkFBb0IsY0FBcEIsb0JBQW9CLEdBQUssT0FBTyxDQUFDLGNBQWMsQ0FBQyx5QkFBYSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQWtDLENBQUM7SUFFdkksWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUVsRSxvQkFBTSxDQUFDLEtBQUssQ0FB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 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9wcm9wLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUFpQztBQUVqQyxvREFBK0Q7QUFDL0QsMENBQTBDO0FBQzFDLCtDQUF1QztBQVl2Qzs7Ozs7Ozs7Ozs7R0FXRztBQUNILFNBQVMsSUFBSSxDQUNYLE9BQTRILEVBQzVILElBQWU7SUFFZixPQUFPLENBQUMsTUFBVyxFQUFFLEdBQW9CLEVBQUUsRUFBRTtRQUMzQyxPQUFPLEdBQUcsT0FBTyxhQUFQLE9BQU8sY0FBUCxPQUFPLEdBQUksRUFBRSxDQUFDO1FBRXhCLE1BQU0sb0JBQW9CLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQyx5QkFBYSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQWlDLENBQUM7UUFDckgsSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsb0JBQW9CLENBQUMsRUFBRTtZQUNqRCxPQUFPLENBQUMsY0FBYyxDQUFDLHlCQUFhLENBQUMsU0FBUyxFQUFFLElBQUksR0FBRyxFQUFxQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ3ZHO1FBQ0QsTUFBTSxZQUFZLEdBQUcsb0JBQW9CLGFBQXBCLG9CQUFvQixjQUFwQixvQkFBb0IsR0FBSyxPQUFPLENBQUMsY0FBYyxDQUFDLHlCQUFhLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBa0MsQ0FBQztRQUV2SSxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTlELG9CQUFNLENBQUMsS0FBSyxDQUFDLHNDQUFzQyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQy9GLENBQUMsQ0FBQztBQUNKLENBQUM7QUFzQlEsb0JBQUk7QUFHSSxvQkFBSTtBQXZCckI7Ozs7O0dBS0c7QUFDSCxTQUFTLE9BQU8sQ0FBQyxPQUF1QjtJQUN0QyxPQUFPLGdCQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLG9CQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsK0NBQStDLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDeEgsQ0FBQztBQVl5QiwwQkFBTztBQUd5QiwwQkFBTztBQWJqRTs7Ozs7R0FLRztBQUNILFNBQVMsU0FBUyxDQUFDLE9BQXlCO0lBQzFDLE9BQU8sZ0JBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsb0JBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxpREFBaUQsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUM1SCxDQUFDO0FBRWMsOEJBQVM7QUFHWSw4QkFBUyJ9 |
@@ -27,3 +27,3 @@ /// <reference types="mongoose" /> | ||
*/ | ||
export declare function queryMethod<QueryHelpers, U extends AnyParamConstructor<any>>(func: (this: ReturnModelType<U, QueryHelpers>, ...params: any[]) => mongoose.DocumentQuery<any, any>): (target: any) => void; | ||
export declare function queryMethod<QueryHelpers, U extends AnyParamConstructor<any>>(func: (this: ReturnModelType<U, QueryHelpers>, ...params: any[]) => mongoose.DocumentQuery<any, any>): ClassDecorator; | ||
export { queryMethod as QueryMethod }; |
@@ -101,3 +101,3 @@ import * as mongoose from 'mongoose'; | ||
* @param cl The Class to make a model out | ||
* @param id The Identifier to use to differentiate documents (default: cl.name) | ||
* @param value The Identifier to use to differentiate documents (default: cl.name) | ||
* @example | ||
@@ -112,2 +112,2 @@ * ```ts | ||
*/ | ||
export declare function getDiscriminatorModelForClass<U extends AnyParamConstructor<any>, QueryHelpers = {}>(from: mongoose.Model<any>, cl: U, id?: string): ReturnModelType<U, QueryHelpers>; | ||
export declare function getDiscriminatorModelForClass<U extends AnyParamConstructor<any>, QueryHelpers = {}>(from: mongoose.Model<any>, cl: U, value?: string): ReturnModelType<U, QueryHelpers>; |
@@ -15,2 +15,3 @@ "use strict"; | ||
} | ||
const logSettings_1 = require("./logSettings"); | ||
/* istanbul ignore next */ | ||
@@ -26,3 +27,2 @@ if (semver.lt(process.version.slice(1), '10.15.0')) { | ||
const utils_1 = require("./internal/utils"); | ||
const logSettings_1 = require("./logSettings"); | ||
const typeguards_1 = require("./typeguards"); | ||
@@ -109,2 +109,3 @@ var logSettings_2 = require("./logSettings"); | ||
utils_1.assertionIsClass(cl); | ||
logSettings_1.logger.debug('buildSchema called for "%s"', utils_1.getName(cl)); | ||
const mergedOptions = utils_1.mergeSchemaOptions(options, cl); | ||
@@ -196,3 +197,3 @@ let sch; | ||
* @param cl The Class to make a model out | ||
* @param id The Identifier to use to differentiate documents (default: cl.name) | ||
* @param value The Identifier to use to differentiate documents (default: cl.name) | ||
* @example | ||
@@ -207,3 +208,3 @@ * ```ts | ||
*/ | ||
function getDiscriminatorModelForClass(from, cl, id) { | ||
function getDiscriminatorModelForClass(from, cl, value) { | ||
utils_1.assertion(typeguards_1.isModel(from), new TypeError(`"${from}" is not a valid Model!`)); | ||
@@ -220,6 +221,6 @@ utils_1.assertionIsClass(cl); | ||
} | ||
const model = from.discriminator(name, sch, id ? id : name); | ||
const model = from.discriminator(name, sch, value ? value : name); | ||
return addModelToTypegoose(model, cl); | ||
} | ||
exports.getDiscriminatorModelForClass = getDiscriminatorModelForClass; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWdvb3NlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3R5cGVnb29zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsYUFBYTtBQUNiLHFDQUFxQztBQTBCNUIsNEJBQVE7QUF6QmpCLDRCQUEwQjtBQUMxQixpQ0FBaUM7QUFDakMsK0JBQThCO0FBRTlCLDBCQUEwQjtBQUMxQixJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsRUFBRTtJQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7Q0FDekQ7QUFFRCwwQkFBMEI7QUFDMUIsSUFBSSxNQUFNLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUFFO0lBQ2xELG9CQUFNLENBQUMsSUFBSSxDQUFDLCtEQUErRCxDQUFDLENBQUM7Q0FDOUU7QUFFRCxtREFBNkQ7QUFXMUMsaUdBWEEsZ0NBQWdCLE9BV0E7QUFWbkMsb0RBQXFEO0FBQ3JELDBDQUF1RDtBQUN2RCw4Q0FBaUQ7QUFDakQsNENBQTJHO0FBQzNHLCtDQUF1QztBQUN2Qyw2Q0FBdUM7QUFNdkMsNkNBQXVEO0FBQTlDLDBHQUFBLFdBQVcsT0FBQTtBQUFFLHdHQUFBLFNBQVMsT0FBQTtBQUMvQixpREFBdUI7QUFDdkIsa0RBQXdCO0FBQ3hCLG1EQUF5QjtBQUN6QixrREFBd0I7QUFDeEIseURBQStCO0FBQy9CLHdEQUE4QjtBQUM5Qix1REFBNkI7QUFDN0IscURBQW1EO0FBQ25ELDhDQUE0QztBQUM1QyxtQ0FBaUM7QUFFakMsMENBQTBFO0FBQWpFLDRHQUFBLG1CQUFtQixPQUFBO0FBQUUsaUdBQUEsUUFBUSxPQUFBO0FBQUUsZ0dBQUEsT0FBTyxPQUFBO0FBQy9DLGtEQUFnRDtBQUF2QyxxR0FBQSxRQUFRLE9BQUE7QUFFakIsd0JBQVEsRUFBRSxDQUFDLENBQUMsdURBQXVEO0FBRW5FOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILFNBQWdCLGdCQUFnQixDQUF3RCxFQUFLLEVBQUUsT0FBdUI7O0lBQ3BILHdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JCLE9BQU8sR0FBRyxPQUFPLE9BQU8sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBRXJELE1BQU0sUUFBUSxHQUFrQixxQkFBYSxDQUFDLHlCQUFhLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN2RixNQUFNLElBQUksR0FBRyxlQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFekIsSUFBSSxhQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3BCLE9BQU8sYUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQXFDLENBQUM7S0FDN0Q7SUFFRCxNQUFNLEtBQUsscUJBQ1QsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLGtCQUFrQiwwQ0FBRSxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsMENBQ3BFLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxnQkFBZ0IsMENBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLG9DQUNoRSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVoQyxNQUFNLGFBQWEsR0FBd0IsS0FBSyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLE1BQU0sZ0JBQWdCLFNBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQyx5QkFBYSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQW1CLG1DQUFJLEVBQUUsQ0FBQztJQUV0RyxVQUFJLGdCQUFnQixhQUFoQixnQkFBZ0IsdUJBQWhCLGdCQUFnQixDQUFFLE9BQU8sMENBQUUsY0FBYyxFQUFFO1FBQzdDLHdFQUF3RTtRQUN4RSxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7S0FDN0I7SUFFRCxPQUFPLG1CQUFtQixDQUFrQixhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDakUsQ0FBQztBQXpCRCw0Q0F5QkM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixrQkFBa0IsQ0FBcUMsR0FBVztJQUNoRixpQkFBUyxDQUFDLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxTQUFTLENBQUMsYUFBTSxDQUFDLHlDQUF5QyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUV0RyxPQUFPLGFBQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFRLENBQUM7QUFDaEMsQ0FBQztBQUpELGdEQUlDO0FBRUQ7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQWdCLFdBQVcsQ0FBcUMsRUFBSyxFQUFFLE9BQWdDO0lBQ3JHLHdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXJCLE1BQU0sYUFBYSxHQUFHLDBCQUFrQixDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUV0RCxJQUFJLEdBQXVCLENBQUM7SUFDNUIseUJBQXlCO0lBQ3pCLElBQUksVUFBVSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUNqRSw2QkFBNkI7SUFDN0IsT0FBTyxDQUFBLFVBQVUsYUFBVixVQUFVLHVCQUFWLFVBQVUsQ0FBRSxJQUFJLE1BQUssUUFBUSxFQUFFO1FBQ3BDLGdCQUFnQjtRQUNoQixHQUFHLEdBQUcscUJBQVksQ0FBQyxVQUFVLEVBQUUsR0FBSSxFQUFFLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRCxrQkFBa0I7UUFDbEIsVUFBVSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztLQUN0RTtJQUNELDhCQUE4QjtJQUM5QixHQUFHLEdBQUcscUJBQVksQ0FBQyxFQUFFLEVBQUUsR0FBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBRTVDLE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQW5CRCxrQ0FtQkM7QUFFRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQXdELEtBQTBCLEVBQUUsRUFBSztJQUMxSCxpQkFBUyxDQUFDLEtBQUssQ0FBQyxTQUFTLFlBQVksUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLFNBQVMsQ0FBQyxJQUFJLEtBQUsseUJBQXlCLENBQUMsQ0FBQyxDQUFDO0lBQ3hHLHdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXJCLE1BQU0sSUFBSSxHQUFHLGVBQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUV6QixpQkFBUyxDQUNQLENBQUMsYUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFDakIsSUFBSSxLQUFLLENBQ1AsYUFBTSxDQUNKLHdEQUF3RDtRQUN4RCwwRUFBMEU7UUFDMUUsb0JBQW9CLEVBQ3BCLElBQUksQ0FDTCxDQUNGLENBQ0YsQ0FBQztJQUVGLElBQUksbUJBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDMUIsb0JBQU0sQ0FBQyxJQUFJLENBQUMsb0RBQW9ELEVBQUUsSUFBSSxDQUFDLENBQUM7S0FDekU7SUFFRCxhQUFNLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN4QixtQkFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFM0IsT0FBTyxhQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBcUMsQ0FBQztBQUM5RCxDQUFDO0FBMUJELGtEQTBCQztBQUVEOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsU0FBZ0IsV0FBVyxDQUFDLElBQVk7SUFDdEMsaUJBQVMsQ0FBQyxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUUsSUFBSSxTQUFTLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxDQUFDO0lBQzNGLGlCQUFTLENBQUMsYUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEtBQUssQ0FBQyxVQUFVLElBQUksc0JBQXNCLENBQUMsQ0FBQyxDQUFDO0lBRTdFLG9CQUFNLENBQUMsS0FBSyxDQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBRTFDLGFBQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFFLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV2QyxhQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLG1CQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzVCLENBQUM7QUFWRCxrQ0FVQztBQUVEOzs7Ozs7Ozs7O0dBVUc7QUFDSCxTQUFnQixvQkFBb0IsQ0FBcUMsRUFBSztJQUM1RSx3QkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUVyQixPQUFPLFdBQVcsQ0FBQyxlQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNsQyxDQUFDO0FBSkQsb0RBSUM7QUFFRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsU0FBZ0IsNkJBQTZCLENBQzNDLElBQXlCLEVBQ3pCLEVBQUssRUFDTCxFQUFXO0lBRVgsaUJBQVMsQ0FBQyxvQkFBTyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksU0FBUyxDQUFDLElBQUksSUFBSSx5QkFBeUIsQ0FBQyxDQUFDLENBQUM7SUFDM0Usd0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFckIsTUFBTSxJQUFJLEdBQUcsZUFBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3pCLElBQUksYUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNwQixPQUFPLGFBQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFxQyxDQUFDO0tBQzdEO0lBQ0QsTUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLEVBQUUsQ0FBc0MsQ0FBQztJQUVqRSxNQUFNLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNyRCxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtRQUM3QixHQUFHLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFTLENBQUMsT0FBTyxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQztLQUM3RTtJQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFNUQsT0FBTyxtQkFBbUIsQ0FBa0IsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUF0QkQsc0VBc0JDIn0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWdvb3NlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3R5cGVnb29zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsYUFBYTtBQUNiLHFDQUFxQztBQWlDNUIsNEJBQVE7QUFoQ2pCLDRCQUEwQjtBQUMxQixpQ0FBaUM7QUFDakMsK0JBQThCO0FBRTlCLDBCQUEwQjtBQUMxQixJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsRUFBRTtJQUN6QyxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7Q0FDekQ7QUFFRCwrQ0FBdUM7QUFFdkMsMEJBQTBCO0FBQzFCLElBQUksTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsRUFBRTtJQUNsRCxvQkFBTSxDQUFDLElBQUksQ0FBQywrREFBK0QsQ0FBQyxDQUFDO0NBQzlFO0FBRUQsbURBQTZEO0FBZ0IxQyxpR0FoQkEsZ0NBQWdCLE9BZ0JBO0FBZm5DLG9EQUFxRDtBQUNyRCwwQ0FBdUQ7QUFDdkQsOENBQWlEO0FBQ2pELDRDQUEyRztBQUMzRyw2Q0FBdUM7QUFZdkMsNkNBQXVEO0FBQTlDLDBHQUFBLFdBQVcsT0FBQTtBQUFFLHdHQUFBLFNBQVMsT0FBQTtBQUMvQixpREFBdUI7QUFDdkIsa0RBQXdCO0FBQ3hCLG1EQUF5QjtBQUN6QixrREFBd0I7QUFDeEIseURBQStCO0FBQy9CLHdEQUE4QjtBQUM5Qix1REFBNkI7QUFDN0IscURBQW1EO0FBQ25ELDhDQUE0QztBQUM1QyxtQ0FBaUM7QUFFakMsMENBQTBFO0FBQWpFLDRHQUFBLG1CQUFtQixPQUFBO0FBQUUsaUdBQUEsUUFBUSxPQUFBO0FBQUUsZ0dBQUEsT0FBTyxPQUFBO0FBQy9DLGtEQUFnRDtBQUF2QyxxR0FBQSxRQUFRLE9BQUE7QUFFakIsd0JBQVEsRUFB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 |
@@ -12,4 +12,4 @@ import * as mongoose from 'mongoose'; | ||
*/ | ||
export declare function isDocumentArray<T, S extends RefType>(docs: mongoose.Types.Array<Ref<T, S>>): docs is mongoose.Types.Array<DocumentType<NonNullable<T>>>; | ||
export declare function isDocumentArray<T, S extends RefType>(docs: Ref<T, S>[]): docs is DocumentType<NonNullable<T>>[]; | ||
export declare function isDocumentArray<T, S extends RefType>(docs: mongoose.Types.Array<Ref<T, S>> | undefined): docs is mongoose.Types.Array<DocumentType<NonNullable<T>>>; | ||
export declare function isDocumentArray<T, S extends RefType>(docs: Ref<T, S>[] | undefined): docs is DocumentType<NonNullable<T>>[]; | ||
/** | ||
@@ -19,3 +19,3 @@ * Check if the document is not undefined/null and is not an document | ||
*/ | ||
export declare function isRefType<T, S extends RefType>(doc: Ref<T, S>): doc is NonNullable<S>; | ||
export declare function isRefType<T, S extends RefType>(doc: Ref<T, S> | undefined): doc is NonNullable<S>; | ||
/** | ||
@@ -25,4 +25,4 @@ * Check if the document is not undefined/null and is not an document | ||
*/ | ||
export declare function isRefTypeArray<T, S extends RefType>(docs: mongoose.Types.Array<Ref<T, S>>): docs is mongoose.Types.Array<NonNullable<S>>; | ||
export declare function isRefTypeArray<T, S extends RefType>(docs: Ref<T, S>[]): docs is NonNullable<S>[]; | ||
export declare function isRefTypeArray<T, S extends RefType>(docs: mongoose.Types.Array<Ref<T, S>> | undefined): docs is mongoose.Types.Array<NonNullable<S>>; | ||
export declare function isRefTypeArray<T, S extends RefType>(docs: Ref<T, S>[] | undefined): docs is NonNullable<S>[]; | ||
/** | ||
@@ -29,0 +29,0 @@ * Check if the input is a mongoose.Model |
@@ -38,2 +38,2 @@ "use strict"; | ||
exports.isModel = isModel; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWd1YXJkcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90eXBlZ3VhcmRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUFxQztBQUVyQyw0Q0FBcUQ7QUFHckQ7OztHQUdHO0FBQ0gsU0FBZ0IsVUFBVSxDQUF1QixHQUFjO0lBQzdELE9BQU8sR0FBRyxZQUFZLFFBQVEsQ0FBQyxLQUFLLENBQUM7QUFDdkMsQ0FBQztBQUZELGdDQUVDO0FBWUQsU0FBZ0IsZUFBZSxDQUFDLElBQXFCO0lBQ25ELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNqRSxDQUFDO0FBRkQsMENBRUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixTQUFTLENBQXVCLEdBQWM7SUFDNUQsT0FBTyxDQUFDLHlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3JELENBQUM7QUFGRCw4QkFFQztBQVFELFNBQWdCLGNBQWMsQ0FBQyxJQUFxQjtJQUNsRCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDaEUsQ0FBQztBQUZELHdDQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsT0FBTyxDQUFDLEtBQVU7SUFDaEMsT0FBTyxDQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxTQUFTLGFBQVksUUFBUSxDQUFDLEtBQUssQ0FBQztBQUNwRCxDQUFDO0FBRkQsMEJBRUMifQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWd1YXJkcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90eXBlZ3VhcmRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUFxQztBQUVyQyw0Q0FBcUQ7QUFHckQ7OztHQUdHO0FBQ0gsU0FBZ0IsVUFBVSxDQUF1QixHQUFjO0lBQzdELE9BQU8sR0FBRyxZQUFZLFFBQVEsQ0FBQyxLQUFLLENBQUM7QUFDdkMsQ0FBQztBQUZELGdDQUVDO0FBWUQsU0FBZ0IsZUFBZSxDQUM3QixJQUFpQztJQUVqQyxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDakUsQ0FBQztBQUpELDBDQUlDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsU0FBUyxDQUF1QixHQUEwQjtJQUN4RSxPQUFPLENBQUMseUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDckQsQ0FBQztBQUZELDhCQUVDO0FBWUQsU0FBZ0IsY0FBYyxDQUM1QixJQUFpQztJQUVqQyxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDaEUsQ0FBQztBQUpELHdDQUlDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsT0FBTyxDQUFDLEtBQVU7SUFDaEMsT0FBTyxDQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxTQUFTLGFBQVksUUFBUSxDQUFDLEtBQUssQ0FBQztBQUNwRCxDQUFDO0FBRkQsMEJBRUMifQ== |
@@ -36,3 +36,7 @@ /// <reference types="node" /> | ||
export declare type Validator = ValidatorFunction | RegExp | ValidatorOptions | ValidatorOptions[]; | ||
export declare type DeferredFunc<T = any> = () => T; | ||
/** | ||
* Defer an reference with an function (or as other projects call it "Forward declaration") | ||
* @param type This is just to comply with the common pattern of `type => ActualType` | ||
*/ | ||
export declare type DeferredFunc<T = any> = (type: undefined) => T; | ||
export interface BasePropOptions { | ||
@@ -173,2 +177,7 @@ [key: string]: any; | ||
refType?: NonNullable<BasePropOptions['type']> | RefType; | ||
/** | ||
* Set the Nested Discriminators | ||
* Note: "_id: false" as an prop option dosnt work here | ||
*/ | ||
discriminators?: DeferredFunc<(AnyParamConstructor<any> | DiscriminatorObject)[]>; | ||
} | ||
@@ -264,2 +273,12 @@ export interface ArrayPropOptions extends BasePropOptions { | ||
export declare type EmptyVoidFn = () => void; | ||
export interface DiscriminatorObject { | ||
/** The Class to use */ | ||
type: AnyParamConstructor<any>; | ||
/** | ||
* The Name to differentiate between other classes | ||
* Mongoose JSDOC: [value] the string stored in the `discriminatorKey` property. If not specified, Mongoose uses the `name` parameter. | ||
* @default {string} The output of "getName" | ||
*/ | ||
value?: string; | ||
} | ||
export interface IModelOptions { | ||
@@ -300,13 +319,11 @@ /** An Existing Mongoose Connection */ | ||
/** Prop Options */ | ||
origOptions: any; | ||
/** What the Property Type should be */ | ||
Type: AnyParamConstructor<any>; | ||
options: any; | ||
/** Target Class */ | ||
target: any; | ||
target: AnyParamConstructor<any>; | ||
/** Property name */ | ||
key: string; | ||
key: string | symbol; | ||
/** What is it for a prop type? */ | ||
whatis: WhatIsIt; | ||
whatis?: WhatIsIt; | ||
} | ||
export declare type DecoratedPropertyMetadataMap = Map<string, DecoratedPropertyMetadata>; | ||
export declare type DecoratedPropertyMetadataMap = Map<string | symbol, DecoratedPropertyMetadata>; | ||
export interface IndexOptions<T> { | ||
@@ -422,3 +439,3 @@ /** | ||
* ```ts | ||
* const queryMethods: QueryMethodMap = new Map(Reflect.getMetadata(DecoratorKeys.QueryMethod, target.constructor) ?? []); | ||
* const queryMethods: QueryMethodMap = new Map(Reflect.getMetadata(DecoratorKeys.QueryMethod, target) ?? []); | ||
* ``` | ||
@@ -428,2 +445,10 @@ */ | ||
/** | ||
* Used for the Reflection of Nested Discriminators | ||
* @example | ||
* ```ts | ||
* const disMap: NestedDiscriminatorsMap = new Map(Reflect.getMetadata(DecoratorKeys.NestedDiscriminators, target) ?? []); | ||
* ``` | ||
*/ | ||
export declare type NestedDiscriminatorsMap = Map<string, DiscriminatorObject[]>; | ||
/** | ||
* Used for the Reflection of Hooks | ||
@@ -430,0 +455,0 @@ * @example |
{ | ||
"name": "@typegoose/typegoose", | ||
"version": "7.2.0", | ||
"version": "7.3.0-0", | ||
"description": "Define Mongoose models using TypeScript classes", | ||
@@ -42,9 +42,9 @@ "main": "lib/typegoose.js", | ||
"peerDependencies": { | ||
"mongoose": "^5.9.17", | ||
"@types/mongoose": "^5.7.21" | ||
"mongoose": "^5.9.19", | ||
"@types/mongoose": "^5.7.27" | ||
}, | ||
"devDependencies": { | ||
"@types/jest": "^25.2.3", | ||
"@types/lodash": "^4.14.154", | ||
"@types/mongoose": "^5.7.21", | ||
"@types/jest": "^26.0.0", | ||
"@types/lodash": "^4.14.155", | ||
"@types/mongoose": "^5.7.27", | ||
"@types/node": "^10.17.16", | ||
@@ -55,3 +55,3 @@ "@types/semver": "^7.2.0", | ||
"mongodb-memory-server": "^6.6.1", | ||
"mongoose": "^5.9.17", | ||
"mongoose": "^5.9.19", | ||
"mongoose-findorcreate": "^3.0.0", | ||
@@ -65,3 +65,3 @@ "prettier": "^2.0.5", | ||
"typedoc": "0.17.7", | ||
"typescript": "3.9.3" | ||
"typescript": "3.9.5" | ||
}, | ||
@@ -68,0 +68,0 @@ "dependencies": { |
@@ -112,3 +112,3 @@ # Typegoose | ||
* Node 10.15+ | ||
* mongoose ^5.9.17 | ||
* mongoose ^5.9.19 | ||
* `experimentalDecorators` and `emitDecoratorMetadata` must be enabled in `tsconfig.json` | ||
@@ -115,0 +115,0 @@ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Deprecated
MaintenanceThe maintainer of the package marked it as deprecated. This could indicate that a single version should not be used, or that the package is no longer maintained and any new vulnerabilities will not be fixed.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
181450
2769
1
1