@zenstackhq/sdk 3.7.0 → 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.cjs +23 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -0
- package/dist/index.d.mts +1 -0
- package/dist/index.mjs +23 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +6 -6
package/dist/index.cjs
CHANGED
|
@@ -418,6 +418,12 @@ var EnumField$1 = class extends DeclarationBase {
|
|
|
418
418
|
//#region src/prisma/prisma-schema-generator.ts
|
|
419
419
|
const IDENTIFIER_NAME_MAX_LENGTH = 38;
|
|
420
420
|
const NON_PRISMA_DATASOURCE_FIELDS = ["defaultSchema"];
|
|
421
|
+
const ID_FUNCTIONS = [
|
|
422
|
+
"uuid",
|
|
423
|
+
"ulid",
|
|
424
|
+
"cuid",
|
|
425
|
+
"nanoid"
|
|
426
|
+
];
|
|
421
427
|
/**
|
|
422
428
|
* Generates Prisma schema file
|
|
423
429
|
*/
|
|
@@ -568,7 +574,7 @@ var PrismaSchemaGenerator = class {
|
|
|
568
574
|
return new _zenstackhq_language.ZModelCodeGenerator({ quote: "double" }).generate(expr);
|
|
569
575
|
}
|
|
570
576
|
makeFunctionCall(node) {
|
|
571
|
-
return new FunctionCall(node.function.ref.name, node.args.map((arg) => {
|
|
577
|
+
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) => {
|
|
572
578
|
return new FunctionCallArg((0, ts_pattern.match)(arg.value).when(_zenstackhq_language_ast.isStringLiteral, (v) => `"${v.value}"`).when(_zenstackhq_language_ast.isLiteralExpr, (v) => v.value.toString()).when(_zenstackhq_language_ast.isNullExpr, () => "null").otherwise(() => {
|
|
573
579
|
throw new Error("Function call argument must be literal or null");
|
|
574
580
|
}));
|
|
@@ -742,6 +748,11 @@ var TsSchemaGenerator = class {
|
|
|
742
748
|
typescript.factory.createPropertyAssignment("idFields", typescript.factory.createArrayLiteralExpression(getIdFields(dm).map((idField) => typescript.factory.createStringLiteral(idField)))),
|
|
743
749
|
typescript.factory.createPropertyAssignment("uniqueFields", this.createUniqueFieldsObject(dm)),
|
|
744
750
|
...isDelegateModel$1(dm) ? [typescript.factory.createPropertyAssignment("isDelegate", typescript.factory.createTrue())] : [],
|
|
751
|
+
...(() => {
|
|
752
|
+
const delegateMapValue = this.getDelegateMapValue(dm);
|
|
753
|
+
if (delegateMapValue === void 0) return [];
|
|
754
|
+
return [typescript.factory.createPropertyAssignment("delegateMap", this.createLiteralNode(delegateMapValue))];
|
|
755
|
+
})(),
|
|
745
756
|
...subModels.length > 0 ? [typescript.factory.createPropertyAssignment("subModels", typescript.factory.createArrayLiteralExpression(subModels.map((subModel) => typescript.factory.createStringLiteral(subModel))))] : [],
|
|
746
757
|
...dm.isView ? [typescript.factory.createPropertyAssignment("isView", typescript.factory.createTrue())] : []
|
|
747
758
|
];
|
|
@@ -749,6 +760,17 @@ var TsSchemaGenerator = class {
|
|
|
749
760
|
if (computedFields.length > 0) fields.push(typescript.factory.createPropertyAssignment("computedFields", this.createComputedFieldsObject(computedFields)));
|
|
750
761
|
return typescript.factory.createObjectLiteralExpression(fields, true);
|
|
751
762
|
}
|
|
763
|
+
getDelegateMapValue(dm) {
|
|
764
|
+
const delegateMapAttr = getAttribute(dm, "@@delegateMap");
|
|
765
|
+
if (!delegateMapAttr) return;
|
|
766
|
+
const valueExpr = delegateMapAttr.args[0]?.value;
|
|
767
|
+
if (!valueExpr) return;
|
|
768
|
+
if ((0, _zenstackhq_language_ast.isLiteralExpr)(valueExpr)) {
|
|
769
|
+
const literal = this.getLiteral(valueExpr);
|
|
770
|
+
return typeof literal === "string" ? literal : void 0;
|
|
771
|
+
}
|
|
772
|
+
if ((0, _zenstackhq_language_ast.isReferenceExpr)(valueExpr) && (0, _zenstackhq_language_ast.isEnumField)(valueExpr.target.ref)) return valueExpr.target.ref.name;
|
|
773
|
+
}
|
|
752
774
|
getSubModels(dm) {
|
|
753
775
|
return dm.$container.declarations.filter(_zenstackhq_language_ast.isDataModel).filter((d) => d.baseModel?.ref === dm).map((d) => d.name);
|
|
754
776
|
}
|