@cerbos/orm-prisma 3.3.0 → 4.1.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 (74) hide show
  1. package/README.md +243 -10
  2. package/lib/index.d.ts +102 -2
  3. package/lib/index.d.ts.map +1 -1
  4. package/lib/index.js +1754 -155
  5. package/lib/index.js.map +1 -1
  6. package/package.json +24 -15
  7. package/src/adversarial.test.ts +1281 -0
  8. package/src/corpus.ts +414 -0
  9. package/src/generated/prisma-adversarial/browser.ts +54 -0
  10. package/src/generated/prisma-adversarial/client.ts +76 -0
  11. package/src/generated/{prisma → prisma-adversarial}/commonInputTypes.ts +131 -27
  12. package/src/generated/prisma-adversarial/enums.ts +15 -0
  13. package/src/generated/prisma-adversarial/internal/class.ts +264 -0
  14. package/src/generated/prisma-adversarial/internal/prismaNamespace.ts +1332 -0
  15. package/src/generated/{prisma → prisma-adversarial}/internal/prismaNamespaceBrowser.ts +45 -47
  16. package/src/generated/prisma-adversarial/models/AdversarialCategory.ts +1401 -0
  17. package/src/generated/prisma-adversarial/models/AdversarialInner.ts +1369 -0
  18. package/src/generated/prisma-adversarial/models/AdversarialLabel.ts +1272 -0
  19. package/src/generated/prisma-adversarial/models/AdversarialParent.ts +1474 -0
  20. package/src/generated/prisma-adversarial/models/AdversarialResource.ts +1789 -0
  21. package/src/generated/prisma-adversarial/models/AdversarialSubCategory.ts +1401 -0
  22. package/src/generated/prisma-adversarial/models/AdversarialTag.ts +1307 -0
  23. package/src/generated/prisma-adversarial/models.ts +18 -0
  24. package/src/generated/{prisma → prisma-adversarial-pg}/browser.ts +14 -19
  25. package/src/generated/{prisma → prisma-adversarial-pg}/client.ts +16 -21
  26. package/src/generated/prisma-adversarial-pg/commonInputTypes.ts +356 -0
  27. package/src/generated/prisma-adversarial-pg/internal/class.ts +264 -0
  28. package/src/generated/prisma-adversarial-pg/internal/prismaNamespace.ts +1371 -0
  29. package/src/generated/prisma-adversarial-pg/internal/prismaNamespaceBrowser.ts +177 -0
  30. package/src/generated/prisma-adversarial-pg/models/AdversarialCategory.ts +1404 -0
  31. package/src/generated/prisma-adversarial-pg/models/AdversarialInner.ts +1371 -0
  32. package/src/generated/prisma-adversarial-pg/models/AdversarialLabel.ts +1275 -0
  33. package/src/generated/prisma-adversarial-pg/models/AdversarialParent.ts +1476 -0
  34. package/src/generated/prisma-adversarial-pg/models/AdversarialResource.ts +1791 -0
  35. package/src/generated/prisma-adversarial-pg/models/AdversarialSubCategory.ts +1404 -0
  36. package/src/generated/prisma-adversarial-pg/models/AdversarialTag.ts +1310 -0
  37. package/src/generated/prisma-adversarial-pg/models.ts +18 -0
  38. package/src/generated/prisma-adversarial-pg-v6/index.d.ts +11830 -0
  39. package/src/generated/prisma-adversarial-v6/client.d.ts +1 -0
  40. package/src/generated/prisma-adversarial-v6/default.d.ts +1 -0
  41. package/src/generated/prisma-adversarial-v6/edge.d.ts +1 -0
  42. package/src/generated/prisma-adversarial-v6/index.d.ts +11769 -0
  43. package/src/generated/prisma-adversarial-v6/runtime/index-browser.d.ts +370 -0
  44. package/src/generated/prisma-adversarial-v6/runtime/library.d.ts +3982 -0
  45. package/src/generated/prisma-adversarial-v6/wasm.d.ts +1 -0
  46. package/src/index.ts +2515 -219
  47. package/src/test-setup.adversarial-url.ts +18 -0
  48. package/src/test-setup.adversarial.pg.v6.ts +13 -0
  49. package/src/test-setup.adversarial.pg.v7.ts +9 -0
  50. package/src/test-setup.adversarial.v6.ts +5 -0
  51. package/src/test-setup.adversarial.v7.ts +12 -0
  52. package/src/translator.test.ts +1586 -0
  53. package/src/generated/prisma/internal/class.ts +0 -274
  54. package/src/generated/prisma/internal/prismaNamespace.ts +0 -1333
  55. package/src/generated/prisma/models/Category.ts +0 -1412
  56. package/src/generated/prisma/models/Label.ts +0 -1276
  57. package/src/generated/prisma/models/NestedResource.ts +0 -1562
  58. package/src/generated/prisma/models/NextLevelNestedResource.ts +0 -1337
  59. package/src/generated/prisma/models/Resource.ts +0 -2136
  60. package/src/generated/prisma/models/SubCategory.ts +0 -1412
  61. package/src/generated/prisma/models/Tag.ts +0 -1276
  62. package/src/generated/prisma/models/User.ts +0 -1503
  63. package/src/generated/prisma/models.ts +0 -19
  64. package/src/generated/prisma-v6/index.d.ts +0 -13639
  65. package/src/index.test.ts +0 -6322
  66. package/src/test-setup.v6.ts +0 -5
  67. package/src/test-setup.v7.ts +0 -7
  68. /package/src/generated/{prisma → prisma-adversarial-pg}/enums.ts +0 -0
  69. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/client.d.ts +0 -0
  70. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/default.d.ts +0 -0
  71. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/edge.d.ts +0 -0
  72. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/runtime/index-browser.d.ts +0 -0
  73. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/runtime/library.d.ts +0 -0
  74. /package/src/generated/{prisma-v6 → prisma-adversarial-pg-v6}/wasm.d.ts +0 -0
@@ -28,6 +28,11 @@ export type StringFilter<$PrismaModel = never> = {
28
28
  not?: Prisma.NestedStringFilter<$PrismaModel> | string
29
29
  }
30
30
 
31
+ export type BoolFilter<$PrismaModel = never> = {
32
+ equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
33
+ not?: Prisma.NestedBoolFilter<$PrismaModel> | boolean
34
+ }
35
+
31
36
  export type IntFilter<$PrismaModel = never> = {
32
37
  equals?: number | Prisma.IntFieldRefInput<$PrismaModel>
33
38
  in?: number[]
@@ -39,9 +44,15 @@ export type IntFilter<$PrismaModel = never> = {
39
44
  not?: Prisma.NestedIntFilter<$PrismaModel> | number
40
45
  }
41
46
 
42
- export type BoolFilter<$PrismaModel = never> = {
43
- equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
44
- not?: Prisma.NestedBoolFilter<$PrismaModel> | boolean
47
+ export type FloatNullableFilter<$PrismaModel = never> = {
48
+ equals?: number | Prisma.FloatFieldRefInput<$PrismaModel> | null
49
+ in?: number[] | null
50
+ notIn?: number[] | null
51
+ lt?: number | Prisma.FloatFieldRefInput<$PrismaModel>
52
+ lte?: number | Prisma.FloatFieldRefInput<$PrismaModel>
53
+ gt?: number | Prisma.FloatFieldRefInput<$PrismaModel>
54
+ gte?: number | Prisma.FloatFieldRefInput<$PrismaModel>
55
+ not?: Prisma.NestedFloatNullableFilter<$PrismaModel> | number | null
45
56
  }
46
57
 
47
58
  export type StringNullableFilter<$PrismaModel = never> = {
@@ -58,6 +69,17 @@ export type StringNullableFilter<$PrismaModel = never> = {
58
69
  not?: Prisma.NestedStringNullableFilter<$PrismaModel> | string | null
59
70
  }
60
71
 
72
+ export type DateTimeNullableFilter<$PrismaModel = never> = {
73
+ equals?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel> | null
74
+ in?: Date[] | string[] | null
75
+ notIn?: Date[] | string[] | null
76
+ lt?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
77
+ lte?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
78
+ gt?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
79
+ gte?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
80
+ not?: Prisma.NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null
81
+ }
82
+
61
83
  export type SortOrderInput = {
62
84
  sort: Prisma.SortOrder
63
85
  nulls?: Prisma.NullsOrder
@@ -80,6 +102,14 @@ export type StringWithAggregatesFilter<$PrismaModel = never> = {
80
102
  _max?: Prisma.NestedStringFilter<$PrismaModel>
81
103
  }
82
104
 
105
+ export type BoolWithAggregatesFilter<$PrismaModel = never> = {
106
+ equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
107
+ not?: Prisma.NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
108
+ _count?: Prisma.NestedIntFilter<$PrismaModel>
109
+ _min?: Prisma.NestedBoolFilter<$PrismaModel>
110
+ _max?: Prisma.NestedBoolFilter<$PrismaModel>
111
+ }
112
+
83
113
  export type IntWithAggregatesFilter<$PrismaModel = never> = {
84
114
  equals?: number | Prisma.IntFieldRefInput<$PrismaModel>
85
115
  in?: number[]
@@ -96,12 +126,20 @@ export type IntWithAggregatesFilter<$PrismaModel = never> = {
96
126
  _max?: Prisma.NestedIntFilter<$PrismaModel>
97
127
  }
98
128
 
99
- export type BoolWithAggregatesFilter<$PrismaModel = never> = {
100
- equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
101
- not?: Prisma.NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
102
- _count?: Prisma.NestedIntFilter<$PrismaModel>
103
- _min?: Prisma.NestedBoolFilter<$PrismaModel>
104
- _max?: Prisma.NestedBoolFilter<$PrismaModel>
129
+ export type FloatNullableWithAggregatesFilter<$PrismaModel = never> = {
130
+ equals?: number | Prisma.FloatFieldRefInput<$PrismaModel> | null
131
+ in?: number[] | null
132
+ notIn?: number[] | null
133
+ lt?: number | Prisma.FloatFieldRefInput<$PrismaModel>
134
+ lte?: number | Prisma.FloatFieldRefInput<$PrismaModel>
135
+ gt?: number | Prisma.FloatFieldRefInput<$PrismaModel>
136
+ gte?: number | Prisma.FloatFieldRefInput<$PrismaModel>
137
+ not?: Prisma.NestedFloatNullableWithAggregatesFilter<$PrismaModel> | number | null
138
+ _count?: Prisma.NestedIntNullableFilter<$PrismaModel>
139
+ _avg?: Prisma.NestedFloatNullableFilter<$PrismaModel>
140
+ _sum?: Prisma.NestedFloatNullableFilter<$PrismaModel>
141
+ _min?: Prisma.NestedFloatNullableFilter<$PrismaModel>
142
+ _max?: Prisma.NestedFloatNullableFilter<$PrismaModel>
105
143
  }
106
144
 
107
145
  export type StringNullableWithAggregatesFilter<$PrismaModel = never> = {
@@ -121,6 +159,20 @@ export type StringNullableWithAggregatesFilter<$PrismaModel = never> = {
121
159
  _max?: Prisma.NestedStringNullableFilter<$PrismaModel>
122
160
  }
123
161
 
162
+ export type DateTimeNullableWithAggregatesFilter<$PrismaModel = never> = {
163
+ equals?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel> | null
164
+ in?: Date[] | string[] | null
165
+ notIn?: Date[] | string[] | null
166
+ lt?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
167
+ lte?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
168
+ gt?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
169
+ gte?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
170
+ not?: Prisma.NestedDateTimeNullableWithAggregatesFilter<$PrismaModel> | Date | string | null
171
+ _count?: Prisma.NestedIntNullableFilter<$PrismaModel>
172
+ _min?: Prisma.NestedDateTimeNullableFilter<$PrismaModel>
173
+ _max?: Prisma.NestedDateTimeNullableFilter<$PrismaModel>
174
+ }
175
+
124
176
  export type NestedStringFilter<$PrismaModel = never> = {
125
177
  equals?: string | Prisma.StringFieldRefInput<$PrismaModel>
126
178
  in?: string[]
@@ -135,6 +187,11 @@ export type NestedStringFilter<$PrismaModel = never> = {
135
187
  not?: Prisma.NestedStringFilter<$PrismaModel> | string
136
188
  }
137
189
 
190
+ export type NestedBoolFilter<$PrismaModel = never> = {
191
+ equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
192
+ not?: Prisma.NestedBoolFilter<$PrismaModel> | boolean
193
+ }
194
+
138
195
  export type NestedIntFilter<$PrismaModel = never> = {
139
196
  equals?: number | Prisma.IntFieldRefInput<$PrismaModel>
140
197
  in?: number[]
@@ -146,9 +203,15 @@ export type NestedIntFilter<$PrismaModel = never> = {
146
203
  not?: Prisma.NestedIntFilter<$PrismaModel> | number
147
204
  }
148
205
 
149
- export type NestedBoolFilter<$PrismaModel = never> = {
150
- equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
151
- not?: Prisma.NestedBoolFilter<$PrismaModel> | boolean
206
+ export type NestedFloatNullableFilter<$PrismaModel = never> = {
207
+ equals?: number | Prisma.FloatFieldRefInput<$PrismaModel> | null
208
+ in?: number[] | null
209
+ notIn?: number[] | null
210
+ lt?: number | Prisma.FloatFieldRefInput<$PrismaModel>
211
+ lte?: number | Prisma.FloatFieldRefInput<$PrismaModel>
212
+ gt?: number | Prisma.FloatFieldRefInput<$PrismaModel>
213
+ gte?: number | Prisma.FloatFieldRefInput<$PrismaModel>
214
+ not?: Prisma.NestedFloatNullableFilter<$PrismaModel> | number | null
152
215
  }
153
216
 
154
217
  export type NestedStringNullableFilter<$PrismaModel = never> = {
@@ -165,6 +228,17 @@ export type NestedStringNullableFilter<$PrismaModel = never> = {
165
228
  not?: Prisma.NestedStringNullableFilter<$PrismaModel> | string | null
166
229
  }
167
230
 
231
+ export type NestedDateTimeNullableFilter<$PrismaModel = never> = {
232
+ equals?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel> | null
233
+ in?: Date[] | string[] | null
234
+ notIn?: Date[] | string[] | null
235
+ lt?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
236
+ lte?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
237
+ gt?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
238
+ gte?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
239
+ not?: Prisma.NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null
240
+ }
241
+
168
242
  export type NestedStringWithAggregatesFilter<$PrismaModel = never> = {
169
243
  equals?: string | Prisma.StringFieldRefInput<$PrismaModel>
170
244
  in?: string[]
@@ -182,6 +256,14 @@ export type NestedStringWithAggregatesFilter<$PrismaModel = never> = {
182
256
  _max?: Prisma.NestedStringFilter<$PrismaModel>
183
257
  }
184
258
 
259
+ export type NestedBoolWithAggregatesFilter<$PrismaModel = never> = {
260
+ equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
261
+ not?: Prisma.NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
262
+ _count?: Prisma.NestedIntFilter<$PrismaModel>
263
+ _min?: Prisma.NestedBoolFilter<$PrismaModel>
264
+ _max?: Prisma.NestedBoolFilter<$PrismaModel>
265
+ }
266
+
185
267
  export type NestedIntWithAggregatesFilter<$PrismaModel = never> = {
186
268
  equals?: number | Prisma.IntFieldRefInput<$PrismaModel>
187
269
  in?: number[]
@@ -209,12 +291,31 @@ export type NestedFloatFilter<$PrismaModel = never> = {
209
291
  not?: Prisma.NestedFloatFilter<$PrismaModel> | number
210
292
  }
211
293
 
212
- export type NestedBoolWithAggregatesFilter<$PrismaModel = never> = {
213
- equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel>
214
- not?: Prisma.NestedBoolWithAggregatesFilter<$PrismaModel> | boolean
215
- _count?: Prisma.NestedIntFilter<$PrismaModel>
216
- _min?: Prisma.NestedBoolFilter<$PrismaModel>
217
- _max?: Prisma.NestedBoolFilter<$PrismaModel>
294
+ export type NestedFloatNullableWithAggregatesFilter<$PrismaModel = never> = {
295
+ equals?: number | Prisma.FloatFieldRefInput<$PrismaModel> | null
296
+ in?: number[] | null
297
+ notIn?: number[] | null
298
+ lt?: number | Prisma.FloatFieldRefInput<$PrismaModel>
299
+ lte?: number | Prisma.FloatFieldRefInput<$PrismaModel>
300
+ gt?: number | Prisma.FloatFieldRefInput<$PrismaModel>
301
+ gte?: number | Prisma.FloatFieldRefInput<$PrismaModel>
302
+ not?: Prisma.NestedFloatNullableWithAggregatesFilter<$PrismaModel> | number | null
303
+ _count?: Prisma.NestedIntNullableFilter<$PrismaModel>
304
+ _avg?: Prisma.NestedFloatNullableFilter<$PrismaModel>
305
+ _sum?: Prisma.NestedFloatNullableFilter<$PrismaModel>
306
+ _min?: Prisma.NestedFloatNullableFilter<$PrismaModel>
307
+ _max?: Prisma.NestedFloatNullableFilter<$PrismaModel>
308
+ }
309
+
310
+ export type NestedIntNullableFilter<$PrismaModel = never> = {
311
+ equals?: number | Prisma.IntFieldRefInput<$PrismaModel> | null
312
+ in?: number[] | null
313
+ notIn?: number[] | null
314
+ lt?: number | Prisma.IntFieldRefInput<$PrismaModel>
315
+ lte?: number | Prisma.IntFieldRefInput<$PrismaModel>
316
+ gt?: number | Prisma.IntFieldRefInput<$PrismaModel>
317
+ gte?: number | Prisma.IntFieldRefInput<$PrismaModel>
318
+ not?: Prisma.NestedIntNullableFilter<$PrismaModel> | number | null
218
319
  }
219
320
 
220
321
  export type NestedStringNullableWithAggregatesFilter<$PrismaModel = never> = {
@@ -234,15 +335,18 @@ export type NestedStringNullableWithAggregatesFilter<$PrismaModel = never> = {
234
335
  _max?: Prisma.NestedStringNullableFilter<$PrismaModel>
235
336
  }
236
337
 
237
- export type NestedIntNullableFilter<$PrismaModel = never> = {
238
- equals?: number | Prisma.IntFieldRefInput<$PrismaModel> | null
239
- in?: number[] | null
240
- notIn?: number[] | null
241
- lt?: number | Prisma.IntFieldRefInput<$PrismaModel>
242
- lte?: number | Prisma.IntFieldRefInput<$PrismaModel>
243
- gt?: number | Prisma.IntFieldRefInput<$PrismaModel>
244
- gte?: number | Prisma.IntFieldRefInput<$PrismaModel>
245
- not?: Prisma.NestedIntNullableFilter<$PrismaModel> | number | null
338
+ export type NestedDateTimeNullableWithAggregatesFilter<$PrismaModel = never> = {
339
+ equals?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel> | null
340
+ in?: Date[] | string[] | null
341
+ notIn?: Date[] | string[] | null
342
+ lt?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
343
+ lte?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
344
+ gt?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
345
+ gte?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel>
346
+ not?: Prisma.NestedDateTimeNullableWithAggregatesFilter<$PrismaModel> | Date | string | null
347
+ _count?: Prisma.NestedIntNullableFilter<$PrismaModel>
348
+ _min?: Prisma.NestedDateTimeNullableFilter<$PrismaModel>
349
+ _max?: Prisma.NestedDateTimeNullableFilter<$PrismaModel>
246
350
  }
247
351
 
248
352
 
@@ -0,0 +1,15 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!! */
3
+ /* eslint-disable */
4
+ // biome-ignore-all lint: generated file
5
+ // @ts-nocheck
6
+ /*
7
+ * This file exports all enum related types from the schema.
8
+ *
9
+ * 🟢 You can import this file directly.
10
+ */
11
+
12
+
13
+
14
+ // This file is empty because there are no enums in the schema.
15
+ export {}
@@ -0,0 +1,264 @@
1
+
2
+ /* !!! This is code generated by Prisma. Do not edit directly. !!! */
3
+ /* eslint-disable */
4
+ // biome-ignore-all lint: generated file
5
+ // @ts-nocheck
6
+ /*
7
+ * WARNING: This is an internal file that is subject to change!
8
+ *
9
+ * 🛑 Under no circumstances should you import this file directly! 🛑
10
+ *
11
+ * Please import the `PrismaClient` class from the `client.ts` file instead.
12
+ */
13
+
14
+ import * as runtime from "@prisma/client/runtime/client"
15
+ import type * as Prisma from "./prismaNamespace.js"
16
+
17
+
18
+ const config: runtime.GetPrismaClientConfig = {
19
+ "previewFeatures": [],
20
+ "clientVersion": "7.9.1",
21
+ "engineVersion": "e922089b7d7502aff4249d5da3420f6fa55fc6ad",
22
+ "activeProvider": "sqlite",
23
+ "inlineSchema": "// Dedicated schema for the adversarial differential harness (src/adversarial.test.ts). Kept\n// separate from schema.prisma/schema.v6.prisma because the shared conformance/ corpus needs\n// hostile shapes the \"realistic\" fixture schema can't hold: NULL tag names and duplicate tag\n// names across (and within) resources. The main Resource/Tag models use globally-unique,\n// many-to-many shared reference tags, which cannot represent either.\ngenerator client {\n provider = \"prisma-client\"\n output = \"../src/generated/prisma-adversarial\"\n engineType = \"client\"\n moduleFormat = \"cjs\"\n}\n\ndatasource db {\n provider = \"sqlite\"\n}\n\nmodel AdversarialResource {\n id String @id\n aBool Boolean\n aString String\n aNumber Int\n aDouble Float?\n aOptionalString String?\n createdBy String\n scope String?\n createdAt DateTime?\n tags AdversarialTag[]\n categories AdversarialCategory[]\n parent AdversarialParent?\n}\n\n// Owned one-to-many child row (unlike the shared, globally-unique Tag model) so hostile seeds\n// can hold NULL and duplicate tag names.\nmodel AdversarialTag {\n id String @id @default(cuid())\n tagId String\n name String?\n resource AdversarialResource @relation(fields: [resourceId], references: [id])\n resourceId String\n}\n\nmodel AdversarialCategory {\n id String @id @default(cuid())\n name String\n resource AdversarialResource @relation(fields: [resourceId], references: [id])\n resourceId String\n subCategories AdversarialSubCategory[]\n}\n\nmodel AdversarialSubCategory {\n id String @id @default(cuid())\n name String\n category AdversarialCategory @relation(fields: [categoryId], references: [id])\n categoryId String\n labels AdversarialLabel[]\n}\n\nmodel AdversarialLabel {\n id String @id @default(cuid())\n name String?\n subCategory AdversarialSubCategory @relation(fields: [subCategoryId], references: [id])\n subCategoryId String\n}\n\n// The corpus's one REAL to-one relation (conformance/seeds.json `parentSeedId`). `parent` and\n// `parent.inner` are separate rows reached through a join, unlike `obj.inner`, which is a flat\n// column wearing a dotted name. A resource owns its own parent chain — no two resources share a\n// parent row — so a filter that returned the parent instead of the child could not agree with the\n// oracle by accident.\nmodel AdversarialParent {\n id String @id @default(cuid())\n aBool Boolean\n aString String\n aNumber Int\n aOptionalString String?\n resource AdversarialResource @relation(fields: [resourceId], references: [id])\n resourceId String @unique\n inner AdversarialInner?\n}\n\nmodel AdversarialInner {\n id String @id @default(cuid())\n aBool Boolean\n aString String\n aNumber Int\n aOptionalString String?\n parent AdversarialParent @relation(fields: [parentId], references: [id])\n parentId String @unique\n}\n",
24
+ "runtimeDataModel": {
25
+ "models": {},
26
+ "enums": {},
27
+ "types": {}
28
+ },
29
+ "parameterizationSchema": {
30
+ "strings": [],
31
+ "graph": ""
32
+ }
33
+ }
34
+
35
+ config.runtimeDataModel = JSON.parse("{\"models\":{\"AdversarialResource\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"aBool\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"aString\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"aNumber\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"aDouble\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"aOptionalString\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdBy\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"scope\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"tags\",\"kind\":\"object\",\"type\":\"AdversarialTag\",\"relationName\":\"AdversarialResourceToAdversarialTag\"},{\"name\":\"categories\",\"kind\":\"object\",\"type\":\"AdversarialCategory\",\"relationName\":\"AdversarialCategoryToAdversarialResource\"},{\"name\":\"parent\",\"kind\":\"object\",\"type\":\"AdversarialParent\",\"relationName\":\"AdversarialParentToAdversarialResource\"}],\"dbName\":null},\"AdversarialTag\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"tagId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"resource\",\"kind\":\"object\",\"type\":\"AdversarialResource\",\"relationName\":\"AdversarialResourceToAdversarialTag\"},{\"name\":\"resourceId\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null},\"AdversarialCategory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"resource\",\"kind\":\"object\",\"type\":\"AdversarialResource\",\"relationName\":\"AdversarialCategoryToAdversarialResource\"},{\"name\":\"resourceId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"subCategories\",\"kind\":\"object\",\"type\":\"AdversarialSubCategory\",\"relationName\":\"AdversarialCategoryToAdversarialSubCategory\"}],\"dbName\":null},\"AdversarialSubCategory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"object\",\"type\":\"AdversarialCategory\",\"relationName\":\"AdversarialCategoryToAdversarialSubCategory\"},{\"name\":\"categoryId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"labels\",\"kind\":\"object\",\"type\":\"AdversarialLabel\",\"relationName\":\"AdversarialLabelToAdversarialSubCategory\"}],\"dbName\":null},\"AdversarialLabel\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"subCategory\",\"kind\":\"object\",\"type\":\"AdversarialSubCategory\",\"relationName\":\"AdversarialLabelToAdversarialSubCategory\"},{\"name\":\"subCategoryId\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null},\"AdversarialParent\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"aBool\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"aString\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"aNumber\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"aOptionalString\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"resource\",\"kind\":\"object\",\"type\":\"AdversarialResource\",\"relationName\":\"AdversarialParentToAdversarialResource\"},{\"name\":\"resourceId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"inner\",\"kind\":\"object\",\"type\":\"AdversarialInner\",\"relationName\":\"AdversarialInnerToAdversarialParent\"}],\"dbName\":null},\"AdversarialInner\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"aBool\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"aString\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"aNumber\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"aOptionalString\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"parent\",\"kind\":\"object\",\"type\":\"AdversarialParent\",\"relationName\":\"AdversarialInnerToAdversarialParent\"},{\"name\":\"parentId\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}")
36
+ config.parameterizationSchema = {
37
+ strings: JSON.parse("[\"where\",\"orderBy\",\"cursor\",\"resource\",\"tags\",\"category\",\"subCategory\",\"labels\",\"_count\",\"subCategories\",\"categories\",\"parent\",\"inner\",\"AdversarialResource.findUnique\",\"AdversarialResource.findUniqueOrThrow\",\"AdversarialResource.findFirst\",\"AdversarialResource.findFirstOrThrow\",\"AdversarialResource.findMany\",\"data\",\"AdversarialResource.createOne\",\"AdversarialResource.createMany\",\"AdversarialResource.createManyAndReturn\",\"AdversarialResource.updateOne\",\"AdversarialResource.updateMany\",\"AdversarialResource.updateManyAndReturn\",\"create\",\"update\",\"AdversarialResource.upsertOne\",\"AdversarialResource.deleteOne\",\"AdversarialResource.deleteMany\",\"having\",\"_avg\",\"_sum\",\"_min\",\"_max\",\"AdversarialResource.groupBy\",\"AdversarialResource.aggregate\",\"AdversarialTag.findUnique\",\"AdversarialTag.findUniqueOrThrow\",\"AdversarialTag.findFirst\",\"AdversarialTag.findFirstOrThrow\",\"AdversarialTag.findMany\",\"AdversarialTag.createOne\",\"AdversarialTag.createMany\",\"AdversarialTag.createManyAndReturn\",\"AdversarialTag.updateOne\",\"AdversarialTag.updateMany\",\"AdversarialTag.updateManyAndReturn\",\"AdversarialTag.upsertOne\",\"AdversarialTag.deleteOne\",\"AdversarialTag.deleteMany\",\"AdversarialTag.groupBy\",\"AdversarialTag.aggregate\",\"AdversarialCategory.findUnique\",\"AdversarialCategory.findUniqueOrThrow\",\"AdversarialCategory.findFirst\",\"AdversarialCategory.findFirstOrThrow\",\"AdversarialCategory.findMany\",\"AdversarialCategory.createOne\",\"AdversarialCategory.createMany\",\"AdversarialCategory.createManyAndReturn\",\"AdversarialCategory.updateOne\",\"AdversarialCategory.updateMany\",\"AdversarialCategory.updateManyAndReturn\",\"AdversarialCategory.upsertOne\",\"AdversarialCategory.deleteOne\",\"AdversarialCategory.deleteMany\",\"AdversarialCategory.groupBy\",\"AdversarialCategory.aggregate\",\"AdversarialSubCategory.findUnique\",\"AdversarialSubCategory.findUniqueOrThrow\",\"AdversarialSubCategory.findFirst\",\"AdversarialSubCategory.findFirstOrThrow\",\"AdversarialSubCategory.findMany\",\"AdversarialSubCategory.createOne\",\"AdversarialSubCategory.createMany\",\"AdversarialSubCategory.createManyAndReturn\",\"AdversarialSubCategory.updateOne\",\"AdversarialSubCategory.updateMany\",\"AdversarialSubCategory.updateManyAndReturn\",\"AdversarialSubCategory.upsertOne\",\"AdversarialSubCategory.deleteOne\",\"AdversarialSubCategory.deleteMany\",\"AdversarialSubCategory.groupBy\",\"AdversarialSubCategory.aggregate\",\"AdversarialLabel.findUnique\",\"AdversarialLabel.findUniqueOrThrow\",\"AdversarialLabel.findFirst\",\"AdversarialLabel.findFirstOrThrow\",\"AdversarialLabel.findMany\",\"AdversarialLabel.createOne\",\"AdversarialLabel.createMany\",\"AdversarialLabel.createManyAndReturn\",\"AdversarialLabel.updateOne\",\"AdversarialLabel.updateMany\",\"AdversarialLabel.updateManyAndReturn\",\"AdversarialLabel.upsertOne\",\"AdversarialLabel.deleteOne\",\"AdversarialLabel.deleteMany\",\"AdversarialLabel.groupBy\",\"AdversarialLabel.aggregate\",\"AdversarialParent.findUnique\",\"AdversarialParent.findUniqueOrThrow\",\"AdversarialParent.findFirst\",\"AdversarialParent.findFirstOrThrow\",\"AdversarialParent.findMany\",\"AdversarialParent.createOne\",\"AdversarialParent.createMany\",\"AdversarialParent.createManyAndReturn\",\"AdversarialParent.updateOne\",\"AdversarialParent.updateMany\",\"AdversarialParent.updateManyAndReturn\",\"AdversarialParent.upsertOne\",\"AdversarialParent.deleteOne\",\"AdversarialParent.deleteMany\",\"AdversarialParent.groupBy\",\"AdversarialParent.aggregate\",\"AdversarialInner.findUnique\",\"AdversarialInner.findUniqueOrThrow\",\"AdversarialInner.findFirst\",\"AdversarialInner.findFirstOrThrow\",\"AdversarialInner.findMany\",\"AdversarialInner.createOne\",\"AdversarialInner.createMany\",\"AdversarialInner.createManyAndReturn\",\"AdversarialInner.updateOne\",\"AdversarialInner.updateMany\",\"AdversarialInner.updateManyAndReturn\",\"AdversarialInner.upsertOne\",\"AdversarialInner.deleteOne\",\"AdversarialInner.deleteMany\",\"AdversarialInner.groupBy\",\"AdversarialInner.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"aBool\",\"aString\",\"aNumber\",\"aOptionalString\",\"parentId\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"contains\",\"startsWith\",\"endsWith\",\"not\",\"resourceId\",\"name\",\"subCategoryId\",\"categoryId\",\"tagId\",\"aDouble\",\"createdBy\",\"scope\",\"createdAt\",\"every\",\"some\",\"none\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"disconnect\",\"delete\",\"connect\",\"createMany\",\"set\",\"updateMany\",\"deleteMany\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"),
38
+ graph: "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-AQAhngEIANgBACGfAQEAuwEAIaABAQC-AQAhoQFAANkBACEDAAAAHAAgAQAALgAwHgAALwAgAwAAABwAIAEAAB0AMAIAAAEAIAEAAAAFACABAAAABQAgAwAAAAMAIAEAAAQAMAIAAAUAIAMAAAADACABAAAEADACAAAFACADAAAAAwAgAQAABAAwAgAABQAgBQMAALgCACCIAQEAAAABmQEBAAAAAZoBAQAAAAGdAQEAAAABARIAADcAIASIAQEAAAABmQEBAAAAAZoBAQAAAAGdAQEAAAABARIAADkAMAESAAA5ADAFAwAAtwIAIIgBAQDyAQAhmQEBAPIBACGaAQEA9QEAIZ0BAQDyAQAhAgAAAAUAIBIAADwAIASIAQEA8gEAIZkBAQDyAQAhmgEBAPUBACGdAQEA8gEAIQIAAAADACASAAA-ACACAAAAAwAgEgAAPgAgAwAAAAUAIBkAADcAIBoAADwAIAEAAAAFACABAAAAAwAgBAgAALQCACAhAAC2AgAgIgAAtQIAIJoBAADsAQAgB4UBAADWAQAwhgEAAEUAEIcBAADWAQAwiAEBALsBACGZAQEAuwEAIZoBAQC-AQAhnQEBALsBACEDAAAAAwAgAQAARAAwHgAARQAgAwAAAAMAIAEAAAQAMAIAAAUAIAEAAAAJACABAAAACQAgAwAAAAcAIAEAAAgAMAIAAAkAIAMAAAAHACABAAAIADACAAAJACADAAAABwAgAQAACAAwAgAACQAgBQMAALICACAJAACzAgAgiAEBAAAAAZkBAQAAAAGaAQEAAAABARIAAE0AIAOIAQEAAAABmQEBAAAAAZoBAQAAAAEBEgAATwAwARIAAE8AMAUDAACkAgAgCQAApQIAIIgBAQDyAQAhmQEBAPIBACGaAQEA8gEAIQIAAAAJACASAABSACADiAEBAPIBACGZAQEA8gEAIZoBAQDyAQAhAgAAAAcAIBIAAFQAIAIAAAAHACASAABUACADAAAACQAgGQAATQAgGgAAUgAgAQAAAAkAIAEAAAAHACADCAAAoQIAICEAAKMCACAiAACiAgAgBoUBAADVAQAwhgEAAFsAEIcBAADVAQAwiAEBALsBACGZAQEAuwEAIZoBAQC7AQAhAwAAAAcAIAEAAFoAMB4AAFsAIAMAAAAHACABAAAIADACAAAJACABAAAADQAgAQAAAA0AIAMAAAALACABAAAMADACAAANACADAAAACwAgAQAADAAwAgAADQAgAwAAAAsAIAEAAAwAMAIAAA0AIAUFAACfAgAgBwAAoAIAIIgBAQAAAAGaAQEAAAABnAEBAAAAAQESAABjACADiAEBAAAAAZoBAQAAAAGcAQEAAAABARIAAGUAMAESAABlADAFBQAAkQIAIAcAAJICACCIAQEA8gEAIZoBAQDyAQAhnAEBAPIBACECAAAADQAgEgAAaAAgA4gBAQDyAQAhmgEBAPIBACGcAQEA8gEAIQIAAAALACASAABqACACAAAACwAgEgAAagAgAwAAAA0AIBkAAGMAIBoAAGgAIAEAAAANACABAAAACwAgAwgAAI4CACAhAACQAgAgIgAAjwIAIAaFAQAA1AEAMIYBAABxABCHAQAA1AEAMIgBAQC7AQAhmgEBALsBACGcAQEAuwEAIQMAAAALACABAABwADAeAABxACADAAAACwAgAQAADAAwAgAADQAgAQAAABEAIAEAAAARACADAAAADwAgAQAAEAAwAgAAEQAgAwAAAA8AIAEAABAAMAIAABEAIAMAAAAPACABAAAQADACAAARACAEBgAAjQIAIIgBAQAAAAGaAQEAAAABmwEBAAAAAQESAAB5ACADiAEBAAAAAZoBAQAAAAGbAQEAAAABARIAAHsAMAESAAB7ADAEBgAAjAIAIIgBAQDyAQAhmgEBAPUBACGbAQEA8gEAIQIAAAARACASAAB-ACADiAEBAPIBACGaAQEA9QEAIZsBAQDyAQAhAgAAAA8AIBIAAIABACACAAAADwAgEgAAgAEAIAMAAAARACAZAAB5ACAaAAB-ACABAAAAEQAgAQAAAA8AIAQIAACJAgAgIQAAiwIAICIAAIoCACCaAQAA7AEAIAaFAQAA0wEAMIYBAACHAQAQhwEAANMBADCIAQEAuwEAIZoBAQC-AQAhmwEBALsBACEDAAAADwAgAQAAhgEAMB4AAIcBACADAAAADwAgAQAAEAAwAgAAEQAgCwMAANEBACAMAADSAQAghQEAANABADCGAQAAFQAQhwEAANABADCIAQEAAAABiQEgAMoBACGKAQEAywEAIYsBAgDMAQAhjAEBAM0BACGZAQEAAAABAQAAAIoBACABAAAAigEAIAMDAACHAgAgDAAAiAIAIIwBAADsAQAgAwAAABUAIAEAAI0BADACAACKAQAgAwAAABUAIAEAAI0BADACAACKAQAgAwAAABUAIAEAAI0BADACAACKAQAgCAMAAIUCACAMAACGAgAgiAEBAAAAAYkBIAAAAAGKAQEAAAABiwECAAAAAYwBAQAAAAGZAQEAAAABARIAAJEBACAGiAEBAAAAAYkBIAAAAAGKAQEAAAABiwECAAAAAYwBAQAAAAGZAQEAAAABARIAAJMBADABEgAAkwEAMAgDAAD-AQAgDAAA_wEAIIgBAQDyAQAhiQEgAPMBACGKAQEA8gEAIYsBAgD0AQAhjAEBAPUBACGZAQEA8gEAIQIAAACKAQAgEgAAlgEAIAaIAQEA8gEAIYkBIADzAQAhigEBAPIBACGLAQIA9AEAIYwBAQD1AQAhmQEBAPIBACECAAAAFQAgEgAAmAEAIAIAAAAVACASAACYAQAgAwAAAIoBACAZAACRAQAgGgAAlgEAIAEAAACKAQAgAQAAABUAIAYIAAD5AQAgHwAA-gEAICAAAP0BACAhAAD8AQAgIgAA-wEAIIwBAADsAQAgCYUBAADPAQAwhgEAAJ8BABCHAQAAzwEAMIgBAQC7AQAhiQEgALwBACGKAQEAuwEAIYsBAgC9AQAhjAEBAL4BACGZAQEAuwEAIQMAAAAVACABAACeAQAwHgAAnwEAIAMAAAAVACABAACNAQAwAgAAigEAIAoLAADOAQAghQEAAMkBADCGAQAAFwAQhwEAAMkBADCIAQEAAAABiQEgAMoBACGKAQEAywEAIYsBAgDMAQAhjAEBAM0BACGNAQEAAAABAQAAAKIBACABAAAAogEAIAILAAD4AQAgjAEAAOwBACADAAAAFwAgAQAApQEAMAIAAKIBACADAAAAFwAgAQAApQEAMAIAAKIBACADAAAAFwAgAQAApQEAMAIAAKIBACAHCwAA9wEAIIgBAQAAAAGJASAAAAABigEBAAAAAYsBAgAAAAGMAQEAAAABjQEBAAAAAQESAACpAQAgBogBAQAAAAGJASAAAAABigEBAAAAAYsBAgAAAAGMAQEAAAABjQEBAAAAAQESAACrAQAwARIAAKsBADAHCwAA9gEAIIgBAQDyAQAhiQEgAPMBACGKAQEA8gEAIYsBAgD0AQAhjAEBAPUBACGNAQEA8gEAIQIAAACiAQAgEgAArgEAIAaIAQEA8gEAIYkBIADzAQAhigEBAPIBACGLAQIA9AEAIYwBAQD1AQAhjQEBAPIBACECAAAAFwAgEgAAsAEAIAIAAAAXACASAACwAQAgAwAAAKIBACAZAACpAQAgGgAArgEAIAEAAACiAQAgAQAAABcAIAYIAADtAQAgHwAA7gEAICAAAPEBACAhAADwAQAgIgAA7wEAIIwBAADsAQAgCYUBAAC6AQAwhgEAALcBABCHAQAAugEAMIgBAQC7AQAhiQEgALwBACGKAQEAuwEAIYsBAgC9AQAhjAEBAL4BACGNAQEAuwEAIQMAAAAXACABAAC2AQAwHgAAtwEAIAMAAAAXACABAAClAQAwAgAAogEAIAmFAQAAugEAMIYBAAC3AQAQhwEAALoBADCIAQEAuwEAIYkBIAC8AQAhigEBALsBACGLAQIAvQEAIYwBAQC-AQAhjQEBALsBACEOCAAAwwEAICEAAMgBACAiAADIAQAgjgEBAAAAAY8BAQAAAASQAQEAAAAEkQEBAAAAAZIBAQAAAAGTAQEAAAABlAEBAAAAAZUBAQAAAAGWAQEAAAABlwEBAAAAAZgBAQDHAQAhBQgAAMMBACAhAADGAQAgIgAAxgEAII4BIAAAAAGYASAAxQEAIQ0IAADDAQAgHwAAxAEAICAAAMMBACAhAADDAQAgIgAAwwEAII4BAgAAAAGPAQIAAAAEkAECAAAABJEBAgAAAAGSAQIAAAABkwECAAAAAZQBAgAAAAGYAQIAwgEAIQ4IAADAAQAgIQAAwQEAICIAAMEBACCOAQEAAAABjwEBAAAABZABAQAAAAWRAQEAAAABkgEBAAAAAZMBAQAAAAGUAQEAAAABlQEBAAAAAZYBAQAAAAGXAQEAAAABmAEBAL8BACEOCAAAwAEAICEAAMEBACAiAADBAQAgjgEBAAAAAY8BAQAAAAWQAQEAAAAFkQEBAAAAAZIBAQAAAAGTAQEAAAABlAEBAAAAAZUBAQAAAAGWAQEAAAABlwEBAAAAAZgBAQC_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_AIAIBoAAP8CACCnAQAA_QIAIKgBAAD-AgAgqwEAAA0AIAMZAAD8AgAgpwEAAP0CACCrAQAADQAgAAAABRkAAPYCACAaAAD6AgAgpwEAAPcCACCoAQAA-QIAIKsBAAAJACALGQAAkwIAMBoAAJgCADCnAQAAlAIAMKgBAACVAgAwqQEAAJcCADCqAQAAlwIAMKsBAACXAgAwrAEAAJYCACCtAQAAlwIAMK4BAACZAgAwrwEAAJoCADACiAEBAAAAAZoBAQAAAAECAAAAEQAgGQAAngIAIAMAAAARACAZAACeAgAgGgAAnQIAIAESAAD4AgAwBwYAAOUBACCFAQAA5AEAMIYBAAAPABCHAQAA5AEAMIgBAQAAAAGaAQEAzQEAIZsBAQDLAQAhAgAAABEAIBIAAJ0CACACAAAAmwIAIBIAAJwCACAGhQEAAJoCADCGAQAAmwIAEIcBAACaAgAwiAEBAMsBACGaAQEAzQEAIZsBAQDLAQAhBoUBAACaAgAwhgEAAJsCABCHAQAAmgIAMIgBAQDLAQAhmgEBAM0BACGbAQEAywEAIQKIAQEA8gEAIZoBAQD1AQAhAogBAQDyAQAhmgEBAPUBACECiAEBAAAAAZoBAQAAAAEDGQAA9gIAIKcBAAD3AgAgqwEAAAkAIAQZAACTAgAwpwEAAJQCADCrAQAAlwIAMKwBAACWAgAgAAAABRkAAPACACAaAAD0AgAgpwEAAPECACCoAQAA8wIAIKsBAAABACALGQAApgIAMBoAAKsCADCnAQAApwIAMKgBAACoAgAwqQEAAKoCADCqAQAAqgIAMKsBAACqAgAwrAEAAKkCACCtAQAAqgIAMK4BAACsAgAwrwEAAK0CADADBwAAoAIAIIgBAQAAAAGaAQEAAAABAgAAAA0AIBkAALECACADAAAADQAgGQAAsQIAIBoAALACACABEgAA8gIAMAgFAADnAQAgBwAA6AEAIIUBAADmAQAwhgEAAAsAEIcBAADmAQAwiAEBAAAAAZoBAQDLAQAhnAEBAMsBACECAAAADQAgEgAAsAIAIAIAAACuAgAgEgAArwIAIAaFAQAArQIAMIYBAACuAgAQhwEAAK0CADCIAQEAywEAIZoBAQDLAQAhnAEBAMsBACEGhQEAAK0CADCGAQAArgIAEIcBAACtAgAwiAEBAMsBACGaAQEAywEAIZwBAQDLAQAhAogBAQDyAQAhmgEBAPIBACEDBwAAkgIAIIgBAQDyAQAhmgEBAPIBACEDBwAAoAIAIIgBAQAAAAGaAQEAAAABAxkAAPACACCnAQAA8QIAIKsBAAABACAEGQAApgIAMKcBAACnAgAwqwEAAKoCADCsAQAAqQIAIAAAAAUZAADrAgAgGgAA7gIAIKcBAADsAgAgqAEAAO0CACCrAQAAAQAgAxkAAOsCACCnAQAA7AIAIKsBAAABACAAAAAAAAWtAQgAAAABsAEIAAAAAbEBCAAAAAGyAQgAAAABswEIAAAAAQGtAUAAAAABCxkAANQCADAaAADZAgAwpwEAANUCADCoAQAA1gIAMKkBAADYAgAwqgEAANgCADCrAQAA2AIAMKwBAADXAgAgrQEAANgCADCuAQAA2gIAMK8BAADbAgAwCxkAAMgCADAaAADNAgAwpwEAAMkCADCoAQAAygIAMKkBAADMAgAwqgEAAMwCADCrAQAAzAIAMKwBAADLAgAgrQEAAMwCADCuAQAAzgIAMK8BAADPAgAwBxkAAMMCACAaAADGAgAgpwEAAMQCACCoAQAAxQIAIKkBAAAVACCqAQAAFQAgqwEAAIoBACAGDAAAhgIAIIgBAQAAAAGJASAAAAABigEBAAAAAYsBAgAAAAGMAQEAAAABAgAAAIoBACAZAADDAgAgAwAAABUAIBkAAMMCACAaAADHAgAgCAAAABUAIAwAAP8BACASAADHAgAgiAEBAPIBACGJASAA8wEAIYoBAQDyAQAhiwECAPQBACGMAQEA9QEAIQYMAAD_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-IAA_IQBAIgBBAAAAAAAFCAA9HwA-IAA_IQBAIgBBDQIBDhsBDx4BEB8BESABEyIBFCQLFSUMFicBFykLGCoNGysBHCwBHS0LIzAOJDEUJTICJjMCJzQCKDUCKTYCKjgCKzoLLDsVLT0CLj8LL0AWMEECMUICMkMLM0YXNEcbNUgDNkkDN0oDOEsDOUwDOk4DO1ALPFEcPVMDPlULP1YdQFcDQVgDQlkLQ1weRF0iRV4ERl8ER2AESGEESWIESmQES2YLTGcjTWkETmsLT2wkUG0EUW4EUm8LU3IlVHMpVXQFVnUFV3YFWHcFWXgFWnoFW3wLXH0qXX8FXoEBC1-CAStggwEFYYQBBWKFAQtjiAEsZIkBMGWLAQhmjAEIZ44BCGiPAQhpkAEIapIBCGuUAQtslQExbZcBCG6ZAQtvmgEycJsBCHGcAQhynQELc6ABM3ShATl1owEJdqQBCXemAQl4pwEJeagBCXqqAQl7rAELfK0BOn2vAQl-sQELf7IBO4ABswEJgQG0AQmCAbUBC4MBuAE8hAG5AUI"
39
+ }
40
+
41
+ async function decodeBase64AsWasm(wasmBase64: string): Promise<WebAssembly.Module> {
42
+ const { Buffer } = await import('node:buffer')
43
+ const wasmArray = Buffer.from(wasmBase64, 'base64')
44
+ return new WebAssembly.Module(wasmArray)
45
+ }
46
+
47
+ config.compilerWasm = {
48
+ getRuntime: async () => await import("@prisma/client/runtime/query_compiler_fast_bg.sqlite.js"),
49
+
50
+ getQueryCompilerWasmModule: async () => {
51
+ const { wasm } = await import("@prisma/client/runtime/query_compiler_fast_bg.sqlite.wasm-base64.js")
52
+ return await decodeBase64AsWasm(wasm)
53
+ },
54
+
55
+ importName: "./query_compiler_fast_bg.js"
56
+ }
57
+
58
+
59
+
60
+ export type LogOptions<ClientOptions extends Prisma.PrismaClientOptions> =
61
+ 'log' extends keyof ClientOptions ? ClientOptions['log'] extends Array<Prisma.LogLevel | Prisma.LogDefinition> ? Prisma.GetEvents<ClientOptions['log']> : never : never
62
+
63
+ export interface PrismaClientConstructor {
64
+ /**
65
+ * ## Prisma Client
66
+ *
67
+ * Type-safe database client for TypeScript
68
+ * @example
69
+ * ```
70
+ * const prisma = new PrismaClient({
71
+ * adapter: new PrismaPg({ connectionString: process.env.DATABASE_URL })
72
+ * })
73
+ * // Fetch zero or more AdversarialResources
74
+ * const adversarialResources = await prisma.adversarialResource.findMany()
75
+ * ```
76
+ *
77
+ * Read more in our [docs](https://pris.ly/d/client).
78
+ */
79
+
80
+ new <
81
+ Options extends Prisma.PrismaClientOptions = Prisma.PrismaClientOptions,
82
+ LogOpts extends LogOptions<Options> = LogOptions<Options>,
83
+ OmitOpts extends Prisma.PrismaClientOptions['omit'] = Options extends { omit: infer U } ? U : Prisma.PrismaClientOptions['omit'],
84
+ ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs
85
+ >(options: Prisma.PrismaClientConstructorArgs<Options>): PrismaClient<LogOpts, OmitOpts, ExtArgs>
86
+ }
87
+
88
+ /**
89
+ * ## Prisma Client
90
+ *
91
+ * Type-safe database client for TypeScript
92
+ * @example
93
+ * ```
94
+ * const prisma = new PrismaClient({
95
+ * adapter: new PrismaPg({ connectionString: process.env.DATABASE_URL })
96
+ * })
97
+ * // Fetch zero or more AdversarialResources
98
+ * const adversarialResources = await prisma.adversarialResource.findMany()
99
+ * ```
100
+ *
101
+ * Read more in our [docs](https://pris.ly/d/client).
102
+ */
103
+
104
+ export interface PrismaClient<
105
+ in LogOpts extends Prisma.LogLevel = never,
106
+ in out OmitOpts extends Prisma.PrismaClientOptions['omit'] = Prisma.PrismaClientOptions['omit'],
107
+ in out ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs
108
+ > {
109
+ [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['other'] }
110
+
111
+ $on<V extends LogOpts>(eventType: V, callback: (event: V extends 'query' ? Prisma.QueryEvent : Prisma.LogEvent) => void): PrismaClient;
112
+
113
+ /**
114
+ * Connect with the database
115
+ */
116
+ $connect(): runtime.Types.Utils.JsPromise<void>;
117
+
118
+ /**
119
+ * Disconnect from the database
120
+ */
121
+ $disconnect(): runtime.Types.Utils.JsPromise<void>;
122
+
123
+ /**
124
+ * Executes a prepared raw query and returns the number of affected rows.
125
+ * @example
126
+ * ```
127
+ * const result = await prisma.$executeRaw`UPDATE User SET cool = ${true} WHERE email = ${'user@email.com'};`
128
+ * ```
129
+ *
130
+ * Read more in our [docs](https://pris.ly/d/raw-queries).
131
+ */
132
+ $executeRaw<T = unknown>(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise<number>;
133
+
134
+ /**
135
+ * Executes a raw query and returns the number of affected rows.
136
+ * Susceptible to SQL injections, see documentation.
137
+ * @example
138
+ * ```
139
+ * const result = await prisma.$executeRawUnsafe('UPDATE User SET cool = $1 WHERE email = $2 ;', true, 'user@email.com')
140
+ * ```
141
+ *
142
+ * Read more in our [docs](https://pris.ly/d/raw-queries).
143
+ */
144
+ $executeRawUnsafe<T = unknown>(query: string, ...values: any[]): Prisma.PrismaPromise<number>;
145
+
146
+ /**
147
+ * Performs a prepared raw query and returns the `SELECT` data.
148
+ * @example
149
+ * ```
150
+ * const result = await prisma.$queryRaw`SELECT * FROM User WHERE id = ${1} OR email = ${'user@email.com'};`
151
+ * ```
152
+ *
153
+ * Read more in our [docs](https://pris.ly/d/raw-queries).
154
+ */
155
+ $queryRaw<T = unknown>(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise<T>;
156
+
157
+ /**
158
+ * Performs a raw query and returns the `SELECT` data.
159
+ * Susceptible to SQL injections, see documentation.
160
+ * @example
161
+ * ```
162
+ * const result = await prisma.$queryRawUnsafe('SELECT * FROM User WHERE id = $1 OR email = $2;', 1, 'user@email.com')
163
+ * ```
164
+ *
165
+ * Read more in our [docs](https://pris.ly/d/raw-queries).
166
+ */
167
+ $queryRawUnsafe<T = unknown>(query: string, ...values: any[]): Prisma.PrismaPromise<T>;
168
+
169
+
170
+ /**
171
+ * Allows the running of a sequence of read/write operations that are guaranteed to either succeed or fail as a whole.
172
+ * @example
173
+ * ```
174
+ * const [george, bob, alice] = await prisma.$transaction([
175
+ * prisma.user.create({ data: { name: 'George' } }),
176
+ * prisma.user.create({ data: { name: 'Bob' } }),
177
+ * prisma.user.create({ data: { name: 'Alice' } }),
178
+ * ])
179
+ * ```
180
+ *
181
+ * Read more in our [docs](https://www.prisma.io/docs/orm/prisma-client/queries/transactions).
182
+ */
183
+ $transaction<P extends Prisma.PrismaPromise<any>[]>(arg: [...P], options?: { maxWait?: number, timeout?: number, isolationLevel?: Prisma.TransactionIsolationLevel }): runtime.Types.Utils.JsPromise<runtime.Types.Utils.UnwrapTuple<P>>
184
+
185
+ $transaction<R>(fn: (prisma: Omit<PrismaClient, runtime.ITXClientDenyList>) => runtime.Types.Utils.JsPromise<R>, options?: { maxWait?: number, timeout?: number, isolationLevel?: Prisma.TransactionIsolationLevel }): runtime.Types.Utils.JsPromise<R>
186
+
187
+ $extends: runtime.Types.Extensions.ExtendsHook<"extends", Prisma.TypeMapCb<OmitOpts>, ExtArgs, runtime.Types.Utils.Call<Prisma.TypeMapCb<OmitOpts>, {
188
+ extArgs: ExtArgs
189
+ }>>
190
+
191
+ /**
192
+ * `prisma.adversarialResource`: Exposes CRUD operations for the **AdversarialResource** model.
193
+ * Example usage:
194
+ * ```ts
195
+ * // Fetch zero or more AdversarialResources
196
+ * const adversarialResources = await prisma.adversarialResource.findMany()
197
+ * ```
198
+ */
199
+ get adversarialResource(): Prisma.AdversarialResourceDelegate<ExtArgs, { omit: OmitOpts }>;
200
+
201
+ /**
202
+ * `prisma.adversarialTag`: Exposes CRUD operations for the **AdversarialTag** model.
203
+ * Example usage:
204
+ * ```ts
205
+ * // Fetch zero or more AdversarialTags
206
+ * const adversarialTags = await prisma.adversarialTag.findMany()
207
+ * ```
208
+ */
209
+ get adversarialTag(): Prisma.AdversarialTagDelegate<ExtArgs, { omit: OmitOpts }>;
210
+
211
+ /**
212
+ * `prisma.adversarialCategory`: Exposes CRUD operations for the **AdversarialCategory** model.
213
+ * Example usage:
214
+ * ```ts
215
+ * // Fetch zero or more AdversarialCategories
216
+ * const adversarialCategories = await prisma.adversarialCategory.findMany()
217
+ * ```
218
+ */
219
+ get adversarialCategory(): Prisma.AdversarialCategoryDelegate<ExtArgs, { omit: OmitOpts }>;
220
+
221
+ /**
222
+ * `prisma.adversarialSubCategory`: Exposes CRUD operations for the **AdversarialSubCategory** model.
223
+ * Example usage:
224
+ * ```ts
225
+ * // Fetch zero or more AdversarialSubCategories
226
+ * const adversarialSubCategories = await prisma.adversarialSubCategory.findMany()
227
+ * ```
228
+ */
229
+ get adversarialSubCategory(): Prisma.AdversarialSubCategoryDelegate<ExtArgs, { omit: OmitOpts }>;
230
+
231
+ /**
232
+ * `prisma.adversarialLabel`: Exposes CRUD operations for the **AdversarialLabel** model.
233
+ * Example usage:
234
+ * ```ts
235
+ * // Fetch zero or more AdversarialLabels
236
+ * const adversarialLabels = await prisma.adversarialLabel.findMany()
237
+ * ```
238
+ */
239
+ get adversarialLabel(): Prisma.AdversarialLabelDelegate<ExtArgs, { omit: OmitOpts }>;
240
+
241
+ /**
242
+ * `prisma.adversarialParent`: Exposes CRUD operations for the **AdversarialParent** model.
243
+ * Example usage:
244
+ * ```ts
245
+ * // Fetch zero or more AdversarialParents
246
+ * const adversarialParents = await prisma.adversarialParent.findMany()
247
+ * ```
248
+ */
249
+ get adversarialParent(): Prisma.AdversarialParentDelegate<ExtArgs, { omit: OmitOpts }>;
250
+
251
+ /**
252
+ * `prisma.adversarialInner`: Exposes CRUD operations for the **AdversarialInner** model.
253
+ * Example usage:
254
+ * ```ts
255
+ * // Fetch zero or more AdversarialInners
256
+ * const adversarialInners = await prisma.adversarialInner.findMany()
257
+ * ```
258
+ */
259
+ get adversarialInner(): Prisma.AdversarialInnerDelegate<ExtArgs, { omit: OmitOpts }>;
260
+ }
261
+
262
+ export function getPrismaClientClass(): PrismaClientConstructor {
263
+ return runtime.getPrismaClient(config) as unknown as PrismaClientConstructor
264
+ }