@mrnafisia/type-query 1.0.27 → 1.0.30
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/dist/model.d.ts +1 -1
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +102 -37
- package/dist/model.js.map +1 -1
- package/dist/types/model.d.ts +2 -2
- package/dist/types/model.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/model.d.ts
CHANGED
|
@@ -985,7 +985,7 @@ declare const createModelUtils: <Columns extends {
|
|
|
985
985
|
value: Date;
|
|
986
986
|
});
|
|
987
987
|
}>(columns: Columns, custom?: {
|
|
988
|
-
parse?: { [key in keyof Columns]?: (v: string) => import("./types/postgres").PostgresTypeMapper<Columns[key]["type"], Columns[key]["nullable"]> | undefined; };
|
|
988
|
+
parse?: { [key in keyof Columns]?: (v: string | undefined) => import("./types/postgres").PostgresTypeMapper<Columns[key]["type"], Columns[key]["nullable"]> | undefined; };
|
|
989
989
|
validate?: { [key_1 in keyof Columns]?: (v: import("./types/postgres").PostgresTypeMapper<Columns[key_1]["type"], Columns[key_1]["nullable"]>) => boolean; };
|
|
990
990
|
} | undefined) => ModelUtils<Columns>;
|
|
991
991
|
export { createModelUtils };
|
package/dist/model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,MAAM,eAAe,CAAC;AAElC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,MAAM,eAAe,CAAC;AAElC,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAmLrD,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAGyB,MAAM,GAAG,SAAS;sJACuB,OAAO;qCAuJ9F,CAAC;AAEF,OAAO,EAAC,gBAAgB,EAAC,CAAC"}
|
package/dist/model.js
CHANGED
|
@@ -17,33 +17,99 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.createModelUtils = void 0;
|
|
18
18
|
var decimal_js_1 = __importDefault(require("decimal.js"));
|
|
19
19
|
var never_catch_1 = require("never-catch");
|
|
20
|
-
var parseBoolean = function (v) {
|
|
20
|
+
var parseBoolean = function (v) {
|
|
21
|
+
switch (typeof v) {
|
|
22
|
+
case 'boolean':
|
|
23
|
+
return v;
|
|
24
|
+
case 'string':
|
|
25
|
+
switch (v) {
|
|
26
|
+
case 'true':
|
|
27
|
+
return true;
|
|
28
|
+
case 'false':
|
|
29
|
+
return false;
|
|
30
|
+
default:
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
default:
|
|
34
|
+
return undefined;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
21
37
|
var parseNumber = function (v) {
|
|
22
|
-
|
|
23
|
-
|
|
38
|
+
switch (typeof v) {
|
|
39
|
+
case 'number':
|
|
40
|
+
return v;
|
|
41
|
+
case 'string':
|
|
42
|
+
var _v = Number(v);
|
|
43
|
+
return Number.isNaN(_v) ? undefined : _v;
|
|
44
|
+
default:
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
var parseInteger = function (v) {
|
|
49
|
+
var _v = parseNumber(v);
|
|
50
|
+
return _v === undefined ? undefined : Math.trunc(_v);
|
|
24
51
|
};
|
|
25
52
|
var parseBigInt = function (v) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
53
|
+
switch (typeof v) {
|
|
54
|
+
case 'bigint':
|
|
55
|
+
return v;
|
|
56
|
+
case 'number':
|
|
57
|
+
return BigInt(v);
|
|
58
|
+
case 'string':
|
|
59
|
+
try {
|
|
60
|
+
return BigInt(v);
|
|
61
|
+
}
|
|
62
|
+
catch (_) {
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
default:
|
|
66
|
+
return undefined;
|
|
31
67
|
}
|
|
32
68
|
};
|
|
33
69
|
var parseDecimal = function (v) {
|
|
34
|
-
|
|
35
|
-
return
|
|
70
|
+
if (v instanceof decimal_js_1.default) {
|
|
71
|
+
return v;
|
|
36
72
|
}
|
|
37
|
-
|
|
38
|
-
|
|
73
|
+
switch (typeof v) {
|
|
74
|
+
case 'number':
|
|
75
|
+
return new decimal_js_1.default(v);
|
|
76
|
+
case 'string':
|
|
77
|
+
try {
|
|
78
|
+
return new decimal_js_1.default(v);
|
|
79
|
+
}
|
|
80
|
+
catch (_) {
|
|
81
|
+
return undefined;
|
|
82
|
+
}
|
|
83
|
+
default:
|
|
84
|
+
return undefined;
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
var parseString = function (v) {
|
|
88
|
+
switch (typeof v) {
|
|
89
|
+
case 'boolean':
|
|
90
|
+
case 'number':
|
|
91
|
+
case 'bigint':
|
|
92
|
+
return v.toString();
|
|
93
|
+
case 'string':
|
|
94
|
+
return v;
|
|
95
|
+
default:
|
|
96
|
+
return undefined;
|
|
39
97
|
}
|
|
40
98
|
};
|
|
41
|
-
var parseString = function (v) { return v; };
|
|
42
99
|
var parseDate = function (v) {
|
|
43
|
-
|
|
44
|
-
|
|
100
|
+
switch (typeof v) {
|
|
101
|
+
case 'number':
|
|
102
|
+
case 'string':
|
|
103
|
+
var _v = new Date(v);
|
|
104
|
+
return _v.toString() === 'Invalid Date' ? undefined : _v;
|
|
105
|
+
default:
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
45
108
|
};
|
|
46
109
|
var parseJSON = function (v) {
|
|
110
|
+
if (typeof v !== 'string') {
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
47
113
|
var _v;
|
|
48
114
|
try {
|
|
49
115
|
_v = JSON.parse(v);
|
|
@@ -56,6 +122,12 @@ var parseJSON = function (v) {
|
|
|
56
122
|
}
|
|
57
123
|
return _v;
|
|
58
124
|
};
|
|
125
|
+
var smallIntRange = { min: -32768, max: 32767 };
|
|
126
|
+
var integerRange = { min: -2147483648, max: 2147483647 };
|
|
127
|
+
var bigIntRange = {
|
|
128
|
+
min: BigInt('-9223372036854775808'),
|
|
129
|
+
max: BigInt('9223372036854775807')
|
|
130
|
+
};
|
|
59
131
|
var validateNumberGenerator = function (_a) {
|
|
60
132
|
var min = _a.min, max = _a.max;
|
|
61
133
|
if (min === undefined) {
|
|
@@ -94,9 +166,6 @@ var validateDecimalGenerator = function (_a) {
|
|
|
94
166
|
}
|
|
95
167
|
}
|
|
96
168
|
};
|
|
97
|
-
var validateSmallInt = validateNumberGenerator({ min: 0, max: 32767 });
|
|
98
|
-
var validateInteger = validateNumberGenerator({ min: 0, max: 2147483647 });
|
|
99
|
-
var validateBigInt = validateNumberGenerator({ min: 0, max: BigInt('9223372036854775807') });
|
|
100
169
|
var validateStringGenerator = function (_a) {
|
|
101
170
|
var regex = _a.regex, min = _a.min, max = _a.max;
|
|
102
171
|
if (regex === undefined) {
|
|
@@ -138,7 +207,7 @@ var validateStringGenerator = function (_a) {
|
|
|
138
207
|
};
|
|
139
208
|
var createModelUtils = function (columns, custom) {
|
|
140
209
|
var columnsParseAndValidate = Object.fromEntries(Object.entries(columns).map(function (_a) {
|
|
141
|
-
var _b, _c;
|
|
210
|
+
var _b, _c, _d, _e, _f, _g, _h, _j;
|
|
142
211
|
var key = _a[0], val = _a[1];
|
|
143
212
|
var parseFun = (_b = custom === null || custom === void 0 ? void 0 : custom.parse) === null || _b === void 0 ? void 0 : _b[key];
|
|
144
213
|
if (parseFun === undefined) {
|
|
@@ -148,6 +217,8 @@ var createModelUtils = function (columns, custom) {
|
|
|
148
217
|
break;
|
|
149
218
|
case 'smallint':
|
|
150
219
|
case 'integer':
|
|
220
|
+
parseFun = parseInteger;
|
|
221
|
+
break;
|
|
151
222
|
case 'real':
|
|
152
223
|
case 'double precision':
|
|
153
224
|
parseFun = parseNumber;
|
|
@@ -179,28 +250,22 @@ var createModelUtils = function (columns, custom) {
|
|
|
179
250
|
if (validateFun === undefined) {
|
|
180
251
|
switch (val.type) {
|
|
181
252
|
case 'smallint':
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
validateFun = validateSmallInt;
|
|
187
|
-
}
|
|
253
|
+
validateFun = validateNumberGenerator({
|
|
254
|
+
min: (_d = val.min) !== null && _d !== void 0 ? _d : smallIntRange.min,
|
|
255
|
+
max: (_e = val.max) !== null && _e !== void 0 ? _e : smallIntRange.max
|
|
256
|
+
});
|
|
188
257
|
break;
|
|
189
258
|
case 'integer':
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
validateFun = validateInteger;
|
|
195
|
-
}
|
|
259
|
+
validateFun = validateNumberGenerator({
|
|
260
|
+
min: (_f = val.min) !== null && _f !== void 0 ? _f : integerRange.min,
|
|
261
|
+
max: (_g = val.max) !== null && _g !== void 0 ? _g : integerRange.max
|
|
262
|
+
});
|
|
196
263
|
break;
|
|
197
264
|
case 'bigint':
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
validateFun = validateBigInt;
|
|
203
|
-
}
|
|
265
|
+
validateFun = validateNumberGenerator({
|
|
266
|
+
min: (_h = val.min) !== null && _h !== void 0 ? _h : bigIntRange.min,
|
|
267
|
+
max: (_j = val.max) !== null && _j !== void 0 ? _j : bigIntRange.max
|
|
268
|
+
});
|
|
204
269
|
break;
|
|
205
270
|
case 'real':
|
|
206
271
|
case 'double precision':
|
package/dist/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAAiC;AAEjC,2CAAoC;AAIpC,IAAM,YAAY,GAAG,UAAC,
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
package/dist/types/model.d.ts
CHANGED
|
@@ -11,12 +11,12 @@ declare type Model<Columns extends Table['columns'], Requires extends readonly (
|
|
|
11
11
|
};
|
|
12
12
|
declare type ModelUtils<Columns extends Table['columns']> = {
|
|
13
13
|
Parse: <Requires extends readonly (keyof Columns)[], Optionals extends readonly (keyof Columns)[]>(data: {
|
|
14
|
-
[key: string]:
|
|
14
|
+
[key: string]: unknown;
|
|
15
15
|
}, requires: Requires, optional: Optionals, validate?: boolean) => Result<Model<Columns, Requires, Optionals>, Requires[Exclude<keyof Requires, keyof unknown[]>] | Optionals[Exclude<keyof Optionals, keyof unknown[]>]>;
|
|
16
16
|
Validate: <D extends Partial<SimpleModel<Columns>>>(data: D) => Result<undefined, keyof D>;
|
|
17
17
|
} & {
|
|
18
18
|
[key in keyof Columns]: {
|
|
19
|
-
Parse: (v:
|
|
19
|
+
Parse: (v: unknown, validate?: boolean) => ColumnTypeByColumns<Columns, key> | undefined;
|
|
20
20
|
Validate: (v: ColumnTypeByColumns<Columns, key>) => boolean;
|
|
21
21
|
};
|
|
22
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/types/model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAEnC,aAAK,WAAW,CAAC,OAAO,SAAS,KAAK,CAAC,SAAS,CAAC,IAAI;KAAG,GAAG,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC;CAAG,CAAC;AAE7H,aAAK,KAAK,CAAC,OAAO,SAAS,KAAK,CAAC,SAAS,CAAC,EAAE,QAAQ,SAAS,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,EAAE,SAAS,SAAS,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,IAClI;KACK,GAAG,IAAI,OAAO,CAAC,MAAM,QAAQ,EAAE,MAAM,OAAO,EAAE,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,GAC1E,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC;CAC9D,GACD;KACK,GAAG,IAAI,OAAO,CAAC,MAAM,SAAS,EAAE,MAAM,OAAO,EAAE,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,EAC9E,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC;CAC/D,CAAC;AAEN,aAAK,UAAU,CAAC,OAAO,SAAS,KAAK,CAAC,SAAS,CAAC,IAAI;IAChD,KAAK,EAAE,CAAC,QAAQ,SAAS,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,EAAE,SAAS,SAAS,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,EAC7F,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/types/model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC;AACpD,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAEnC,aAAK,WAAW,CAAC,OAAO,SAAS,KAAK,CAAC,SAAS,CAAC,IAAI;KAAG,GAAG,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC;CAAG,CAAC;AAE7H,aAAK,KAAK,CAAC,OAAO,SAAS,KAAK,CAAC,SAAS,CAAC,EAAE,QAAQ,SAAS,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,EAAE,SAAS,SAAS,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,IAClI;KACK,GAAG,IAAI,OAAO,CAAC,MAAM,QAAQ,EAAE,MAAM,OAAO,EAAE,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,GAC1E,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC;CAC9D,GACD;KACK,GAAG,IAAI,OAAO,CAAC,MAAM,SAAS,EAAE,MAAM,OAAO,EAAE,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,EAC9E,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC;CAC/D,CAAC;AAEN,aAAK,UAAU,CAAC,OAAO,SAAS,KAAK,CAAC,SAAS,CAAC,IAAI;IAChD,KAAK,EAAE,CAAC,QAAQ,SAAS,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,EAAE,SAAS,SAAS,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,EAC7F,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EAChC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,SAAS,EACnB,QAAQ,CAAC,EAAE,OAAO,KACjB,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,QAAQ,EAAE,MAAM,OAAO,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,SAAS,EAAE,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5J,QAAQ,EAAE,CAAC,CAAC,SAAS,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EAC9C,IAAI,EAAE,CAAC,KACN,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;CACnC,GAAG;KACC,GAAG,IAAI,MAAM,OAAO,GAAG;QACpB,KAAK,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;QACzF,QAAQ,EAAE,CAAC,CAAC,EAAE,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC;KAC/D;CACJ,CAAC;AAEF,YAAY,EACR,WAAW,EACX,KAAK,EACL,UAAU,EACb,CAAC"}
|