UNPKG

12.8 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.CacheDisabledError = exports.DuplicateOptionsError = exports.NoDiscriminatorFunctionError = exports.PathNotInSchemaError = exports.InvalidOptionsConstructorError = exports.InvalidEnumTypeError = exports.ExpectedTypeError = exports.ResolveTypegooseNameError = exports.OptionDoesNotSupportOptionError = exports.StringLengthExpectedError = exports.FunctionCalledMoreThanSupportedError = exports.NotValidModelError = exports.RefOptionIsUndefinedError = exports.SelfContainingClassError = exports.CannotBeSymbolError = exports.InvalidPropTypeError = exports.AssertionFallbackError = exports.NoValidClassError = exports.NotAllVPOPElementsError = exports.NotStringTypeError = exports.NotNumberTypeError = exports.InvalidTypeError = void 0;
4const utils_1 = require("./utils");
5// Note: don't forget to use "toStringNoFail" on values that are "unknown" or "any"
6class InvalidTypeError extends Error {
7 constructor(targetName, key, Type) {
8 super(`"${targetName}.${key}"'s Type is invalid! Type is: "${(0, utils_1.toStringNoFail)(Type)}" [E009]`);
9 }
10}
11exports.InvalidTypeError = InvalidTypeError;
12class NotNumberTypeError extends Error {
13 constructor(targetName, key, enumKey, enumValue) {
14 super(`Typeof "${targetName}.${key}" is "Number", value is undefined/null or does not have a reverse mapping! [E011]\n` +
15 ` Encountered with property: "${enumKey}.${typeof enumValue}"`);
16 }
17}
18exports.NotNumberTypeError = NotNumberTypeError;
19class NotStringTypeError extends Error {
20 constructor(targetName, key, enumKey, enumValue) {
21 super(`Typeof "${targetName}.${key}" is "String", used enum is not only Strings! [E010]\n` +
22 ` Encountered with property in Enum: "${enumKey}.${typeof enumValue}"`);
23 }
24}
25exports.NotStringTypeError = NotStringTypeError;
26/** Not All Virtual Populate Elements Error */
27class NotAllVPOPElementsError extends Error {
28 constructor(name, key) {
29 super(`"${name}.${key}" has not all needed Virtual Populate Options! Needed are: ${utils_1.allVirtualoptions.join(', ')} [E006]`);
30 }
31}
32exports.NotAllVPOPElementsError = NotAllVPOPElementsError;
33class NoValidClassError extends TypeError {
34 constructor(value) {
35 super('Value is not a function or does not have a constructor! [E028]\n' + `Value: "${(0, utils_1.toStringNoFail)(value)}"`);
36 }
37}
38exports.NoValidClassError = NoValidClassError;
39class AssertionFallbackError extends Error {
40 constructor() {
41 super('Assert failed - no custom error [E019]');
42 }
43}
44exports.AssertionFallbackError = AssertionFallbackError;
45/** Error for when an unknown PropType is passed to an switch, gets thrown in the default case */
46class InvalidPropTypeError extends Error {
47 constructor(proptype, name, key, where) {
48 super(`"${(0, utils_1.toStringNoFail)(proptype)}"(${where}) is invalid for "${name}.${key}" [E013]`);
49 }
50}
51exports.InvalidPropTypeError = InvalidPropTypeError;
52class CannotBeSymbolError extends Error {
53 constructor(name, key) {
54 super(`A property key in Typegoose cannot be an symbol! ("${name}.${(0, utils_1.toStringNoFail)(key)}") [E024]`);
55 }
56}
57exports.CannotBeSymbolError = CannotBeSymbolError;
58class SelfContainingClassError extends TypeError {
59 constructor(name, key) {
60 super('It seems like the type used is the same as the target class, which is not supported ' + `("${name}.${key}") [E004]`);
61 }
62}
63exports.SelfContainingClassError = SelfContainingClassError;
64class RefOptionIsUndefinedError extends Error {
65 constructor(name, key) {
66 super(`Prop-Option "ref"'s value is "null" or "undefined" for "${name}.${key}" [E005]`);
67 }
68}
69exports.RefOptionIsUndefinedError = RefOptionIsUndefinedError;
70class NotValidModelError extends TypeError {
71 constructor(model, where) {
72 super(`Expected "${where}" to be a valid mongoose.Model! (got: "${(0, utils_1.toStringNoFail)(model)}") [E025]`);
73 }
74}
75exports.NotValidModelError = NotValidModelError;
76class FunctionCalledMoreThanSupportedError extends Error {
77 constructor(functionName, supported, extra) {
78 super(`Function "${functionName}" only supports to be called "${supported}" times with the same parameters [E003]\n${extra}`);
79 }
80}
81exports.FunctionCalledMoreThanSupportedError = FunctionCalledMoreThanSupportedError;
82class StringLengthExpectedError extends TypeError {
83 constructor(length, got, where, valueName) {
84 // create the "got:" message, when string say it was a string, but not the length
85 // if not string, then say it is not a string plus the value
86 const gotMessage = typeof got === 'string' ? `(String: "${got.length}")` : `(not-String: "${(0, utils_1.toStringNoFail)(got)}")`;
87 super(`Expected "${valueName}" to have at least length of "${length}" (got: ${gotMessage}, where: "${where}") [E026]`);
88 }
89}
90exports.StringLengthExpectedError = StringLengthExpectedError;
91class OptionDoesNotSupportOptionError extends TypeError {
92 constructor(currentOption, problemOption, expected, provided) {
93 super(`The Option "${currentOption}" does not support Option "${problemOption}" other than "${expected}" (provided was: "${provided}") [E027]`);
94 }
95}
96exports.OptionDoesNotSupportOptionError = OptionDoesNotSupportOptionError;
97class ResolveTypegooseNameError extends ReferenceError {
98 constructor(input) {
99 super("Input was not a string AND didn't have a .typegooseName function AND didn't have a .typegooseName string [E014]\n" +
100 `Value: "${(0, utils_1.toStringNoFail)(input)}"`);
101 }
102}
103exports.ResolveTypegooseNameError = ResolveTypegooseNameError;
104class ExpectedTypeError extends TypeError {
105 constructor(optionName, expected, got) {
106 super(`Expected Argument "${optionName}" to have type "${expected}", got: "${(0, utils_1.toStringNoFail)(got)}" [E029]`);
107 }
108}
109exports.ExpectedTypeError = ExpectedTypeError;
110class InvalidEnumTypeError extends TypeError {
111 constructor(name, key, value) {
112 super(`Invalid Type used for options "enum" at "${name}.${key}"! [E012]\n` +
113 `Type: "${(0, utils_1.toStringNoFail)(value)}"\n` +
114 'https://typegoose.github.io/typegoose/docs/guides/error-warning-details#invalid-type-for-enum-e012');
115 }
116}
117exports.InvalidEnumTypeError = InvalidEnumTypeError;
118class InvalidOptionsConstructorError extends TypeError {
119 constructor(name, key, type) {
120 super(`Type has a invalid "OptionsConstructor" on "${name}.${key}"! [E016]\n` + `Type: "${(0, utils_1.toStringNoFail)(type)}"`);
121 }
122}
123exports.InvalidOptionsConstructorError = InvalidOptionsConstructorError;
124class PathNotInSchemaError extends Error {
125 constructor(name, key) {
126 super(`Path "${key}" on "${name}" does not exist in the Schema! [E030]`);
127 }
128}
129exports.PathNotInSchemaError = PathNotInSchemaError;
130class NoDiscriminatorFunctionError extends Error {
131 constructor(name, key) {
132 super(`Path "${name}.${key}" does not have a function called "discriminator"! (Nested Discriminator cannot be applied) [E031]`);
133 }
134}
135exports.NoDiscriminatorFunctionError = NoDiscriminatorFunctionError;
136class DuplicateOptionsError extends TypeError {
137 constructor(duplicateAt) {
138 super(`Duplicate Option definition at [${duplicateAt.join(',')}] [E032]`);
139 }
140}
141exports.DuplicateOptionsError = DuplicateOptionsError;
142class CacheDisabledError extends TypeError {
143 constructor(where) {
144 super(`Tried using cache, but was disabled at "${where}" [E033]`);
145 }
146}
147exports.CacheDisabledError = CacheDisabledError;
148//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVybmFsL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBNEQ7QUFFNUQsbUZBQW1GO0FBRW5GLE1BQWEsZ0JBQWlCLFNBQVEsS0FBSztJQUN6QyxZQUFZLFVBQWtCLEVBQUUsR0FBVyxFQUFFLElBQWE7UUFDeEQsS0FBSyxDQUFDLElBQUksVUFBVSxJQUFJLEdBQUcsa0NBQWtDLElBQUEsc0JBQWMsRUFBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDL0YsQ0FBQztDQUNGO0FBSkQsNENBSUM7QUFFRCxNQUFhLGtCQUFtQixTQUFRLEtBQUs7SUFDM0MsWUFBWSxVQUFrQixFQUFFLEdBQVcsRUFBRSxPQUFlLEVBQUUsU0FBaUI7UUFDN0UsS0FBSyxDQUNILFdBQVcsVUFBVSxJQUFJLEdBQUcscUZBQXFGO1lBQy9HLGlDQUFpQyxPQUFPLElBQUksT0FBTyxTQUFTLEdBQUcsQ0FDbEUsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQVBELGdEQU9DO0FBRUQsTUFBYSxrQkFBbUIsU0FBUSxLQUFLO0lBQzNDLFlBQVksVUFBa0IsRUFBRSxHQUFXLEVBQUUsT0FBZSxFQUFFLFNBQWlCO1FBQzdFLEtBQUssQ0FDSCxXQUFXLFVBQVUsSUFBSSxHQUFHLHdEQUF3RDtZQUNsRix5Q0FBeUMsT0FBTyxJQUFJLE9BQU8sU0FBUyxHQUFHLENBQzFFLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFQRCxnREFPQztBQUVELDhDQUE4QztBQUM5QyxNQUFhLHVCQUF3QixTQUFRLEtBQUs7SUFDaEQsWUFBWSxJQUFZLEVBQUUsR0FBVztRQUNuQyxLQUFLLENBQUMsSUFBSSxJQUFJLElBQUksR0FBRyw4REFBOEQseUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM1SCxDQUFDO0NBQ0Y7QUFKRCwwREFJQztBQUVELE1BQWEsaUJB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
\No newline at end of file