@zenstackhq/runtime 1.0.0-beta.2 → 1.0.0-beta.21
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/browser/index.d.mts +13 -0
- package/browser/index.d.ts +13 -0
- package/browser/index.js +70 -0
- package/browser/index.js.map +1 -0
- package/browser/index.mjs +32 -0
- package/browser/index.mjs.map +1 -0
- package/constants.d.ts +58 -13
- package/constants.js +60 -14
- package/constants.js.map +1 -1
- package/enhancements/enhance.d.ts +18 -0
- package/enhancements/enhance.js +42 -0
- package/enhancements/enhance.js.map +1 -0
- package/enhancements/index.d.ts +5 -0
- package/enhancements/index.js +5 -0
- package/enhancements/index.js.map +1 -1
- package/enhancements/model-data-visitor.d.ts +16 -0
- package/enhancements/model-data-visitor.js +41 -0
- package/enhancements/model-data-visitor.js.map +1 -0
- package/enhancements/model-meta.d.ts +6 -1
- package/enhancements/model-meta.js +23 -2
- package/enhancements/model-meta.js.map +1 -1
- package/enhancements/nested-write-vistor.d.ts +21 -16
- package/enhancements/nested-write-vistor.js +73 -34
- package/enhancements/nested-write-vistor.js.map +1 -1
- package/enhancements/omit.d.ts +1 -1
- package/enhancements/policy/handler.d.ts +36 -20
- package/enhancements/policy/handler.js +824 -159
- package/enhancements/policy/handler.js.map +1 -1
- package/enhancements/policy/index.d.ts +6 -2
- package/enhancements/policy/index.js +53 -3
- package/enhancements/policy/index.js.map +1 -1
- package/enhancements/policy/logger.js +1 -1
- package/enhancements/policy/logger.js.map +1 -1
- package/enhancements/policy/policy-utils.d.ts +106 -46
- package/enhancements/policy/policy-utils.js +744 -624
- package/enhancements/policy/policy-utils.js.map +1 -1
- package/enhancements/policy/promise.d.ts +5 -0
- package/enhancements/policy/promise.js +42 -0
- package/enhancements/policy/promise.js.map +1 -0
- package/enhancements/preset.d.ts +3 -8
- package/enhancements/preset.js +2 -4
- package/enhancements/preset.js.map +1 -1
- package/enhancements/proxy.d.ts +3 -1
- package/enhancements/proxy.js +45 -28
- package/enhancements/proxy.js.map +1 -1
- package/enhancements/types.d.ts +25 -8
- package/enhancements/types.js +1 -0
- package/enhancements/types.js.map +1 -1
- package/enhancements/utils.d.ts +4 -0
- package/enhancements/utils.js +60 -10
- package/enhancements/utils.js.map +1 -1
- package/enhancements/where-visitor.d.ts +33 -0
- package/enhancements/where-visitor.js +87 -0
- package/enhancements/where-visitor.js.map +1 -0
- package/error.js +9 -3
- package/error.js.map +1 -1
- package/index.d.ts +3 -2
- package/index.js +3 -2
- package/index.js.map +1 -1
- package/package.json +33 -9
- package/types.d.ts +24 -14
- package/types.js +2 -0
- package/types.js.map +1 -1
- package/validation.d.ts +5 -0
- package/validation.js +13 -1
- package/validation.js.map +1 -1
- package/version.d.ts +5 -0
- package/version.js +34 -1
- package/version.js.map +1 -1
- package/zod/index.d.ts +3 -0
- package/zod/index.js +5 -0
- package/zod/input.d.ts +1 -0
- package/zod/input.js +8 -0
- package/zod/models.d.ts +1 -0
- package/zod/models.js +8 -0
- package/zod/objects.d.ts +1 -0
- package/zod/objects.js +8 -0
- package/serialization-utils.d.ts +0 -1
- package/serialization-utils.js +0 -22
- package/serialization-utils.js.map +0 -1
- package/zod.d.ts +0 -10
- package/zod.js +0 -17
- package/zod.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/enhancements/utils.ts"],"names":[],"mappings":";AAAA,uDAAuD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEvD,uDAAkD;AAClD,gDAAwB;AACxB,2CAA6B;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/enhancements/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { FieldInfo } from '../types';
|
|
2
|
+
import { ModelMeta } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Context for visiting
|
|
5
|
+
*/
|
|
6
|
+
export type WhereVisitorContext = {
|
|
7
|
+
/**
|
|
8
|
+
* Parent data, can be used to replace fields
|
|
9
|
+
*/
|
|
10
|
+
parent: any;
|
|
11
|
+
/**
|
|
12
|
+
* Current field, undefined if toplevel
|
|
13
|
+
*/
|
|
14
|
+
field?: FieldInfo;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* WhereVisitor's callback actions
|
|
18
|
+
*/
|
|
19
|
+
export type WhereVisitorCallback = {
|
|
20
|
+
field?: (field: FieldInfo, data: any) => Promise<unknown>;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Recursive visitor for where payload
|
|
24
|
+
*/
|
|
25
|
+
export declare class WhereVisitor {
|
|
26
|
+
private readonly modelMeta;
|
|
27
|
+
private readonly callback;
|
|
28
|
+
constructor(modelMeta: ModelMeta, callback: WhereVisitorCallback);
|
|
29
|
+
/**
|
|
30
|
+
* Start visiting
|
|
31
|
+
*/
|
|
32
|
+
visit(model: string, where: any): Promise<void>;
|
|
33
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
3
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
4
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
5
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
6
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
7
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
8
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
9
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
10
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.WhereVisitor = void 0;
|
|
15
|
+
const model_meta_1 = require("./model-meta");
|
|
16
|
+
const utils_1 = require("./utils");
|
|
17
|
+
const FILTER_OPERATORS = [
|
|
18
|
+
'equals',
|
|
19
|
+
'not',
|
|
20
|
+
'in',
|
|
21
|
+
'notIn',
|
|
22
|
+
'lt',
|
|
23
|
+
'lte',
|
|
24
|
+
'gt',
|
|
25
|
+
'gte',
|
|
26
|
+
'contains',
|
|
27
|
+
'search',
|
|
28
|
+
'startsWith',
|
|
29
|
+
'endsWith',
|
|
30
|
+
];
|
|
31
|
+
const RELATION_FILTER_OPERATORS = ['is', 'isNot', 'some', 'every', 'none'];
|
|
32
|
+
/**
|
|
33
|
+
* Recursive visitor for where payload
|
|
34
|
+
*/
|
|
35
|
+
class WhereVisitor {
|
|
36
|
+
constructor(modelMeta, callback) {
|
|
37
|
+
this.modelMeta = modelMeta;
|
|
38
|
+
this.callback = callback;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Start visiting
|
|
42
|
+
*/
|
|
43
|
+
visit(model, where) {
|
|
44
|
+
var _a, _b, _c, _d;
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
if (!where) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
for (const [k, v] of Object.entries(where)) {
|
|
50
|
+
if (['AND', 'OR', 'NOT'].includes(k)) {
|
|
51
|
+
for (const item of (0, utils_1.enumerate)(v)) {
|
|
52
|
+
yield this.visit(model, item);
|
|
53
|
+
}
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
if (RELATION_FILTER_OPERATORS.includes(k)) {
|
|
57
|
+
// visit into filter body
|
|
58
|
+
yield this.visit(model, v);
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
const field = (0, model_meta_1.resolveField)(this.modelMeta, model, k);
|
|
62
|
+
if (!field) {
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
if (typeof v === 'object') {
|
|
66
|
+
const filterOp = Object.keys(v).find((f) => FILTER_OPERATORS.includes(f));
|
|
67
|
+
if (filterOp) {
|
|
68
|
+
// reach into filter value
|
|
69
|
+
const newValue = yield ((_b = (_a = this.callback).field) === null || _b === void 0 ? void 0 : _b.call(_a, field, v[filterOp]));
|
|
70
|
+
v[filterOp] = newValue;
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
if (Object.keys(v).some((f) => RELATION_FILTER_OPERATORS.includes(f))) {
|
|
74
|
+
// filter payload
|
|
75
|
+
yield this.visit(field.type, v);
|
|
76
|
+
continue;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
// scalar field
|
|
80
|
+
const newValue = yield ((_d = (_c = this.callback).field) === null || _d === void 0 ? void 0 : _d.call(_c, field, v));
|
|
81
|
+
where[k] = newValue;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
exports.WhereVisitor = WhereVisitor;
|
|
87
|
+
//# sourceMappingURL=where-visitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"where-visitor.js","sourceRoot":"","sources":["../../src/enhancements/where-visitor.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,uDAAuD;;;;;;;;;;;;AAGvD,6CAA4C;AAE5C,mCAAoC;AAwBpC,MAAM,gBAAgB,GAAG;IACrB,QAAQ;IACR,KAAK;IACL,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,KAAK;IACL,UAAU;IACV,QAAQ;IACR,YAAY;IACZ,UAAU;CACb,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAa,YAAY;IACrB,YAA6B,SAAoB,EAAmB,QAA8B;QAArE,cAAS,GAAT,SAAS,CAAW;QAAmB,aAAQ,GAAR,QAAQ,CAAsB;IAAG,CAAC;IAEtG;;OAEG;IACG,KAAK,CAAC,KAAa,EAAE,KAAU;;;YACjC,IAAI,CAAC,KAAK,EAAE;gBACR,OAAO;aACV;YAED,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAM,KAAK,CAAC,EAAE;gBAC7C,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;oBAClC,KAAK,MAAM,IAAI,IAAI,IAAA,iBAAS,EAAC,CAAC,CAAC,EAAE;wBAC7B,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;qBACjC;oBACD,SAAS;iBACZ;gBAED,IAAI,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;oBACvC,yBAAyB;oBACzB,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAC3B,SAAS;iBACZ;gBAED,MAAM,KAAK,GAAG,IAAA,yBAAY,EAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBACrD,IAAI,CAAC,KAAK,EAAE;oBACR,SAAS;iBACZ;gBAED,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;oBACvB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,IAAI,QAAQ,EAAE;wBACV,0BAA0B;wBAC1B,MAAM,QAAQ,GAAG,MAAM,CAAA,MAAA,MAAA,IAAI,CAAC,QAAQ,EAAC,KAAK,mDAAG,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA,CAAC;wBACjE,CAAC,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;wBACvB,SAAS;qBACZ;oBAED,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;wBACnE,iBAAiB;wBACjB,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBAChC,SAAS;qBACZ;iBACJ;gBAED,eAAe;gBACf,MAAM,QAAQ,GAAG,MAAM,CAAA,MAAA,MAAA,IAAI,CAAC,QAAQ,EAAC,KAAK,mDAAG,KAAK,EAAE,CAAC,CAAC,CAAA,CAAC;gBACvD,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;aACvB;;KACJ;CACJ;AAnDD,oCAmDC"}
|
package/error.js
CHANGED
|
@@ -3,15 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.isPrismaClientValidationError = exports.isPrismaClientUnknownRequestError = exports.isPrismaClientKnownRequestError = void 0;
|
|
4
4
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
5
|
function isPrismaClientKnownRequestError(err) {
|
|
6
|
-
return err.__proto__
|
|
6
|
+
return findConstructorName(err.__proto__, 'PrismaClientKnownRequestError');
|
|
7
7
|
}
|
|
8
8
|
exports.isPrismaClientKnownRequestError = isPrismaClientKnownRequestError;
|
|
9
9
|
function isPrismaClientUnknownRequestError(err) {
|
|
10
|
-
return err.__proto__
|
|
10
|
+
return findConstructorName(err.__proto__, 'PrismaClientUnknownRequestError');
|
|
11
11
|
}
|
|
12
12
|
exports.isPrismaClientUnknownRequestError = isPrismaClientUnknownRequestError;
|
|
13
13
|
function isPrismaClientValidationError(err) {
|
|
14
|
-
return err.__proto__
|
|
14
|
+
return findConstructorName(err.__proto__, 'PrismaClientValidationError');
|
|
15
15
|
}
|
|
16
16
|
exports.isPrismaClientValidationError = isPrismaClientValidationError;
|
|
17
|
+
function findConstructorName(proto, name) {
|
|
18
|
+
if (!proto) {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
return proto.constructor.name === name || findConstructorName(proto.__proto__, name);
|
|
22
|
+
}
|
|
17
23
|
//# sourceMappingURL=error.js.map
|
package/error.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";;;AAAA,uDAAuD;AACvD,SAAgB,+BAA+B,CAC3C,GAAQ;IAER,OAAO,
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";;;AAAA,uDAAuD;AACvD,SAAgB,+BAA+B,CAC3C,GAAQ;IAER,OAAO,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,+BAA+B,CAAC,CAAC;AAC/E,CAAC;AAJD,0EAIC;AAED,SAAgB,iCAAiC,CAAC,GAAQ;IACtD,OAAO,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,iCAAiC,CAAC,CAAC;AACjF,CAAC;AAFD,8EAEC;AAED,SAAgB,6BAA6B,CAAC,GAAQ;IAClD,OAAO,mBAAmB,CAAC,GAAG,CAAC,SAAS,EAAE,6BAA6B,CAAC,CAAC;AAC7E,CAAC;AAFD,sEAEC;AAED,SAAS,mBAAmB,CAAC,KAAU,EAAE,IAAY;IACjD,IAAI,CAAC,KAAK,EAAE;QACR,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI,IAAI,mBAAmB,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACzF,CAAC"}
|
package/index.d.ts
CHANGED
package/index.js
CHANGED
|
@@ -14,9 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./constants"), exports);
|
|
17
18
|
__exportStar(require("./enhancements"), exports);
|
|
18
|
-
__exportStar(require("./
|
|
19
|
+
__exportStar(require("./error"), exports);
|
|
19
20
|
__exportStar(require("./types"), exports);
|
|
20
21
|
__exportStar(require("./validation"), exports);
|
|
21
|
-
__exportStar(require("./
|
|
22
|
+
__exportStar(require("./version"), exports);
|
|
22
23
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,iDAA+B;AAC/B,0CAAwB;AACxB,0CAAwB;AACxB,+CAA6B;AAC7B,4CAA0B"}
|
package/package.json
CHANGED
|
@@ -1,34 +1,58 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zenstackhq/runtime",
|
|
3
3
|
"displayName": "ZenStack Runtime Library",
|
|
4
|
-
"version": "1.0.0-beta.
|
|
4
|
+
"version": "1.0.0-beta.21",
|
|
5
5
|
"description": "Runtime of ZenStack for both client-side and server-side environments.",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/zenstackhq/zenstack"
|
|
9
9
|
},
|
|
10
|
+
"main": "index.js",
|
|
11
|
+
"types": "index.d.ts",
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"default": "./index.js"
|
|
15
|
+
},
|
|
16
|
+
"./package.json": {
|
|
17
|
+
"default": "./package.json"
|
|
18
|
+
},
|
|
19
|
+
"./zod": {
|
|
20
|
+
"default": "./zod/index.js"
|
|
21
|
+
},
|
|
22
|
+
"./zod/input": {
|
|
23
|
+
"default": "./zod/input.js"
|
|
24
|
+
},
|
|
25
|
+
"./zod/models": {
|
|
26
|
+
"default": "./zod/models.js"
|
|
27
|
+
},
|
|
28
|
+
"./browser": {
|
|
29
|
+
"import": "./browser/index.mjs",
|
|
30
|
+
"require": "./browser/index.js",
|
|
31
|
+
"default": "./browser/index.js",
|
|
32
|
+
"types": "./browser/index.d.ts"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
10
35
|
"publishConfig": {
|
|
11
36
|
"directory": "dist",
|
|
12
37
|
"linkDirectory": true
|
|
13
38
|
},
|
|
14
39
|
"dependencies": {
|
|
15
|
-
"@paralleldrive/cuid2": "^2.2.0",
|
|
16
40
|
"@types/bcryptjs": "^2.4.2",
|
|
17
41
|
"bcryptjs": "^2.4.3",
|
|
42
|
+
"buffer": "^6.0.3",
|
|
18
43
|
"change-case": "^4.1.2",
|
|
19
44
|
"colors": "1.4.0",
|
|
20
45
|
"decimal.js": "^10.4.2",
|
|
21
46
|
"deepcopy": "^2.1.0",
|
|
22
47
|
"lower-case-first": "^2.0.2",
|
|
23
48
|
"pluralize": "^8.0.0",
|
|
49
|
+
"semver": "^7.3.8",
|
|
24
50
|
"superjson": "^1.11.0",
|
|
25
51
|
"tslib": "^2.4.1",
|
|
52
|
+
"upper-case-first": "^2.0.2",
|
|
26
53
|
"zod": "3.21.1",
|
|
27
54
|
"zod-validation-error": "^0.2.1"
|
|
28
55
|
},
|
|
29
|
-
"peerDependencies": {
|
|
30
|
-
"@prisma/client": "^4.0.0"
|
|
31
|
-
},
|
|
32
56
|
"author": {
|
|
33
57
|
"name": "ZenStack Team"
|
|
34
58
|
},
|
|
@@ -37,17 +61,17 @@
|
|
|
37
61
|
"devDependencies": {
|
|
38
62
|
"@types/bcryptjs": "^2.4.2",
|
|
39
63
|
"@types/jest": "^29.5.0",
|
|
40
|
-
"@types/
|
|
41
|
-
"@types/node": "^14.18.29",
|
|
64
|
+
"@types/node": "^18.0.0",
|
|
42
65
|
"@types/pluralize": "^0.0.29",
|
|
66
|
+
"@types/semver": "^7.3.13",
|
|
43
67
|
"copyfiles": "^2.4.1",
|
|
44
68
|
"rimraf": "^3.0.2",
|
|
45
69
|
"typescript": "^4.9.3"
|
|
46
70
|
},
|
|
47
71
|
"scripts": {
|
|
48
72
|
"clean": "rimraf dist",
|
|
49
|
-
"build": "pnpm lint && pnpm clean && tsc && copyfiles ./package.json ./README.md ../../LICENSE dist",
|
|
50
|
-
"watch": "tsc --watch",
|
|
73
|
+
"build": "pnpm lint && pnpm clean && tsc && tsup-node && copyfiles ./package.json ./README.md ../../LICENSE dist && copyfiles -u1 'res/**/*' dist && pnpm pack dist --pack-destination '../../../.build'",
|
|
74
|
+
"watch": "concurrently \"tsc --watch\" \"tsup-node --watch\"",
|
|
51
75
|
"lint": "eslint src --ext ts",
|
|
52
76
|
"publish-dev": "pnpm publish --tag dev"
|
|
53
77
|
}
|
package/types.d.ts
CHANGED
|
@@ -1,28 +1,31 @@
|
|
|
1
|
+
export type PrismaPromise<T> = Promise<T> & Record<string, (args?: any) => PrismaPromise<any>>;
|
|
1
2
|
/**
|
|
2
3
|
* Weakly-typed database access methods
|
|
3
4
|
*/
|
|
4
5
|
export interface DbOperations {
|
|
5
|
-
findMany(args?: unknown): Promise<
|
|
6
|
-
findFirst(args
|
|
7
|
-
findFirstOrThrow(args
|
|
8
|
-
findUnique(args: unknown):
|
|
9
|
-
findUniqueOrThrow(args: unknown):
|
|
10
|
-
create(args: unknown): Promise<
|
|
6
|
+
findMany(args?: unknown): Promise<any[]>;
|
|
7
|
+
findFirst(args?: unknown): PrismaPromise<any>;
|
|
8
|
+
findFirstOrThrow(args?: unknown): PrismaPromise<any>;
|
|
9
|
+
findUnique(args: unknown): PrismaPromise<any>;
|
|
10
|
+
findUniqueOrThrow(args: unknown): PrismaPromise<any>;
|
|
11
|
+
create(args: unknown): Promise<any>;
|
|
11
12
|
createMany(args: unknown, skipDuplicates?: boolean): Promise<{
|
|
12
13
|
count: number;
|
|
13
14
|
}>;
|
|
14
|
-
update(args: unknown): Promise<
|
|
15
|
+
update(args: unknown): Promise<any>;
|
|
15
16
|
updateMany(args: unknown): Promise<{
|
|
16
17
|
count: number;
|
|
17
18
|
}>;
|
|
18
|
-
upsert(args: unknown): Promise<
|
|
19
|
-
delete(args: unknown): Promise<
|
|
19
|
+
upsert(args: unknown): Promise<any>;
|
|
20
|
+
delete(args: unknown): Promise<any>;
|
|
20
21
|
deleteMany(args?: unknown): Promise<{
|
|
21
22
|
count: number;
|
|
22
23
|
}>;
|
|
23
|
-
aggregate(args: unknown): Promise<
|
|
24
|
-
groupBy(args: unknown): Promise<
|
|
25
|
-
count(args?: unknown): Promise<
|
|
24
|
+
aggregate(args: unknown): Promise<any>;
|
|
25
|
+
groupBy(args: unknown): Promise<any>;
|
|
26
|
+
count(args?: unknown): Promise<any>;
|
|
27
|
+
subscribe(args?: unknown): Promise<any>;
|
|
28
|
+
fields: Record<string, any>;
|
|
26
29
|
}
|
|
27
30
|
/**
|
|
28
31
|
* Kinds of access policy
|
|
@@ -44,6 +47,9 @@ export type QueryContext = {
|
|
|
44
47
|
* Current login user (provided by @see RequestHandlerOptions)
|
|
45
48
|
*/
|
|
46
49
|
user?: AuthUser;
|
|
50
|
+
/**
|
|
51
|
+
* Pre-update value of the entity
|
|
52
|
+
*/
|
|
47
53
|
preValue?: any;
|
|
48
54
|
};
|
|
49
55
|
export type RuntimeAttribute = {
|
|
@@ -93,9 +99,13 @@ export type FieldInfo = {
|
|
|
93
99
|
* If the field is the owner side of a relation
|
|
94
100
|
*/
|
|
95
101
|
isRelationOwner: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Mapping from foreign key field names to relation field names
|
|
104
|
+
*/
|
|
105
|
+
foreignKeyMapping?: Record<string, string>;
|
|
96
106
|
};
|
|
97
107
|
export type DbClientContract = Record<string, DbOperations> & {
|
|
98
|
-
$transaction: <T>(action: (tx: Record<string, DbOperations>) => Promise<T
|
|
108
|
+
$transaction: <T>(action: (tx: Record<string, DbOperations>) => Promise<T>, options?: unknown) => Promise<T>;
|
|
99
109
|
};
|
|
100
|
-
export declare const PrismaWriteActions: readonly ["create", "createMany", "connectOrCreate", "update", "updateMany", "upsert", "connect", "disconnect", "delete", "deleteMany"];
|
|
110
|
+
export declare const PrismaWriteActions: readonly ["create", "createMany", "connectOrCreate", "update", "updateMany", "upsert", "connect", "disconnect", "set", "delete", "deleteMany"];
|
|
101
111
|
export type PrismaWriteActionType = (typeof PrismaWriteActions)[number];
|
package/types.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
4
|
exports.PrismaWriteActions = void 0;
|
|
4
5
|
exports.PrismaWriteActions = [
|
|
@@ -10,6 +11,7 @@ exports.PrismaWriteActions = [
|
|
|
10
11
|
'upsert',
|
|
11
12
|
'connect',
|
|
12
13
|
'disconnect',
|
|
14
|
+
'set',
|
|
13
15
|
'delete',
|
|
14
16
|
'deleteMany',
|
|
15
17
|
];
|
package/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA,uDAAuD;;;AA0H1C,QAAA,kBAAkB,GAAG;IAC9B,QAAQ;IACR,YAAY;IACZ,iBAAiB;IACjB,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,SAAS;IACT,YAAY;IACZ,KAAK;IACL,QAAQ;IACR,YAAY;CACN,CAAC"}
|
package/validation.d.ts
CHANGED
|
@@ -17,3 +17,8 @@ export declare function validate(validator: z.ZodType, data: unknown): void;
|
|
|
17
17
|
* @returns
|
|
18
18
|
*/
|
|
19
19
|
export declare function hasAllFields(obj: any, fields: string[]): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Check if the given objects have equal values for the given fields. Returns
|
|
22
|
+
* false if either object is nullish or is not an object.
|
|
23
|
+
*/
|
|
24
|
+
export declare function allFieldsEqual(obj1: any, obj2: any, fields: string[]): boolean;
|
package/validation.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.hasAllFields = exports.validate = exports.ValidationError = void 0;
|
|
3
|
+
exports.allFieldsEqual = exports.hasAllFields = exports.validate = exports.ValidationError = void 0;
|
|
4
4
|
const zod_validation_error_1 = require("zod-validation-error");
|
|
5
5
|
/**
|
|
6
6
|
* Error indicating violations of field-level constraints
|
|
@@ -37,4 +37,16 @@ function hasAllFields(obj, fields) {
|
|
|
37
37
|
return fields.every((f) => obj[f] !== undefined && obj[f] !== null);
|
|
38
38
|
}
|
|
39
39
|
exports.hasAllFields = hasAllFields;
|
|
40
|
+
/**
|
|
41
|
+
* Check if the given objects have equal values for the given fields. Returns
|
|
42
|
+
* false if either object is nullish or is not an object.
|
|
43
|
+
*/
|
|
44
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
45
|
+
function allFieldsEqual(obj1, obj2, fields) {
|
|
46
|
+
if (!obj1 || !obj2 || typeof obj1 !== 'object' || typeof obj2 !== 'object') {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
return fields.every((f) => obj1[f] === obj2[f]);
|
|
50
|
+
}
|
|
51
|
+
exports.allFieldsEqual = allFieldsEqual;
|
|
40
52
|
//# sourceMappingURL=validation.js.map
|
package/validation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":";;;AACA,+DAAoD;AAEpD;;GAEG;AACH,MAAa,eAAe;IACxB,YAA4B,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;CAClD;AAFD,0CAEC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,SAAoB,EAAE,IAAa;IACxD,IAAI;QACA,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACzB;IAAC,OAAO,GAAG,EAAE;QACV,MAAM,IAAI,eAAe,CAAC,IAAA,mCAAY,EAAC,GAAiB,CAAC,CAAC,OAAO,CAAC,CAAC;KACtE;AACL,CAAC;AAND,4BAMC;AAED;;;;;GAKG;AACH,8DAA8D;AAC9D,SAAgB,YAAY,CAAC,GAAQ,EAAE,MAAgB;IACnD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,EAAE;QACjC,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;AACxE,CAAC;AALD,oCAKC"}
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":";;;AACA,+DAAoD;AAEpD;;GAEG;AACH,MAAa,eAAe;IACxB,YAA4B,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;CAClD;AAFD,0CAEC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,SAAoB,EAAE,IAAa;IACxD,IAAI;QACA,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACzB;IAAC,OAAO,GAAG,EAAE;QACV,MAAM,IAAI,eAAe,CAAC,IAAA,mCAAY,EAAC,GAAiB,CAAC,CAAC,OAAO,CAAC,CAAC;KACtE;AACL,CAAC;AAND,4BAMC;AAED;;;;;GAKG;AACH,8DAA8D;AAC9D,SAAgB,YAAY,CAAC,GAAQ,EAAE,MAAgB;IACnD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,EAAE;QACjC,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;AACxE,CAAC;AALD,oCAKC;AAED;;;GAGG;AACH,8DAA8D;AAC9D,SAAgB,cAAc,CAAC,IAAS,EAAE,IAAS,EAAE,MAAgB;IACjE,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACxE,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AALD,wCAKC"}
|
package/version.d.ts
CHANGED
package/version.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getVersion = void 0;
|
|
6
|
+
exports.getPrismaVersion = exports.getVersion = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
4
8
|
/* eslint-disable @typescript-eslint/no-var-requires */
|
|
5
9
|
function getVersion() {
|
|
6
10
|
try {
|
|
@@ -17,4 +21,33 @@ function getVersion() {
|
|
|
17
21
|
}
|
|
18
22
|
}
|
|
19
23
|
exports.getVersion = getVersion;
|
|
24
|
+
/**
|
|
25
|
+
* Gets installed Prisma version by first checking "@prisma/client" and if not available,
|
|
26
|
+
* "prisma".
|
|
27
|
+
*/
|
|
28
|
+
function getPrismaVersion() {
|
|
29
|
+
try {
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
31
|
+
return require('@prisma/client/package.json').version;
|
|
32
|
+
}
|
|
33
|
+
catch (_a) {
|
|
34
|
+
try {
|
|
35
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
36
|
+
return require('prisma/package.json').version;
|
|
37
|
+
}
|
|
38
|
+
catch (_b) {
|
|
39
|
+
if (process.env.ZENSTACK_TEST === '1') {
|
|
40
|
+
// test environment
|
|
41
|
+
try {
|
|
42
|
+
return require(path_1.default.resolve('./node_modules/@prisma/client/package.json')).version;
|
|
43
|
+
}
|
|
44
|
+
catch (_c) {
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return undefined;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.getPrismaVersion = getPrismaVersion;
|
|
20
53
|
//# sourceMappingURL=version.js.map
|
package/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAExB,uDAAuD;AACvD,SAAgB,UAAU;IACtB,IAAI;QACA,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC;KAC5C;IAAC,WAAM;QACJ,IAAI;YACA,kBAAkB;YAClB,OAAO,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC;SAC7C;QAAC,WAAM;YACJ,OAAO,SAAS,CAAC;SACpB;KACJ;AACL,CAAC;AAXD,gCAWC;AAED;;;GAGG;AACH,SAAgB,gBAAgB;IAC5B,IAAI;QACA,8DAA8D;QAC9D,OAAO,OAAO,CAAC,6BAA6B,CAAC,CAAC,OAAO,CAAC;KACzD;IAAC,WAAM;QACJ,IAAI;YACA,8DAA8D;YAC9D,OAAO,OAAO,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC;SACjD;QAAC,WAAM;YACJ,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,GAAG,EAAE;gBACnC,mBAAmB;gBACnB,IAAI;oBACA,OAAO,OAAO,CAAC,cAAI,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC,CAAC,OAAO,CAAC;iBACtF;gBAAC,WAAM;oBACJ,OAAO,SAAS,CAAC;iBACpB;aACJ;YAED,OAAO,SAAS,CAAC;SACpB;KACJ;AACL,CAAC;AArBD,4CAqBC"}
|
package/zod/index.d.ts
ADDED
package/zod/index.js
ADDED
package/zod/input.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '.zenstack/zod/input';
|
package/zod/input.js
ADDED
package/zod/models.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '.zenstack/zod/models';
|
package/zod/models.js
ADDED
package/zod/objects.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from '.zenstack/zod/objects';
|
package/zod/objects.js
ADDED
package/serialization-utils.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function registerSerializers(): void;
|
package/serialization-utils.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.registerSerializers = void 0;
|
|
7
|
-
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
8
|
-
const superjson_1 = __importDefault(require("superjson"));
|
|
9
|
-
function registerSerializers() {
|
|
10
|
-
superjson_1.default.registerCustom({
|
|
11
|
-
isApplicable: (v) => Buffer.isBuffer(v),
|
|
12
|
-
serialize: (v) => JSON.stringify(v.toJSON().data),
|
|
13
|
-
deserialize: (v) => Buffer.from(JSON.parse(v)),
|
|
14
|
-
}, 'Buffer');
|
|
15
|
-
superjson_1.default.registerCustom({
|
|
16
|
-
isApplicable: (v) => decimal_js_1.default.isDecimal(v),
|
|
17
|
-
serialize: (v) => v.toJSON(),
|
|
18
|
-
deserialize: (v) => new decimal_js_1.default(v),
|
|
19
|
-
}, 'decimal.js');
|
|
20
|
-
}
|
|
21
|
-
exports.registerSerializers = registerSerializers;
|
|
22
|
-
//# sourceMappingURL=serialization-utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serialization-utils.js","sourceRoot":"","sources":["../src/serialization-utils.ts"],"names":[],"mappings":";;;;;;AAAA,4DAAiC;AACjC,0DAAkC;AAElC,SAAgB,mBAAmB;IAC/B,mBAAS,CAAC,cAAc,CACpB;QACI,YAAY,EAAE,CAAC,CAAC,EAAe,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACpD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC;QACjD,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACjD,EACD,QAAQ,CACX,CAAC;IACF,mBAAS,CAAC,cAAc,CACpB;QACI,YAAY,EAAE,CAAC,CAAC,EAAgB,EAAE,CAAC,oBAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;QAC5B,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,oBAAO,CAAC,CAAC,CAAC;KACrC,EACD,YAAY,CACf,CAAC;AACN,CAAC;AAjBD,kDAiBC"}
|
package/zod.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import z from 'zod';
|
|
2
|
-
import { DbOperations } from './types';
|
|
3
|
-
/**
|
|
4
|
-
* Mapping from model type name to zod schema for Prisma operations
|
|
5
|
-
*/
|
|
6
|
-
export type ModelZodSchema = Record<string, Record<keyof DbOperations, z.ZodType>>;
|
|
7
|
-
/**
|
|
8
|
-
* Load zod schema from standard location.
|
|
9
|
-
*/
|
|
10
|
-
export declare function getModelZodSchemas(): ModelZodSchema;
|
package/zod.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getModelZodSchemas = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Load zod schema from standard location.
|
|
6
|
-
*/
|
|
7
|
-
function getModelZodSchemas() {
|
|
8
|
-
try {
|
|
9
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
10
|
-
return require('.zenstack/zod').default;
|
|
11
|
-
}
|
|
12
|
-
catch (_a) {
|
|
13
|
-
throw new Error('Zod schemas cannot be loaded. Please make sure "@core/zod" plugin is enabled in schema.zmodel.');
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
exports.getModelZodSchemas = getModelZodSchemas;
|
|
17
|
-
//# sourceMappingURL=zod.js.map
|
package/zod.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zod.js","sourceRoot":"","sources":["../src/zod.ts"],"names":[],"mappings":";;;AAQA;;GAEG;AACH,SAAgB,kBAAkB;IAC9B,IAAI;QACA,8DAA8D;QAC9D,OAAO,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC;KAC3C;IAAC,WAAM;QACJ,MAAM,IAAI,KAAK,CACX,gGAAgG,CACnG,CAAC;KACL;AACL,CAAC;AATD,gDASC"}
|