zenstack 1.0.0-beta.2 → 1.0.0-beta.20

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 (86) hide show
  1. package/README.md +16 -8
  2. package/cli/cli-util.js +1 -1
  3. package/cli/cli-util.js.map +1 -1
  4. package/cli/plugin-runner.d.ts +2 -1
  5. package/cli/plugin-runner.js +101 -47
  6. package/cli/plugin-runner.js.map +1 -1
  7. package/language-server/constants.d.ts +0 -4
  8. package/language-server/constants.js +1 -14
  9. package/language-server/constants.js.map +1 -1
  10. package/language-server/utils.d.ts +1 -10
  11. package/language-server/utils.js +1 -20
  12. package/language-server/utils.js.map +1 -1
  13. package/language-server/validator/attribute-application-validator.d.ts +15 -0
  14. package/language-server/validator/attribute-application-validator.js +246 -0
  15. package/language-server/validator/attribute-application-validator.js.map +1 -0
  16. package/language-server/validator/attribute-validator.d.ts +1 -1
  17. package/language-server/validator/attribute-validator.js +4 -1
  18. package/language-server/validator/attribute-validator.js.map +1 -1
  19. package/language-server/validator/datamodel-validator.js +11 -7
  20. package/language-server/validator/datamodel-validator.js.map +1 -1
  21. package/language-server/validator/enum-validator.js +3 -6
  22. package/language-server/validator/enum-validator.js.map +1 -1
  23. package/language-server/validator/expression-validator.js +38 -1
  24. package/language-server/validator/expression-validator.js.map +1 -1
  25. package/language-server/validator/function-decl-validator.d.ts +9 -0
  26. package/language-server/validator/function-decl-validator.js +13 -0
  27. package/language-server/validator/function-decl-validator.js.map +1 -0
  28. package/language-server/validator/function-invocation-validator.js +34 -9
  29. package/language-server/validator/function-invocation-validator.js.map +1 -1
  30. package/language-server/validator/utils.d.ts +2 -3
  31. package/language-server/validator/utils.js +1 -112
  32. package/language-server/validator/utils.js.map +1 -1
  33. package/language-server/validator/zmodel-validator.d.ts +2 -1
  34. package/language-server/validator/zmodel-validator.js +8 -3
  35. package/language-server/validator/zmodel-validator.js.map +1 -1
  36. package/language-server/zmodel-linker.d.ts +1 -0
  37. package/language-server/zmodel-linker.js +49 -7
  38. package/language-server/zmodel-linker.js.map +1 -1
  39. package/package.json +8 -15
  40. package/plugins/access-policy/expression-writer.d.ts +3 -0
  41. package/plugins/access-policy/expression-writer.js +125 -63
  42. package/plugins/access-policy/expression-writer.js.map +1 -1
  43. package/plugins/access-policy/policy-guard-generator.d.ts +8 -1
  44. package/plugins/access-policy/policy-guard-generator.js +286 -73
  45. package/plugins/access-policy/policy-guard-generator.js.map +1 -1
  46. package/plugins/model-meta/index.js +55 -3
  47. package/plugins/model-meta/index.js.map +1 -1
  48. package/plugins/plugin-utils.d.ts +4 -0
  49. package/plugins/plugin-utils.js +16 -1
  50. package/plugins/plugin-utils.js.map +1 -1
  51. package/plugins/prisma/prisma-builder.d.ts +3 -1
  52. package/plugins/prisma/prisma-builder.js +9 -3
  53. package/plugins/prisma/prisma-builder.js.map +1 -1
  54. package/plugins/prisma/schema-generator.js +51 -6
  55. package/plugins/prisma/schema-generator.js.map +1 -1
  56. package/plugins/zod/generator.js +161 -19
  57. package/plugins/zod/generator.js.map +1 -1
  58. package/plugins/zod/index.d.ts +1 -1
  59. package/plugins/zod/transformer.d.ts +5 -5
  60. package/plugins/zod/transformer.js +154 -103
  61. package/plugins/zod/transformer.js.map +1 -1
  62. package/plugins/zod/types.d.ts +2 -0
  63. package/plugins/zod/utils/schema-gen.d.ts +3 -0
  64. package/plugins/zod/utils/schema-gen.js +178 -0
  65. package/plugins/zod/utils/schema-gen.js.map +1 -0
  66. package/res/stdlib.zmodel +113 -30
  67. package/telemetry.d.ts +1 -0
  68. package/telemetry.js +3 -1
  69. package/telemetry.js.map +1 -1
  70. package/utils/ast-utils.d.ts +1 -14
  71. package/utils/ast-utils.js +2 -72
  72. package/utils/ast-utils.js.map +1 -1
  73. package/utils/pkg-utils.js +1 -1
  74. package/utils/pkg-utils.js.map +1 -1
  75. package/utils/typescript-expression-transformer.d.ts +53 -0
  76. package/utils/typescript-expression-transformer.js +293 -0
  77. package/utils/typescript-expression-transformer.js.map +1 -0
  78. package/plugins/access-policy/typescript-expression-transformer.d.ts +0 -28
  79. package/plugins/access-policy/typescript-expression-transformer.js +0 -180
  80. package/plugins/access-policy/typescript-expression-transformer.js.map +0 -1
  81. package/plugins/access-policy/utils.d.ts +0 -5
  82. package/plugins/access-policy/utils.js +0 -14
  83. package/plugins/access-policy/utils.js.map +0 -1
  84. package/plugins/access-policy/zod-schema-generator.d.ts +0 -12
  85. package/plugins/access-policy/zod-schema-generator.js +0 -160
  86. package/plugins/access-policy/zod-schema-generator.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/model-meta/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/model-meta/index.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,10 @@ export declare const ALL_OPERATION_KINDS: PolicyOperationKind[];
4
4
  * Gets the nearest "node_modules" folder by walking up from start path.
5
5
  */
6
6
  export declare function getNodeModulesFolder(startPath?: string): string | undefined;
7
+ /**
8
+ * Ensure the default output folder is initialized.
9
+ */
10
+ export declare function ensureDefaultOutputFolder(): void;
7
11
  /**
8
12
  * Gets the default node_modules/.zenstack output folder for plugins.
9
13
  * @returns
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getDefaultOutputFolder = exports.getNodeModulesFolder = exports.ALL_OPERATION_KINDS = void 0;
6
+ exports.getDefaultOutputFolder = exports.ensureDefaultOutputFolder = exports.getNodeModulesFolder = exports.ALL_OPERATION_KINDS = void 0;
7
7
  const fs_1 = __importDefault(require("fs"));
8
8
  const path_1 = __importDefault(require("path"));
9
9
  exports.ALL_OPERATION_KINDS = ['create', 'update', 'postUpdate', 'read', 'delete'];
@@ -27,6 +27,17 @@ function getNodeModulesFolder(startPath) {
27
27
  }
28
28
  }
29
29
  exports.getNodeModulesFolder = getNodeModulesFolder;
30
+ /**
31
+ * Ensure the default output folder is initialized.
32
+ */
33
+ function ensureDefaultOutputFolder() {
34
+ const output = getDefaultOutputFolder();
35
+ if (output && !fs_1.default.existsSync(output)) {
36
+ fs_1.default.mkdirSync(output, { recursive: true });
37
+ fs_1.default.writeFileSync(path_1.default.join(output, 'package.json'), JSON.stringify({ name: '.zenstack', version: '1.0.0' }));
38
+ }
39
+ }
40
+ exports.ensureDefaultOutputFolder = ensureDefaultOutputFolder;
30
41
  /**
31
42
  * Gets the default node_modules/.zenstack output folder for plugins.
32
43
  * @returns
@@ -34,6 +45,10 @@ exports.getNodeModulesFolder = getNodeModulesFolder;
34
45
  function getDefaultOutputFolder() {
35
46
  // Find the real runtime module path, it might be a symlink in pnpm
36
47
  let runtimeModulePath = require.resolve('@zenstackhq/runtime');
48
+ if (process.env.ZENSTACK_TEST === '1') {
49
+ // handling the case when running as tests, resolve relative to CWD
50
+ runtimeModulePath = path_1.default.resolve(path_1.default.join(process.cwd(), 'node_modules', '@zenstackhq', 'runtime'));
51
+ }
37
52
  if (runtimeModulePath) {
38
53
  // start with the parent folder of @zenstackhq, supposed to be a node_modules folder
39
54
  while (!runtimeModulePath.endsWith('@zenstackhq') && runtimeModulePath !== '/') {
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-utils.js","sourceRoot":"","sources":["../../src/plugins/plugin-utils.ts"],"names":[],"mappings":";;;;;;AACA,4CAAoB;AACpB,gDAAwB;AAEX,QAAA,mBAAmB,GAA0B,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;AAE/G;;GAEG;AACH,SAAgB,oBAAoB,CAAC,SAAkB;IACnD,SAAS,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACvC,IAAI,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;QACpC,OAAO,SAAS,CAAC;KACpB;SAAM,IAAI,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,EAAE;QAC5D,OAAO,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;KAC/C;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;QAC1B,MAAM,MAAM,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1C,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;KACvC;SAAM;QACH,OAAO,SAAS,CAAC;KACpB;AACL,CAAC;AAZD,oDAYC;AAED;;;GAGG;AACH,SAAgB,sBAAsB;IAClC,mEAAmE;IACnE,IAAI,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC/D,IAAI,iBAAiB,EAAE;QACnB,oFAAoF;QACpF,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,iBAAiB,KAAK,GAAG,EAAE;YAC5E,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;SAC1D;QACD,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;KAC1D;IACD,MAAM,aAAa,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAC9D,OAAO,aAAa,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC;AAZD,wDAYC"}
1
+ {"version":3,"file":"plugin-utils.js","sourceRoot":"","sources":["../../src/plugins/plugin-utils.ts"],"names":[],"mappings":";;;;;;AACA,4CAAoB;AACpB,gDAAwB;AAEX,QAAA,mBAAmB,GAA0B,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;AAE/G;;GAEG;AACH,SAAgB,oBAAoB,CAAC,SAAkB;IACnD,SAAS,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACvC,IAAI,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;QACpC,OAAO,SAAS,CAAC;KACpB;SAAM,IAAI,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,EAAE;QAC5D,OAAO,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;KAC/C;SAAM,IAAI,SAAS,KAAK,GAAG,EAAE;QAC1B,MAAM,MAAM,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1C,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;KACvC;SAAM;QACH,OAAO,SAAS,CAAC;KACpB;AACL,CAAC;AAZD,oDAYC;AAED;;GAEG;AACH,SAAgB,yBAAyB;IACrC,MAAM,MAAM,GAAG,sBAAsB,EAAE,CAAC;IACxC,IAAI,MAAM,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAClC,YAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;KAChH;AACL,CAAC;AAND,8DAMC;AAED;;;GAGG;AACH,SAAgB,sBAAsB;IAClC,mEAAmE;IACnE,IAAI,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAE/D,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,GAAG,EAAE;QACnC,mEAAmE;QACnE,iBAAiB,GAAG,cAAI,CAAC,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;KACxG;IAED,IAAI,iBAAiB,EAAE;QACnB,oFAAoF;QACpF,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,iBAAiB,KAAK,GAAG,EAAE;YAC5E,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;SAC1D;QACD,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;KAC1D;IACD,MAAM,aAAa,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;IAC9D,OAAO,aAAa,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC;AAlBD,wDAkBC"}
@@ -16,6 +16,7 @@ export declare class PrismaModel {
16
16
  addDataSource(name: string, provider: string, url: DataSourceUrl, directUrl?: DataSourceUrl, shadowDatabaseUrl?: DataSourceUrl, restFields?: SimpleField[]): DataSource;
17
17
  addGenerator(name: string, fields: SimpleField[]): Generator;
18
18
  addModel(name: string): Model;
19
+ addView(name: string): Model;
19
20
  addEnum(name: string): Enum;
20
21
  toString(): string;
21
22
  }
@@ -57,8 +58,9 @@ export declare class FieldDeclaration extends DeclarationBase {
57
58
  }
58
59
  export declare class Model extends ContainerDeclaration {
59
60
  name: string;
61
+ isView: boolean;
60
62
  fields: ModelField[];
61
- constructor(name: string, documentations?: string[]);
63
+ constructor(name: string, isView: boolean, documentations?: string[]);
62
64
  addField(name: string, type: ModelFieldType | string, attributes?: (FieldAttribute | PassThroughAttribute)[], documentations?: string[]): ModelField;
63
65
  addAttribute(name: string, args?: AttributeArg[]): ContainerAttribute;
64
66
  toString(): string;
@@ -27,7 +27,12 @@ class PrismaModel {
27
27
  return generator;
28
28
  }
29
29
  addModel(name) {
30
- const model = new Model(name);
30
+ const model = new Model(name, false);
31
+ this.models.push(model);
32
+ return model;
33
+ }
34
+ addView(name) {
35
+ const model = new Model(name, true);
31
36
  this.models.push(model);
32
37
  return model;
33
38
  }
@@ -116,9 +121,10 @@ class FieldDeclaration extends DeclarationBase {
116
121
  }
117
122
  exports.FieldDeclaration = FieldDeclaration;
118
123
  class Model extends ContainerDeclaration {
119
- constructor(name, documentations = []) {
124
+ constructor(name, isView, documentations = []) {
120
125
  super(documentations);
121
126
  this.name = name;
127
+ this.isView = isView;
122
128
  this.fields = [];
123
129
  }
124
130
  addField(name, type, attributes = [], documentations = []) {
@@ -145,7 +151,7 @@ class Model extends ContainerDeclaration {
145
151
  }
146
152
  result.push(...this.attributes);
147
153
  return (super.toString() +
148
- `model ${this.name} {\n` +
154
+ `${this.isView ? 'view' : 'model'} ${this.name} {\n` +
149
155
  (0, indent_string_1.default)(result.map((d) => d.toString()).join('\n')) +
150
156
  `\n}`);
151
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prisma-builder.js","sourceRoot":"","sources":["../../../src/plugins/prisma/prisma-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prisma-builder.js","sourceRoot":"","sources":["../../../src/plugins/prisma/prisma-builder.ts"],"names":[],"mappings":"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"}
@@ -12,12 +12,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- const internals_1 = require("@prisma/internals");
16
15
  const ast_1 = require("@zenstackhq/language/ast");
16
+ const runtime_1 = require("@zenstackhq/runtime");
17
17
  const sdk_1 = require("@zenstackhq/sdk");
18
18
  const fs_1 = __importDefault(require("fs"));
19
19
  const promises_1 = require("fs/promises");
20
20
  const path_1 = __importDefault(require("path"));
21
+ const semver_1 = __importDefault(require("semver"));
21
22
  const strip_color_1 = __importDefault(require("strip-color"));
22
23
  const _1 = require(".");
23
24
  const utils_1 = require("../../language-server/validator/utils");
@@ -43,8 +44,12 @@ class PrismaSchemaGenerator {
43
44
  generate(model, options, config) {
44
45
  var _a;
45
46
  return __awaiter(this, void 0, void 0, function* () {
46
- const prisma = new prisma_builder_1.PrismaModel();
47
47
  const warnings = [];
48
+ const prismaVersion = (0, sdk_1.getPrismaVersion)();
49
+ if (prismaVersion && semver_1.default.lt(prismaVersion, runtime_1.PRISMA_MINIMUM_VERSION)) {
50
+ warnings.push(`ZenStack requires Prisma version "${runtime_1.PRISMA_MINIMUM_VERSION}" or higher. Detected version is "${prismaVersion}".`);
51
+ }
52
+ const prisma = new prisma_builder_1.PrismaModel();
48
53
  for (const decl of model.declarations) {
49
54
  switch (decl.$type) {
50
55
  case ast_1.DataSource:
@@ -80,10 +85,17 @@ class PrismaSchemaGenerator {
80
85
  if (generateClient) {
81
86
  try {
82
87
  // run 'prisma generate'
83
- yield (0, exec_utils_1.execSync)(`npx prisma generate --schema ${outFile}`);
88
+ yield (0, exec_utils_1.execSync)(`npx prisma generate --schema ${outFile}`, 'ignore');
84
89
  }
85
90
  catch (_c) {
86
91
  yield this.trackPrismaSchemaError(outFile);
92
+ try {
93
+ // run 'prisma generate' again with output to the console
94
+ yield (0, exec_utils_1.execSync)(`npx prisma generate --schema ${outFile}`);
95
+ }
96
+ catch (_d) {
97
+ // noop
98
+ }
87
99
  throw new sdk_1.PluginError(_1.name, `Failed to run "prisma generate"`);
88
100
  }
89
101
  }
@@ -93,7 +105,7 @@ class PrismaSchemaGenerator {
93
105
  trackPrismaSchemaError(schema) {
94
106
  return __awaiter(this, void 0, void 0, function* () {
95
107
  try {
96
- yield (0, internals_1.getDMMF)({ datamodel: fs_1.default.readFileSync(schema, 'utf-8') });
108
+ yield (0, sdk_1.getDMMF)({ datamodel: fs_1.default.readFileSync(schema, 'utf-8') });
97
109
  }
98
110
  catch (err) {
99
111
  if (err instanceof Error) {
@@ -181,13 +193,43 @@ class PrismaSchemaGenerator {
181
193
  }
182
194
  }
183
195
  generateGenerator(prisma, decl) {
184
- prisma.addGenerator(decl.name, decl.fields.map((f) => {
196
+ var _a, _b;
197
+ const generator = prisma.addGenerator(decl.name, decl.fields.map((f) => {
185
198
  const value = (0, ast_1.isArrayExpr)(f.value) ? (0, sdk_1.getLiteralArray)(f.value) : (0, sdk_1.getLiteral)(f.value);
186
199
  return { name: f.name, value };
187
200
  }));
201
+ // deal with configuring PrismaClient preview features
202
+ const provider = generator.fields.find((f) => f.name === 'provider');
203
+ if ((provider === null || provider === void 0 ? void 0 : provider.value) === 'prisma-client-js') {
204
+ const prismaVersion = (0, sdk_1.getPrismaVersion)();
205
+ if (prismaVersion) {
206
+ const previewFeatures = (_b = (_a = generator.fields.find((f) => f.name === 'previewFeatures')) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : [];
207
+ if (!Array.isArray(previewFeatures)) {
208
+ throw new sdk_1.PluginError(_1.name, 'option "previewFeatures" must be an array');
209
+ }
210
+ if (semver_1.default.lt(prismaVersion, '5.0.0')) {
211
+ // extendedWhereUnique feature is opt-in pre V5
212
+ if (!previewFeatures.includes('extendedWhereUnique')) {
213
+ previewFeatures.push('extendedWhereUnique');
214
+ }
215
+ }
216
+ if (semver_1.default.lt(prismaVersion, '5.0.0')) {
217
+ // fieldReference feature is opt-in pre V5
218
+ if (!previewFeatures.includes('fieldReference')) {
219
+ previewFeatures.push('fieldReference');
220
+ }
221
+ }
222
+ if (previewFeatures.length > 0) {
223
+ const curr = generator.fields.find((f) => f.name === 'previewFeatures');
224
+ if (!curr) {
225
+ generator.fields.push({ name: 'previewFeatures', value: previewFeatures });
226
+ }
227
+ }
228
+ }
229
+ }
188
230
  }
189
231
  generateModel(prisma, decl, config) {
190
- const model = prisma.addModel(decl.name);
232
+ const model = decl.isView ? prisma.addView(decl.name) : prisma.addModel(decl.name);
191
233
  for (const field of decl.fields) {
192
234
  this.generateModelField(model, field);
193
235
  }
@@ -231,6 +273,9 @@ class PrismaSchemaGenerator {
231
273
  }
232
274
  shouldGenerateAuxFields(decl) {
233
275
  var _a;
276
+ if (decl.isView) {
277
+ return false;
278
+ }
234
279
  const { allowAll, denyAll, hasFieldValidation } = (0, sdk_1.analyzePolicies)(decl);
235
280
  if (!allowAll && !denyAll) {
236
281
  // has policy conditions
@@ -1 +1 @@
1
- {"version":3,"file":"schema-generator.js","sourceRoot":"","sources":["../../../src/plugins/prisma/schema-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-generator.js","sourceRoot":"","sources":["../../../src/plugins/prisma/schema-generator.ts"],"names":[],"mappings":"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"}
@@ -17,10 +17,13 @@ const sdk_1 = require("@zenstackhq/sdk");
17
17
  const ast_1 = require("@zenstackhq/sdk/ast");
18
18
  const dmmf_helpers_1 = require("@zenstackhq/sdk/dmmf-helpers");
19
19
  const fs_1 = require("fs");
20
+ const langium_1 = require("langium");
20
21
  const path_1 = __importDefault(require("path"));
22
+ const upper_case_first_1 = require("upper-case-first");
21
23
  const plugin_utils_1 = require("../plugin-utils");
22
24
  const transformer_1 = __importDefault(require("./transformer"));
23
25
  const removeDir_1 = __importDefault(require("./utils/removeDir"));
26
+ const schema_gen_1 = require("./utils/schema-gen");
24
27
  function generate(model, options, dmmf) {
25
28
  var _a, _b;
26
29
  return __awaiter(this, void 0, void 0, function* () {
@@ -42,16 +45,36 @@ function generate(model, options, dmmf) {
42
45
  const outputObjectTypes = prismaClientDmmf.schema.outputObjectTypes.prisma;
43
46
  const models = prismaClientDmmf.datamodel.models;
44
47
  const project = (0, sdk_1.createProject)();
45
- yield generateEnumSchemas(prismaClientDmmf.schema.enumTypes.prisma, (_a = prismaClientDmmf.schema.enumTypes.model) !== null && _a !== void 0 ? _a : [], project);
48
+ // common schemas
49
+ yield generateCommonSchemas(project, output);
50
+ // enums
51
+ yield generateEnumSchemas(prismaClientDmmf.schema.enumTypes.prisma, (_a = prismaClientDmmf.schema.enumTypes.model) !== null && _a !== void 0 ? _a : [], project, model);
46
52
  const dataSource = model.declarations.find((d) => (0, ast_1.isDataSource)(d));
47
53
  const dataSourceProvider = (0, sdk_1.getLiteral)((_b = dataSource === null || dataSource === void 0 ? void 0 : dataSource.fields.find((f) => f.name === 'provider')) === null || _b === void 0 ? void 0 : _b.value);
48
- transformer_1.default.provider = dataSourceProvider;
49
- const generatorConfigOptions = {};
50
- Object.entries(options).forEach(([k, v]) => (generatorConfigOptions[k] = v));
51
- (0, dmmf_helpers_1.addMissingInputObjectTypes)(inputObjectTypes, outputObjectTypes, models);
52
- const aggregateOperationSupport = (0, dmmf_helpers_1.resolveAggregateOperationSupport)(inputObjectTypes);
53
- yield generateObjectSchemas(inputObjectTypes, project, output);
54
- yield generateModelSchemas(models, modelOperations, aggregateOperationSupport, project);
54
+ yield generateModelSchemas(project, model, output);
55
+ if (options.modelOnly !== true) {
56
+ // detailed object schemas referenced from input schemas
57
+ transformer_1.default.provider = dataSourceProvider;
58
+ (0, dmmf_helpers_1.addMissingInputObjectTypes)(inputObjectTypes, outputObjectTypes, models);
59
+ const aggregateOperationSupport = (0, dmmf_helpers_1.resolveAggregateOperationSupport)(inputObjectTypes);
60
+ yield generateObjectSchemas(inputObjectTypes, project, output, model);
61
+ // input schemas
62
+ const transformer = new transformer_1.default({
63
+ models,
64
+ modelOperations,
65
+ aggregateOperationSupport,
66
+ project,
67
+ zmodel: model,
68
+ });
69
+ yield transformer.generateInputSchemas();
70
+ }
71
+ // create barrel file
72
+ const exports = [`export * as models from './models'`, `export * as enums from './enums'`];
73
+ if (options.modelOnly !== true) {
74
+ exports.push(`export * as input from './input'`, `export * as objects from './objects'`);
75
+ }
76
+ project.createSourceFile(path_1.default.join(output, 'index.ts'), exports.join(';\n'), { overwrite: true });
77
+ // emit
55
78
  const shouldCompile = options.compile !== false;
56
79
  if (!shouldCompile || options.preserveTsFiles === true) {
57
80
  // save ts files
@@ -72,41 +95,160 @@ function handleGeneratorOutputValue(output) {
72
95
  transformer_1.default.setOutputPath(output);
73
96
  });
74
97
  }
75
- function generateEnumSchemas(prismaSchemaEnum, modelSchemaEnum, project) {
98
+ function generateCommonSchemas(project, output) {
99
+ return __awaiter(this, void 0, void 0, function* () {
100
+ // Decimal
101
+ project.createSourceFile(path_1.default.join(output, 'common', 'index.ts'), `
102
+ import { z } from 'zod';
103
+ export const DecimalSchema = z.union([z.number(), z.string(), z.object({d: z.number().array(), e: z.number(), s: z.number()})]);
104
+
105
+ // https://stackoverflow.com/a/54487392/20415796
106
+ type OmitDistributive<T, K extends PropertyKey> = T extends any ? (T extends object ? OmitRecursively<T, K> : T) : never;
107
+ type OmitRecursively<T extends any, K extends PropertyKey> = Omit<
108
+ { [P in keyof T]: OmitDistributive<T[P], K> },
109
+ K
110
+ >;
111
+
112
+ /**
113
+ * Strips auxiliary fields recursively
114
+ */
115
+ export type Purge<T> = OmitRecursively<T, ${sdk_1.AUXILIARY_FIELDS.map((f) => "'" + f + "'").join('|')}>;
116
+ `, { overwrite: true });
117
+ });
118
+ }
119
+ function generateEnumSchemas(prismaSchemaEnum, modelSchemaEnum, project, zmodel) {
76
120
  return __awaiter(this, void 0, void 0, function* () {
77
121
  const enumTypes = [...prismaSchemaEnum, ...modelSchemaEnum];
78
- const enumNames = enumTypes.map((enumItem) => enumItem.name);
122
+ const enumNames = enumTypes.map((enumItem) => (0, upper_case_first_1.upperCaseFirst)(enumItem.name));
79
123
  transformer_1.default.enumNames = enumNames !== null && enumNames !== void 0 ? enumNames : [];
80
124
  const transformer = new transformer_1.default({
81
125
  enumTypes,
82
126
  project,
127
+ zmodel,
83
128
  });
84
129
  yield transformer.generateEnumSchemas();
85
130
  });
86
131
  }
87
- function generateObjectSchemas(inputObjectTypes, project, output) {
132
+ function generateObjectSchemas(inputObjectTypes, project, output, zmodel) {
88
133
  var _a, _b;
89
134
  return __awaiter(this, void 0, void 0, function* () {
90
135
  const moduleNames = [];
91
136
  for (let i = 0; i < inputObjectTypes.length; i += 1) {
92
137
  const fields = (_a = inputObjectTypes[i]) === null || _a === void 0 ? void 0 : _a.fields;
93
138
  const name = (_b = inputObjectTypes[i]) === null || _b === void 0 ? void 0 : _b.name;
94
- const transformer = new transformer_1.default({ name, fields, project });
139
+ const transformer = new transformer_1.default({ name, fields, project, zmodel });
95
140
  const moduleName = transformer.generateObjectSchema();
96
141
  moduleNames.push(moduleName);
97
142
  }
98
143
  project.createSourceFile(path_1.default.join(output, 'objects/index.ts'), moduleNames.map((name) => `export * from './${name}';`).join('\n'), { overwrite: true });
99
144
  });
100
145
  }
101
- function generateModelSchemas(models, modelOperations, aggregateOperationSupport, project) {
146
+ function generateModelSchemas(project, zmodel, output) {
102
147
  return __awaiter(this, void 0, void 0, function* () {
103
- const transformer = new transformer_1.default({
104
- models,
105
- modelOperations,
106
- aggregateOperationSupport,
107
- project,
148
+ const schemaNames = [];
149
+ for (const dm of (0, sdk_1.getDataModels)(zmodel)) {
150
+ schemaNames.push(yield generateModelSchema(dm, project, output));
151
+ }
152
+ project.createSourceFile(path_1.default.join(output, 'models', 'index.ts'), schemaNames.map((name) => `export * from './${name}';`).join('\n'), { overwrite: true });
153
+ });
154
+ }
155
+ function generateModelSchema(model, project, output) {
156
+ return __awaiter(this, void 0, void 0, function* () {
157
+ const schemaName = `${(0, upper_case_first_1.upperCaseFirst)(model.name)}.schema`;
158
+ const sf = project.createSourceFile(path_1.default.join(output, 'models', `${schemaName}.ts`), undefined, {
159
+ overwrite: true,
160
+ });
161
+ sf.replaceWithText((writer) => {
162
+ var _a, _b, _c;
163
+ const fields = model.fields.filter((field) => {
164
+ var _a;
165
+ return !sdk_1.AUXILIARY_FIELDS.includes(field.name) &&
166
+ // scalar fields only
167
+ !(0, ast_1.isDataModel)((_a = field.type.reference) === null || _a === void 0 ? void 0 : _a.ref) &&
168
+ !(0, sdk_1.isForeignKeyField)(field);
169
+ });
170
+ writer.writeLine('/* eslint-disable */');
171
+ writer.writeLine(`import { z } from 'zod';`);
172
+ // import user-defined enums from Prisma as they might be referenced in the expressions
173
+ const importEnums = new Set();
174
+ for (const node of (0, langium_1.streamAllContents)(model)) {
175
+ if ((0, sdk_1.isEnumFieldReference)(node)) {
176
+ const field = node.target.ref;
177
+ if (!(0, sdk_1.isFromStdlib)(field.$container)) {
178
+ importEnums.add(field.$container.name);
179
+ }
180
+ }
181
+ }
182
+ if (importEnums.size > 0) {
183
+ const prismaImport = (0, sdk_1.getPrismaClientImportSpec)(model.$container, path_1.default.join(output, 'models'));
184
+ writer.writeLine(`import { ${[...importEnums].join(', ')} } from '${prismaImport}';`);
185
+ }
186
+ // import enum schemas
187
+ const importedEnumSchemas = new Set();
188
+ for (const field of fields) {
189
+ if (((_a = field.type.reference) === null || _a === void 0 ? void 0 : _a.ref) && (0, ast_1.isEnum)((_b = field.type.reference) === null || _b === void 0 ? void 0 : _b.ref)) {
190
+ const name = (0, upper_case_first_1.upperCaseFirst)((_c = field.type.reference) === null || _c === void 0 ? void 0 : _c.ref.name);
191
+ if (!importedEnumSchemas.has(name)) {
192
+ writer.writeLine(`import { ${name}Schema } from '../enums/${name}.schema';`);
193
+ importedEnumSchemas.add(name);
194
+ }
195
+ }
196
+ }
197
+ // import Decimal
198
+ if (fields.some((field) => field.type.type === 'Decimal')) {
199
+ writer.writeLine(`import { DecimalSchema } from '../common';`);
200
+ }
201
+ // create base schema
202
+ writer.write(`const baseSchema = z.object(`);
203
+ writer.inlineBlock(() => {
204
+ fields.forEach((field) => {
205
+ writer.writeLine(`${field.name}: ${(0, schema_gen_1.makeFieldSchema)(field)},`);
206
+ });
207
+ });
208
+ writer.writeLine(');');
209
+ // compile "@@validate" to ".refine"
210
+ const refinements = (0, schema_gen_1.makeValidationRefinements)(model);
211
+ if (refinements.length > 0) {
212
+ writer.writeLine(`function refine(schema: z.ZodType) { return schema${refinements.join('\n')}; }`);
213
+ }
214
+ // model schema
215
+ let modelSchema = 'baseSchema';
216
+ const fieldsToOmit = fields.filter((field) => (0, sdk_1.hasAttribute)(field, '@omit'));
217
+ if (fieldsToOmit.length > 0) {
218
+ modelSchema = makeOmit(modelSchema, fieldsToOmit.map((f) => f.name));
219
+ }
220
+ if (refinements.length > 0) {
221
+ modelSchema = `refine(${modelSchema})`;
222
+ }
223
+ writer.writeLine(`export const ${(0, upper_case_first_1.upperCaseFirst)(model.name)}Schema = ${modelSchema};`);
224
+ // create schema
225
+ let createSchema = 'baseSchema';
226
+ const fieldsWithDefault = fields.filter((field) => (0, sdk_1.hasAttribute)(field, '@default') || (0, sdk_1.hasAttribute)(field, '@updatedAt') || field.type.array);
227
+ if (fieldsWithDefault.length > 0) {
228
+ createSchema = makePartial(createSchema, fieldsWithDefault.map((f) => f.name));
229
+ }
230
+ if (refinements.length > 0) {
231
+ createSchema = `refine(${createSchema})`;
232
+ }
233
+ writer.writeLine(`export const ${(0, upper_case_first_1.upperCaseFirst)(model.name)}CreateSchema = ${createSchema};`);
234
+ // update schema
235
+ let updateSchema = 'baseSchema.partial()';
236
+ if (refinements.length > 0) {
237
+ updateSchema = `refine(${updateSchema})`;
238
+ }
239
+ writer.writeLine(`export const ${(0, upper_case_first_1.upperCaseFirst)(model.name)}UpdateSchema = ${updateSchema};`);
108
240
  });
109
- yield transformer.generateModelSchemas();
241
+ return schemaName;
110
242
  });
111
243
  }
244
+ function makePartial(schema, fields) {
245
+ return `${schema}.partial({
246
+ ${fields.map((f) => `${f}: true`).join(', ')},
247
+ })`;
248
+ }
249
+ function makeOmit(schema, fields) {
250
+ return `${schema}.omit({
251
+ ${fields.map((f) => `${f}: true`).join(', ')},
252
+ })`;
253
+ }
112
254
  //# sourceMappingURL=generator.js.map