@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.cjs +25 -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 +25 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +7 -7
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)));
|