@zenstackhq/runtime 2.16.0 → 3.0.0-alpha.1
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/LICENSE +1 -1
- package/dist/client.cjs +6094 -0
- package/dist/client.cjs.map +1 -0
- package/dist/client.d.cts +19 -0
- package/dist/client.d.ts +19 -0
- package/dist/client.js +6060 -0
- package/dist/client.js.map +1 -0
- package/dist/contract-DguafRNB.d.cts +1272 -0
- package/dist/contract-DguafRNB.d.ts +1272 -0
- package/dist/index.cjs +6088 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +14 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.js +6057 -0
- package/dist/index.js.map +1 -0
- package/dist/plugins/policy.cjs +2343 -0
- package/dist/plugins/policy.cjs.map +1 -0
- package/dist/plugins/policy.d.cts +24 -0
- package/dist/plugins/policy.d.ts +24 -0
- package/dist/plugins/policy.js +2307 -0
- package/dist/plugins/policy.js.map +1 -0
- package/dist/schema.cjs +110 -0
- package/dist/schema.cjs.map +1 -0
- package/dist/schema.d.cts +29 -0
- package/dist/schema.d.ts +29 -0
- package/dist/schema.js +85 -0
- package/dist/schema.js.map +1 -0
- package/dist/utils/pg-utils.cjs +39 -0
- package/dist/utils/pg-utils.cjs.map +1 -0
- package/dist/utils/pg-utils.d.cts +8 -0
- package/dist/utils/pg-utils.d.ts +8 -0
- package/dist/utils/pg-utils.js +16 -0
- package/dist/utils/pg-utils.js.map +1 -0
- package/{browser/index.js → dist/utils/sqlite-utils.cjs} +21 -37
- package/dist/utils/sqlite-utils.cjs.map +1 -0
- package/dist/utils/sqlite-utils.d.cts +8 -0
- package/dist/utils/sqlite-utils.d.ts +8 -0
- package/dist/utils/sqlite-utils.js +22 -0
- package/dist/utils/sqlite-utils.js.map +1 -0
- package/package.json +106 -117
- package/README.md +0 -5
- package/browser/index.d.mts +0 -13
- package/browser/index.d.ts +0 -13
- package/browser/index.js.map +0 -1
- package/browser/index.mjs +0 -33
- package/browser/index.mjs.map +0 -1
- package/constants.d.ts +0 -62
- package/constants.js +0 -76
- package/constants.js.map +0 -1
- package/cross/index.d.mts +0 -379
- package/cross/index.d.ts +0 -379
- package/cross/index.js +0 -923
- package/cross/index.js.map +0 -1
- package/cross/index.mjs +0 -881
- package/cross/index.mjs.map +0 -1
- package/edge.d.ts +0 -1
- package/edge.js +0 -18
- package/edge.js.map +0 -1
- package/encryption/index.d.ts +0 -25
- package/encryption/index.js +0 -74
- package/encryption/index.js.map +0 -1
- package/encryption/utils.d.ts +0 -9
- package/encryption/utils.js +0 -99
- package/encryption/utils.js.map +0 -1
- package/enhance-edge.d.ts +0 -1
- package/enhance-edge.js +0 -10
- package/enhance.d.ts +0 -1
- package/enhance.js +0 -10
- package/enhancements/edge/create-enhancement.d.ts +0 -42
- package/enhancements/edge/create-enhancement.js +0 -102
- package/enhancements/edge/create-enhancement.js.map +0 -1
- package/enhancements/edge/default-auth.d.ts +0 -8
- package/enhancements/edge/default-auth.js +0 -180
- package/enhancements/edge/default-auth.js.map +0 -1
- package/enhancements/edge/delegate.d.ts +0 -77
- package/enhancements/edge/delegate.js +0 -1293
- package/enhancements/edge/delegate.js.map +0 -1
- package/enhancements/edge/encryption.d.ts +0 -7
- package/enhancements/edge/encryption.js +0 -150
- package/enhancements/edge/encryption.js.map +0 -1
- package/enhancements/edge/index.d.ts +0 -4
- package/enhancements/edge/index.js +0 -21
- package/enhancements/edge/index.js.map +0 -1
- package/enhancements/edge/json-processor.d.ts +0 -7
- package/enhancements/edge/json-processor.js +0 -89
- package/enhancements/edge/json-processor.js.map +0 -1
- package/enhancements/edge/logger.d.ts +0 -29
- package/enhancements/edge/logger.js +0 -65
- package/enhancements/edge/logger.js.map +0 -1
- package/enhancements/edge/omit.d.ts +0 -7
- package/enhancements/edge/omit.js +0 -96
- package/enhancements/edge/omit.js.map +0 -1
- package/enhancements/edge/password.d.ts +0 -7
- package/enhancements/edge/password.js +0 -64
- package/enhancements/edge/password.js.map +0 -1
- package/enhancements/edge/policy/check-utils.d.ts +0 -5
- package/enhancements/edge/policy/check-utils.js +0 -20
- package/enhancements/edge/policy/check-utils.js.map +0 -1
- package/enhancements/edge/policy/handler.d.ts +0 -100
- package/enhancements/edge/policy/handler.js +0 -1440
- package/enhancements/edge/policy/handler.js.map +0 -1
- package/enhancements/edge/policy/index.d.ts +0 -19
- package/enhancements/edge/policy/index.js +0 -65
- package/enhancements/edge/policy/index.js.map +0 -1
- package/enhancements/edge/policy/policy-utils.d.ts +0 -181
- package/enhancements/edge/policy/policy-utils.js +0 -1356
- package/enhancements/edge/policy/policy-utils.js.map +0 -1
- package/enhancements/edge/promise.d.ts +0 -15
- package/enhancements/edge/promise.js +0 -99
- package/enhancements/edge/promise.js.map +0 -1
- package/enhancements/edge/proxy.d.ts +0 -120
- package/enhancements/edge/proxy.js +0 -287
- package/enhancements/edge/proxy.js.map +0 -1
- package/enhancements/edge/query-utils.d.ts +0 -53
- package/enhancements/edge/query-utils.js +0 -256
- package/enhancements/edge/query-utils.js.map +0 -1
- package/enhancements/edge/types.d.ts +0 -238
- package/enhancements/edge/types.js +0 -3
- package/enhancements/edge/types.js.map +0 -1
- package/enhancements/edge/utils.d.ts +0 -11
- package/enhancements/edge/utils.js +0 -49
- package/enhancements/edge/utils.js.map +0 -1
- package/enhancements/edge/where-visitor.d.ts +0 -32
- package/enhancements/edge/where-visitor.js +0 -86
- package/enhancements/edge/where-visitor.js.map +0 -1
- package/enhancements/node/create-enhancement.d.ts +0 -42
- package/enhancements/node/create-enhancement.js +0 -102
- package/enhancements/node/create-enhancement.js.map +0 -1
- package/enhancements/node/default-auth.d.ts +0 -8
- package/enhancements/node/default-auth.js +0 -180
- package/enhancements/node/default-auth.js.map +0 -1
- package/enhancements/node/delegate.d.ts +0 -77
- package/enhancements/node/delegate.js +0 -1293
- package/enhancements/node/delegate.js.map +0 -1
- package/enhancements/node/encryption.d.ts +0 -7
- package/enhancements/node/encryption.js +0 -150
- package/enhancements/node/encryption.js.map +0 -1
- package/enhancements/node/index.d.ts +0 -4
- package/enhancements/node/index.js +0 -21
- package/enhancements/node/index.js.map +0 -1
- package/enhancements/node/json-processor.d.ts +0 -7
- package/enhancements/node/json-processor.js +0 -89
- package/enhancements/node/json-processor.js.map +0 -1
- package/enhancements/node/logger.d.ts +0 -29
- package/enhancements/node/logger.js +0 -65
- package/enhancements/node/logger.js.map +0 -1
- package/enhancements/node/omit.d.ts +0 -7
- package/enhancements/node/omit.js +0 -96
- package/enhancements/node/omit.js.map +0 -1
- package/enhancements/node/password.d.ts +0 -7
- package/enhancements/node/password.js +0 -64
- package/enhancements/node/password.js.map +0 -1
- package/enhancements/node/policy/check-utils.d.ts +0 -5
- package/enhancements/node/policy/check-utils.js +0 -87
- package/enhancements/node/policy/check-utils.js.map +0 -1
- package/enhancements/node/policy/constraint-solver.d.ts +0 -27
- package/enhancements/node/policy/constraint-solver.js +0 -164
- package/enhancements/node/policy/constraint-solver.js.map +0 -1
- package/enhancements/node/policy/handler.d.ts +0 -100
- package/enhancements/node/policy/handler.js +0 -1440
- package/enhancements/node/policy/handler.js.map +0 -1
- package/enhancements/node/policy/index.d.ts +0 -19
- package/enhancements/node/policy/index.js +0 -65
- package/enhancements/node/policy/index.js.map +0 -1
- package/enhancements/node/policy/policy-utils.d.ts +0 -181
- package/enhancements/node/policy/policy-utils.js +0 -1356
- package/enhancements/node/policy/policy-utils.js.map +0 -1
- package/enhancements/node/promise.d.ts +0 -15
- package/enhancements/node/promise.js +0 -99
- package/enhancements/node/promise.js.map +0 -1
- package/enhancements/node/proxy.d.ts +0 -120
- package/enhancements/node/proxy.js +0 -287
- package/enhancements/node/proxy.js.map +0 -1
- package/enhancements/node/query-utils.d.ts +0 -53
- package/enhancements/node/query-utils.js +0 -256
- package/enhancements/node/query-utils.js.map +0 -1
- package/enhancements/node/types.d.ts +0 -238
- package/enhancements/node/types.js +0 -3
- package/enhancements/node/types.js.map +0 -1
- package/enhancements/node/utils.d.ts +0 -11
- package/enhancements/node/utils.js +0 -49
- package/enhancements/node/utils.js.map +0 -1
- package/enhancements/node/where-visitor.d.ts +0 -32
- package/enhancements/node/where-visitor.js +0 -86
- package/enhancements/node/where-visitor.js.map +0 -1
- package/error.d.ts +0 -11
- package/error.js +0 -22
- package/error.js.map +0 -1
- package/index.d.ts +0 -7
- package/index.js +0 -24
- package/index.js.map +0 -1
- package/local-helpers/index.d.ts +0 -6
- package/local-helpers/index.js +0 -23
- package/local-helpers/index.js.map +0 -1
- package/local-helpers/is-plain-object.d.ts +0 -1
- package/local-helpers/is-plain-object.js +0 -25
- package/local-helpers/is-plain-object.js.map +0 -1
- package/local-helpers/lower-case-first.d.ts +0 -1
- package/local-helpers/lower-case-first.js +0 -7
- package/local-helpers/lower-case-first.js.map +0 -1
- package/local-helpers/param-case.d.ts +0 -1
- package/local-helpers/param-case.js +0 -20
- package/local-helpers/param-case.js.map +0 -1
- package/local-helpers/sleep.d.ts +0 -1
- package/local-helpers/sleep.js +0 -9
- package/local-helpers/sleep.js.map +0 -1
- package/local-helpers/tiny-invariant.d.ts +0 -1
- package/local-helpers/tiny-invariant.js +0 -15
- package/local-helpers/tiny-invariant.js.map +0 -1
- package/local-helpers/upper-case-first.d.ts +0 -1
- package/local-helpers/upper-case-first.js +0 -7
- package/local-helpers/upper-case-first.js.map +0 -1
- package/model-meta.d.ts +0 -1
- package/model-meta.js +0 -10
- package/models.d.ts +0 -1
- package/models.js +0 -1
- package/types.d.ts +0 -200
- package/types.js +0 -4
- package/types.js.map +0 -1
- package/validation.d.ts +0 -24
- package/validation.js +0 -52
- package/validation.js.map +0 -1
- package/version.d.ts +0 -5
- package/version.js +0 -35
- package/version.js.map +0 -1
- package/zod/index.d.ts +0 -3
- package/zod/index.js +0 -5
- package/zod/input.d.ts +0 -1
- package/zod/input.js +0 -8
- package/zod/models.d.ts +0 -1
- package/zod/models.js +0 -8
- package/zod/objects.d.ts +0 -1
- package/zod/objects.js +0 -8
- package/zod-utils.d.ts +0 -12
- package/zod-utils.js +0 -97
- package/zod-utils.js.map +0 -1
package/cross/index.d.mts
DELETED
|
@@ -1,379 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Clones the given object. Only arrays and plain objects are cloned. Other values are returned as is.
|
|
3
|
-
*/
|
|
4
|
-
declare function clone<T>(value: T): T;
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Callback for @see ModelDataVisitor.
|
|
8
|
-
*/
|
|
9
|
-
type ModelDataVisitorCallback = (model: string, data: any, scalarData: any) => void;
|
|
10
|
-
/**
|
|
11
|
-
* Visitor that traverses data returned by a Prisma query.
|
|
12
|
-
*/
|
|
13
|
-
declare class ModelDataVisitor {
|
|
14
|
-
private modelMeta;
|
|
15
|
-
constructor(modelMeta: ModelMeta);
|
|
16
|
-
/**
|
|
17
|
-
* Visits the given model data.
|
|
18
|
-
*/
|
|
19
|
-
visit(model: string, data: any, callback: ModelDataVisitorCallback): void;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Runtime information of a data model or field attribute
|
|
24
|
-
*/
|
|
25
|
-
type RuntimeAttribute = {
|
|
26
|
-
/**
|
|
27
|
-
* Attribute name
|
|
28
|
-
*/
|
|
29
|
-
name: string;
|
|
30
|
-
/**
|
|
31
|
-
* Attribute arguments
|
|
32
|
-
*/
|
|
33
|
-
args: Array<{
|
|
34
|
-
name?: string;
|
|
35
|
-
value: unknown;
|
|
36
|
-
}>;
|
|
37
|
-
};
|
|
38
|
-
/**
|
|
39
|
-
* Function for computing default value for a field
|
|
40
|
-
*/
|
|
41
|
-
type FieldDefaultValueProvider = (userContext: unknown) => unknown;
|
|
42
|
-
/**
|
|
43
|
-
* Action to take when the related model is deleted or updated
|
|
44
|
-
*/
|
|
45
|
-
type RelationAction = 'Cascade' | 'Restrict' | 'NoAction' | 'SetNull' | 'SetDefault';
|
|
46
|
-
/**
|
|
47
|
-
* Runtime information of a data model field
|
|
48
|
-
*/
|
|
49
|
-
type FieldInfo = {
|
|
50
|
-
/**
|
|
51
|
-
* Field name
|
|
52
|
-
*/
|
|
53
|
-
name: string;
|
|
54
|
-
/**
|
|
55
|
-
* Field type name
|
|
56
|
-
*/
|
|
57
|
-
type: string;
|
|
58
|
-
/**
|
|
59
|
-
* If the field is an ID field or part of a multi-field ID
|
|
60
|
-
*/
|
|
61
|
-
isId?: boolean;
|
|
62
|
-
/**
|
|
63
|
-
* If the field type is a data model (or an optional/array of data model)
|
|
64
|
-
*/
|
|
65
|
-
isDataModel?: boolean;
|
|
66
|
-
/**
|
|
67
|
-
* If the field type is a type def (or an optional/array of type def)
|
|
68
|
-
*/
|
|
69
|
-
isTypeDef?: boolean;
|
|
70
|
-
/**
|
|
71
|
-
* If the field is an array
|
|
72
|
-
*/
|
|
73
|
-
isArray?: boolean;
|
|
74
|
-
/**
|
|
75
|
-
* If the field is optional
|
|
76
|
-
*/
|
|
77
|
-
isOptional?: boolean;
|
|
78
|
-
/**
|
|
79
|
-
* Attributes on the field
|
|
80
|
-
*/
|
|
81
|
-
attributes?: RuntimeAttribute[];
|
|
82
|
-
/**
|
|
83
|
-
* If the field is a relation field, the field name of the reverse side of the relation
|
|
84
|
-
*/
|
|
85
|
-
backLink?: string;
|
|
86
|
-
/**
|
|
87
|
-
* If the field is the owner side of a relation
|
|
88
|
-
*/
|
|
89
|
-
isRelationOwner?: boolean;
|
|
90
|
-
/**
|
|
91
|
-
* Action to take when the related model is deleted.
|
|
92
|
-
*/
|
|
93
|
-
onDeleteAction?: RelationAction;
|
|
94
|
-
/**
|
|
95
|
-
* Action to take when the related model is updated.
|
|
96
|
-
*/
|
|
97
|
-
onUpdateAction?: RelationAction;
|
|
98
|
-
/**
|
|
99
|
-
* If the field is a foreign key field
|
|
100
|
-
*/
|
|
101
|
-
isForeignKey?: boolean;
|
|
102
|
-
/**
|
|
103
|
-
* If the field is a foreign key field, the field name of the corresponding relation field.
|
|
104
|
-
* Only available on foreign key fields.
|
|
105
|
-
*/
|
|
106
|
-
relationField?: string;
|
|
107
|
-
/**
|
|
108
|
-
* Mapping from relation's pk to fk. Only available on relation fields.
|
|
109
|
-
*/
|
|
110
|
-
foreignKeyMapping?: Record<string, string>;
|
|
111
|
-
/**
|
|
112
|
-
* Model from which the field is inherited
|
|
113
|
-
*/
|
|
114
|
-
inheritedFrom?: string;
|
|
115
|
-
/**
|
|
116
|
-
* A function that provides a default value for the field
|
|
117
|
-
*/
|
|
118
|
-
defaultValueProvider?: FieldDefaultValueProvider;
|
|
119
|
-
/**
|
|
120
|
-
* If the field is an auto-increment field
|
|
121
|
-
*/
|
|
122
|
-
isAutoIncrement?: boolean;
|
|
123
|
-
};
|
|
124
|
-
/**
|
|
125
|
-
* Metadata for a model-level unique constraint
|
|
126
|
-
* e.g.: @@unique([a, b])
|
|
127
|
-
*/
|
|
128
|
-
type UniqueConstraint = {
|
|
129
|
-
name: string;
|
|
130
|
-
fields: string[];
|
|
131
|
-
};
|
|
132
|
-
/**
|
|
133
|
-
* Metadata for a data model
|
|
134
|
-
*/
|
|
135
|
-
type ModelInfo = {
|
|
136
|
-
/**
|
|
137
|
-
* Model name
|
|
138
|
-
*/
|
|
139
|
-
name: string;
|
|
140
|
-
/**
|
|
141
|
-
* Base types (not including abstract base models).
|
|
142
|
-
*/
|
|
143
|
-
baseTypes?: string[];
|
|
144
|
-
/**
|
|
145
|
-
* Fields
|
|
146
|
-
*/
|
|
147
|
-
fields: Record<string, FieldInfo>;
|
|
148
|
-
/**
|
|
149
|
-
* Unique constraints
|
|
150
|
-
*/
|
|
151
|
-
uniqueConstraints?: Record<string, UniqueConstraint>;
|
|
152
|
-
/**
|
|
153
|
-
* Attributes on the model
|
|
154
|
-
*/
|
|
155
|
-
attributes?: RuntimeAttribute[];
|
|
156
|
-
/**
|
|
157
|
-
* Discriminator field name
|
|
158
|
-
*/
|
|
159
|
-
discriminator?: string;
|
|
160
|
-
};
|
|
161
|
-
/**
|
|
162
|
-
* Metadata for a type def
|
|
163
|
-
*/
|
|
164
|
-
type TypeDefInfo = {
|
|
165
|
-
/**
|
|
166
|
-
* TypeDef name
|
|
167
|
-
*/
|
|
168
|
-
name: string;
|
|
169
|
-
/**
|
|
170
|
-
* Fields
|
|
171
|
-
*/
|
|
172
|
-
fields: Record<string, FieldInfo>;
|
|
173
|
-
};
|
|
174
|
-
/**
|
|
175
|
-
* ZModel data model metadata
|
|
176
|
-
*/
|
|
177
|
-
type ModelMeta = {
|
|
178
|
-
/**
|
|
179
|
-
* Data models
|
|
180
|
-
*/
|
|
181
|
-
models: Record<string, ModelInfo>;
|
|
182
|
-
/**
|
|
183
|
-
* Type defs
|
|
184
|
-
*/
|
|
185
|
-
typeDefs?: Record<string, TypeDefInfo>;
|
|
186
|
-
/**
|
|
187
|
-
* Mapping from model name to models that will be deleted because of it due to cascade delete
|
|
188
|
-
*/
|
|
189
|
-
deleteCascade?: Record<string, string[]>;
|
|
190
|
-
/**
|
|
191
|
-
* Name of model that backs the `auth()` function
|
|
192
|
-
*/
|
|
193
|
-
authModel?: string;
|
|
194
|
-
/**
|
|
195
|
-
* Optional map from full names to shortened names, used for extra fields/relations generated by ZenStack
|
|
196
|
-
*/
|
|
197
|
-
shortNameMap?: Record<string, string>;
|
|
198
|
-
};
|
|
199
|
-
/**
|
|
200
|
-
* Resolves a model field to its metadata. Returns undefined if not found.
|
|
201
|
-
*/
|
|
202
|
-
declare function resolveField(modelMeta: ModelMeta, modelOrTypeDef: string, field: string, isTypeDef?: boolean): FieldInfo | undefined;
|
|
203
|
-
/**
|
|
204
|
-
* Resolves a model field to its metadata. Throws an error if not found.
|
|
205
|
-
*/
|
|
206
|
-
declare function requireField(modelMeta: ModelMeta, model: string, field: string, isTypeDef?: boolean): FieldInfo;
|
|
207
|
-
/**
|
|
208
|
-
* Gets all fields of a model.
|
|
209
|
-
*/
|
|
210
|
-
declare function getFields(modelMeta: ModelMeta, model: string): Record<string, FieldInfo>;
|
|
211
|
-
/**
|
|
212
|
-
* Gets unique constraints of a model.
|
|
213
|
-
*/
|
|
214
|
-
declare function getUniqueConstraints(modelMeta: ModelMeta, model: string): Record<string, UniqueConstraint> | undefined;
|
|
215
|
-
|
|
216
|
-
/**
|
|
217
|
-
* Tries to apply a mutation to a query result.
|
|
218
|
-
*
|
|
219
|
-
* @param queryModel the model of the query
|
|
220
|
-
* @param queryOp the operation of the query
|
|
221
|
-
* @param queryData the result data of the query
|
|
222
|
-
* @param mutationModel the model of the mutation
|
|
223
|
-
* @param mutationOp the operation of the mutation
|
|
224
|
-
* @param mutationArgs the arguments of the mutation
|
|
225
|
-
* @param modelMeta the model metadata
|
|
226
|
-
* @param logging whether to log the mutation application
|
|
227
|
-
* @returns the updated query data if the mutation is applicable, otherwise undefined
|
|
228
|
-
*/
|
|
229
|
-
declare function applyMutation(queryModel: string, queryOp: string, queryData: any, mutationModel: string, mutationOp: PrismaWriteActionType, mutationArgs: any, modelMeta: ModelMeta, logging: boolean): Promise<any>;
|
|
230
|
-
|
|
231
|
-
type NestedReadVisitorCallback = {
|
|
232
|
-
field?: (model: string, field: FieldInfo | undefined, kind: 'include' | 'select' | undefined, args: unknown) => void | boolean;
|
|
233
|
-
};
|
|
234
|
-
/**
|
|
235
|
-
* Visitor for nested read payload.
|
|
236
|
-
*/
|
|
237
|
-
declare class NestedReadVisitor {
|
|
238
|
-
private readonly modelMeta;
|
|
239
|
-
private readonly callback;
|
|
240
|
-
constructor(modelMeta: ModelMeta, callback: NestedReadVisitorCallback);
|
|
241
|
-
doVisit(model: string, field: FieldInfo | undefined, kind: 'include' | 'select' | undefined, args: unknown): void;
|
|
242
|
-
visit(model: string, args: unknown): void;
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
/**
|
|
246
|
-
* Prisma write operation kinds
|
|
247
|
-
*/
|
|
248
|
-
declare const PrismaWriteActions: readonly ["create", "createMany", "createManyAndReturn", "connectOrCreate", "update", "updateMany", "updateManyAndReturn", "upsert", "connect", "disconnect", "set", "delete", "deleteMany"];
|
|
249
|
-
/**
|
|
250
|
-
* Prisma write operation kinds
|
|
251
|
-
*/
|
|
252
|
-
type PrismaWriteActionType = (typeof PrismaWriteActions)[number];
|
|
253
|
-
/**
|
|
254
|
-
* Maybe promise
|
|
255
|
-
*/
|
|
256
|
-
type MaybePromise<T> = T | Promise<T> | PromiseLike<T>;
|
|
257
|
-
|
|
258
|
-
type NestingPathItem = {
|
|
259
|
-
field?: FieldInfo;
|
|
260
|
-
model: string;
|
|
261
|
-
where: any;
|
|
262
|
-
unique: boolean;
|
|
263
|
-
};
|
|
264
|
-
/**
|
|
265
|
-
* Context for visiting
|
|
266
|
-
*/
|
|
267
|
-
type NestedWriteVisitorContext = {
|
|
268
|
-
/**
|
|
269
|
-
* Parent data, can be used to replace fields
|
|
270
|
-
*/
|
|
271
|
-
parent: any;
|
|
272
|
-
/**
|
|
273
|
-
* Current field, undefined if toplevel
|
|
274
|
-
*/
|
|
275
|
-
field?: FieldInfo;
|
|
276
|
-
/**
|
|
277
|
-
* A top-down path of all nested update conditions and corresponding field till now
|
|
278
|
-
*/
|
|
279
|
-
nestingPath: NestingPathItem[];
|
|
280
|
-
};
|
|
281
|
-
/**
|
|
282
|
-
* NestedWriteVisitor's callback actions. A call back function should return true or void to indicate
|
|
283
|
-
* that the visitor should continue traversing its children, or false to stop. It can also return an object
|
|
284
|
-
* to let the visitor traverse it instead of its original children.
|
|
285
|
-
*/
|
|
286
|
-
type NestedWriterVisitorCallback = {
|
|
287
|
-
create?: (model: string, data: any, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
288
|
-
createMany?: (model: string, args: {
|
|
289
|
-
data: any;
|
|
290
|
-
skipDuplicates?: boolean;
|
|
291
|
-
}, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
292
|
-
connectOrCreate?: (model: string, args: {
|
|
293
|
-
where: object;
|
|
294
|
-
create: any;
|
|
295
|
-
}, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
296
|
-
connect?: (model: string, args: object, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
297
|
-
disconnect?: (model: string, args: object, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
298
|
-
set?: (model: string, args: object, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
299
|
-
update?: (model: string, args: object, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
300
|
-
updateMany?: (model: string, args: {
|
|
301
|
-
where?: object;
|
|
302
|
-
data: any;
|
|
303
|
-
}, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
304
|
-
upsert?: (model: string, args: {
|
|
305
|
-
where: object;
|
|
306
|
-
create: any;
|
|
307
|
-
update: any;
|
|
308
|
-
}, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
309
|
-
delete?: (model: string, args: object | boolean, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
310
|
-
deleteMany?: (model: string, args: any | object, context: NestedWriteVisitorContext) => MaybePromise<boolean | object | void>;
|
|
311
|
-
field?: (field: FieldInfo, action: PrismaWriteActionType, data: any, context: NestedWriteVisitorContext) => MaybePromise<void>;
|
|
312
|
-
};
|
|
313
|
-
/**
|
|
314
|
-
* Recursive visitor for nested write (create/update) payload.
|
|
315
|
-
*/
|
|
316
|
-
declare class NestedWriteVisitor {
|
|
317
|
-
private readonly modelMeta;
|
|
318
|
-
private readonly callback;
|
|
319
|
-
constructor(modelMeta: ModelMeta, callback: NestedWriterVisitorCallback);
|
|
320
|
-
private isPrismaWriteAction;
|
|
321
|
-
/**
|
|
322
|
-
* Start visiting
|
|
323
|
-
*
|
|
324
|
-
* @see NestedWriterVisitorCallback
|
|
325
|
-
*/
|
|
326
|
-
visit(model: string, action: PrismaWriteActionType, args: any): Promise<void>;
|
|
327
|
-
private doVisit;
|
|
328
|
-
private visitSubPayload;
|
|
329
|
-
private enumerateReverse;
|
|
330
|
-
}
|
|
331
|
-
|
|
332
|
-
/**
|
|
333
|
-
* Gets models read (including nested ones) given a query args.
|
|
334
|
-
* @param model
|
|
335
|
-
* @param targetModels
|
|
336
|
-
* @param modelMeta
|
|
337
|
-
* @param args
|
|
338
|
-
* @returns
|
|
339
|
-
*/
|
|
340
|
-
declare function getReadModels(model: string, modelMeta: ModelMeta, args: any): string[];
|
|
341
|
-
/**
|
|
342
|
-
* Gets mutated models (including nested ones) given a mutation args.
|
|
343
|
-
*/
|
|
344
|
-
declare function getMutatedModels(model: string, operation: PrismaWriteActionType, mutationArgs: any, modelMeta: ModelMeta): Promise<string[]>;
|
|
345
|
-
|
|
346
|
-
/**
|
|
347
|
-
* Gets field names in a data model entity, filtering out internal fields.
|
|
348
|
-
*/
|
|
349
|
-
declare function getModelFields(data: object): string[];
|
|
350
|
-
/**
|
|
351
|
-
* Array or scalar
|
|
352
|
-
*/
|
|
353
|
-
type Enumerable<T> = T | Array<T>;
|
|
354
|
-
/**
|
|
355
|
-
* Uniformly enumerates an array or scalar.
|
|
356
|
-
*/
|
|
357
|
-
declare function enumerate<T>(x: Enumerable<T>): T[];
|
|
358
|
-
/**
|
|
359
|
-
* Zip two arrays or scalars.
|
|
360
|
-
*/
|
|
361
|
-
declare function zip<T1, T2>(x: Enumerable<T1>, y: Enumerable<T2>): Array<[T1, T2]>;
|
|
362
|
-
/**
|
|
363
|
-
* Gets ID fields of a model.
|
|
364
|
-
*/
|
|
365
|
-
declare function getIdFields(modelMeta: ModelMeta, model: string, throwIfNotFound?: boolean): FieldInfo[];
|
|
366
|
-
/**
|
|
367
|
-
* Gets info for a model.
|
|
368
|
-
*/
|
|
369
|
-
declare function getModelInfo<Throw extends boolean = false>(modelMeta: ModelMeta, model: string, throwIfNotFound?: Throw): Throw extends true ? ModelInfo : ModelInfo | undefined;
|
|
370
|
-
/**
|
|
371
|
-
* Gets info for a type def.
|
|
372
|
-
*/
|
|
373
|
-
declare function getTypeDefInfo<Throw extends boolean = false>(modelMeta: ModelMeta, typeDef: string, throwIfNotFound?: Throw): Throw extends true ? TypeDefInfo : TypeDefInfo | undefined;
|
|
374
|
-
/**
|
|
375
|
-
* Checks if a model is a delegate model.
|
|
376
|
-
*/
|
|
377
|
-
declare function isDelegateModel(modelMeta: ModelMeta, model: string): boolean;
|
|
378
|
-
|
|
379
|
-
export { type Enumerable, type FieldDefaultValueProvider, type FieldInfo, type MaybePromise, ModelDataVisitor, type ModelDataVisitorCallback, type ModelInfo, type ModelMeta, NestedReadVisitor, type NestedReadVisitorCallback, NestedWriteVisitor, type NestedWriteVisitorContext, type NestedWriterVisitorCallback, type PrismaWriteActionType, PrismaWriteActions, type RelationAction, type RuntimeAttribute, type TypeDefInfo, type UniqueConstraint, applyMutation, clone, enumerate, getFields, getIdFields, getModelFields, getModelInfo, getMutatedModels, getReadModels, getTypeDefInfo, getUniqueConstraints, isDelegateModel, requireField, resolveField, zip };
|