@zenstackhq/orm 3.6.3 → 3.7.0-beta.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.
@@ -0,0 +1,23 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/common-types.ts
3
+ var DbNullClass = class {
4
+ __brand = "DbNull";
5
+ };
6
+ const DbNull = new DbNullClass();
7
+ var JsonNullClass = class {
8
+ __brand = "JsonNull";
9
+ };
10
+ const JsonNull = new JsonNullClass();
11
+ var AnyNullClass = class {
12
+ __brand = "AnyNull";
13
+ };
14
+ const AnyNull = new AnyNullClass();
15
+ //#endregion
16
+ exports.AnyNull = AnyNull;
17
+ exports.AnyNullClass = AnyNullClass;
18
+ exports.DbNull = DbNull;
19
+ exports.DbNullClass = DbNullClass;
20
+ exports.JsonNull = JsonNull;
21
+ exports.JsonNullClass = JsonNullClass;
22
+
23
+ //# sourceMappingURL=common-types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-types.cjs","names":[],"sources":["../src/common-types.ts"],"sourcesContent":["export type JsonValue = string | number | boolean | JsonObject | JsonArray;\nexport type JsonObject = { [key: string]: JsonValue | null };\nexport type JsonArray = Array<JsonValue | null>;\nexport type JsonNullValues = DbNull | JsonNull | AnyNull;\n\nexport class DbNullClass {\n // @ts-ignore\n private __brand = 'DbNull' as const;\n}\nexport const DbNull = new DbNullClass();\nexport type DbNull = typeof DbNull;\n\nexport class JsonNullClass {\n // @ts-ignore\n private __brand = 'JsonNull' as const;\n}\nexport const JsonNull = new JsonNullClass();\nexport type JsonNull = typeof JsonNull;\n\nexport class AnyNullClass {\n // @ts-ignore\n private __brand = 'AnyNull' as const;\n}\nexport const AnyNull = new AnyNullClass();\nexport type AnyNull = typeof AnyNull;\n"],"mappings":";;AAKA,IAAa,cAAb,MAAyB;CAErB,UAAkB;;AAEtB,MAAa,SAAS,IAAI,aAAa;AAGvC,IAAa,gBAAb,MAA2B;CAEvB,UAAkB;;AAEtB,MAAa,WAAW,IAAI,eAAe;AAG3C,IAAa,eAAb,MAA0B;CAEtB,UAAkB;;AAEtB,MAAa,UAAU,IAAI,cAAc"}
@@ -0,0 +1,25 @@
1
+ //#region src/common-types.d.ts
2
+ type JsonValue = string | number | boolean | JsonObject | JsonArray;
3
+ type JsonObject = {
4
+ [key: string]: JsonValue | null;
5
+ };
6
+ type JsonArray = Array<JsonValue | null>;
7
+ type JsonNullValues = DbNull | JsonNull | AnyNull;
8
+ declare class DbNullClass {
9
+ private __brand;
10
+ }
11
+ declare const DbNull: DbNullClass;
12
+ type DbNull = typeof DbNull;
13
+ declare class JsonNullClass {
14
+ private __brand;
15
+ }
16
+ declare const JsonNull: JsonNullClass;
17
+ type JsonNull = typeof JsonNull;
18
+ declare class AnyNullClass {
19
+ private __brand;
20
+ }
21
+ declare const AnyNull: AnyNullClass;
22
+ type AnyNull = typeof AnyNull;
23
+ //#endregion
24
+ export { AnyNull, AnyNullClass, DbNull, DbNullClass, JsonArray, JsonNull, JsonNullClass, JsonNullValues, JsonObject, JsonValue };
25
+ //# sourceMappingURL=common-types.d.cts.map
@@ -0,0 +1,25 @@
1
+ //#region src/common-types.d.ts
2
+ type JsonValue = string | number | boolean | JsonObject | JsonArray;
3
+ type JsonObject = {
4
+ [key: string]: JsonValue | null;
5
+ };
6
+ type JsonArray = Array<JsonValue | null>;
7
+ type JsonNullValues = DbNull | JsonNull | AnyNull;
8
+ declare class DbNullClass {
9
+ private __brand;
10
+ }
11
+ declare const DbNull: DbNullClass;
12
+ type DbNull = typeof DbNull;
13
+ declare class JsonNullClass {
14
+ private __brand;
15
+ }
16
+ declare const JsonNull: JsonNullClass;
17
+ type JsonNull = typeof JsonNull;
18
+ declare class AnyNullClass {
19
+ private __brand;
20
+ }
21
+ declare const AnyNull: AnyNullClass;
22
+ type AnyNull = typeof AnyNull;
23
+ //#endregion
24
+ export { AnyNull, AnyNullClass, DbNull, DbNullClass, JsonArray, JsonNull, JsonNullClass, JsonNullValues, JsonObject, JsonValue };
25
+ //# sourceMappingURL=common-types.d.mts.map
@@ -0,0 +1,17 @@
1
+ //#region src/common-types.ts
2
+ var DbNullClass = class {
3
+ __brand = "DbNull";
4
+ };
5
+ const DbNull = new DbNullClass();
6
+ var JsonNullClass = class {
7
+ __brand = "JsonNull";
8
+ };
9
+ const JsonNull = new JsonNullClass();
10
+ var AnyNullClass = class {
11
+ __brand = "AnyNull";
12
+ };
13
+ const AnyNull = new AnyNullClass();
14
+ //#endregion
15
+ export { AnyNull, AnyNullClass, DbNull, DbNullClass, JsonNull, JsonNullClass };
16
+
17
+ //# sourceMappingURL=common-types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-types.mjs","names":[],"sources":["../src/common-types.ts"],"sourcesContent":["export type JsonValue = string | number | boolean | JsonObject | JsonArray;\nexport type JsonObject = { [key: string]: JsonValue | null };\nexport type JsonArray = Array<JsonValue | null>;\nexport type JsonNullValues = DbNull | JsonNull | AnyNull;\n\nexport class DbNullClass {\n // @ts-ignore\n private __brand = 'DbNull' as const;\n}\nexport const DbNull = new DbNullClass();\nexport type DbNull = typeof DbNull;\n\nexport class JsonNullClass {\n // @ts-ignore\n private __brand = 'JsonNull' as const;\n}\nexport const JsonNull = new JsonNullClass();\nexport type JsonNull = typeof JsonNull;\n\nexport class AnyNullClass {\n // @ts-ignore\n private __brand = 'AnyNull' as const;\n}\nexport const AnyNull = new AnyNullClass();\nexport type AnyNull = typeof AnyNull;\n"],"mappings":";AAKA,IAAa,cAAb,MAAyB;CAErB,UAAkB;;AAEtB,MAAa,SAAS,IAAI,aAAa;AAGvC,IAAa,gBAAb,MAA2B;CAEvB,UAAkB;;AAEtB,MAAa,WAAW,IAAI,eAAe;AAG3C,IAAa,eAAb,MAA0B;CAEtB,UAAkB;;AAEtB,MAAa,UAAU,IAAI,cAAc"}
package/dist/index.cjs CHANGED
@@ -30,6 +30,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
30
30
  enumerable: true
31
31
  }) : target, mod));
32
32
  //#endregion
33
+ const require_common_types = require("./common-types.cjs");
33
34
  let _zenstackhq_common_helpers = require("@zenstackhq/common-helpers");
34
35
  let kysely = require("kysely");
35
36
  let zod = require("zod");
@@ -599,20 +600,6 @@ const CRUD = [
599
600
  */
600
601
  const CRUD_EXT = [...CRUD, "post-update"];
601
602
  //#endregion
602
- //#region src/common-types.ts
603
- var DbNullClass = class {
604
- __brand = "DbNull";
605
- };
606
- const DbNull = new DbNullClass();
607
- var JsonNullClass = class {
608
- __brand = "JsonNull";
609
- };
610
- const JsonNull = new JsonNullClass();
611
- var AnyNullClass = class {
612
- __brand = "AnyNull";
613
- };
614
- const AnyNull = new AnyNullClass();
615
- //#endregion
616
603
  //#region src/client/crud/dialects/base-dialect.ts
617
604
  var BaseCrudDialect = class {
618
605
  eb = (0, kysely.expressionBuilder)();
@@ -838,7 +825,7 @@ var BaseCrudDialect = class {
838
825
  if (payload === null) return this.eb(fieldRef, "is", null);
839
826
  if (isEnum(this.schema, fieldDef.type)) return this.buildEnumFilter(fieldRef, fieldDef, payload);
840
827
  if (isTypeDef(this.schema, fieldDef.type)) {
841
- if (payload instanceof DbNullClass || payload instanceof JsonNullClass || payload instanceof AnyNullClass) return this.buildJsonValueFilterClause(fieldRef, payload);
828
+ if (payload instanceof require_common_types.DbNullClass || payload instanceof require_common_types.JsonNullClass || payload instanceof require_common_types.AnyNullClass) return this.buildJsonValueFilterClause(fieldRef, payload);
842
829
  return this.buildJsonFilter(fieldRef, payload, fieldDef);
843
830
  }
844
831
  return (0, ts_pattern.match)(fieldDef.type).with("String", () => this.buildStringFilter(fieldRef, payload)).with(ts_pattern.P.union("Int", "Float", "Decimal", "BigInt"), (type) => this.buildNumberFilter(fieldRef, type, payload)).with("Boolean", () => this.buildBooleanFilter(fieldRef, payload)).with("DateTime", () => this.buildDateTimeFilter(fieldRef, payload)).with("Bytes", () => this.buildBytesFilter(fieldRef, payload)).with("Json", () => this.buildJsonFilter(fieldRef, payload, fieldDef)).with("Unsupported", () => {
@@ -953,9 +940,9 @@ var BaseCrudDialect = class {
953
940
  return this.and(...clauses);
954
941
  }
955
942
  buildJsonValueFilterClause(lhs, value) {
956
- if (value instanceof DbNullClass) return this.eb(lhs, "is", null);
957
- else if (value instanceof JsonNullClass) return this.eb.and([this.eb(lhs, "=", this.transformInput(null, "Json", false)), this.eb(lhs, "is not", null)]);
958
- else if (value instanceof AnyNullClass) return this.eb.or([this.eb(lhs, "is", null), this.eb(lhs, "=", this.transformInput(null, "Json", false))]);
943
+ if (value instanceof require_common_types.DbNullClass) return this.eb(lhs, "is", null);
944
+ else if (value instanceof require_common_types.JsonNullClass) return this.eb.and([this.eb(lhs, "=", this.transformInput(null, "Json", false)), this.eb(lhs, "is not", null)]);
945
+ else if (value instanceof require_common_types.AnyNullClass) return this.eb.or([this.eb(lhs, "is", null), this.eb(lhs, "=", this.transformInput(null, "Json", false))]);
959
946
  else return this.buildJsonEqualityFilter(lhs, value);
960
947
  }
961
948
  buildJsonEqualityFilter(lhs, rhs) {
@@ -1422,9 +1409,9 @@ var MySqlCrudDialect = class extends LateralJoinDialectBase {
1422
1409
  }
1423
1410
  transformInput(value, type, forArrayField) {
1424
1411
  if (value === void 0) return value;
1425
- if (value instanceof JsonNullClass) return this.eb.cast(kysely.sql.lit("null"), "json");
1426
- else if (value instanceof DbNullClass) return null;
1427
- else if (value instanceof AnyNullClass) (0, _zenstackhq_common_helpers.invariant)(false, "should not reach here: AnyNull is not a valid input value");
1412
+ if (value instanceof require_common_types.JsonNullClass) return this.eb.cast(kysely.sql.lit("null"), "json");
1413
+ else if (value instanceof require_common_types.DbNullClass) return null;
1414
+ else if (value instanceof require_common_types.AnyNullClass) (0, _zenstackhq_common_helpers.invariant)(false, "should not reach here: AnyNull is not a valid input value");
1428
1415
  if (isTypeDef(this.schema, type)) if (typeof value !== "string") return this.transformInput(value, "Json", forArrayField);
1429
1416
  else return value;
1430
1417
  else if (Array.isArray(value)) if (type === "Json") return JSON.stringify(value);
@@ -1656,9 +1643,9 @@ var PostgresCrudDialect = class PostgresCrudDialect extends LateralJoinDialectBa
1656
1643
  }
1657
1644
  transformInput(value, type, forArrayField) {
1658
1645
  if (value === void 0) return value;
1659
- if (value instanceof JsonNullClass) return "null";
1660
- else if (value instanceof DbNullClass) return null;
1661
- else if (value instanceof AnyNullClass) (0, _zenstackhq_common_helpers.invariant)(false, "should not reach here: AnyNull is not a valid input value");
1646
+ if (value instanceof require_common_types.JsonNullClass) return "null";
1647
+ else if (value instanceof require_common_types.DbNullClass) return null;
1648
+ else if (value instanceof require_common_types.AnyNullClass) (0, _zenstackhq_common_helpers.invariant)(false, "should not reach here: AnyNull is not a valid input value");
1662
1649
  if (isTypeDef(this.schema, type)) if (typeof value !== "string") return JSON.stringify(value);
1663
1650
  else return value;
1664
1651
  else if (Array.isArray(value)) if (type === "Json" && !forArrayField) return JSON.stringify(value);
@@ -1866,9 +1853,9 @@ var SqliteCrudDialect = class extends BaseCrudDialect {
1866
1853
  }
1867
1854
  transformInput(value, type, _forArrayField) {
1868
1855
  if (value === void 0) return value;
1869
- if (value instanceof JsonNullClass) return "null";
1870
- else if (value instanceof DbNullClass) return null;
1871
- else if (value instanceof AnyNullClass) (0, _zenstackhq_common_helpers.invariant)(false, "should not reach here: AnyNull is not a valid input value");
1856
+ if (value instanceof require_common_types.JsonNullClass) return "null";
1857
+ else if (value instanceof require_common_types.DbNullClass) return null;
1858
+ else if (value instanceof require_common_types.AnyNullClass) (0, _zenstackhq_common_helpers.invariant)(false, "should not reach here: AnyNull is not a valid input value");
1872
1859
  if (type === "Json" || this.schema.typeDefs && type in this.schema.typeDefs) return JSON.stringify(value);
1873
1860
  if (Array.isArray(value)) return value.map((v) => this.transformInput(v, type, false));
1874
1861
  else switch (type) {
@@ -2381,9 +2368,9 @@ var ZodSchemaFactory = class {
2381
2368
  candidates.push(this.makeJsonFilterSchema(optional, allowedFilterKinds));
2382
2369
  if (optional) {
2383
2370
  candidates.push(zod.z.null());
2384
- candidates.push(zod.z.instanceof(DbNullClass));
2385
- candidates.push(zod.z.instanceof(JsonNullClass));
2386
- candidates.push(zod.z.instanceof(AnyNullClass));
2371
+ candidates.push(zod.z.instanceof(require_common_types.DbNullClass));
2372
+ candidates.push(zod.z.instanceof(require_common_types.JsonNullClass));
2373
+ candidates.push(zod.z.instanceof(require_common_types.AnyNullClass));
2387
2374
  }
2388
2375
  const result = zod.z.union(candidates);
2389
2376
  this.registerSchema(`${type}Filter${this.filterSchemaSuffix({
@@ -2395,7 +2382,7 @@ var ZodSchemaFactory = class {
2395
2382
  }
2396
2383
  makeNullableTypedJsonMutationSchema(fieldSchema) {
2397
2384
  return zod.z.any().superRefine((value, ctx) => {
2398
- if (value instanceof DbNullClass || value instanceof JsonNullClass || value === null || value === void 0) return;
2385
+ if (value instanceof require_common_types.DbNullClass || value instanceof require_common_types.JsonNullClass || value === null || value === void 0) return;
2399
2386
  const parseResult = fieldSchema.safeParse(value);
2400
2387
  if (!parseResult.success) parseResult.error.issues.forEach((issue) => ctx.addIssue(issue));
2401
2388
  }).optional();
@@ -2457,7 +2444,7 @@ var ZodSchemaFactory = class {
2457
2444
  zod.z.string(),
2458
2445
  zod.z.number(),
2459
2446
  zod.z.boolean(),
2460
- zod.z.instanceof(JsonNullClass),
2447
+ zod.z.instanceof(require_common_types.JsonNullClass),
2461
2448
  zod.z.lazy(() => zod.z.union([this.makeJsonValueSchema(), zod.z.null()]).array()),
2462
2449
  zod.z.record(zod.z.string(), zod.z.lazy(() => zod.z.union([this.makeJsonValueSchema(), zod.z.null()])))
2463
2450
  ]);
@@ -2468,8 +2455,8 @@ var ZodSchemaFactory = class {
2468
2455
  if (allowedFilterKinds && !allowedFilterKinds.includes("Json")) return zod.z.never();
2469
2456
  const filterMembers = [
2470
2457
  this.makeJsonValueSchema(),
2471
- zod.z.instanceof(DbNullClass),
2472
- zod.z.instanceof(AnyNullClass)
2458
+ zod.z.instanceof(require_common_types.DbNullClass),
2459
+ zod.z.instanceof(require_common_types.AnyNullClass)
2473
2460
  ];
2474
2461
  if (optional) filterMembers.push(zod.z.null());
2475
2462
  const filterValueSchema = zod.z.union(filterMembers);
@@ -2820,7 +2807,7 @@ var ZodSchemaFactory = class {
2820
2807
  fieldSchema = zod.z.union([fieldSchema, zod.z.strictObject({ set: fieldSchema })]).optional();
2821
2808
  }
2822
2809
  if (fieldDef.optional || fieldHasDefaultValue(fieldDef)) fieldSchema = fieldSchema.optional();
2823
- if (fieldDef.optional) if (fieldDef.type === "Json") fieldSchema = zod.z.union([fieldSchema, zod.z.instanceof(DbNullClass)]);
2810
+ if (fieldDef.optional) if (fieldDef.type === "Json") fieldSchema = zod.z.union([fieldSchema, zod.z.instanceof(require_common_types.DbNullClass)]);
2824
2811
  else if (this.isTypeDefType(fieldDef.type)) fieldSchema = this.makeNullableTypedJsonMutationSchema(fieldSchema);
2825
2812
  else fieldSchema = fieldSchema.nullable();
2826
2813
  uncheckedVariantFields[field] = fieldSchema;
@@ -3007,7 +2994,7 @@ var ZodSchemaFactory = class {
3007
2994
  push: zod.z.union([fieldSchema, fieldSchema.array()]).optional()
3008
2995
  }).refine((v) => Object.keys(v).length === 1, "Only one of \"set\", \"push\" can be provided")]);
3009
2996
  }
3010
- if (fieldDef.optional) if (fieldDef.type === "Json") fieldSchema = zod.z.union([fieldSchema, zod.z.instanceof(DbNullClass)]);
2997
+ if (fieldDef.optional) if (fieldDef.type === "Json") fieldSchema = zod.z.union([fieldSchema, zod.z.instanceof(require_common_types.DbNullClass)]);
3011
2998
  else if (this.isTypeDefType(fieldDef.type)) fieldSchema = this.makeNullableTypedJsonMutationSchema(fieldSchema);
3012
2999
  else fieldSchema = fieldSchema.nullable();
3013
3000
  fieldSchema = fieldSchema.optional();
@@ -7796,8 +7783,8 @@ var MatchingExpressionVisitor = class extends ExpressionVisitor {
7796
7783
  exports.AllCrudOperations = AllCrudOperations;
7797
7784
  exports.AllReadOperations = AllReadOperations;
7798
7785
  exports.AllWriteOperations = AllWriteOperations;
7799
- exports.AnyNull = AnyNull;
7800
- exports.AnyNullClass = AnyNullClass;
7786
+ exports.AnyNull = require_common_types.AnyNull;
7787
+ exports.AnyNullClass = require_common_types.AnyNullClass;
7801
7788
  exports.BaseCrudDialect = BaseCrudDialect;
7802
7789
  exports.CRUD = CRUD;
7803
7790
  exports.CRUD_EXT = CRUD_EXT;
@@ -7807,11 +7794,11 @@ exports.CoreDeleteOperations = CoreDeleteOperations;
7807
7794
  exports.CoreReadOperations = CoreReadOperations;
7808
7795
  exports.CoreUpdateOperations = CoreUpdateOperations;
7809
7796
  exports.CoreWriteOperations = CoreWriteOperations;
7810
- exports.DbNull = DbNull;
7811
- exports.DbNullClass = DbNullClass;
7797
+ exports.DbNull = require_common_types.DbNull;
7798
+ exports.DbNullClass = require_common_types.DbNullClass;
7812
7799
  exports.InputValidator = InputValidator;
7813
- exports.JsonNull = JsonNull;
7814
- exports.JsonNullClass = JsonNullClass;
7800
+ exports.JsonNull = require_common_types.JsonNull;
7801
+ exports.JsonNullClass = require_common_types.JsonNullClass;
7815
7802
  Object.defineProperty(exports, "KyselyUtils", {
7816
7803
  enumerable: true,
7817
7804
  get: function() {