@zenstackhq/runtime 1.0.0-beta.8 → 1.0.0

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.
Files changed (86) hide show
  1. package/browser/index.d.mts +13 -0
  2. package/browser/index.d.ts +13 -0
  3. package/browser/index.js +70 -0
  4. package/browser/index.js.map +1 -0
  5. package/browser/index.mjs +32 -0
  6. package/browser/index.mjs.map +1 -0
  7. package/constants.d.ts +66 -13
  8. package/constants.js +69 -15
  9. package/constants.js.map +1 -1
  10. package/enhancements/enhance.d.ts +18 -0
  11. package/enhancements/enhance.js +42 -0
  12. package/enhancements/enhance.js.map +1 -0
  13. package/enhancements/index.d.ts +5 -0
  14. package/enhancements/index.js +5 -0
  15. package/enhancements/index.js.map +1 -1
  16. package/enhancements/model-data-visitor.d.ts +16 -0
  17. package/enhancements/model-data-visitor.js +41 -0
  18. package/enhancements/model-data-visitor.js.map +1 -0
  19. package/enhancements/model-meta.d.ts +3 -6
  20. package/enhancements/model-meta.js +3 -28
  21. package/enhancements/model-meta.js.map +1 -1
  22. package/enhancements/nested-write-visitor.d.ts +75 -0
  23. package/enhancements/{nested-write-vistor.js → nested-write-visitor.js} +68 -29
  24. package/enhancements/nested-write-visitor.js.map +1 -0
  25. package/enhancements/omit.d.ts +4 -4
  26. package/enhancements/omit.js +2 -1
  27. package/enhancements/omit.js.map +1 -1
  28. package/enhancements/password.d.ts +4 -4
  29. package/enhancements/password.js +4 -4
  30. package/enhancements/password.js.map +1 -1
  31. package/enhancements/policy/handler.d.ts +34 -18
  32. package/enhancements/policy/handler.js +844 -157
  33. package/enhancements/policy/handler.js.map +1 -1
  34. package/enhancements/policy/index.d.ts +4 -4
  35. package/enhancements/policy/index.js +20 -38
  36. package/enhancements/policy/index.js.map +1 -1
  37. package/enhancements/policy/logger.js +1 -1
  38. package/enhancements/policy/logger.js.map +1 -1
  39. package/enhancements/policy/policy-utils.d.ts +106 -48
  40. package/enhancements/policy/policy-utils.js +778 -650
  41. package/enhancements/policy/policy-utils.js.map +1 -1
  42. package/enhancements/policy/promise.d.ts +5 -0
  43. package/enhancements/policy/promise.js +42 -0
  44. package/enhancements/policy/promise.js.map +1 -0
  45. package/enhancements/preset.d.ts +3 -8
  46. package/enhancements/preset.js +2 -4
  47. package/enhancements/preset.js.map +1 -1
  48. package/enhancements/proxy.d.ts +3 -1
  49. package/enhancements/proxy.js +45 -28
  50. package/enhancements/proxy.js.map +1 -1
  51. package/enhancements/types.d.ts +24 -7
  52. package/enhancements/types.js +1 -0
  53. package/enhancements/types.js.map +1 -1
  54. package/enhancements/utils.d.ts +5 -1
  55. package/enhancements/utils.js +62 -12
  56. package/enhancements/utils.js.map +1 -1
  57. package/enhancements/where-visitor.d.ts +33 -0
  58. package/enhancements/where-visitor.js +87 -0
  59. package/enhancements/where-visitor.js.map +1 -0
  60. package/error.js +9 -3
  61. package/error.js.map +1 -1
  62. package/index.d.ts +4 -2
  63. package/index.js +4 -2
  64. package/index.js.map +1 -1
  65. package/loader.d.ts +22 -0
  66. package/loader.js +99 -0
  67. package/loader.js.map +1 -0
  68. package/package.json +33 -7
  69. package/types.d.ts +28 -14
  70. package/types.js +2 -0
  71. package/types.js.map +1 -1
  72. package/validation.d.ts +5 -0
  73. package/validation.js +13 -1
  74. package/validation.js.map +1 -1
  75. package/version.d.ts +5 -0
  76. package/version.js +34 -1
  77. package/version.js.map +1 -1
  78. package/zod/index.d.ts +1 -0
  79. package/zod/index.js +1 -0
  80. package/zod/objects.d.ts +1 -0
  81. package/zod/objects.js +8 -0
  82. package/enhancements/nested-write-vistor.d.ts +0 -71
  83. package/enhancements/nested-write-vistor.js.map +0 -1
  84. package/utils/serialization-utils.d.ts +0 -1
  85. package/utils/serialization-utils.js +0 -22
  86. package/utils/serialization-utils.js.map +0 -1
@@ -16,7 +16,7 @@ const types_1 = require("../types");
16
16
  const model_meta_1 = require("./model-meta");
17
17
  const utils_1 = require("./utils");
18
18
  /**
19
- * Recursive visitor for nested write (create/update) payload
19
+ * Recursive visitor for nested write (create/update) payload.
20
20
  */
21
21
  class NestedWriteVisitor {
22
22
  constructor(modelMeta, callback) {
@@ -37,7 +37,6 @@ class NestedWriteVisitor {
37
37
  return;
38
38
  }
39
39
  let topData = args;
40
- // const topWhere = { ...topData.where };
41
40
  switch (action) {
42
41
  // create has its data wrapped in 'data' field
43
42
  case 'create':
@@ -56,38 +55,47 @@ class NestedWriteVisitor {
56
55
  if (!data) {
57
56
  return;
58
57
  }
59
- const isToOneUpdate = (field === null || field === void 0 ? void 0 : field.isDataModel) && !field.isArray;
60
58
  const context = { parent, field, nestingPath: [...nestingPath] };
59
+ const toplevel = field == undefined;
61
60
  // visit payload
62
61
  switch (action) {
63
62
  case 'create':
64
63
  context.nestingPath.push({ field, model, where: {}, unique: false });
65
64
  for (const item of (0, utils_1.enumerate)(data)) {
65
+ let callbackResult;
66
66
  if (this.callback.create) {
67
- yield this.callback.create(model, item, context);
67
+ callbackResult = yield this.callback.create(model, item, context);
68
+ }
69
+ if (callbackResult !== false) {
70
+ const subPayload = typeof callbackResult === 'object' ? callbackResult : item;
71
+ yield this.visitSubPayload(model, action, subPayload, context.nestingPath);
68
72
  }
69
- yield this.visitSubPayload(model, action, item, context.nestingPath);
70
73
  }
71
74
  break;
72
75
  case 'createMany':
73
- // skip the 'data' layer so as to keep consistency with 'create'
74
- if (data.data) {
76
+ if (data) {
75
77
  context.nestingPath.push({ field, model, where: {}, unique: false });
76
- for (const item of (0, utils_1.enumerate)(data.data)) {
77
- if (this.callback.create) {
78
- yield this.callback.create(model, item, context);
79
- }
80
- yield this.visitSubPayload(model, action, item, context.nestingPath);
78
+ let callbackResult;
79
+ if (this.callback.createMany) {
80
+ callbackResult = yield this.callback.createMany(model, data, context);
81
+ }
82
+ if (callbackResult !== false) {
83
+ const subPayload = typeof callbackResult === 'object' ? callbackResult : data.data;
84
+ yield this.visitSubPayload(model, action, subPayload, context.nestingPath);
81
85
  }
82
86
  }
83
87
  break;
84
88
  case 'connectOrCreate':
85
- context.nestingPath.push({ field, model, where: data.where, unique: true });
89
+ context.nestingPath.push({ field, model, where: data.where, unique: false });
86
90
  for (const item of (0, utils_1.enumerate)(data)) {
91
+ let callbackResult;
87
92
  if (this.callback.connectOrCreate) {
88
- yield this.callback.connectOrCreate(model, item, context);
93
+ callbackResult = yield this.callback.connectOrCreate(model, item, context);
94
+ }
95
+ if (callbackResult !== false) {
96
+ const subPayload = typeof callbackResult === 'object' ? callbackResult : item.create;
97
+ yield this.visitSubPayload(model, action, subPayload, context.nestingPath);
89
98
  }
90
- yield this.visitSubPayload(model, action, item.create, context.nestingPath);
91
99
  }
92
100
  break;
93
101
  case 'connect':
@@ -112,50 +120,81 @@ class NestedWriteVisitor {
112
120
  }
113
121
  }
114
122
  break;
123
+ case 'set':
124
+ if (this.callback.set) {
125
+ context.nestingPath.push({ field, model, where: {}, unique: false });
126
+ yield this.callback.set(model, data, context);
127
+ }
128
+ break;
115
129
  case 'update':
116
130
  context.nestingPath.push({ field, model, where: data.where, unique: false });
117
131
  for (const item of (0, utils_1.enumerate)(data)) {
132
+ let callbackResult;
118
133
  if (this.callback.update) {
119
- yield this.callback.update(model, item, context);
134
+ callbackResult = yield this.callback.update(model, item, context);
135
+ }
136
+ if (callbackResult !== false) {
137
+ const subPayload = typeof callbackResult === 'object'
138
+ ? callbackResult
139
+ : typeof item.data === 'object'
140
+ ? item.data
141
+ : item;
142
+ yield this.visitSubPayload(model, action, subPayload, context.nestingPath);
120
143
  }
121
- const payload = isToOneUpdate ? item : item.data;
122
- yield this.visitSubPayload(model, action, payload, context.nestingPath);
123
144
  }
124
145
  break;
125
146
  case 'updateMany':
126
147
  context.nestingPath.push({ field, model, where: data.where, unique: false });
127
148
  for (const item of (0, utils_1.enumerate)(data)) {
149
+ let callbackResult;
128
150
  if (this.callback.updateMany) {
129
- yield this.callback.updateMany(model, item, context);
151
+ callbackResult = yield this.callback.updateMany(model, item, context);
152
+ }
153
+ if (callbackResult !== false) {
154
+ const subPayload = typeof callbackResult === 'object' ? callbackResult : item;
155
+ yield this.visitSubPayload(model, action, subPayload, context.nestingPath);
130
156
  }
131
- yield this.visitSubPayload(model, action, item, context.nestingPath);
132
157
  }
133
158
  break;
134
159
  case 'upsert': {
135
- context.nestingPath.push({ field, model, where: data.where, unique: true });
160
+ context.nestingPath.push({ field, model, where: data.where, unique: false });
136
161
  for (const item of (0, utils_1.enumerate)(data)) {
162
+ let callbackResult;
137
163
  if (this.callback.upsert) {
138
- yield this.callback.upsert(model, item, context);
164
+ callbackResult = yield this.callback.upsert(model, item, context);
165
+ }
166
+ if (callbackResult !== false) {
167
+ if (typeof callbackResult === 'object') {
168
+ yield this.visitSubPayload(model, action, callbackResult, context.nestingPath);
169
+ }
170
+ else {
171
+ yield this.visitSubPayload(model, action, item.create, context.nestingPath);
172
+ yield this.visitSubPayload(model, action, item.update, context.nestingPath);
173
+ }
139
174
  }
140
- yield this.visitSubPayload(model, action, item.create, context.nestingPath);
141
- yield this.visitSubPayload(model, action, item.update, context.nestingPath);
142
175
  }
143
176
  break;
144
177
  }
145
178
  case 'delete': {
146
179
  if (this.callback.delete) {
147
- context.nestingPath.push({ field, model, where: data.where, unique: false });
148
180
  for (const item of (0, utils_1.enumerate)(data)) {
149
- yield this.callback.delete(model, item, context);
181
+ const newContext = Object.assign(Object.assign({}, context), { nestingPath: [
182
+ ...context.nestingPath,
183
+ { field, model, where: toplevel ? item.where : item, unique: false },
184
+ ] });
185
+ yield this.callback.delete(model, item, newContext);
150
186
  }
151
187
  }
152
188
  break;
153
189
  }
154
190
  case 'deleteMany':
155
191
  if (this.callback.deleteMany) {
156
- context.nestingPath.push({ field, model, where: data.where, unique: false });
157
192
  for (const item of (0, utils_1.enumerate)(data)) {
158
- yield this.callback.deleteMany(model, item, context);
193
+ const newContext = Object.assign(Object.assign({}, context), { nestingPath: [
194
+ ...context.nestingPath,
195
+ { field, model, where: toplevel ? item.where : item, unique: false },
196
+ ] });
197
+ yield this.callback.deleteMany(model, item, newContext);
159
198
  }
160
199
  }
161
200
  break;
@@ -197,4 +236,4 @@ class NestedWriteVisitor {
197
236
  }
198
237
  }
199
238
  exports.NestedWriteVisitor = NestedWriteVisitor;
200
- //# sourceMappingURL=nested-write-vistor.js.map
239
+ //# sourceMappingURL=nested-write-visitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nested-write-visitor.js","sourceRoot":"","sources":["../../src/enhancements/nested-write-visitor.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
- import { ModelMeta } from './types';
1
+ import { CommonEnhancementOptions, ModelMeta } from './types';
2
2
  /**
3
3
  * Options for @see withOmit
4
4
  */
5
- export type WithOmitOptions = {
5
+ export interface WithOmitOptions extends CommonEnhancementOptions {
6
6
  /**
7
- * Model metatadata
7
+ * Model metadata
8
8
  */
9
9
  modelMeta?: ModelMeta;
10
- };
10
+ }
11
11
  /**
12
12
  * Gets an enhanced Prisma client that supports @omit attribute.
13
13
  */
@@ -12,6 +12,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.withOmit = void 0;
15
+ const loader_1 = require("../loader");
15
16
  const model_meta_1 = require("./model-meta");
16
17
  const proxy_1 = require("./proxy");
17
18
  const utils_1 = require("./utils");
@@ -20,7 +21,7 @@ const utils_1 = require("./utils");
20
21
  */
21
22
  function withOmit(prisma, options) {
22
23
  var _a;
23
- const _modelMeta = (_a = options === null || options === void 0 ? void 0 : options.modelMeta) !== null && _a !== void 0 ? _a : (0, model_meta_1.getDefaultModelMeta)();
24
+ const _modelMeta = (_a = options === null || options === void 0 ? void 0 : options.modelMeta) !== null && _a !== void 0 ? _a : (0, loader_1.getDefaultModelMeta)(options === null || options === void 0 ? void 0 : options.loadPath);
24
25
  return (0, proxy_1.makeProxy)(prisma, _modelMeta, (_prisma, model) => new OmitHandler(_prisma, model, _modelMeta), 'omit');
25
26
  }
26
27
  exports.withOmit = withOmit;
@@ -1 +1 @@
1
- {"version":3,"file":"omit.js","sourceRoot":"","sources":["../../src/enhancements/omit.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,uDAAuD;;;;;;;;;;;;AAGvD,6CAAiE;AACjE,mCAA+D;AAE/D,mCAAoD;AAYpD;;GAEG;AACH,SAAgB,QAAQ,CAA0B,MAAgB,EAAE,OAAyB;;IACzF,MAAM,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAA,gCAAmB,GAAE,CAAC;IAC/D,OAAO,IAAA,iBAAS,EACZ,MAAM,EACN,UAAU,EACV,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,OAA2B,EAAE,KAAK,EAAE,UAAU,CAAC,EACnF,MAAM,CACT,CAAC;AACN,CAAC;AARD,4BAQC;AAED,MAAM,WAAY,SAAQ,iCAAyB;IAC/C,YAAY,MAAwB,EAAE,KAAa,EAAmB,SAAoB;QACtF,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAD6C,cAAS,GAAT,SAAS,CAAW;IAE1F,CAAC;IAED,gBAAgB;IACA,mBAAmB,CAAI,IAAO;;YAC1C,IAAI,IAAI,EAAE;gBACN,KAAK,MAAM,KAAK,IAAI,IAAA,iBAAS,EAAC,IAAI,CAAC,EAAE;oBACjC,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;iBAC/C;aACJ;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEa,aAAa,CAAC,UAAe,EAAE,KAAa;;YACtD,KAAK,MAAM,KAAK,IAAI,IAAA,sBAAc,EAAC,UAAU,CAAC,EAAE;gBAC5C,MAAM,SAAS,GAAG,MAAM,IAAA,yBAAY,EAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACnE,IAAI,CAAC,SAAS,EAAE;oBACZ,SAAS;iBACZ;gBAED,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE;oBAC5D,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;iBAC5B;qBAAM,IAAI,SAAS,CAAC,WAAW,EAAE;oBAC9B,UAAU;oBACV,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;iBAC/D;aACJ;QACL,CAAC;KAAA;CACJ"}
1
+ {"version":3,"file":"omit.js","sourceRoot":"","sources":["../../src/enhancements/omit.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,uDAAuD;;;;;;;;;;;;AAEvD,sCAAgD;AAEhD,6CAA4C;AAC5C,mCAA+D;AAE/D,mCAAoD;AAYpD;;GAEG;AACH,SAAgB,QAAQ,CAA0B,MAAgB,EAAE,OAAyB;;IACzF,MAAM,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAA,4BAAmB,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAAC,CAAC;IAChF,OAAO,IAAA,iBAAS,EACZ,MAAM,EACN,UAAU,EACV,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,OAA2B,EAAE,KAAK,EAAE,UAAU,CAAC,EACnF,MAAM,CACT,CAAC;AACN,CAAC;AARD,4BAQC;AAED,MAAM,WAAY,SAAQ,iCAAyB;IAC/C,YAAY,MAAwB,EAAE,KAAa,EAAmB,SAAoB;QACtF,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAD6C,cAAS,GAAT,SAAS,CAAW;IAE1F,CAAC;IAED,gBAAgB;IACA,mBAAmB,CAAI,IAAO;;YAC1C,IAAI,IAAI,EAAE;gBACN,KAAK,MAAM,KAAK,IAAI,IAAA,iBAAS,EAAC,IAAI,CAAC,EAAE;oBACjC,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;iBAC/C;aACJ;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEa,aAAa,CAAC,UAAe,EAAE,KAAa;;YACtD,KAAK,MAAM,KAAK,IAAI,IAAA,sBAAc,EAAC,UAAU,CAAC,EAAE;gBAC5C,MAAM,SAAS,GAAG,MAAM,IAAA,yBAAY,EAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACnE,IAAI,CAAC,SAAS,EAAE;oBACZ,SAAS;iBACZ;gBAED,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE;oBAC5D,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;iBAC5B;qBAAM,IAAI,SAAS,CAAC,WAAW,EAAE;oBAC9B,UAAU;oBACV,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;iBAC/D;aACJ;QACL,CAAC;KAAA;CACJ"}
@@ -1,13 +1,13 @@
1
- import { ModelMeta } from './types';
1
+ import { CommonEnhancementOptions, ModelMeta } from './types';
2
2
  /**
3
3
  * Options for @see withPassword
4
4
  */
5
- export type WithPasswordOptions = {
5
+ export interface WithPasswordOptions extends CommonEnhancementOptions {
6
6
  /**
7
- * Model metatadata
7
+ * Model metadata
8
8
  */
9
9
  modelMeta?: ModelMeta;
10
- };
10
+ }
11
11
  /**
12
12
  * Gets an enhanced Prisma client that supports @password attribute.
13
13
  */
@@ -14,15 +14,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.withPassword = void 0;
15
15
  const bcryptjs_1 = require("bcryptjs");
16
16
  const constants_1 = require("../constants");
17
- const model_meta_1 = require("./model-meta");
18
- const nested_write_vistor_1 = require("./nested-write-vistor");
17
+ const loader_1 = require("../loader");
18
+ const nested_write_visitor_1 = require("./nested-write-visitor");
19
19
  const proxy_1 = require("./proxy");
20
20
  /**
21
21
  * Gets an enhanced Prisma client that supports @password attribute.
22
22
  */
23
23
  function withPassword(prisma, options) {
24
24
  var _a;
25
- const _modelMeta = (_a = options === null || options === void 0 ? void 0 : options.modelMeta) !== null && _a !== void 0 ? _a : (0, model_meta_1.getDefaultModelMeta)();
25
+ const _modelMeta = (_a = options === null || options === void 0 ? void 0 : options.modelMeta) !== null && _a !== void 0 ? _a : (0, loader_1.getDefaultModelMeta)(options === null || options === void 0 ? void 0 : options.loadPath);
26
26
  return (0, proxy_1.makeProxy)(prisma, _modelMeta, (_prisma, model) => new PasswordHandler(_prisma, model, _modelMeta), 'password');
27
27
  }
28
28
  exports.withPassword = withPassword;
@@ -43,7 +43,7 @@ class PasswordHandler extends proxy_1.DefaultPrismaProxyHandler {
43
43
  }
44
44
  preprocessWritePayload(model, action, args) {
45
45
  return __awaiter(this, void 0, void 0, function* () {
46
- const visitor = new nested_write_vistor_1.NestedWriteVisitor(this.modelMeta, {
46
+ const visitor = new nested_write_visitor_1.NestedWriteVisitor(this.modelMeta, {
47
47
  field: (field, _action, data, context) => __awaiter(this, void 0, void 0, function* () {
48
48
  var _a, _b, _c;
49
49
  const pwdAttr = (_a = field.attributes) === null || _a === void 0 ? void 0 : _a.find((attr) => attr.name === '@password');
@@ -1 +1 @@
1
- {"version":3,"file":"password.js","sourceRoot":"","sources":["../../src/enhancements/password.ts"],"names":[],"mappings":";AAAA,uDAAuD;AACvD,sDAAsD;;;;;;;;;;;;AAEtD,uCAAgC;AAChC,4CAA4D;AAE5D,6CAAmD;AACnD,+DAA2D;AAC3D,mCAAmF;AAanF;;GAEG;AACH,SAAgB,YAAY,CAAgC,MAAgB,EAAE,OAA6B;;IACvG,MAAM,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAA,gCAAmB,GAAE,CAAC;IAC/D,OAAO,IAAA,iBAAS,EACZ,MAAM,EACN,UAAU,EACV,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,OAA2B,EAAE,KAAK,EAAE,UAAU,CAAC,EACvF,UAAU,CACb,CAAC;AACN,CAAC;AARD,oCAQC;AAED,MAAM,eAAgB,SAAQ,iCAAyB;IACnD,YAAY,MAAwB,EAAE,KAAa,EAAW,SAAoB;QAC9E,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QADqC,cAAS,GAAT,SAAS,CAAW;IAElF,CAAC;IAED,gBAAgB;IACA,cAAc,CAAC,MAA0B,EAAE,IAAS;;YAChE,MAAM,iBAAiB,GAAyB,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC3G,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBACzD,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,MAA+B,EAAE,IAAI,CAAC,CAAC;aACxF;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEa,sBAAsB,CAAC,KAAa,EAAE,MAA6B,EAAE,IAAS;;YACxF,MAAM,OAAO,GAAG,IAAI,wCAAkB,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnD,KAAK,EAAE,CAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;;oBAC3C,MAAM,OAAO,GAAG,MAAA,KAAK,CAAC,UAAU,0CAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;oBAC5E,IAAI,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;wBACpC,sBAAsB;wBACtB,IAAI,IAAI,GAAgC,MAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,0CACjF,KAAe,CAAC;wBACtB,IAAI,CAAC,IAAI,EAAE;4BACP,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC,0CAAE,KAAe,CAAC;yBACjF;wBACD,IAAI,CAAC,IAAI,EAAE;4BACP,IAAI,GAAG,wCAA4B,CAAC;yBACvC;wBACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,IAAA,eAAI,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;qBACvD;gBACL,CAAC,CAAA;aACJ,CAAC,CAAC;YAEH,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;KAAA;CACJ"}
1
+ {"version":3,"file":"password.js","sourceRoot":"","sources":["../../src/enhancements/password.ts"],"names":[],"mappings":";AAAA,uDAAuD;AACvD,sDAAsD;;;;;;;;;;;;AAEtD,uCAAgC;AAChC,4CAA4D;AAC5D,sCAAgD;AAEhD,iEAA4D;AAC5D,mCAAmF;AAanF;;GAEG;AACH,SAAgB,YAAY,CAAgC,MAAgB,EAAE,OAA6B;;IACvG,MAAM,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,IAAA,4BAAmB,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAAC,CAAC;IAChF,OAAO,IAAA,iBAAS,EACZ,MAAM,EACN,UAAU,EACV,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,OAA2B,EAAE,KAAK,EAAE,UAAU,CAAC,EACvF,UAAU,CACb,CAAC;AACN,CAAC;AARD,oCAQC;AAED,MAAM,eAAgB,SAAQ,iCAAyB;IACnD,YAAY,MAAwB,EAAE,KAAa,EAAW,SAAoB;QAC9E,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QADqC,cAAS,GAAT,SAAS,CAAW;IAElF,CAAC;IAED,gBAAgB;IACA,cAAc,CAAC,MAA0B,EAAE,IAAS;;YAChE,MAAM,iBAAiB,GAAyB,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC3G,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBACzD,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,MAA+B,EAAE,IAAI,CAAC,CAAC;aACxF;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEa,sBAAsB,CAAC,KAAa,EAAE,MAA6B,EAAE,IAAS;;YACxF,MAAM,OAAO,GAAG,IAAI,yCAAkB,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnD,KAAK,EAAE,CAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;;oBAC3C,MAAM,OAAO,GAAG,MAAA,KAAK,CAAC,UAAU,0CAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;oBAC5E,IAAI,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;wBACpC,sBAAsB;wBACtB,IAAI,IAAI,GAAgC,MAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,0CACjF,KAAe,CAAC;wBACtB,IAAI,CAAC,IAAI,EAAE;4BACP,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC,0CAAE,KAAe,CAAC;yBACjF;wBACD,IAAI,CAAC,IAAI,EAAE;4BACP,IAAI,GAAG,wCAA4B,CAAC;yBACvC;wBACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,IAAA,eAAI,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;qBACvD;gBACL,CAAC,CAAA;aACJ,CAAC,CAAC;YAEH,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;KAAA;CACJ"}
@@ -1,5 +1,5 @@
1
- import { AuthUser, DbClientContract, PolicyOperationKind } from '../../types';
2
- import { BatchResult, PrismaProxyHandler } from '../proxy';
1
+ import { AuthUser, DbClientContract } from '../../types';
2
+ import { PrismaProxyHandler } from '../proxy';
3
3
  import type { ModelMeta, PolicyDef, ZodSchemas } from '../types';
4
4
  /**
5
5
  * Prisma proxy handler for injecting access policy check.
@@ -9,31 +9,47 @@ export declare class PolicyProxyHandler<DbClient extends DbClientContract> imple
9
9
  private readonly policy;
10
10
  private readonly modelMeta;
11
11
  private readonly zodSchemas;
12
- private readonly model;
13
12
  private readonly user?;
14
13
  private readonly logPrismaQuery?;
15
14
  private readonly logger;
16
15
  private readonly utils;
16
+ private readonly model;
17
17
  constructor(prisma: DbClient, policy: PolicyDef, modelMeta: ModelMeta, zodSchemas: ZodSchemas | undefined, model: string, user?: AuthUser | undefined, logPrismaQuery?: boolean | undefined);
18
18
  private get modelClient();
19
- findUnique(args: any): Promise<{} | null>;
20
- findUniqueOrThrow(args: any): Promise<{}>;
21
- findFirst(args: any): Promise<{} | null>;
22
- findFirstOrThrow(args: any): Promise<{}>;
23
- findMany(args: any): Promise<unknown[]>;
24
- create(args: any): Promise<unknown>;
25
- createMany(args: any, skipDuplicates?: boolean): Promise<BatchResult>;
26
- update(args: any): Promise<unknown>;
27
- updateMany(args: any): Promise<BatchResult>;
28
- upsert(args: any): Promise<unknown>;
19
+ findUnique(args: any): Promise<unknown>;
20
+ findUniqueOrThrow(args: any): Promise<unknown>;
21
+ findFirst(args?: any): Promise<unknown>;
22
+ findFirstOrThrow(args: any): Promise<unknown>;
23
+ findMany(args?: any): Promise<unknown[]>;
24
+ private findWithFluentCallStubs;
25
+ private doFind;
26
+ private fluentCall;
27
+ private addFluentFunctions;
28
+ create(args: any): Promise<any>;
29
+ private doCreate;
30
+ private hasNestedCreateOrConnect;
31
+ private validateCreateInputSchema;
32
+ createMany(args: {
33
+ data: any;
34
+ skipDuplicates?: boolean;
35
+ }): Promise<any>;
36
+ private doCreateMany;
37
+ update(args: any): Promise<any>;
38
+ private doUpdate;
39
+ private isUnsafeMutate;
40
+ updateMany(args: any): Promise<any>;
41
+ upsert(args: any): Promise<any>;
29
42
  delete(args: any): Promise<any>;
30
43
  deleteMany(args: any): Promise<{
31
44
  count: number;
32
45
  }>;
33
- aggregate(args: any): Promise<unknown>;
34
- groupBy(args: any): Promise<unknown>;
35
- count(args: any): Promise<unknown>;
36
- tryReject(operation: PolicyOperationKind): void;
37
- private checkReadback;
46
+ aggregate(args: any): Promise<any>;
47
+ groupBy(args: any): Promise<any>;
48
+ count(args: any): Promise<any>;
49
+ subscribe(args: any): Promise<any>;
38
50
  private get shouldLogQuery();
51
+ private transaction;
52
+ private runPostWriteChecks;
53
+ private makeHandler;
54
+ private requireBackLink;
39
55
  }