@zenstackhq/sdk 3.7.0-beta.1 → 3.7.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/dist/index.d.cts CHANGED
@@ -152,6 +152,7 @@ declare class TsSchemaGenerator {
152
152
  private getAllTypeDefs;
153
153
  private createTypeDefsObject;
154
154
  private createDataModelObject;
155
+ private getDelegateMapValue;
155
156
  private getSubModels;
156
157
  private createTypeDefObject;
157
158
  private createComputedFieldsObject;
package/dist/index.d.mts CHANGED
@@ -152,6 +152,7 @@ declare class TsSchemaGenerator {
152
152
  private getAllTypeDefs;
153
153
  private createTypeDefsObject;
154
154
  private createDataModelObject;
155
+ private getDelegateMapValue;
155
156
  private getSubModels;
156
157
  private createTypeDefObject;
157
158
  private createComputedFieldsObject;
package/dist/index.mjs CHANGED
@@ -384,6 +384,12 @@ var EnumField$1 = class extends DeclarationBase {
384
384
  //#region src/prisma/prisma-schema-generator.ts
385
385
  const IDENTIFIER_NAME_MAX_LENGTH = 38;
386
386
  const NON_PRISMA_DATASOURCE_FIELDS = ["defaultSchema"];
387
+ const ID_FUNCTIONS = [
388
+ "uuid",
389
+ "ulid",
390
+ "cuid",
391
+ "nanoid"
392
+ ];
387
393
  /**
388
394
  * Generates Prisma schema file
389
395
  */
@@ -534,7 +540,7 @@ var PrismaSchemaGenerator = class {
534
540
  return new ZModelCodeGenerator({ quote: "double" }).generate(expr);
535
541
  }
536
542
  makeFunctionCall(node) {
537
- return new FunctionCall(node.function.ref.name, node.args.map((arg) => {
543
+ return new FunctionCall(node.function.ref.name, node.args.filter((_, i) => !(ID_FUNCTIONS.includes(node.function.ref.name) && (node.function.ref.name === "ulid" && i === 0 || i === 1))).map((arg) => {
538
544
  return new FunctionCallArg(match(arg.value).when(isStringLiteral, (v) => `"${v.value}"`).when(isLiteralExpr, (v) => v.value.toString()).when(isNullExpr, () => "null").otherwise(() => {
539
545
  throw new Error("Function call argument must be literal or null");
540
546
  }));
@@ -708,6 +714,11 @@ var TsSchemaGenerator = class {
708
714
  ts.factory.createPropertyAssignment("idFields", ts.factory.createArrayLiteralExpression(getIdFields(dm).map((idField) => ts.factory.createStringLiteral(idField)))),
709
715
  ts.factory.createPropertyAssignment("uniqueFields", this.createUniqueFieldsObject(dm)),
710
716
  ...isDelegateModel$1(dm) ? [ts.factory.createPropertyAssignment("isDelegate", ts.factory.createTrue())] : [],
717
+ ...(() => {
718
+ const delegateMapValue = this.getDelegateMapValue(dm);
719
+ if (delegateMapValue === void 0) return [];
720
+ return [ts.factory.createPropertyAssignment("delegateMap", this.createLiteralNode(delegateMapValue))];
721
+ })(),
711
722
  ...subModels.length > 0 ? [ts.factory.createPropertyAssignment("subModels", ts.factory.createArrayLiteralExpression(subModels.map((subModel) => ts.factory.createStringLiteral(subModel))))] : [],
712
723
  ...dm.isView ? [ts.factory.createPropertyAssignment("isView", ts.factory.createTrue())] : []
713
724
  ];
@@ -715,6 +726,17 @@ var TsSchemaGenerator = class {
715
726
  if (computedFields.length > 0) fields.push(ts.factory.createPropertyAssignment("computedFields", this.createComputedFieldsObject(computedFields)));
716
727
  return ts.factory.createObjectLiteralExpression(fields, true);
717
728
  }
729
+ getDelegateMapValue(dm) {
730
+ const delegateMapAttr = getAttribute(dm, "@@delegateMap");
731
+ if (!delegateMapAttr) return;
732
+ const valueExpr = delegateMapAttr.args[0]?.value;
733
+ if (!valueExpr) return;
734
+ if (isLiteralExpr(valueExpr)) {
735
+ const literal = this.getLiteral(valueExpr);
736
+ return typeof literal === "string" ? literal : void 0;
737
+ }
738
+ if (isReferenceExpr(valueExpr) && isEnumField(valueExpr.target.ref)) return valueExpr.target.ref.name;
739
+ }
718
740
  getSubModels(dm) {
719
741
  return dm.$container.declarations.filter(isDataModel).filter((d) => d.baseModel?.ref === dm).map((d) => d.name);
720
742
  }
@@ -752,6 +774,8 @@ var TsSchemaGenerator = class {
752
774
  objectFields.push(ts.factory.createPropertyAssignment("updatedAt", ignoreArg ? this.createUpdatedAtObject(ignoreArg) : ts.factory.createTrue()));
753
775
  }
754
776
  if (hasAttribute(field, "@omit")) objectFields.push(ts.factory.createPropertyAssignment("omit", ts.factory.createTrue()));
777
+ if (hasAttribute(field, "@fuzzy")) objectFields.push(ts.factory.createPropertyAssignment("fuzzy", ts.factory.createTrue()));
778
+ if (hasAttribute(field, "@fullText")) objectFields.push(ts.factory.createPropertyAssignment("fullText", ts.factory.createTrue()));
755
779
  if (contextModel && !isIdField(field, contextModel)) {
756
780
  const delegateOrigin = getDelegateOriginModel(field, contextModel);
757
781
  if (delegateOrigin) objectFields.push(ts.factory.createPropertyAssignment("originModel", ts.factory.createStringLiteral(delegateOrigin)));